This website is built and maintained with substantial help from AI tools — primarily Claude. Pages carry an "AI-assisted · verified against source" badge to make that explicit. A few blog posts written entirely by hand carry a "Human Written" badge instead. The badges link here.
The docs are maintained the same way NpgsqlRest itself proposes you build software: AI does the writing, machines verify the facts. Configuration keys, defaults, and annotation behavior are checked against the source code of the documented version — when the code and the docs disagree, the code wins and the docs get fixed. Accuracy is the contract; authorship is just tooling.
The project itself is a different story. The C# library, parser, code generator, and runtime are hand-written — more than two years of evenings and weekends — and covered by 2,200+ integration tests running against real PostgreSQL. The AI-assisted part is the website you're reading; the thing it documents is not.
We think that's the honest division of labor, and we'd rather label it than fake it. If the approach sounds familiar, it's because it is the product's whole thesis: declare the intent, let machines verify the result.
Found a mistake or an inaccuracy? Comments are open at the bottom of every page and go straight to the maintainer — that feedback loop is how AI-assisted docs stay accurate. Bug reports and feature requests live on GitHub; security issues have a private reporting channel.
create function get_public_info()
+returns json
+language sql
+begin atomic;
+select '{"version": "1.0"}'::json;
+end;
+
+comment on function get_public_info() is
+'HTTP GET
+@allow_anonymous';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-public-info.sql):
sql
sql
-- HTTP GET
+-- @allow_anonymous
+select '{"version": "1.0"}'::json;
-- Anyone can read
+comment on function get_products() is
+'HTTP GET
+@allow_anonymous';
+
+-- Only authenticated users can create
+comment on function create_product(text, numeric) is
+'HTTP POST
+@authorize';
create function get_my_profile()
+returns json
+language sql
+begin atomic;
+select row_to_json(u) from users u where u.id = current_user_id();
+end;
+
+comment on function get_my_profile() is
+'HTTP GET
+@authorize';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-my-profile.sql):
sql
sql
-- HTTP GET
+-- @authorize
+select row_to_json(u) from users u where u.id = current_user_id();
-- All of these are equivalent
+comment on function func1() is 'HTTP
+@authorize';
+
+comment on function func2() is 'HTTP
+@authorized';
+
+comment on function func3() is 'HTTP
+@requires_authorization';
create function delete_user(_id int)
+returns void
+language sql
+begin atomic;
+delete from users where id = _id;
+end;
+
+comment on function delete_user(int) is
+'HTTP DELETE
+@authorize admin';
1 2 3 4 5 6 7 8 9 10
Only users with the admin role can access this endpoint.
create function get_my_profile()
+returns json
+language sql
+begin atomic;
+select row_to_json(u) from users u where u.id = current_user_id();
+end;
+
+comment on function get_my_profile() is
+'HTTP GET
+@authorize john';
1 2 3 4 5 6 7 8 9 10
Only the user with user name john can access this endpoint. Matches against the DefaultNameClaimType claim.
create function get_account()
+returns json
+language sql
+begin atomic;
+select row_to_json(a) from accounts a where a.user_id = current_user_id();
+end;
+
+comment on function get_account() is
+'HTTP GET
+@authorize user123';
1 2 3 4 5 6 7 8 9 10
Only the user with user ID user123 can access this endpoint. Matches against the DefaultUserIdClaimType claim.
comment on function get_data() is
+'HTTP GET
+@authorize admin, user123, jane';
1 2 3
Access is granted if the user matches any of the specified values — whether it's a role name, user name, or user ID. Each value is checked against all three claim types (DefaultRoleClaimType, DefaultNameClaimType, DefaultUserIdClaimType).
A row with a status column set to false (boolean) or a non-200 status code (integer)
sql
sql
-- Method 1: Return no rows
+select * from users where false;
+
+-- Method 2: Return status = false (boolean)
+select false as status, null as name;
+
+-- Method 3: Return status code (integer)
+select 401 as status, 'Invalid credentials' as body;
This will always return 401 Unauthorized because the status column is false.
Challenge Command Without Annotation Credentials
When basic_auth is used without credentials, $3 will be null:
sql
sql
create function get_basic_auth_challenge_command(
+ _user_claims json
+)
+returns text
+language sql
+begin atomic;
+select _user_claims;
+end;
+
+comment on function get_basic_auth_challenge_command(json) is '
+@basic_auth
+@challenge_command = select * from auth_challenge_command($1, $2, $3, $4, $5)
+@user_params
+';
1 2 3 4 5 6 7 8 9 10 11 12 13 14
Test with:
bash
bash
# Any username/password combination will be passed to the challenge command
+curl -H "Authorization: Basic eHh4Onl5eQ==" \ # xxx:yyy
+ http://localhost:5000/api/get-basic-auth-challenge-command
+
+# Returns: {"name_identifier":"1","name":"xxx","password":"yyy","valid":null,"realm":"NpgsqlRest","path":"/api/get-basic-auth-challenge-command"}
The challenge command is executed for every request to the protected endpoint.
If both annotation credentials and a challenge command are configured, the password is first verified against annotation credentials, and the result is passed as $3.
The challenge command can implement custom logic such as:
Database-backed user authentication
Rate limiting based on failed attempts
IP-based access control using the path parameter
Audit logging of authentication attempts
Multi-factor authentication flows
If the challenge command returns a row (without status = false), the column names become claim types and values become claim values for the authenticated user.
Claims are accessible in the endpoint function via the user_params annotation.
Basic Auth Without Credentials (Requires Challenge Command)
When basic_auth is used without credentials, a challenge_command must be configured to validate the user:
sql
sql
create function get_basic_auth_no_creds(
+ _user_name text = null -- mapped to name claim
+)
+returns text
+language sql
+begin atomic;
+select _user_name;
+end;
+
+comment on function get_basic_auth_no_creds(text) is '
+@basic_auth
+@user_params
+';
1 2 3 4 5 6 7 8 9 10 11 12 13
Note: Without credentials and without a challenge_command, all requests will return 401 Unauthorized.
Basic Authentication transmits credentials encoded (not encrypted). The behavior when SSL is disabled is controlled by the SslRequirement configuration:
Required: Rejects all non-SSL requests with 401 Unauthorized.
Warning: Allows requests but logs a warning.
Ignore: Allows requests with only a debug-level log.
create function process_payload(_metadata json, _payload text)
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function process_payload(json, text) is
+'HTTP POST
+@body_parameter_name _payload';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/process-payload.sql):
sql
sql
/*
+HTTP POST
+@body_parameter_name payload
+@param $1 metadata json
+@param $2 payload text
+*/
+select process_payload($1, $2);
create function handle_webhook(_body json)
+returns void
+language sql
+begin atomic;
+...;
+end;
+
+comment on function handle_webhook(json) is
+'HTTP POST
+@body_parameter_name _body';
The parameter name is matched case-insensitively and accepts any of the parameter's names:
the converted (API) name — e.g. responseBody (camelCase),
the actual SQL name — e.g. _response_body,
for a field expanded out of an HTTP Custom Type composite parameter, the expanded signature name (_response_body) and the base composite name (_response, shared by all expanded fields — resolves to the first one).
New in 3.18.2
Before 3.18.2 the value was force-lowercased and compared case-sensitively, so the camelCase converted name never matched, and the expanded signature name of an HTTP Custom Type field matched nothing at all. From 3.18.2 the same matching rule is applied consistently by request handling and every code generator (TypeScript client, HTTP file, OpenAPI), so they no longer disagree about which parameter carries the body.
Redirecting an HTTP Custom Type field into a proxy body
A common use is forwarding a large field — such as an HTTP Custom Type's responseBody — into a @proxy upstream request body instead of the query string (where an oversized value would be rejected, see MaxForwardedQueryParamLength). Target the field by its converted name (responseBody), its expanded signature name (_response_body), or the composite base (_response), and use a body-carrying method:
sql
sql
comment on function scrape_and_forward(...) is 'HTTP POST
+@proxy https://upstream.example.com/ingest
+@body_parameter_name responseBody';
1 2 3
The remaining small fields still travel on the proxy query string.
A cache profile bundles together a cache backend (Memory / Redis / Hybrid), a default expiration, the cache-key parameter list, and per-parameter conditional rules ("when X is null, bypass cache" or "when status='draft', cache 30 seconds"). Profiles are defined once in Cache Options configuration and selected per endpoint via this annotation.
@cache_profileimplies caching — you don't also need @cached. Both @cached and @cache_expires annotations remain valid; when present they override the profile's defaults.
The annotation accepts exactly one profile name. The name must match a profile defined in CacheOptions.Profiles and registered with "Enabled": true. Unknown names cause startup to fail with a single error listing every unresolved name and the offending endpoints.
create function get_dashboard()
+returns json
+language sql
+begin atomic;
+select dashboard_data();
+end;
+
+comment on function get_dashboard() is
+'HTTP GET
+@cache_profile fast_memory';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-dashboard.sql):
sql
sql
-- HTTP GET
+-- @cache_profile fast_memory
+select dashboard_data();
1 2 3
The fast_memory profile (defined in CacheOptions.Profiles) supplies the backend, expiration, and any conditional rules.
@cache_profile implies @cached — explicit @cached is unnecessary.
The profile's Cache (backend instance) is used instead of the root DefaultRoutineCache.
The profile's Expiration is used unless overridden by @cache_expires.
The profile's Parameters list is used as the default cache-key set unless overridden by @cached <list>.
The profile's When rules are evaluated at request time; first match wins. Rules can "skip" (bypass cache) or override TTL with a PostgreSQL interval.
Cache entries written under a profile are prefixed with the profile name, so two profiles sharing the same backend (e.g., two Memory profiles) cannot collide.
The cache invalidation endpoint (when InvalidateCacheSuffix is configured) routes through the same profile backend.
create function get_app_settings()
+returns json
+language sql
+begin atomic;
+select settings from app_config where id = 1;
+end;
+
+comment on function get_app_settings() is
+'HTTP GET
+@cached';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-app-settings.sql):
sql
sql
-- HTTP GET
+-- @cached
+select settings from app_config where id = 1;
create function get_user_profile(_user_id int)
+returns json
+language sql
+begin atomic;
+select row_to_json(u) from users u where id = _user_id;
+end;
+
+comment on function get_user_profile(int) is
+'HTTP GET
+@cached _user_id';
1 2 3 4 5 6 7 8 9 10
Different _user_id values create separate cache entries.
Caching works for set-returning functions and record types. When a cached function returns multiple rows, the entire result set is cached:
sql
sql
create function get_all_users()
+returns table(id int, name text)
+language sql
+begin atomic;
+select id, name from users;
+end;
+
+comment on function get_all_users() is
+'HTTP GET
+@cached
+@cache_expires_in 5m';
1 2 3 4 5 6 7 8 9 10 11
Use MaxCacheableRows in Cache Options to limit the maximum number of rows that can be cached. Result sets exceeding this limit are returned but not cached.
The @timeout annotation reads only the first token after the keyword. Use formats without spaces to avoid parsing issues. Numbers without a unit default to seconds.
create function quick_lookup(_id int)
+returns json
+language sql
+begin atomic;
+select row_to_json(t) from table t where id = _id;
+end;
+
+comment on function quick_lookup(int) is
+'HTTP GET
+@timeout 5s';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/quick-lookup.sql):
sql
sql
/*
+HTTP GET
+@timeout 5s
+@param $1 id
+*/
+select row_to_json(t) from items t where t.id = $1;
create function generate_report(_year int)
+returns json
+language sql
+begin atomic;
+...complex aggregation...;
+end;
+
+comment on function generate_report(int) is
+'HTTP GET
+@timeout 2min
+@authorize';
The @ prefix is optional - both @key = value and key = value work identically. Custom parameters with @ prefix are stored without the prefix (e.g., @my_param = value is stored as my_param).
Some parameters support dynamic values using the {param_name} format, where param_name references a function parameter. The value is resolved at runtime from the actual parameter value passed to the endpoint. The matching and substitution rules are shared across annotations — see Parameter Value Substitution.
create function upload_file(_path text, _file text)
+returns void
+language sql
+begin atomic;
+ -- function body
+end;
+
+comment on function upload_file(text, text) is '
+@upload for file_system
+@file_system_path = {_path}
+@file_system_file = {_file}
+';
1 2 3 4 5 6 7 8 9 10 11 12
Equivalent as a SQL file endpoint (sql/upload-file.sql):
sql
sql
/*
+HTTP POST
+@upload for file_system
+@file_system_path = {path}
+@file_system_file = {file}
+@param $1 path
+@param $2 file
+*/
+select;
1 2 3 4 5 6 7 8 9
When called with {"_path": "/uploads/images", "_file": "photo.jpg"}, the file will be saved to /uploads/images/photo.jpg.
Define HTTP parameters that are not bound to the PostgreSQL command. These virtual parameters exist in the HTTP request (query string or JSON body) but do not correspond to any $N positional parameter in the SQL query.
This is useful for SQL file endpoints where you need HTTP parameters for:
Custom parameter placeholders — parameters that feed into annotation placeholders like {format} without being part of the SQL
Claim mapping — auto-filling parameters from authenticated user claims without referencing them in the query
HTTP request matching — parameters that affect endpoint behavior without participating in the database query
Pass HTTP parameters that control endpoint behavior without referencing them in SQL:
sql
sql
-- sql/users_report.sql
+-- @define_param format text
+-- @table_format = {format}
+-- @param $1 department_id
+select id, name, email from users where department_id = $1;
1 2 3 4 5
GET /api/users-report?department_id=5&format=html_table
The format parameter feeds into the @table_format annotation via the {format} placeholder, selecting the output format (JSON, HTML table, Excel, etc.) without being part of the SQL query. Without @define_param, there would be no format parameter in the endpoint — the {format} placeholder would have nothing to resolve.
Here _user_id is created as a virtual parameter that maps to the name_identifier claim (via standard User Parameters claim mapping). The authenticated user's ID is injected automatically — but unlike @param, this parameter doesn't correspond to any $N in the SQL. The query itself doesn't filter by user — the virtual parameter exists solely for the claim mapping mechanism.
This is different from using @param with @user_parameters:
sql
sql
-- This uses @param — $1 IS in the SQL query
+-- @authorize
+-- @user_parameters
+-- @param $1 _user_id
+select * from orders where user_id = $1;
1 2 3 4 5
Use @define_param when the parameter shouldn't appear in the SQL at all. Use @param when you need the value both as a claim-mapped parameter and as a query parameter.
Disables the endpoint only when the routine matches at least one of the listed tags. The available auto-tags assigned by RoutineSource are:
Tag
Matches
function
PostgreSQL functions
procedure
PostgreSQL procedures
volatile
Functions declared VOLATILE (the default)
stable
Functions declared STABLE
immutable
Functions declared IMMUTABLE
other
Procedures (volatility doesn't apply)
sql
sql
-- Disable only if the function is volatile (e.g., to enforce read-only API surface)
+comment on function get_data() is '
+HTTP GET
+@disabled volatile';
1 2 3 4
Custom tags are not supported — only the auto-tags above are available. SQL file endpoints have no auto-tags.
Most projects don't need the tag form
The unconditional @disabled is the form you'll reach for in practice. The tag form is a leftover from earlier versions where the CRUD source assigned per-operation tags (select, insert, etc.).
Re-enable an endpoint that an earlier @disabled would otherwise hide.
Rarely needed
Endpoints are enabled by default. You only need @enabled to undo a @disabled on a tag-conditional basis. If you've never reached for @disabled, you don't need @enabled either.
Without tags: enables the endpoint unconditionally.
With tags: enables only when the routine matches at least one of the listed tags.
The available auto-tags assigned by RoutineSource are function, procedure, volatile, stable, immutable, other. SQL file endpoints have no auto-tags.
Example: disable-by-default, enable for immutable only
sql
sql
comment on function calculate_total(_items json) is '
+HTTP GET
+@disabled
+@enabled immutable
+@cached';
1 2 3 4 5
The endpoint is disabled by default, but re-enabled when the function is declared IMMUTABLE. If you later mark the function STABLE or VOLATILE, the endpoint disappears without further changes.
Transparent application-level column encryption using ASP.NET Data Protection. Parameter values are encrypted before being sent to PostgreSQL, and result column values are decrypted before being returned to the API client. The database stores ciphertext; the API consumer sees plaintext. No pgcrypto or client-side encryption required.
Prerequisite: The DataProtection section must be enabled in appsettings.json (it is by default). See Data Protection Configuration.
Mark specific parameters to encrypt before they are sent to PostgreSQL:
sql
sql
create function store_patient_ssn(_patient_id int, _ssn text)
+returns void
+language plpgsql as $$
+begin
+ insert into patients (id, ssn) values (_patient_id, _ssn)
+ on conflict (id) do update set ssn = excluded.ssn;
+end;
+$$;
+comment on function store_patient_ssn(int, text) is '
+HTTP POST
+encrypt _ssn
+';
1 2 3 4 5 6 7 8 9 10 11 12
Equivalent as a SQL file endpoint (sql/store-patient-ssn.sql):
sql
sql
/*
+HTTP POST
+@encrypt ssn
+@param $1 patient_id
+@param $2 ssn
+*/
+insert into patients (id, ssn) values ($1, $2)
+on conflict (id) do update set ssn = excluded.ssn;
1 2 3 4 5 6 7 8
The client calls POST /api/store-patient-ssn/ with {"patientId": 1, "ssn": "123-45-6789"}. The server encrypts _ssn using Data Protection before executing the SQL — the database stores ciphertext like CfDJ8N..., never the plaintext SSN.
Use encrypt without arguments to encrypt all text parameters:
sql
sql
comment on function store_all_secrets(text, text) is '
+HTTP POST
+encrypt
+';
Mark specific result columns to decrypt before returning to the client:
sql
sql
create function get_patient(_patient_id int)
+returns table(id int, ssn text, name text)
+language plpgsql as $$
+begin
+ return query select p.id, p.ssn, p.name from patients p where p.id = _patient_id;
+end;
+$$;
+comment on function get_patient(int) is '
+decrypt ssn
+';
1 2 3 4 5 6 7 8 9 10
The client calls GET /api/get-patient/?patientId=1. The ssn column is decrypted from ciphertext back to "123-45-6789" before being included in the JSON response. The id and name columns are returned as-is.
Use decrypt without arguments to decrypt all result columns:
sql
sql
comment on function get_all_secrets(text) is '
+decrypt
+';
1 2 3
Decrypt also works on scalar (single-value) return types:
sql
sql
create function get_secret(_id int) returns text ...
+comment on function get_secret(int) is 'decrypt';
-- Store with encryption
+create function store_secret(_key text, _value text) returns void ...
+comment on function store_secret(text, text) is '
+HTTP POST
+encrypt _value
+';
+
+-- Retrieve with decryption
+create function get_secret(_key text) returns table(key text, value text) ...
+comment on function get_secret(text) is '
+decrypt value
+';
NULL values: NULL parameters are not encrypted (passed as DBNull). NULL columns are not decrypted (returned as JSON null).
Non-text types: Only string parameter values are encrypted. Integer, boolean, and other types are unaffected even when encrypt is used without arguments.
Decryption failures: If a column value cannot be decrypted (e.g., it was not encrypted, or keys were rotated/lost), the raw value is returned as-is — no error is thrown.
Key rotation: ASP.NET Data Protection maintains a key ring. Old keys still decrypt old ciphertext. Keys rotate based on DefaultKeyLifetimeDays (default: 90 days).
Encrypted columns are opaque to PostgreSQL: The database cannot filter, join, sort, or index on encrypted values. Use encryption only for columns that are written and read back, never queried by content.
HTTP Types are PostgreSQL composite types with a special comment that defines an HTTP request. When a function uses an HTTP Type as a parameter, NpgsqlRest automatically makes the HTTP request and populates the type fields with the response before executing the function.
-- Create response type
+create type simple_api as (
+ body text,
+ status_code int,
+ success boolean,
+ error_message text
+);
+
+-- Define HTTP request
+comment on type simple_api is 'GET https://api.example.com/data';
+
+-- Use in function
+create function fetch_data(_response simple_api)
+returns text
+language sql
+begin atomic;
+select (_response).body;
+end;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Equivalent as a SQL file endpoint (sql/fetch-data.sql):
The HTTP Type itself must be defined in DDL (it's a composite type), but the consuming endpoint can be a SQL file. Assuming simple_api is already defined as above:
sql
sql
/*
+HTTP GET
+@param $1 response simple_api
+*/
+select ($1::simple_api).body;
A function can have multiple HTTP Type parameters for chained API calls:
sql
sql
create type auth_api as (
+ body text,
+ status_code int,
+ success boolean,
+ error_message text
+);
+
+create type data_api as (
+ body text,
+ status_code int,
+ success boolean,
+ error_message text
+);
+
+comment on type auth_api is 'POST https://auth.example.com/token
+Content-Type: application/x-www-form-urlencoded
+
+client_id={_client_id}&client_secret={_client_secret}';
+
+comment on type data_api is 'GET https://api.example.com/data
+Authorization: Bearer {_token}';
+
+create function fetch_with_auth(
+ _client_id text,
+ _client_secret text,
+ _auth auth_api,
+ _token text,
+ _data data_api
+)
+returns json
+language plpgsql
+as $$
+begin
+ -- Note: _token would need to be extracted from _auth.body in practice
+ if not (_auth).success then
+ return json_build_object('error', 'Authentication failed');
+ end if;
+
+ if (_data).success then
+ return (_data).body::json;
+ else
+ return json_build_object('error', (_data).error_message);
+ end if;
+end;
+$$;
Timeout can appear before the request line or after headers:
sql
sql
-- Before request line
+comment on type api_type is 'timeout 30
+GET https://api.example.com/data';
+
+-- After headers
+comment on type api_type is 'GET https://api.example.com/data
+Authorization: Bearer {_token}
+@timeout 30s';
Placeholders in the format {name} are replaced via the shared Parameter Value Substitution mechanism (case-insensitive name matching, NULL → empty, unknown → left literal). For HTTP types the type's own field names are also valid placeholders. A {name} can be supplied by any of three sources:
a request/function parameter (shown below);
an allowlisted environment variable — ideal for a static API key, without routing it through a parameter (e.g. Authorization: Bearer {WEATHER_API_KEY});
a resolved parameter expression — a value computed server-side from SQL (e.g. a token read from a table), never supplied by the client.
The @retry_delay directive adds automatic retries with configurable delays for transient failures:
sql
sql
-- Retry on any failure:
+comment on type my_api_type is '@retry_delay 1s, 2s, 5s
+GET https://api.example.com/data';
+
+-- Retry only on specific HTTP status codes:
+comment on type my_api_type is '@retry_delay 1s, 2s, 5s on 429, 503
+GET https://api.example.com/data';
+
+-- Combined with timeout:
+comment on type my_api_type is '@timeout 10s
+@retry_delay 1s, 2s, 5s on 429, 503
+GET https://api.example.com/data';
1 2 3 4 5 6 7 8 9 10 11 12
The delay list defines both the number of retries and the delay before each retry. 1s, 2s, 5s means 3 retries with 1s, 2s, and 5s delays respectively. Delay values use the same format as timeout — 100ms, 1s, 5m, 30, 00:00:01, etc.
Without on filter: Retries on any non-success HTTP response, timeout, or network error.
With on filter: Retries only when the status code matches a listed code. Timeouts and network errors always trigger retry.
Retry exhaustion: If all retries fail, the last error is passed to the function.
The @cache directive caches the outbound HTTP response and reuses it for matching requests within a time window, instead of calling the upstream on every request:
sql
sql
comment on type books_api is '@cache 5m
+GET https://books.toscrape.com/';
1 2
A cached type fires one outbound call for a given request shape; subsequent matching requests are served from an in-memory cache until the TTL elapses. For a type with no per-request placeholders (a constant URL, headers, and body), that means a single shared upstream call per TTL window across the whole application — rather than one call per inbound request.
sql
sql
-- TTL accepts the same interval formats as @timeout:
+comment on type t is '@cache 30s
+GET https://api.example.com/data';
+
+comment on type t is '@cache 5m
+GET https://api.example.com/data';
+
+comment on type t is '@cache 00:05:00
+GET https://api.example.com/data';
+
+-- Combined with other directives (order and placement are flexible):
+comment on type t is '@timeout 10s
+@retry_delay 1s, 2s on 429, 503
+@cache 5m
+GET https://api.example.com/data';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Behavior and rules:
Opt-in, per type. Caching happens only when @cache is present. Without it, every request fires a fresh call (the previous behavior).
GET only. A @cache directive on any non-GET method is ignored with a startup warning — caching a mutating request is almost always a mistake.
TTL.@cache <interval> uses the interval format (30s, 5m, 1h, 00:05:00, or a bare number of seconds). A bare @cache (no interval) caches with no expiration — until the process restarts — and logs a warning.
Successful responses only. Only 2xx responses are cached, so a transient upstream failure is never pinned for the whole TTL; the next request re-fetches.
Stampede protection. A burst of concurrent requests for the same cache key coalesces into a single outbound call; the rest await the in-flight result.
Cache key. The key is the HTTP method + resolved URL + resolved content-type + resolved headers + resolved body. Placeholders are resolved first, so per-request values vary the key naturally — each distinct resolved request is cached separately.
Caching is configured globally under HttpClientOptions (CacheEnabled kill switch, MaxCacheEntries, CachePruneIntervalSeconds).
A common need with HTTP Types is a value computed server-side — an API token read from a table, a secret derived from the user's claims — injected into a {name} placeholder without the client ever supplying it. A resolved parameter expression does this: a param = <sql> annotation on the function runs that SQL per request and binds the result to the parameter, which then substitutes into the URL/headers/body.
sql
sql
comment on type my_api_response is 'GET https://api.example.com/data
+Authorization: Bearer {_token}';
+
+comment on function get_secure_data(_user_id int, _req my_api_response, _token text) is '
+_token = select api_token from user_tokens where user_id = {_user_id}
+';
1 2 3 4 5 6
The server resolves _token from the database, substitutes it into the Authorization header, and makes the call — the token never leaves the server or appears in client input.
See Resolved Parameters for the full reference (behavior, security, multiple expressions, table/refresh-token patterns).
create function create_user(_name text)
+returns int
+language sql
+begin atomic;
+insert into users(name) values(_name) returning id;
+end;
+
+comment on function create_user(text) is 'HTTP POST';
create function get_all_users()
+returns setof users
+language sql
+begin atomic;
+select * from users;
+end;
+
+comment on function get_all_users() is 'HTTP GET /users';
create function search_products(_query text)
+returns setof products
+language sql
+begin atomic;
+select * from products where name ilike '%' || _query || '%';
+end;
+
+comment on function search_products(text) is 'HTTP GET /products/search';
comment on function get_user_profile(int) is
+'Returns the complete user profile including preferences.
+Used by the frontend dashboard.
+
+HTTP GET /users/profile';
1 2 3 4 5
The documentation text is ignored; only the HTTP line is parsed.
You can define RESTful path parameters using the {param} syntax in URL paths. Parameter values are extracted directly from the URL path instead of query strings or request body.
create function get_product(p_id int)
+returns text
+language sql
+begin atomic;
+select ...;
+end;
+
+comment on function get_product(int) is 'HTTP GET /products/{p_id}';
create function get_review(p_id int, review_id int)
+returns text
+language sql
+begin atomic;
+select ...;
+end;
+
+comment on function get_review(int, int) is 'HTTP GET /products/{p_id}/reviews/{review_id}';
1 2 3 4 5 6 7 8
Call: GET /products/5/reviews/10 → p_id = 5, review_id = 10
create function get_product_details(p_id int, include_reviews boolean default false)
+returns text
+language sql
+begin atomic;
+select ...;
+end;
+
+comment on function get_product_details(int, boolean) is 'HTTP GET /products/{p_id}/details';
1 2 3 4 5 6 7 8
Call: GET /products/42/details?includeReviews=true → p_id = 42, include_reviews = true
create function update_product(p_id int, new_name text)
+returns text
+language sql
+begin atomic;
+select ...;
+end;
+
+comment on function update_product(int, text) is 'HTTP POST /products/{p_id}';
1 2 3 4 5 6 7 8
Call: POST /products/7 with body {"newName": "New Name"} → p_id = 7, new_name = "New Name"
Complete reference for all NpgsqlRest comment annotations. For an introduction to how annotations work, see the Comment Annotations Guide.
INFO
All annotations work in both PostgreSQL function/procedure comments (COMMENT ON FUNCTION ...) and SQL file endpoints (-- and /* */ comments in .sql files). The "SQL File Annotations" section below lists annotations that are specific to SQL files.
internal, internal_only (with or without @ prefix)
Mark an endpoint as internal-only — accessible via self-referencing calls (proxy annotations and HTTP client types with relative paths) but not exposed as a public HTTP route.
Direct HTTP calls to an internal endpoint return 404. Internal calls via proxy or HTTP client types work normally.
-- Internal helper: returns data but is NOT callable from outside
+create function get_cached_rates()
+returns json language sql as $$
+ select rates from exchange_rates order by fetched_at desc limit 1
+$$;
+comment on function get_cached_rates() is 'HTTP GET
+@internal';
+
+-- Public endpoint that proxies the internal one
+create function convert_currency(_amount numeric, _from text, _to text)
+returns json language plpgsql as $$
+...
+$$;
+comment on function convert_currency(numeric, text, text) is 'HTTP GET
+proxy GET /api/get-cached-rates';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
GET /api/get-cached-rates → 404 Not Found
GET /api/convert-currency?amount=100&from=USD&to=EUR → works (proxies internally)
-- Internal data source
+create function get_users()
+returns json language sql as $$
+ select json_agg(row_to_json(u)) from users u
+$$;
+comment on function get_users() is 'HTTP GET
+@internal';
+
+-- HTTP client type pointing to internal endpoint
+create type api_users as (body text);
+comment on type api_users is 'GET /api/get-users';
+
+-- Public endpoint composing internal calls
+create function get_dashboard(_users api_users)
+returns json language plpgsql as $$
+begin
+ return json_build_object('users', (_users).body::json);
+end;
+$$;
comment on function quick_lookup() is
+'HTTP GET
+@timeout 5s';
+
+comment on function slow_report() is
+'HTTP GET
+@timeout 2min';
+
+comment on function very_long_process() is
+'HTTP GET
+@timeout 1h';
1 2 3 4 5 6 7 8 9 10 11
Single Token for @timeout
The @timeout annotation reads only the first token after the keyword. Use formats without spaces or use the short forms to avoid parsing issues.
comment on function get_live_data() is
+'HTTP GET
+@cached
+@cache_expires_in 10s';
+
+comment on function get_dashboard() is
+'HTTP GET
+@cached
+@cache_expires_in 5m';
+
+comment on function get_static_config() is
+'HTTP GET
+@cached
+@cache_expires_in 1d';
5.5.5h -- Multiple decimal points
+h5 -- Unit before number
+5 m m -- Multiple units
+5months -- Unsupported unit
+1year -- Unsupported unit (use days or weeks)
Mark a routine (function/procedure) or SQL file endpoint as a sign-in endpoint.
code
@login
1
Looking for the bigger picture?
This page is the reference for the @login annotation. For an end-to-end walkthrough — configuring an auth scheme, how claims flow through the system, and reading claims back in your other endpoints — see the Authentication guide.
A login endpoint is an ordinary endpoint that returns one row. NpgsqlRest treats that row specially:
The client POSTs credentials (e.g. username + password) to the endpoint.
Your SQL runs and returns at most one record.
NpgsqlRest reads a few special columns (status, scheme, body, hash) for control flow.
Every other column becomes a user claim — the column name is the claim name, the column value is the claim value.
NpgsqlRest signs the user in by issuing the cookie or token for the active scheme.
mermaid
flowchart TD
+ C["Client
+ POST /login (username, password)"]
+ F["Your login function / .sql
+ returns one row"]
+ R["Returned row
+ user_id=1, username=alice, email=a@x.com"]
+ N["NpgsqlRest
+ reads special columns (status, scheme, body, hash)
+ turns every other column into a claim
+ issues cookie / token"]
+ O["Signed in
+ Set-Cookie or Bearer token
+ claims: user_id=1, username=alice, email=a@x.com"]
+
+ C --> F --> R --> N --> O
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
There is no status column required — if the row is returned the login succeeds; if no row is returned the result is 401 Unauthorized. (Add a status column only when you need explicit HTTP status control.)
The simplest login: verify the password inside SQL, return the user's claims on success, return nothing on failure.
sql
sql
create function login(_username text, _password text)
+returns table (
+ scheme text,
+ user_id int,
+ username text,
+ email text
+)
+language sql
+security definer
+as $$
+select
+ 'cookies' as scheme, -- special column: which auth scheme to sign in
+ u.user_id, -- every non-special column
+ u.username, -- becomes a claim
+ u.email
+from users u
+where u.username = _username
+ and verify_password(_password, u.password_hash); -- your own check
+$$;
+
+comment on function login(text, text) is '
+HTTP POST
+@login
+@anonymous
+@security_sensitive';
This is the pattern used in the Security & Auth example. NpgsqlRest never sees the password hash — you verify it yourself. For the alternative where NpgsqlRest verifies the hash for you, see Password verification.
A void, a scalar (int/text), or an unnamed record → 401 Unauthorized
Returns a row (and no failing status/hash)
Login succeeds, claims are created
Returns no row (empty result)
401 Unauthorized
Returns multiple rows
Only the first row is read; the rest is discarded
Column names are matched against the configured special-column names and claim mappings using either the original PostgreSQL column name or the converted name (camelCase by default).
Sets the authentication scheme used for this sign-in. Use it when more than one scheme is configured (e.g. cookie and bearer token and JWT) so a single login function can issue any of them — typically driven by a request parameter:
sql
sql
-- the client asks for 'cookies', 'token', or 'jwt'
+select _scheme as scheme, u.user_id, u.username, u.roles
+from users u
+where u.username = _username;
This is the core of the login contract. Every returned column that isn't a special column becomes a claim, where:
column name → claim name (claim type)
column value → claim value
So a login function returning user_id, username, email, roles produces exactly those four claims, plus whatever else you select. No transformation, no mapping config is needed to create claims — you simply select the columns you want.
Among all the claims, three are designated as the canonical identity. NpgsqlRest uses them for the signed-in principal, for role-based @authorize, and as $2/$3 in the verification callbacks. They are configured in AuthenticationOptions:
Config option
Default claim name
Used for
DefaultUserIdClaimType
user_id
The user identifier
DefaultNameClaimType
user_name
The display name
DefaultRoleClaimType
user_roles
Roles for @authorize role1, role2
Make sure your login routine returns a column matching each of these names (or change the config to match your column names). For example, the Multiple Auth Schemes example returns a roles column and configures:
There are two ways to verify the password. Pick one.
Which one should I use?
Option B (the built-in hasher) is the more secure default and is recommended for production. Two reasons:
Security — it uses a strong, OWASP-recommended PBKDF2-SHA256 configuration out of the box, so you don't have to get the cryptography right yourself.
Where the work runs — password hashing is deliberately CPU-intensive. The built-in hasher runs it on the NpgsqlRest application instance, whereas verifying in SQL (Option A) runs it on your database server. The app tier is usually far easier to scale horizontally than PostgreSQL, so keeping expensive hashing off the database is an important architectural consideration.
Option A (verify in SQL) is simpler and keeps everything in the database — fine for small or low-traffic apps, or when you want full control over the hashing scheme.
You verify the password yourself (as in the minimal example) and simply don't return a matching row when it fails. NpgsqlRest stays out of it — this is the simplest approach and gives you full control over hashing.
You don't need anything external: PostgreSQL's built-in pgcrypto extension already provides crypt(), gen_salt(), and digest():
sql
sql
create extension if not exists pgcrypto;
1
Recommended hashing — pre-hash the password with SHA-256 and base64-encode it before bcrypt. Bcrypt silently truncates its input at 72 bytes; the SHA-256 + base64 step produces a fixed 44-character digest that always fits, so passwords of any length (and any byte content) are hashed safely:
sql
sql
-- hash (on registration / password change)
+crypt(encode(digest(_password, 'sha256'), 'base64'), gen_salt('bf', 12))
+
+-- verify (on login) — compare the recomputed hash against the stored one
+crypt(encode(digest(_password, 'sha256'), 'base64'), _password_hash) = _password_hash
1 2 3 4 5
Wrap them as reusable helpers — verify_password() is the function used in the minimal example above:
Store the hash when registering a user with the same hash_password():
sql
sql
insert into users (username, email, password_hash)
+values (_username, _email, hash_password(_password));
1 2
Work factor
The second argument to gen_salt('bf', …) is the bcrypt work factor (cost). 12 is a sensible default in 2025 — raise it for stronger (but slower) hashing.
Option B — built-in hasher (return a hash column)
Return the stored password hash in a column named hash (configurable via HashColumnName) and let NpgsqlRest verify it against the submitted password using its built-in hasher.
When a hash column is present, NpgsqlRest:
Reads the hash value from that column.
Identifies the password parameter — the first parameter whose name contains PasswordParameterNameContains (default pass).
Verifies the submitted password against the hash.
On failure, returns 404 Not Found and the row's claims are discarded.
The hash column name and the password-parameter substring are set in AuthenticationOptions — these are the defaults:
Change them to match your own naming. The example below uses these defaults:
sql
sql
create function login(_username text, _password text)
+returns table (hash text, user_id int, username text, email text, roles text[])
+language sql
+as $$
+ select
+ u.password_hash as hash, -- NpgsqlRest verifies _password against this
+ u.user_id,
+ u.username,
+ u.email,
+ u.roles
+ from users u
+ where u.username = _username;
+$$;
+
+comment on function login(text, text) is '
+HTTP POST
+@login
+@anonymous
+@security_sensitive';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
The built-in hasher uses PBKDF2 with SHA-256, a 128-bit salt, and 600,000 iterations (OWASP-recommended as of 2025). Use the matching @parameter_hash annotation when registering users so the stored hash is compatible. A custom IPasswordHasher can be injected in source code if needed.
With Option B, you can run a command on success or failure of the built-in verification — the only way to react to the outcome, since the verification itself happens inside NpgsqlRest.
A single login function that can sign the user into cookie, bearer-token, or JWT depending on the requested scheme, using the built-in hasher (hash column):
sql
sql
create function login(_scheme text, _username text, _password text)
+returns table (
+ scheme text,
+ user_id int,
+ username text,
+ roles text[],
+ email text,
+ hash text
+)
+language sql
+as $$
+select
+ _scheme, -- 'cookies', 'token' or 'jwt'
+ u.user_id,
+ u.username,
+ u.roles,
+ u.email,
+ u.password_hash as hash -- built-in verification
+from users u
+where u.username = _username;
+$$;
+
+comment on function login(text, text, text) is '
+HTTP POST
+@login
+@anonymous
+@security_sensitive';
If the function returns values, all returned values are interpreted as authentication scheme names to sign out from. This allows selective logout from specific schemes.
Single values are added as scheme names
Arrays are expanded - each element becomes a scheme name
NULL values are ignored
If no schemes are returned (empty result), signs out from all schemes
This is useful when using multiple authentication schemes (e.g., Cookie and Bearer Token) and you want to sign out from only specific ones.
create function signout()
+returns void
+language sql
+begin atomic;
+ -- Optionally perform cleanup
+ delete from sessions where user_id = current_user_id();
+end;
+
+comment on function signout() is
+'HTTP POST
+@logout
+@authorize';
1 2 3 4 5 6 7 8 9 10 11 12
Equivalent as a SQL file endpoint (sql/signout.sql):
sql
sql
-- HTTP POST
+-- @logout
+-- @authorize
+delete from sessions where user_id = current_user_id();
create function logout_cookie()
+returns text
+language sql
+begin atomic;
+ select 'Cookies'::text;
+end;
+
+comment on function logout_cookie() is
+'HTTP POST /auth/logout/cookie
+@logout
+@authorize';
1 2 3 4 5 6 7 8 9 10 11
Signs out only from the "Cookies" authentication scheme.
create function logout_web()
+returns text[]
+language sql
+begin atomic;
+ select array['Cookies', 'Bearer']::text[];
+end;
+
+comment on function logout_web() is
+'HTTP POST /auth/logout/web
+@logout
+@authorize';
1 2 3 4 5 6 7 8 9 10 11
Signs out from both "Cookies" and "Bearer" schemes.
create function smart_logout(_scheme text default null)
+returns text
+language sql
+begin atomic;
+ select _scheme; -- Returns NULL to logout from all, or specific scheme
+end;
+
+comment on function smart_logout(text) is
+'HTTP POST /auth/logout
+@logout
+@authorize';
1 2 3 4 5 6 7 8 9 10 11
POST /auth/logout → Signs out from all schemes
POST /auth/logout?_scheme=Cookies → Signs out only from Cookies
create function full_logout()
+returns void
+language plpgsql
+as $$
+begin
+ -- Revoke all refresh tokens for this user
+ delete from refresh_tokens where user_id = current_user_id();
+
+ -- Log the logout event
+ insert into audit_log(user_id, action)
+ values (current_user_id(), 'logout');
+end;
+$$;
+
+comment on function full_logout() is
+'HTTP POST
+@logout
+@authorize';
The @mcp annotation and the NpgsqlRest.Mcp plugin were added in version 3.17.0. It implements the Model Context Protocol specification 2025-11-25.
Opt a routine in as an MCP tool so an AI agent can discover it (tools/list) and execute it (tools/call) over the MCP server endpoint.
Exposure is never automatic — a routine becomes a tool only when its comment carries @mcp. When the MCP plugin is not loaded (or McpOptions.Enabled is false), the annotation is a no-op — safe to leave on a routine regardless of how the host is configured.
@mcp # expose as a tool; description from the comment prose
+@mcp <text> # expose; <text> is an inline (explicit) tool description
+@mcp_description <text> # expose; explicit, authoritative description (alias: @mcp_desc)
+@mcp_name <name> # override the tool name (default: the routine name)
The tool's description uses a fixed priority — the highest-priority source that is present wins, regardless of the order the lines appear in the comment — and an explicit description suppresses the comment-prose fallback (so unrelated comment lines never leak into it):
@mcp_description <text> — explicit and authoritative. Always wins when present, even if it appears after an @mcp <text> line.
inline @mcp <text> — explicit.
comment prose — the routine's free-text comment lines (those that aren't annotations). Used only when no explicit description is given.
the routine name — last resort (a warning is logged).
So if you give any explicit description, the rest of your comment is just a comment. (Order only matters when you repeat the same annotation — the last occurrence wins.) Provide a description explicitly (preferably @mcp_description) whenever your comment also contains notes you don't want an agent to see; let the prose fallback do the work when your comment is the description.
The HTTP tag controls the REST route; @mcp controls the tool — independently. A bare @mcp with no HTTP tag exposes the routine only as an MCP tool, with no public REST endpoint:
sql
sql
comment on function summarize_account(_account_id int) is '
+@mcp Summarize an account for the agent, including balance and recent activity.
+';
1 2 3
The routine is callable via tools/call but has no HTTP route — an endpoint that exists only because @mcp requested it is internal-only by default, so opting into MCP never silently widens your HTTP surface. (Requires the comment-gated modes — OnlyAnnotated, the client default, or OnlyWithHttpTag. A debug log notes the defaulting at startup.)
This works identically for SQL file endpoints: a .sql file whose comment carries @mcp but no HTTP tag becomes an MCP-only tool (without @mcp such a file is skipped as a non-endpoint script, as before).
All other annotations apply equally — most usefully @authorize: when a tool runs, the caller's authenticated identity is forwarded, so role checks are enforced exactly as they would be for the HTTP endpoint.
create function get_weather(_city text)
+returns text
+language sql as $$
+ select format('Weather for %s: sunny, 22C', _city);
+$$;
+
+comment on function get_weather(_city text) is '
+HTTP GET /api/weather
+@mcp Get the current weather for a city.
+';
1 2 3 4 5 6 7 8 9 10
The routine is reachable at GET /api/weatherand advertised as the get_weather MCP tool with the description "Get the current weather for a city." and an input schema derived from its parameters ({ "city": { "type": "string" } }).
comment on function list_open_tickets() is '
+HTTP GET /api/tickets/open
+List all currently open support tickets for triage.
+@mcp
+';
1 2 3 4 5
With a bare @mcp, the description is taken from the prose line — "List all currently open support tickets for triage."
Explicit description, with a private note that stays out of it
sql
sql
comment on function rebuild_search_index() is '
+HTTP POST
+@mcp Rebuild the product search index. Safe to call; runs in the background.
+@mcp_description Rebuild the product search index. Returns immediately.
+TODO: revisit batch size — internal note, must NOT reach the agent.
+';
1 2 3 4 5 6
Because @mcp_description is present, it is the description verbatim — the inline @mcp text and the TODO: prose line are both ignored. (For SQL-file endpoints, also see SqlFileSource.CommentScope, which controls which comments are parsed at all.)
create type address_type as (
+ street text,
+ city text,
+ zip_code text
+);
+
+create function get_user_with_address()
+returns table(
+ user_id int,
+ user_name text,
+ address address_type
+)
+language sql
+begin atomic;
+select 1, 'Alice', row('123 Main St', 'New York', '10001')::address_type;
+end;
+
+comment on function get_user_with_address() is 'HTTP GET
+@nested';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Default behavior (without @nested):
json
json
[{"userId":1,"userName":"Alice","street":"123 Main St","city":"New York","zipCode":"10001"}]
1
With @nested annotation:
json
json
[{"userId":1,"userName":"Alice","address":{"street":"123 Main St","city":"New York","zipCode":"10001"}}]
When composite types contain other composite types (or arrays of composites), the inner composites are also serialized as proper JSON objects by default:
sql
sql
create type inner_type as (id int, name text);
+create type outer_type as (label text, inner_val inner_type);
+
+create function get_nested_data()
+returns table(data outer_type)
+language sql
+begin atomic;
+select row('outer', row(1, 'inner')::inner_type)::outer_type;
+end;
+
+comment on function get_nested_data() is 'HTTP GET
+@nested';
This works to any nesting depth. Deep resolution is controlled by the ResolveNestedCompositeTypes option (default: true). See Routine Options for details and when you might want to disable it.
Instead of adding the annotation to each endpoint, you can enable nested JSON globally via configuration. Each endpoint source has its own independent setting:
When enabled globally, all composite type columns from the respective endpoint source will be serialized as nested JSON objects by default, without requiring the annotation.
The @openapi annotation was added in version 3.15.0.
Per-routine override for OpenAPI document inclusion and section grouping. Two sub-commands: hide an endpoint from the document entirely, or replace its default schema-name tag with one or more custom tags.
The HTTP endpoint itself is unaffected — @openapi hide only suppresses the spec entry. The endpoint is still reachable, still respects @authorize, still runs the same SQL.
When the OpenAPI plugin is not loaded, both sub-commands are no-ops — safe to leave on a routine regardless of how the host is configured.
@openapi # hide from document (default action)
+@openapi hide # hide from document
+@openapi hidden # alias for hide
+@openapi ignore # alias for hide
+
+@openapi tag <name> # replace default schema tag with <name>
+@openapi tags <a>, <b>, <c> # replace default tag with multiple tags
1 2 3 4 5 6 7
Tag values preserve their original casing — @openapi tag Partner API produces a Partner API tag, not partner api.
@openapi is the first filter applied — it wins over IncludeSchemas, ExcludeSchemas, NameSimilarTo, NameNotSimilarTo, and RequiresAuthorizationOnly. See Filter order in the OpenAPI config reference.
This means @openapi hide reliably keeps a routine out of the document even when broad config filters would otherwise include it (e.g. when IncludeSchemas allows the schema).
By default, endpoints are tagged with their schema name — every routine in public lands in a public section in Swagger UI / ReDoc. @openapi tag overrides that.
sql
sql
comment on function partner_get_orders(_partner_id text) is '
+HTTP GET /api/partner/orders
+@authorize partner
+@openapi tag Partner API
+';
+
+comment on function partner_create_order(_partner_id text, _order_json text) is '
+HTTP POST /api/partner/orders
+@authorize partner
+@openapi tag Partner API
+';
1 2 3 4 5 6 7 8 9 10 11
Both endpoints group under a single Partner API section in Swagger UI instead of the default public tag.
-- Lives in partner schema, but marked hidden — won't appear in the partner document.
+comment on function partner.diagnostic_check() is '
+HTTP GET /api/partner/_diagnostic
+@authorize partner
+@openapi hide
+';
Rename and optionally retype individual endpoint parameters. This provides better API ergonomics by replacing positional parameter names ($1, $2) or internal parameter names (_old_name) with cleaner, user-facing names.
Works on all endpoint types — functions, procedures, and SQL file endpoints.
TIP
The @param keyword is shared with the PARAMETER_HASH annotation (@param X is hash of Y). Both forms coexist without ambiguity — the parser distinguishes them by the presence of hash of in the annotation.
@param <old_name> <new_name>
+@param <old_name> <new_name> <type>
+@param <old_name> is <new_name>
+@param <old_name> is <new_name> <type>
+@param <old_name> default <value>
+@param <old_name> <new_name> default <value>
+@param <old_name> <new_name> <type> default <value>
+@param <old_name> is <new_name> default <value>
+@param <old_name> is <new_name> <type> default <value>
+
+# `=` can be used instead of `default` in all forms above:
+@param <old_name> = <value>
+@param <old_name> <new_name> = <value>
+@param <old_name> <new_name> <type> = <value>
+@param <old_name> is <new_name> = <value>
+@param <old_name> is <new_name> <type> = <value>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
old_name: The original parameter name (e.g., $1, $2, or _old_name)
new_name: The new parameter name for the HTTP API. Used as-is — no name conversion is applied. If you write @param $1 authorId, the HTTP parameter name is exactly authorId, not author_id or author-id.
type: Optional PostgreSQL type override (e.g., integer, text, boolean)
Both @param and @parameter (long form) are supported.
SQL files use PostgreSQL positional parameters ($1, $2, ...) which aren't user-friendly as HTTP parameter names. Use @param to give them meaningful names:
sql
sql
-- sql/get_reports.sql
+-- HTTP GET
+-- @param $1 from_date
+-- @param $2 to_date
+select id, title, created_at
+from reports
+where created_at between $1 and $2;
1 2 3 4 5 6 7
Without rename: GET /api/get-reports?$1=2024-01-01&$2=2024-12-31
With rename: GET /api/get-reports?from_date=2024-01-01&to_date=2024-12-31
The is keyword is optional and provides consistency with the existing @param X is hash of Y style:
sql
sql
-- These are equivalent:
+-- @param $1 user_id
+-- @param $1 is user_id
+
+-- With type override:
+-- @param $1 user_id integer
+-- @param $1 is user_id integer
Renamed parameters work with user_parameters claim mapping. When you rename a positional parameter to a claim-mapped name (like _user_id or _user_name), the parameter is automatically filled from the authenticated user's claims — just like it would be for a native function parameter.
GET /api/get-my-profile (authenticated as user123) → [{"userId": "user123", "userName": "user"}]
The parameters are auto-filled from claims — the client doesn't need to send them. This is especially useful for SQL file endpoints where positional parameters ($1, $2) have no inherent name for claim matching.
SQL file parameters can have default values via @param. When a parameter with a default is not provided in the request, the default value is bound instead of returning 404.
This is essential for SQL files because positional parameters ($1, $2) must always be bound — unlike PostgreSQL functions where the engine applies its own defaults.
When a parameter type is a known composite type, the parameter is treated as a single text value. The SQL is never rewritten — it stays exactly as written.
The framework makes the HTTP call and passes the response as a composite text value automatically.
Client-sent composite types:
sql
sql
-- @param $1 data my_composite_type
+select ($1::my_composite_type).field1, ($1::my_composite_type).field2;
1 2
The client sends the value as PostgreSQL composite text format: ?data=("val1","val2").
If the type in @param is not a recognized PostgreSQL type or composite type, a warning is logged and the parameter keeps its original type from Describe.
Hash one parameter value using another parameter as the hash input. This annotation is commonly used to create user registration endpoints that securely store hashed passwords in the database.
The param is hash of annotation works together with the LOGIN annotation to provide a complete authentication flow using the same built-in password hasher:
Registration: Use param <target> is hash of <source> to hash passwords before storing them
Login: Return the stored hash in a hash column and NpgsqlRest verifies it automatically
create function register(_email text, _password text, _hash text)
+returns int
+language sql
+begin atomic;
+insert into users (email, password_hash) values (_email, _hash) returning id;
+end;
+
+comment on function register(text, text, text) is '
+HTTP POST /auth/register
+@param _hash is hash of _password
+@sensitive
+';
create function login(_email text, _password text)
+returns table(hash text, id int, name text, email text)
+language sql
+begin atomic;
+select u.password_hash as hash, u.id, u.name, u.email
+from users u where u.email = _email;
+end;
+
+comment on function login(text, text) is '
+HTTP POST /auth/login
+@login
+@sensitive
+';
1 2 3 4 5 6 7 8 9 10 11 12 13
Both functions use the same PBKDF2 hasher, ensuring passwords hashed during registration can be verified during login.
Several comment annotations accept a {name} placeholder in their value. At request time, {name} is replaced with the value of the routine parameter name taken from that request. This lets a single endpoint produce a response header, file name, upload path, or outbound HTTP call that depends on what the caller sent.
This is one shared mechanism reused by a few annotations — this page documents it once; each annotation page links here.
sql
sql
create function export_report(_type text, _file text)
+returns text language sql as $$ select '...report...' $$;
+
+comment on function export_report(text, text) is '
+HTTP GET
+Content-Type: {_type}
+Content-Disposition: attachment; filename={_file}
+';
1 2 3 4 5 6 7 8
A request GET /api/export-report?type=text/csv&file=q1.csv responds with Content-Type: text/csv and Content-Disposition: attachment; filename=q1.csv.
Other annotations do not perform this substitution. (Braces in unrelated annotations — e.g. a URL {segment} in PATH — are a different feature; see Not to be confused with.)
For each request, NpgsqlRest builds a lookup from the bound parameters (plus any allowlisted environment variables) and replaces every {name} it finds:
The name is matched case-insensitively.{userId}, {USERID}, and {userid} all resolve the same parameter. (Consistent with how PostgreSQL folds unquoted identifiers, and with resolved parameter expressions.)
Both names work. A placeholder matches either the original PostgreSQL parameter name (e.g. {_user_id}) or its converted (camelCase) name (e.g. {userId}). For HTTP custom types, the type field name also matches.
NULL or a missing value → empty string. If the parameter is SQL NULL (or not supplied), {name} becomes `` (nothing).
An unknown name is left untouched — and warned about. If name matches no parameter, the literal text {name} is kept verbatim in the output, and NpgsqlRest logs a build-time warning naming the placeholder, so typos (e.g. {_fil} for {_file}) surface at startup instead of silently shipping literal text. (The warning only fires for response headers and custom parameters, and only when the placeholder looks like an identifier — {0} or JSON-like {"a":1} are never treated as placeholders.)
Substitution is per-request, evaluated against the actual values bound for that call — not fixed when the endpoint is created.
Zero overhead when unused. A value is only scanned when it actually contains braces, so endpoints without placeholders pay nothing.
There is no escape sequence for a literal brace. A {...} whose inner text doesn't match a parameter is simply passed through unchanged (so {not_a_param} survives literally), but you cannot force a literal {userId} when userIdis a parameter.
A stray } with no opening {, and an unclosed {, are passed through as-is.
A {name} can also resolve to an environment variable — useful for outbound API keys (HTTP custom types) or per-deployment values like a server/environment name in a response header — without routing them through request parameters.
This is opt-in via an allowlist: only environment variables you name in NpgsqlRest:AvailableEnvVars can be referenced. Any other {NAME} is never read from the environment (it stays literal, like an unknown parameter). The allowlist is the security boundary — there is no way to substitute an arbitrary env var.
jsonc
jsonc
"NpgsqlRest": {
+ // array form — a missing variable resolves to an empty string
+ "AvailableEnvVars": [ "WEATHER_API_KEY", "SERVER_NAME" ]
+
+ // …or object form — name → default used when the variable is absent
+ // "AvailableEnvVars": { "SERVER_NAME": "local" }
+}
1 2 3 4 5 6 7
sql
sql
comment on type weather_api is '
+GET https://api.example.com/v1/current?city={_city}
+Authorization: Bearer {WEATHER_API_KEY}
+';
1 2 3 4
Here {_city} comes from a request parameter and {WEATHER_API_KEY} from the allowlisted environment variable — the API key never has to be passed by the caller.
Rules specific to env vars:
Resolved once at startup. The process environment is read when the app starts; changing a variable requires a restart (e.g. a new pod).
Case-insensitive, same as parameters ({server_name} resolves SERVER_NAME).
A routine parameter of the same name wins. If a request parameter and an allowlisted env var share a name, the parameter value is used.
A value substituted into a response header is sent to the caller. That's exactly what you want for a per-pod Server: {SERVER_NAME} header, but it means you must not put a secret env var in a response header. Reserve secrets (API keys, tokens) for outbound HTTP custom type calls and custom parameters, which stay server-side.
comment on function get_invoice(_id int, _filename text) is '
+HTTP GET
+Content-Type: application/pdf
+Content-Disposition: attachment; filename={_filename}
+';
See HTTP Custom Types. The URL, headers, and body of the proxied call accept placeholders — mix request parameters with an allowlisted environment variable so the API key never has to be passed by the caller:
sql
sql
comment on type weather_api is '
+GET https://api.example.com/v1/current?city={_city}
+Authorization: Bearer {WEATHER_API_KEY}
+';
create function get_user_data()
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function get_user_data() is
+'HTTP GET
+@path /users/data';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-user-data.sql):
sql
sql
-- HTTP GET
+-- @path /users/data
+select row_to_json(u) from users u where id = current_user_id();
create function get_user(user_id int)
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function get_user(int) is
+'HTTP GET
+@path /users/{user_id}';
create function get_user_order(user_id int, order_id int)
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function get_user_order(int, int) is
+'HTTP GET
+@path /users/{user_id}/orders/{order_id}';
1 2 3 4 5 6 7 8 9 10
Call: GET /users/42/orders/123 → user_id = 42, order_id = 123
Optional path parameters were added in version 3.8.0.
Path parameters support the ASP.NET Core optional parameter syntax {param?}. When a path parameter is marked as optional and the corresponding PostgreSQL function parameter has a default value, omitting the URL segment will use the PostgreSQL default:
sql
sql
create function get_item(p_id int default 42)
+returns text
+language sql
+begin atomic;
+select p_id::text;
+end;
+
+comment on function get_item(int) is '
+HTTP GET /items/{p_id?}
+';
create function get_item(p_id int default null)
+returns text
+language sql
+begin atomic;
+select p_id::text;
+end;
+
+comment on function get_item(int) is '
+HTTP GET /items/{p_id}
+query_string_null_handling null_literal
+';
The proxy_out annotation reverses the flow of the existing proxy annotation. Instead of forwarding the incoming request to upstream, proxy_out forwards the outgoing function result.
This enables a common pattern where business logic in PostgreSQL prepares a payload, and an external service performs processing that PostgreSQL cannot do — PDF rendering, image processing, ML inference, email sending, etc.
code
Client Request → NpgsqlRest
+ → Execute PostgreSQL function
+ → Forward function result as request body to upstream service
+ → Append the original request path and query string to the upstream host
+ → Return upstream response to client
1 2 3 4 5
The client-facing HTTP method and the upstream HTTP method are independent — the client can send a GET while the upstream receives a POST.
The upstream URL is built the same way as for proxy — the incoming request path and query string are appended to the host:
The difference from proxy is only the direction of the body: proxy_out sends the function's result as the request body to the upstream, whereas proxy sends the incoming request body.
create function generate_report(report_id int)
+returns json
+language plpgsql as $$
+begin
+ return json_build_object(
+ 'title', 'Monthly Report',
+ 'data', (select json_agg(row_to_json(t)) from sales t where month = report_id)
+ );
+end;
+$$;
+
+comment on function generate_report(int) is 'HTTP GET
+@proxy_out POST https://render-service.internal/render';
1 2 3 4 5 6 7 8 9 10 11 12 13
Equivalent as a SQL file endpoint (sql/generate-report.sql):
sql
sql
/*
+HTTP GET
+@proxy_out POST https://render-service.internal/render
+@param $1 report_id
+*/
+select json_build_object(
+ 'title', 'Monthly Report',
+ 'data', (select json_agg(row_to_json(t)) from sales t where month = $1)
+);
1 2 3 4 5 6 7 8 9
The client calls GET /api/generate-report/?reportId=3. The server:
Executes generate_report(3) in PostgreSQL.
Takes the returned JSON and POSTs it to https://render-service.internal/render/api/generate-report/?reportId=3 (original query string forwarded).
Returns the upstream response (e.g., a rendered PDF) directly to the client with the upstream's content-type and status code.
The original client request path and query string are both appended to the upstream host as-is (host + path + query). This lets the upstream receive the same path and parameters that were used to invoke the function:
sql
sql
create function generate_report(p_format text, p_id int)
+returns json
+language plpgsql as $$
+begin
+ return json_build_object('id', p_id, 'data', 'report');
+end;
+$$;
+
+comment on function generate_report(text, int) is 'HTTP GET
+@proxy_out POST';
1 2 3 4 5 6 7 8 9 10
With ProxyOptions.Host = "https://api.example.com", calling GET /api/generate-report/?pFormat=pdf&pId=123 executes the function, then POSTs the result body to https://api.example.com/api/generate-report/?pFormat=pdf&pId=123 — both the path and query string are appended.
To send the result to a fixed upstream path instead, put it in the annotation host (e.g. @proxy_out POST https://api.example.com/render, which forwards to https://api.example.com/render/api/generate-report/?...), or change the endpoint path with HTTP <method> <path>.
Self-calls are the exception
For a relative self-call (host starting with /, e.g. @proxy_out POST /api/processor), the annotation path is the full target and the incoming request path is not appended.
If the function fails (database error, exception), the error is returned directly to the client — the proxy call is never made.
If the upstream fails (5xx, timeout, connection error), the upstream's error status and body are forwarded to the client (502 for connection errors, 504 for timeouts).
Prepare data in PostgreSQL and render it as a PDF via an external service:
sql
sql
create function invoice_pdf(invoice_id int)
+returns json
+language plpgsql as $$
+begin
+ return json_build_object(
+ 'invoice_number', invoice_id,
+ 'items', (select json_agg(row_to_json(i)) from invoice_items i where i.invoice_id = invoice_pdf.invoice_id),
+ 'total', (select sum(amount) from invoice_items where invoice_items.invoice_id = invoice_pdf.invoice_id)
+ );
+end;
+$$;
+
+comment on function invoice_pdf(int) is 'HTTP GET
+@proxy_out POST https://pdf-service.internal/render';
Prepare email content in PostgreSQL and send via an email service:
sql
sql
create function send_welcome_email(user_id int)
+returns json
+language plpgsql as $$
+declare
+ u record;
+begin
+ select * into u from users where id = user_id;
+ return json_build_object(
+ 'to', u.email,
+ 'subject', 'Welcome to Our Platform',
+ 'body', format('Hello %s, welcome!', u.display_name)
+ );
+end;
+$$;
+
+comment on function send_welcome_email(int) is 'HTTP POST
+@proxy_out POST https://email-service.internal/send';
The TypeScript client generator (NpgsqlRest.TsClient) recognizes proxy_out endpoints and generates functions that return the raw Response object. Since the actual response comes from the upstream proxy service (not from the PostgreSQL function's return type), the generated function returns Promise<Response>:
The proxy annotation marks an endpoint as a reverse proxy. When a request arrives, NpgsqlRest forwards it to an upstream service and either returns the response directly (passthrough mode) or passes it to your PostgreSQL function for processing (transform mode).
This is the most important thing to understand about @proxy. The function still becomes a normal NpgsqlRest endpoint with its usual URL (auto-generated from the function name, or whatever you set with HTTP <method> <path>). When a request hits that endpoint, NpgsqlRest builds the upstream URL by appending the incoming request path and query string to the host:
The host is the value from the annotation (@proxy https://...) if present, otherwise the global ProxyOptions.Host. The path is not the function name directly — it is the actual path the client used to reach the endpoint (which, by default, is derived from the function name).
Walkthrough: what does the basic example call?
sql
sql
create function get_external_data()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function get_external_data() is 'HTTP GET
+@proxy';
The function is exposed at its default endpoint: GET /api/get-external-data/.
A client calls GET /api/get-external-data/?id=42 on your NpgsqlRest server.
NpgsqlRest forwards it to the host with the same path and query appended:
GET https://api.example.com/api/get-external-data/?id=42
The upstream response is streamed straight back to the client (passthrough — no database connection is opened).
So @proxy alone is a mirror: it forwards each request to the same path on a different host. To forward to a different path, either change the endpoint path (HTTP GET /v1/data, which then forwards to https://api.example.com/v1/data) or use an absolute/relative URL in the annotation (see URL Resolution below).
Host is required
If neither the annotation nor ProxyOptions.Host provides a host, the endpoint responds with 500 and "Proxy host is not configured." The bare @proxy form only works when ProxyOptions.Host is set.
For simple proxy forwarding without database processing:
sql
sql
create function get_external_data()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function get_external_data() is 'HTTP GET
+@proxy';
1 2 3 4 5 6 7 8 9
Equivalent as a SQL file endpoint (sql/get-external-data.sql):
sql
sql
-- HTTP GET
+-- @proxy
+select;
1 2 3
When the function has no proxy response parameters, the upstream response is returned directly to the client without opening a database connection. The function body itself (select;) is never executed — it exists only to declare the endpoint and its annotations.
To process the upstream response in PostgreSQL, add one or more proxy response parameters to the function. Their presence is what switches the endpoint from passthrough into transform mode:
sql
sql
create function get_and_transform(
+ _proxy_status_code int default null,
+ _proxy_body text default null,
+ _proxy_headers json default null,
+ _proxy_content_type text default null,
+ _proxy_success boolean default null,
+ _proxy_error_message text default null
+)
+returns json
+language plpgsql as $$
+begin
+ if not _proxy_success then
+ return json_build_object('error', _proxy_error_message);
+ end if;
+ return json_build_object(
+ 'status', _proxy_status_code,
+ 'data', _proxy_body::json
+ );
+end;
+$$;
+
+comment on function get_and_transform(int, text, json, text, boolean, text) is 'HTTP GET
+@proxy';
In transform mode the order of operations is: forward the request to the upstream → collect the response → execute the PostgreSQL function with the response values bound to its proxy parameters → return the function's result to the client. The function output (not the raw upstream response) is what the client receives.
The proxy target host is resolved with the following priority:
Annotation URL — if the annotation includes a URL (absolute or relative), it is used. The global ProxyOptions.Host is ignored.
Global ProxyOptions.Host — used only when the annotation has no URL (e.g., @proxy or @proxy POST).
In every case except a relative self-call, the incoming request path and query string are then appended to the resolved host (host + request path + query). For relative self-calls (host starting with /), the annotation path is the full target and the incoming path is not appended.
Annotation
ProxyOptions.Host
Resolved Target
Self-Call?
@proxy
https://api.example.com
https://api.example.com + request path
No
@proxy POST
https://api.example.com
https://api.example.com + request path
No
@proxy https://other.com
https://api.example.com
https://other.com + request path
No
@proxy POST /api/data
https://api.example.com
/api/data (internal)
Yes
@proxy /api/data
https://api.example.com
/api/data (internal)
Yes
@proxy /api/data
null
/api/data (internal)
Yes
Important
A relative path in the annotation (starting with /) always creates a self-referencing internal call, regardless of the ProxyOptions.Host setting. The global host is never prepended to relative paths.
When the PostgreSQL function has parameters whose names match the configured proxy parameter names, the upstream response data is bound to them after the request returns:
Parameter Name
Type
Description
_proxy_status_code
int or text
HTTP status code from upstream (e.g., 200, 404). Bound as text if the parameter is declared text/varchar, otherwise as an integer.
_proxy_body
text
Response body content. null if empty.
_proxy_headers
json
Response headers as a JSON object.
_proxy_content_type
text
Content-Type header value.
_proxy_success
boolean
true for 2xx status codes.
_proxy_error_message
text
Error message if the request failed (timeout, connection error, etc.); null otherwise.
Matched by name, not position. Each parameter is identified by its name (case-insensitive), so order and placement in the signature are irrelevant. You can mix proxy parameters freely with regular parameters.
Declare only the ones you need. None of the six are required — include just the parameters your function uses. The presence of any one of them is what puts the endpoint in transform mode.
Not read from the request. Proxy response parameters are never supplied by the caller — NpgsqlRest sets a placeholder before the upstream call and overwrites it with the real value afterwards, then passes it to the function. Declaring them with default null (as in the examples) is the recommended convention: it documents intent and keeps the function directly callable from SQL.
Regular parameters work as usual. Any non-proxy parameter (e.g. city, report_id) is bound from the request (query string, body, route) exactly like a normal endpoint, and is available to the function. For @proxy, those request values are also forwarded to the upstream as part of the forwarded path/query/body.
The names are configurable. Override them under ProxyOptions (ResponseStatusCodeParameter, ResponseBodyParameter, ResponseHeadersParameter, ResponseContentTypeParameter, ResponseSuccessParameter, ResponseErrorMessageParameter) if the defaults clash with your own parameter names.
The function then uses those names instead of the defaults:
sql
sql
create function get_and_transform(
+ status int default null,
+ body text default null,
+ ok boolean default null
+)
+returns json
+language plpgsql as $$
+begin
+ if not ok then
+ return json_build_object('error', 'upstream failed');
+ end if;
+ return json_build_object('status', status, 'data', body::json);
+end;
+$$;
+
+comment on function get_and_transform(int, text, boolean) is 'HTTP GET
+@proxy';
-- Users service
+create function users_api()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function users_api() is 'HTTP GET /api/users
+@proxy https://users-service.internal:8080';
+
+-- Orders service
+create function orders_api()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function orders_api() is 'HTTP GET /api/orders
+@proxy https://orders-service.internal:8080';
Fetch external data and enrich it with local data:
sql
sql
create function get_enriched_weather(
+ city text,
+ _proxy_status_code int default null,
+ _proxy_body text default null,
+ _proxy_success boolean default null
+)
+returns json
+language plpgsql as $$
+declare
+ local_data json;
+begin
+ -- Get local city preferences
+ select json_build_object('favorite', is_favorite, 'notes', notes)
+ into local_data
+ from user_city_preferences
+ where city_name = city;
+
+ if not _proxy_success then
+ return json_build_object('error', 'Weather API unavailable');
+ end if;
+
+ return json_build_object(
+ 'weather', _proxy_body::json,
+ 'local', coalesce(local_data, '{}'::json)
+ );
+end;
+$$;
+
+comment on function get_enriched_weather(text, int, text, boolean) is 'HTTP GET /v1/current
+@proxy https://api.weather.com';
A client request to GET /v1/current?city=London is forwarded to https://api.weather.com/v1/current?city=London — the endpoint path and the incoming query string are appended to the host. The city value also populates the city parameter so it is available to the function for the local lookup.
No URL templating
The annotation host is used literally — there is no {city}-style substitution. Dynamic values reach the upstream only through the forwarded request path and query string (and, optionally, user_parameters). Do not put placeholders like ?city={city} in the host; they are forwarded verbatim.
Use NpgsqlRest as an authenticating gateway: it verifies the caller, then forwards the request to a protected upstream service along with the caller's identity as HTTP headers. This is a passthrough proxy — the function does no work, so it needs no body and no proxy parameters:
sql
sql
create function secure_api_call()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function secure_api_call() is 'HTTP GET
+@authorize
+@user_context
+@proxy https://secure-api.internal/data';
1 2 3 4 5 6 7 8 9 10 11
On a proxy endpoint, @user_context adds the caller's identity to the upstream request as HTTP headers: the claims JSON, the client IP, and one header per entry in ContextKeyClaimsMapping (e.g. request.user_id, request.user_name, request.user_roles). The upstream can trust these headers because the request was authenticated by the gateway, so it never re-authenticates.
In this passthrough example the function never runs, so header forwarding is the only effect. In transform mode the function does run, and there @user_context additionally sets the usual PostgreSQL session context for it — so the function can read the caller's identity while the upstream still receives the headers.
Forward user claims to the upstream as query string parameters:
sql
sql
create function proxy_with_user(
+ _user_id text default null, -- filled from the caller's user-id claim by @user_params,
+ -- then forwarded to the upstream as ?userId=...
+ _proxy_body text default null
+)
+returns json language plpgsql as $$
+begin
+ -- _user_id is sent to the upstream automatically; the function reads only the response here.
+ return _proxy_body::json;
+end;
+$$;
+
+comment on function proxy_with_user(text, text) is 'HTTP GET
+@authorize
+@user_params
+@proxy https://api.internal/user-data';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
With @user_params, _user_id is populated from the authenticated user's claim (not from the request) and appended to the upstream URL using the camelCase form of the parameter name. A call to GET /api/proxy-with-user/ is forwarded to:
GET https://api.internal/user-data/api/proxy-with-user/?userId=<claim value>
The function may also read _user_id directly if it needs the value — but it doesn't have to for the value to reach the upstream.
query_null_handling, query_string_null, query_null (with or without @ prefix)
Controls how clients can pass NULL values to PostgreSQL function parameters via query string.
Since query strings can only contain text values, there's no native way to represent SQL NULL. This annotation defines what query string value should be interpreted as NULL.
create function get_nullable_param(_t text)
+returns text
+language sql
+begin atomic;
+select _t;
+end;
+
+comment on function get_nullable_param(text) is '
+@query_string_null_handling empty_string
+';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-nullable-param.sql):
sql
sql
/*
+HTTP GET
+@query_string_null_handling empty_string
+@param $1 t
+*/
+select $1;
create function get_data(_filter text)
+returns text
+language sql
+begin atomic;
+select _filter;
+end;
+
+comment on function get_data(text) is '
+@query_string_null_handling null_literal
+';
create function search(_query text)
+returns text
+language sql
+begin atomic;
+select _query;
+end;
+
+comment on function search(text) is '
+@query_string_null_handling ignore
+';
Path parameter interaction with null_literal mode was added in version 3.8.0.
The null_literal mode also works with path parameters. When combined with optional path parameters, you can pass NULL via the literal string "null" in the URL path:
sql
sql
create function get_item(p_id int default null)
+returns text
+language sql
+begin atomic;
+select p_id::text;
+end;
+
+comment on function get_item(int) is '
+HTTP GET /items/{p_id}
+query_string_null_handling null_literal
+';
If the policy name doesn't match any configured policy, rate limiting won't be applied
Returns 429 Too Many Requests when limit exceeded (status code and message are configurable)
Policy defines requests per time window based on the policy type (FixedWindow, SlidingWindow, TokenBucket, or Concurrency)
Policies with a Partition block bucket requests per-user / per-IP / per-header instead of using a single global bucket
The policy applies to HTTP requests hitting this endpoint's route. It is not consulted when the endpoint is invoked in-process — via HTTP client type self-calls, proxy self-calls, or MCP tools/call (use McpOptions.RateLimiterPolicy for agent traffic). See Rate Limiting Scope
create function get_plain_text()
+returns text
+language sql
+begin atomic;
+select 'Hello, World!';
+end;
+
+comment on function get_plain_text() is
+'HTTP GET
+@raw';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-plain-text.sql):
sql
sql
-- HTTP GET
+-- @raw
+select 'Hello, World!';
1 2 3
Response: Hello, World! (plain text, no JSON wrapping)
create function get_user_info()
+returns table(name text, email text)
+language sql
+begin atomic;
+select name, email from users limit 1;
+end;
+
+comment on function get_user_info() is
+'HTTP GET
+@raw';
create function export_data()
+returns table(a text, b text, c text)
+language sql
+begin atomic;
+...;
+end;
+
+comment on function export_data() is
+'HTTP GET
+@raw
+@separator |
+@new_line \n';
The bare value keywords also work as standalone annotations: query_string / query (same as @request_param_type query_string) and body_json / body (same as @request_param_type body_json).
Control how parameters are transmitted to the endpoint - via query string or request body.
create function search_users(_name text, _active bool)
+returns setof users
+language sql
+begin atomic;
+select * from users where name ilike '%' || _name || '%' and active = _active;
+end;
+
+comment on function search_users(text, bool) is
+'HTTP GET
+@request_param_type query_string';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/search-users.sql):
sql
sql
/*
+HTTP GET
+@request_param_type query_string
+@param $1 name
+@param $2 active boolean
+*/
+select * from users where name ilike '%' || $1 || '%' and active = $2;
1 2 3 4 5 6 7
Request: GET /api/search-users?_name=john&_active=true
create function get_filtered_data(_filters text)
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function get_filtered_data(text) is
+'HTTP GET
+@request_param_type body_json';
1 2 3 4 5 6 7 8 9 10
Request:
http
http
GET /api/get-filtered-data
+Content-Type: application/json
+
+{"_filters": "status=active"}
-- Using '@param_type' instead of '@request_param_type'
+comment on function func1(text) is
+'HTTP
+@param_type query';
+
+-- Using 'BODY' (case-insensitive)
+comment on function func2(text) is
+'HTTP
+@param_type BODY';
create function quick_action(_id int)
+returns text
+language sql
+begin atomic;
+...;
+end;
+
+comment on function quick_action(int) is
+'HTTP POST
+@param_type query_string';
A resolved parameter has its value computed server-side from a SQL expression at request time, instead of being supplied by the client. You declare it with a param_name = <sql> comment annotation where param_name matches a real routine parameter.
This is how you inject a value the caller must not provide or see — a DB-stored API token, a secret, or anything derived in SQL — into the routine and into {name} placeholder substitution (response headers, custom parameters, and HTTP custom type URL/headers/body).
sql
sql
comment on function get_secure_data(_user_id int, _req my_api_type, _token text) is '
+HTTP GET
+_token = select api_token from user_tokens where user_id = {_user_id}
+';
1 2 3 4
The client calls GET /api/get-secure-data/?user_id=42; the server runs select api_token from user_tokens where user_id = 42, binds the result to _token, and uses it wherever {_token} appears. The token never leaves the server, and a client &token=hacked is ignored.
parameter_name must match an actual routine parameter (by its PostgreSQL name). If the key doesn't match a parameter, it's treated as a custom parameter instead.
<sql expression> is any scalar SQL expression — a column read, a subquery, a function call, concatenation, coalesce, etc. It is run with ExecuteScalar, so it must return a single value.
It may contain {name} placeholders referencing other parameters (resolved case-insensitively, by actual or converted name), which are passed as safe $N parameters — never string-concatenated.
Server-side only. The resolved value cannot be overridden by client input. Even if the client sends &token=hacked, the SQL-resolved value wins.
Runs before the call. Resolved expressions execute before the outbound HTTP-type request and before placeholder substitution, so the resolved value is available everywhere the parameter is referenced.
NULL handling. If the expression returns no rows or NULL, the parameter becomes SQL NULL (an empty string in placeholder substitution).
SQL-injection safe.{name} placeholders inside the expression are converted to positional $N parameters.
Sequential. Multiple resolved expressions run one-by-one on the same connection, in annotation order. A later expression can reference an earlier resolved parameter.
Works with claims. Expressions can reference parameters auto-filled from JWT claims via user parameters, enabling fully zero-input authenticated calls.
Hidden from callers. A resolved parameter is excluded from the client input surface and from MCP tools/list input schemas — an agent or caller can neither see nor set it.
Inject a DB-stored API token into an outbound call
sql
sql
comment on type weather_api is 'GET https://api.example.com/v1/current?city={_city}
+Authorization: Bearer {_api_key}';
+
+comment on function get_weather(_city text, _api weather_api, _api_key text) is '
+HTTP GET
+_api_key = select token from weather_tokens order by fetched_at desc limit 1
+';
1 2 3 4 5 6 7
The caller supplies only _city. _api_key is read from weather_tokens per request, so it always reflects the latest token — useful when a separate refresh/login routine periodically writes a new token into that table. (Pair it with pg_cron or a refresh routine to keep the row current; a tight-expiry variant: … where expires_at > now() order by fetched_at desc limit 1.)
create function get_html_page()
+returns text
+language sql
+begin atomic;
+select '<html><body><h1>Hello</h1></body></html>';
+end;
+
+comment on function get_html_page() is
+'HTTP GET
+Content-Type: text/html';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-html-page.sql):
sql
sql
/*
+HTTP GET
+Content-Type: text/html
+*/
+select '<html><body><h1>Hello</h1></body></html>';
create function set_cookies()
+returns text
+language sql
+begin atomic;
+select 'OK';
+end;
+
+comment on function set_cookies() is
+'HTTP GET
+Set-Cookie: session=abc123
+Set-Cookie: theme=dark
+Set-Cookie: lang=en';
create function get_static_config()
+returns json
+language sql
+begin atomic;
+select config from app_config where id = 1;
+end;
+
+comment on function get_static_config() is
+'HTTP GET
+Cache-Control: public, max-age=3600';
create function export_report()
+returns text
+language sql
+begin atomic;
+...;
+end;
+
+comment on function export_report() is
+'HTTP GET
+@authorize manager
+Content-Type: text/csv
+Content-Disposition: attachment; filename="report.csv"
+Cache-Control: no-cache';
Header values can include parameter values using the {param_name} template syntax. The matching and substitution rules (case-sensitivity, NULL handling, etc.) are shared across annotations — see Parameter Value Substitution.
sql
sql
create function export_report(_type text, _file text)
+returns text
+language sql
+begin atomic;
+...;
+end;
+
+comment on function export_report(text, text) is
+'HTTP GET
+@authorize manager
+Content-Type: {_type}
+Content-Disposition: attachment; filename={_file}
+Cache-Control: no-cache';
1 2 3 4 5 6 7 8 9 10 11 12 13
Request: GET /api/export-report?_type=text/csv&_file=report.csv
create function cors_endpoint()
+returns json
+language sql
+begin atomic;
+select '{}'::json;
+end;
+
+comment on function cors_endpoint() is
+'HTTP GET
+Access-Control-Allow-Origin: *
+Access-Control-Allow-Methods: GET, POST
+Access-Control-Allow-Headers: Content-Type';
1 2 3 4 5 6 7 8 9 10 11 12
Note: To configure CORS centrally (origins, methods, credentials, preflight), use the CORS configuration instead.
Rename the default result keys (result1, result2, ...) in multi-command SQL file endpoints. This makes the response JSON more descriptive and easier to consume.
This annotation only applies to multi-command SQL file endpoints (files with multiple SQL statements separated by ;).
Commands without a @result annotation keep their default auto-generated key:
sql
sql
-- sql/process_order.sql
+-- HTTP POST
+-- @param $1 order_id
+-- @result validate
+select count(*) from orders where id = $1;
+update orders set status = 'processing' where id = $1;
+-- @result confirm
+select id, status from orders where id = $1;
1 2 3 4 5 6 7 8
POST /api/process-order with {"order_id": 42} returns:
-- Use aggressive retry for critical operations
+comment on function process_payment() is
+'HTTP POST
+@retry aggressive';
+
+-- Use minimal retry for fast queries
+comment on function quick_lookup() is
+'HTTP GET
+@retry minimal';
1 2 3 4 5 6 7 8 9
See Command Retry for complete configuration reference.
Skip the PostgreSQL Describe step for a statement and resolve return columns from a composite type instead. This is a positional annotation — it applies to the next statement below it.
Composite type name — schema-qualified (e.g., public.my_type) or unqualified (e.g., my_type). Columns resolved from the type definition.
Scalar type — any built-in PostgreSQL type (e.g., integer, text, boolean, jsonb). Declares a single-column result. Only the first column from the query is used at runtime.
void — no columns, no results.
This annotation skips the PostgreSQL Describe step entirely for the annotated statement. The statement's SQL is never sent to PostgreSQL during startup.
-- HTTP GET
+-- @param $1 val1 text
+-- @param $2 val2 integer
+begin;
+select set_config('app.val1', $1, true); -- @skip
+select set_config('app.val2', $2::text, true); -- @skip
+do $$ begin
+ create temp table _result on commit drop as
+ select current_setting('app.val1') as val1,
+ current_setting('app.val2')::int as val2,
+ true as active;
+end; $$;
+-- @returns my_result_type
+-- @result data
+-- @single
+select * from _result;
+end;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Where my_result_type is defined as:
sql
sql
create type my_result_type as (
+ val1 text,
+ val2 integer,
+ active boolean
+);
1 2 3 4 5
Without @returns, the select * from _result statement fails at startup because the temp table doesn't exist yet. With @returns my_result_type, the columns are resolved from the composite type definition in pg_catalog.
Use @returns void to skip Describe for statements that return no results:
sql
sql
-- HTTP POST
+-- @param $1 key text
+-- @param $2 value text
+-- @returns void
+select set_config($1, $2, false);
+-- @result data
+select current_setting($1, true) as result;
1 2 3 4 5 6 7
The first statement's Describe is skipped entirely. In multi-command files, it produces a rows-affected count in the response. For single-command files, it makes the endpoint void (returns 204 No Content).
The Describe step is skipped entirely for annotated statements — the SQL is never sent to PostgreSQL during startup
For composite types: the type must exist in the database at startup. If not found, an error is logged and the file is skipped or exits (depending on ErrorMode)
For void: the statement is treated as returning no columns (zero-column result)
No parameter type inference happens for the skipped statement — other statements in the same multi-command file provide parameter types
At runtime, the actual query result must match the declared type's column structure — mismatches may produce incorrect output
Can be combined with other positional annotations like @result, @single, @skip
@returns void vs @void
For single-command SQL files, @returns void has the same runtime effect as @void — both return 204 No Content. The difference: @returns voidskips the Describe step (the SQL is never sent to PostgreSQL at startup), while @void still runs Describe and only changes the runtime response. Use @returns void when the statement would fail Describe (e.g., references a temp table). Use @void when Describe succeeds but you don't want any response.
create function change_password(_old_password text, _new_password text)
+returns boolean
+language sql
+begin atomic;
+...;
+end;
+
+comment on function change_password(text, text) is
+'HTTP POST
+@authorize
+@sensitive';
1 2 3 4 5 6 7 8 9 10 11
Equivalent as a SQL file endpoint (sql/change-password.sql):
create function authenticate(_username text, _password text)
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function authenticate(text, text) is
+'HTTP POST
+@login
+@sensitive';
By default, all endpoints return results as a JSON array, even when only one row is returned. With the @single annotation, the result is returned as a plain JSON object.
create function get_user(_id int)
+returns table(id int, name text, email text)
+language sql
+begin atomic;
+select id, name, email from users where id = _id;
+end;
+
+comment on function get_user(int) is 'HTTP GET /users/{_id}
+@single';
In multi-command SQL files, @single is positional — it applies to the next statement below it:
sql
sql
-- sql/process_user.sql
+-- HTTP POST
+-- @param $1 id
+-- @single
+SELECT id, name FROM users WHERE id = $1;
+UPDATE orders SET status = 'done' WHERE id = $1;
+-- @single
+SELECT id, status FROM orders WHERE id = $1;
Mark a command in a multi-command SQL file to be executed but excluded from the JSON response. The statement runs against the database, but its result is not included in the response object and it does not consume a result number.
-- sql/process_and_notify.sql
+-- HTTP POST
+-- @param $1 user_id
+-- @skip
+do $$ begin perform pg_notify('user_updated', 'event'); end; $$;
+-- @result data
+SELECT id, name FROM users WHERE id = $1;
1 2 3 4 5 6 7
Result: {"data": [{"id": 1, "name": "Alice"}]}
The DO block executes (sending the notification) but does not appear in the response.
-- sql/cleanup.sql
+-- HTTP POST
+-- @param $1 user_id
+DELETE FROM sessions WHERE user_id = $1; -- @skip
+-- @result user
+SELECT id, name FROM users WHERE id = $1;
The SkipNonQueryCommands setting (default: true) in SqlFileSource configuration automatically excludes non-query commands from the response. This covers transaction control (BEGIN, COMMIT, ROLLBACK, etc.), session commands (SET, RESET), DO blocks, and other non-query statements.
With SkipNonQueryCommands enabled (the default), you typically do not need @skip for these common cases. The @skip annotation is useful for:
Explicitly skipping DML commands (INSERT, UPDATE, DELETE) whose rows-affected count you do not want in the response
Skipping statements when SkipNonQueryCommands is set to false
Making skip intent explicit in the SQL file for documentation purposes
Control who receives Server-Sent Events from this endpoint.
Why scope matters
Every event flows through the single global broadcaster, and every connected EventSource reads from the same stream. Scope is the per-event filter that decides which subscribers actually have the event written to their response. Without scope (or with all), every subscriber sees every event from this endpoint.
comment on function team_task() is
+'HTTP POST
+@sse /team-events
+@sse_scope matching';
1 2 3 4
Equivalent as a SQL file endpoint (sql/team-task.sql):
sql
sql
/*
+HTTP POST
+@sse /team-events
+@sse_scope matching
+*/
+do $$ begin
+ raise info 'team task progress...';
+end $$;
1 2 3 4 5 6 7 8
Events are sent to clients with matching security context:
If the endpoint requires authorization, all authorized sessions receive events
If the endpoint requires specific roles, user names, or user IDs, only sessions matching those values receive events (checks DefaultRoleClaimType, DefaultNameClaimType, and DefaultUserIdClaimType)
The scope can also be set dynamically at runtime using the HINT parameter of PostgreSQL RAISE statements. This allows different events within the same function to have different scopes:
sql
sql
create function process_with_notifications()
+returns void
+language plpgsql
+as $$
+begin
+ -- This event goes to all clients
+ raise notice 'System maintenance starting...' using hint = 'all';
+
+ -- This event only goes to admins
+ raise notice 'Admin: detailed system stats...' using hint = 'authorize admin';
+
+ -- This event goes to specific users
+ raise notice 'Your task is complete' using hint = 'authorize john.doe, jane.smith';
+
+ -- This event uses the default scope from annotation
+ raise notice 'General progress update...';
+end;
+$$;
+
+comment on function process_with_notifications() is
+'HTTP POST
+@sse /process-events
+@sse_scope matching';
@sse is the only SSE annotation that affects runtime behavior on its own, and it does two independent things:
Registers a connection URL at <endpoint-path>/<level> — clients open an EventSource against it to listen.
Enables broadcasting from this procedure — RAISE statements inside this procedure's body forward their notices to the SSE broadcaster.
A procedure without @sse can RAISE whatever it wants — those notices never reach SSE subscribers.
mermaid
flowchart LR
+ A["Procedure A<br/>(@sse)"] -->|RAISE| BC[("Global Broadcaster<br/>(process-wide)")]
+ B["Procedure B<br/>(@sse)"] -->|RAISE| BC
+ X["Procedure X<br/>(no @sse)"] -. RAISE not broadcast .-> Drop((("✗")))
+ BC --> S1["Subscriber on<br/>/api/a/info"]
+ BC --> S2["Subscriber on<br/>/api/b/info"]
+ BC --> S3["Subscriber on<br/>/api/c/info"]
1 2 3 4 5 6 7
There is one process-wide broadcaster. Every connected EventSource reads from the same stream regardless of which /info URL it opened — the URL is just an entry point, not a topic name. Once a connection is established, the path it came in through is no longer used for routing.
Per-event filtering decides which subscribers actually receive each event:
The originating endpoint's scope (matching / authorize / all).
An optional RAISE ... USING HINT override, parsed as <scope> [value1] [value2] ....
Optional execution-ID correlation via the X-NpgsqlRest-ID header.
Common pitfall
The URL is not a topic. Subscribers on /api/foo/info and /api/bar/info do not see different streams — they see the same stream. If you want events from procedure B to reach clients connected to procedure A's URL, both procedures must have @sse: A so clients can connect, B so its RAISEs broadcast. See the cross-procedure pattern below.
When the path is omitted (@sse without arguments), the SSE path segment defaults to the notice level name in lowercase:
Level
SSE Path Segment
INFO (default)
info
NOTICE
notice
WARNING
warning
Example: If your endpoint path is /api/my-function and you use @sse without arguments, the SSE endpoint will be at /api/my-function/info (since INFO is the default level).
SSE events are sent only for the exact level specified, not for "this level and above".
When you set the level to NOTICE, only RAISE NOTICE statements will generate SSE events. RAISE INFO and RAISE WARNING statements will not generate SSE events for that endpoint.
Configured Level
RAISE INFO
RAISE NOTICE
RAISE WARNING
INFO
Sent
Not sent
Not sent
NOTICE
Not sent
Sent
Not sent
WARNING
Not sent
Not sent
Sent
If you need events from multiple levels, create separate SSE endpoints for each level.
create function long_running_process(_id int)
+returns void
+language plpgsql
+as $$
+begin
+ raise info 'Starting process...';
+ -- do work
+ raise info 'Progress: 50%%';
+ -- more work
+ raise info 'Complete!';
+end;
+$$;
+
+comment on function long_running_process(int) is
+'HTTP POST
+@sse events';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
If the endpoint is at /api/long-running-process, the SSE endpoint will be at /api/long-running-process/events. It receives RAISE INFO messages (the default level).
/*
+HTTP POST
+@sse events
+@param $1 _id int
+@void
+*/
+do $$
+begin
+ raise info 'Starting process...';
+ -- do work
+ raise info 'Progress: 50%%';
+ -- more work
+ raise info 'Complete!';
+end;
+$$;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
For files placed under the configured Path with the default CommentsMode, the leading comment block carries the same annotations as a function comment.
The single-procedure case (one procedure both broadcasts and exposes the URL) is straightforward. But sometimes the procedure that triggers an event isn't the one that should be the client subscription URL. Common reasons:
The trigger has restrictive authorization (e.g. manager only) but listeners are regular users.
Multiple triggers feed one logical stream — having a stable subscribe URL keeps the client code simple as new triggers are added.
The semantic name of the trigger (update_user_roles) reads wrong as a client-facing URL.
The pattern: split publish from subscribe across two procedures, each with @sse. Annotate the trigger so its RAISEs broadcast; annotate a no-op procedure so its URL is the stable client entry point. Use RAISE ... USING HINT inside the trigger to scope events per user.
mermaid
flowchart LR
+ Client["Browser<br/>EventSource"] -->|opens connection| SubURL["/api/user-events-subscribe/info"]
+ SubURL -.->|registers via @sse| SubProc["user_events_subscribe<br/>(no-op, @sse)"]
+ Manager["Manager<br/>browser"] -->|POST| EmitURL["/api/update-user-roles"]
+ EmitURL --> EmitProc["update_user_roles<br/>(@sse)"]
+ EmitProc -->|RAISE INFO<br/>using hint| BC[("Global<br/>Broadcaster")]
+ BC -->|filtered by hint| Client
-- Subscribe URL: a no-op procedure whose @sse only registers the URL.
+-- Annotated 'authorize' so any authenticated user can connect.
+create procedure user_events_subscribe()
+language plpgsql as $$ begin perform 1; end; $$;
+
+comment on procedure user_events_subscribe() is '
+HTTP GET
+@authorize
+@sse
+@sse_scope authorize';
+
+-- Emitter: the procedure that actually causes events. @sse is required
+-- here too — without it, the RAISE never reaches the broadcaster.
+create procedure update_user_roles(_target_user_id int, _roles text[])
+language plpgsql as $$
+begin
+ -- ... do the role update ...
+ raise info 'roles updated'
+ using hint = format('authorize %s', _target_user_id);
+end;
+$$;
+
+comment on procedure update_user_roles(int, text[]) is '
+HTTP POST
+@authorize manager
+@sse
+@sse_scope authorize';
const eventSource = new EventSource('/api/user-events-subscribe/info');
+
+eventSource.onmessage = () => {
+ // ... handle the event ...
+};
1 2 3 4 5
Clients open EventSource once against /api/user-events-subscribe/info. When update_user_roles runs, its RAISE flows through the global broadcaster, every subscriber receives it, and the per-event hint (authorize <target_user_id>) ensures only the affected user's connection writes the data line. The fact that the event came from a different URL than the one the client subscribed to is invisible to both sides — they share the broadcaster.
The @sse on update_user_roles is what enables broadcasting; the @sse on user_events_subscribe is what gives clients a stable, semantically meaningful URL to open. They serve different purposes despite using the same annotation.
Subscribes to PostgreSQL notices on the connection during the procedure's execution.
Filters by the configured level (only RAISE statements matching that level are forwarded).
Pushes matching notices to the global broadcaster, tagged with the originating endpoint's metadata and the optional X-NpgsqlRest-ID header for execution-ID correlation.
Procedures without @sse skip this entire path — their notices are not visible to any subscriber.
Registers <endpoint-path>/<level> as an SSE connection URL (or the custom path you specified).
Connections to this URL are pure listeners — they never invoke the procedure body.
Each connection iterates the broadcaster's stream and decides per-event whether to write to the response, based on the originating endpoint's scope and any HINT override.
Because the URL is a connection point and not a topic, subscribers on different @sse URLs see the same stream. Use the URL primarily to give clients a stable, meaningful connection address and to scope which roles can subscribe (via the procedure's regular authorization).
Control how function results (from routines returning SETOF or TABLE) are rendered. Instead of JSON, results can be rendered as HTML tables or Excel spreadsheet downloads.
Applies to Set-Returning Functions Only
Table format rendering only applies to routines that return SETOF or TABLE results. Scalar-returning functions are not affected.
Requires Configuration
Table format rendering must be enabled in the Table Format Options configuration (TableFormatOptions.Enabled = true).
Sets the table format renderer for the endpoint. Values: html (render as HTML table), excel (render as .xlsx download). If the value is not a recognized format, a warning is logged and the endpoint falls back to the default JSON response.
excel_file_name
Sets the download filename for Excel table format output. Only applies when table_format is excel. If omitted, defaults to the routine name.
excel_sheet
Sets the worksheet name for Excel table format output. Only applies when table_format is excel. If omitted, defaults to the routine name (max 31 characters).
create function get_report()
+returns table (id int, name text, amount numeric)
+language sql
+begin atomic;
+ select * from reports;
+end;
+
+comment on function get_report() is '
+HTTP GET
+@table_format = html
+';
1 2 3 4 5 6 7 8 9 10 11
Equivalent as a SQL file endpoint (sql/get-report.sql):
sql
sql
/*
+HTTP GET
+@table_format = html
+*/
+select id, name, amount from reports;
When called with ?format=html, renders an HTML table. When called with ?format=excel&excelFileName=report.xlsx, returns an Excel download.
Use with tsclient_url_only
Table format endpoints are typically consumed via browser navigation (opening a URL directly), not via fetch. Use @tsclient_url_only = true to generate only the URL builder in the TypeScript client.
for, tags, tag (no @ prefix needed; @for and @tags also work)
Apply subsequent annotations only when the routine matches a specific volatility or routine-type tag.
Rarely needed
Most projects never use this. Reach for it only when a single comment needs to behave differently depending on the function's volatility — and even then, putting the annotations directly on the specific function is usually clearer.
Annotations following a for line apply only when the routine matches at least one of the listed tags. The scope ends at the next for line or at the end of the comment.
comment on function calculate_hash(_data text) is '
+HTTP GET
+for immutable
+@cached';
1 2 3 4
If the function is later changed to STABLE or VOLATILE, the @cached annotation no longer applies — no other comment changes needed. This is the one pattern where for carries its weight.
Repeatable — including the same claim type twice (two roles claims above), exactly like a real multi-valued principal.
Any # @claim makes the request authenticated; a block with no# @claim is anonymous — an @authorize endpoint returns 401.
Role checks (@authorize roles ...) and claim-to-parameter bindings (@user_parameters, ParameterNameClaimsMapping) run exactly as in production — the directive injects the principal, everything downstream is the real authorization path.
// @claim is accepted as an alternative to # @claim.
@login/@logout endpoints are rejected in test mode (they manipulate real authentication schemes that don't exist in-process). Inject the principal directly instead — it is both faster and lets a test act as any user:
sql
sql
/*
+POST /api/admin/delete-user
+Content-Type: application/json
+# @claim user_id=1
+# @claim roles=admin
+
+{"id": 42}
+*/
+select status = 200, 'admin can delete' from _response;
+
+/*
+POST /api/admin/delete-user
+Content-Type: application/json
+# @claim user_id=2
+# @claim roles=viewer
+
+{"id": 42}
+*/
+-- second block → second response table (_response_1, _response_2)
+select status = 403, 'viewer cannot delete' from _response_2;
This annotation applies only to test files run by the SQL test runner (npgsqlrest --test). It is distinct from the endpoint CONNECTION annotation, which selects a connection for a routine endpoint.
Run this test file on a named ConnectionStrings entry instead of the test runner's default connection (TestRunner.ConnectionName or the app's main connection).
Placed in the file's header — the leading -- line comments before the first SQL statement or HTTP block:
sql
sql
-- @connection Name
1
The whole file — its SQL statements and the endpoints invoked by its HTTP blocks — runs on a non-pooled connection built from that entry. This is the key to perfect per-test isolation: point the file at a database that its own @setup step just created.
Sequences are the classic motivation: nextval() is non-transactional (it sticks even through rollback), so on a shared test database a generated id depends on which other tests ran first. In a private clone the id is deterministic.
The endpoint pipeline still type-checks (Describe) against the run-level test connection at startup; @connection switches the execution connection for this file. The databases must therefore be structurally compatible — which they are by construction when both are created from the same template or migrations.
{rnd} tokens in the connection string resolve once per run; use indexed tokens ({rnd5_1}, {rnd5_2}) when several files each need their own database name.
Each block's table is created fresh (no IF NOT EXISTS): reusing a name — two blocks both saying # @response x, or a name colliding with the default — fails the test loudly rather than silently overwriting.
Named tables make multi-call tests readable: login_result, created, after_delete beat _response_1..3.
// @response is accepted as an alternative to # @response.
This annotation applies only to test files run by the SQL test runner (npgsqlrest --test). It has no meaning in endpoint SQL files or routine comments.
Run one or more named steps (from the TestRunner.Steps registry) before this test file executes.
Placed in the file's header — the leading -- line comments before the first SQL statement or HTTP block:
sql
sql
-- @setup StepName [StepName ...]
1
Names may be whitespace- or comma-separated: -- @setup CreateDb SeedData and -- @setup CreateDb, SeedData are equivalent.
The annotation is repeatable; all listed steps run in the order written.
Every name must exist in the TestRunner.Steps registry — an unknown name is a loud error, not a silent skip.
A step with "Enabled": false is the one sanctioned skip: it is ignored wherever referenced (logged at debug level) — the default configuration ships disabled example steps to flip on instead of typing.
-- @setup CreateIsolatedDb
+-- @teardown DropIsolatedDb
+-- @connection Isolated
+
+/*
+POST /api/create-user
+Content-Type: application/json
+
+{"name": "Ada"}
+*/
+select status = 200, 'user created in the isolated clone' from _response;
1 2 3 4 5 6 7 8 9 10 11
The step runs once, immediately before this file (after the run-level Setup). Combined with -- @teardown and -- @connection, this gives a single test file its own private database.
The header ends at the first SQL statement or HTTP block. An included file (\i/\ir) that contains only comments (an annotation profile) continues the header — its annotations count as if written in-place — so a shared profile can carry @setup/@teardown/@connection/@tag for many test files.
Watch the prose
Everything after the step names on the line is treated as more step names. Write explanatory text on its own comment line, not after the names.
This annotation applies only to test files run by the SQL test runner (npgsqlrest --test). It is distinct from the endpoint TAGS annotation, which scopes routine annotations by volatility.
This annotation applies only to test files run by the SQL test runner (npgsqlrest --test). It has no meaning in endpoint SQL files or routine comments.
Run one or more named steps (from the TestRunner.Steps registry) after this test file — always, best-effort, even when the file failed or errored.
Set to false, off, disabled, disable, or 0 to disable TypeScript client code generation for the endpoint.
tsclient_module
Sets a different module name for the generated TypeScript client file. Endpoints with the same module name are grouped into the same file.
tsclient_events
Enable or disable SSE events parameter for endpoints with SSE events enabled.
tsclient_parse_url
Enable or disable parseUrl parameter in the generated function.
tsclient_parse_request
Enable or disable parseRequest parameter in the generated function.
tsclient_status_code
Enable or disable status code in the return value.
tsclient_export_url
When true, exports a URL constant for this endpoint regardless of the global ExportUrls setting.
tsclient_url_only
When true, only the URL constant and request interface are exported — the fetch function and response type are skipped. Implies tsclient_export_url = true. Useful for endpoints consumed via browser navigation (e.g., table format downloads).
Use @tsclient = false to skip client generation for endpoints that return binary data or are not useful in the TypeScript client:
sql
sql
create function get_image(_id int)
+returns bytea
+language sql
+begin atomic;
+ select data from images where id = _id;
+end;
+
+comment on function get_image(int) is '
+HTTP GET
+@tsclient = false
+';
1 2 3 4 5 6 7 8 9 10 11
Equivalent as a SQL file endpoint (sql/get-image.sql):
sql
sql
/*
+HTTP GET
+@tsclient = false
+@param $1 id
+*/
+select data from images where id = $1;
Use @tsclient_module to group endpoints from different schemas into the same generated file:
sql
sql
comment on function public.get_users() is '
+HTTP GET
+@tsclient_module = admin
+';
+
+comment on function auth.get_roles() is '
+HTTP GET
+@tsclient_module = admin
+';
1 2 3 4 5 6 7 8 9
Both endpoints will be generated in the admin module file.
If no handler is specified (only upload annotation without for), then the default handler will be used. The default handler is large_object unless configured otherwise via DefaultUploadHandler setting.
These options are available for all handler types:
Option
Type
Default
Description
stop_after_first_success
bool
false
Stop upload after first successful upload when multiple handlers are used. Subsequent files will have status Ignored.
included_mime_types
string
null
CSV string of MIME type patterns to include. Set to null to allow all.
excluded_mime_types
string
null
CSV string of MIME type patterns to exclude. Set to null to exclude none.
buffer_size
int
null
Buffer size in bytes for raw content uploads (large_object and file_system).
check_text
bool
false
Validate file is a text file (not binary). Set to true to accept only text files.
check_image
bool/string
false
Validate file is an image. Set to true to accept only images, or CSV of allowed types: jpg, png, gif, bmp, tiff, webp.
test_buffer_size
int
4096
Buffer size in bytes when checking text files.
non_printable_threshold
int
5
Maximum non-printable characters allowed in test buffer to consider a valid text file.
check_format
bool
false
Validate the file format before processing. When true and validation fails, the fallback_handler is used if configured.
fallback_handler
string
null
Handler name to delegate to if format validation fails (e.g., large_object, file_system, csv, excel). When a handler's format validation fails and a fallback_handler is configured, processing is automatically delegated to the named handler.
comment on function fs_upload_include_mime_type(json) is '
+@upload for file_system
+@param _meta is upload metadata
+@path = ./test
+@file = mime_type.csv
+@included_mime_types = image/*, application/*
+';
The row command function receives up to 4 parameters:
sql
sql
create function my_csv_row_processor(
+ _index int, -- $1: Row index (1-based)
+ _row text[], -- $2: Parsed row values as text array
+ _prev_result any, -- $3: Result of previous row command (for chaining)
+ _meta json -- $4: Row metadata JSON
+)
+returns any -- Return value passed to next row as $3
Parsed row values as text array (e.g., _row[1], _row[2], etc.)
$3
any
Result of previous row command execution (see below)
$4
json
Row metadata JSON object
Row chaining with $3: The return value from each row command is passed to the next row as $3. For the first row, $3 is NULL. If the row command returns void (no return value), $3 will be NULL for the next row. This enables accumulating values across rows (e.g., counting rows, summing values).
comment on function csv_upload(json) is '
+@upload for csv
+@param _meta is upload metadata
+@delimiters = ,;
+@row_command = select csv_upload_row($1,$2,$3,$4)
+';
1 2 3 4 5 6
This will use comma (,) and semicolon (;) as delimiters. Use \t for tab.
Row values as text array, or JSON if row_is_json = true
$3
any
Result of previous row command execution (see below)
$4
json
Row metadata JSON object (includes sheet info)
Row chaining with $3: The return value from each row command is passed to the next row as $3. For the first row, $3 is NULL. If the row command returns void (no return value), $3 will be NULL for the next row. This enables accumulating values across rows (e.g., counting rows, summing values). Note: When processing multiple sheets (all_sheets = true), $3 resets to NULL at the start of each sheet.
The metadata JSON passed to each row command contains:
json
json
{
+ "type": "excel",
+ "fileName": "data.xlsx",
+ "contentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
+ "size": 5678,
+ "sheet": "Sheet1",
+ "rowIndex": 5,
+ "claims": { // Only if RowCommandUserClaimsKey is set
+ "user_id": "1",
+ "user_name": "alice"
+ }
+}
1 2 3 4 5 6 7 8 9 10 11 12
Property
Type
Description
type
string
Handler type ("excel")
fileName
string
Original uploaded file name
contentType
string
MIME type of the file
size
int
File size in bytes
sheet
string
Current sheet name being processed
rowIndex
int
Excel row index (1-based, includes empty rows)
claims
object
User claims (when RowCommandUserClaimsKey is configured)
Note: Excel row metadata includes rowIndex (actual Excel row number) and sheet name. The $1 parameter is a sequential counter for non-empty rows only, while rowIndex reflects the actual Excel row position.
When row_is_json = true, row data is passed as JSON with Excel cell references as keys:
sql
sql
comment on function excel_upload(json) is '
+@upload for excel
+@param _meta is upload metadata
+@row_is_json = true
+@row_command = select excel_upload_row($1,$2,$3,$4)
+';
comment on function upload_to_large_object(text, json) is '
+HTTP POST
+@upload for large_object
+@param _meta is upload metadata
+@check_image = true';
comment on function upload_to_file_system(text, json) is '
+HTTP POST
+@upload for file_system
+@param _meta is upload metadata
+@check_image = true
+@path = ./public/uploads
+@unique_name = true
+@create_path = true';
comment on function csv_upload(json) is '
+HTTP POST
+@upload for csv
+@param _meta is upload metadata
+@delimiters = ,;
+@row_command = select csv_upload_row($1,$2,$3,$4)';
comment on function excel_upload(json) is '
+HTTP POST
+@upload for excel
+@param _meta is upload metadata
+@all_sheets = true
+@row_command = select excel_upload_row($1,$2,$3,$4)';
Equivalent as a SQL file endpoint (sql/get-user-params.sql):
sql
sql
/*
+HTTP GET
+@authorize
+@user_params
+@param $1 user_id text
+@param $2 user_name text
+@param $3 user_roles text[]
+*/
+select $1::int as user_id, $2 as user_name, $3 as user_roles;
1 2 3 4 5 6 7 8 9
With Default Values (for unauthenticated access)
sql
sql
create function get_user_params_optional(
+ _user_id text = null,
+ _user_name text = 'anonymous',
+ _user_roles text[] = array[]::text[]
+)
+returns table (
+ user_id int,
+ user_name text,
+ user_roles text[]
+)
+language sql
+begin atomic;
+select
+ _user_id::int,
+ _user_name,
+ _user_roles;
+end;
+
+comment on function get_user_params_optional(text, text, text[]) is '
+@user_params
+';
Default behavior for all endpoints can be configured via UseUserParameters
Parameters with default values work without authentication; claim values override defaults when authenticated
Parameters not found in claims use their default values or null
Claim values are always passed as text type. For multi-value claims (like roles), values are passed as text[]. PostgreSQL handles type coercion to your parameter types.
Validate endpoint parameters before database execution. Validation is performed immediately after parameters are parsed, before any database connection is opened, authorization checks, or proxy handling.
@validate <parameter_name> using <rule_name>
+@validate <parameter_name> using <rule1>, <rule2>, <rule3>, ...
1 2
parameter_name - The parameter to validate. Can use either the original PostgreSQL name (_email) or the converted camelCase name (email). Matching is case-insensitive.
rule_name - The name of a validation rule defined in ValidationOptions configuration.
Multiple rules can be specified as comma-separated values or on separate lines.
create function get_user(_user_id int)
+returns json
+language sql
+begin atomic;
+select row_to_json(u) from users u where id = _user_id;
+end;
+
+comment on function get_user(int) is '
+HTTP GET
+@validate _user_id using not_null
+';
1 2 3 4 5 6 7 8 9 10 11
Equivalent as a SQL file endpoint (sql/get-user.sql):
sql
sql
/*
+HTTP GET
+@validate user_id using not_null
+@param $1 user_id int
+*/
+select row_to_json(u) from users u where id = $1;
create function update_email(_user_id int, _email text)
+returns json
+language plpgsql
+as $$
+begin
+ update users set email = _email where id = _user_id;
+ return json_build_object('success', true);
+end;
+$$;
+
+comment on function update_email(int, text) is '
+HTTP PUT
+@validate _user_id using not_null
+@validate _email using required, email
+';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
The _email parameter must pass both required (not null and not empty) and email (regex pattern) validation.
+
+
+
+
\ No newline at end of file
diff --git a/assets/about.md.tQJT3Mf7.js b/assets/about.md.tQJT3Mf7.js
new file mode 100644
index 000000000..5328024c2
--- /dev/null
+++ b/assets/about.md.tQJT3Mf7.js
@@ -0,0 +1 @@
+import{_ as t,c as a,o as s,a5 as o}from"./chunks/framework.CgT1UzWm.js";const p=JSON.parse('{"title":"About This Website","titleTemplate":"NpgsqlRest","description":"On AI tools, the people behind NpgsqlRest, and how this documentation was built.","frontmatter":{"layout":"doc","outline":false,"title":"About This Website","titleTemplate":"NpgsqlRest","description":"On AI tools, the people behind NpgsqlRest, and how this documentation was built."},"headers":[],"relativePath":"about.md","filePath":"about.md"}'),i={name:"about.md"};function r(n,e,h,d,l,u){return s(),a("div",null,e[0]||(e[0]=[o('
This website is built and maintained with substantial help from AI tools — primarily Claude. Pages carry an "AI-assisted · verified against source" badge to make that explicit. A few blog posts written entirely by hand carry a "Human Written" badge instead. The badges link here.
The docs are maintained the same way NpgsqlRest itself proposes you build software: AI does the writing, machines verify the facts. Configuration keys, defaults, and annotation behavior are checked against the source code of the documented version — when the code and the docs disagree, the code wins and the docs get fixed. Accuracy is the contract; authorship is just tooling.
The project itself is a different story. The C# library, parser, code generator, and runtime are hand-written — more than two years of evenings and weekends — and covered by 2,200+ integration tests running against real PostgreSQL. The AI-assisted part is the website you're reading; the thing it documents is not.
We think that's the honest division of labor, and we'd rather label it than fake it. If the approach sounds familiar, it's because it is the product's whole thesis: declare the intent, let machines verify the result.
Found a mistake or an inaccuracy? Comments are open at the bottom of every page and go straight to the maintainer — that feedback loop is how AI-assisted docs stay accurate. Bug reports and feature requests live on GitHub; security issues have a private reporting channel.
',11)]))}const b=t(i,[["render",r]]);export{p as __pageData,b as default};
diff --git a/assets/about.md.tQJT3Mf7.lean.js b/assets/about.md.tQJT3Mf7.lean.js
new file mode 100644
index 000000000..917066820
--- /dev/null
+++ b/assets/about.md.tQJT3Mf7.lean.js
@@ -0,0 +1 @@
+import{_ as t,c as a,o as s,a5 as o}from"./chunks/framework.CgT1UzWm.js";const p=JSON.parse('{"title":"About This Website","titleTemplate":"NpgsqlRest","description":"On AI tools, the people behind NpgsqlRest, and how this documentation was built.","frontmatter":{"layout":"doc","outline":false,"title":"About This Website","titleTemplate":"NpgsqlRest","description":"On AI tools, the people behind NpgsqlRest, and how this documentation was built."},"headers":[],"relativePath":"about.md","filePath":"about.md"}'),i={name:"about.md"};function r(n,e,h,d,l,u){return s(),a("div",null,e[0]||(e[0]=[o("",11)]))}const b=t(i,[["render",r]]);export{p as __pageData,b as default};
diff --git a/assets/annotations_allow-anonymous.md.B0UuFGg2.js b/assets/annotations_allow-anonymous.md.B0UuFGg2.js
new file mode 100644
index 000000000..99c55bab2
--- /dev/null
+++ b/assets/annotations_allow-anonymous.md.B0UuFGg2.js
@@ -0,0 +1,22 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"ALLOW_ANONYMOUS Annotation","titleTemplate":"NpgsqlRest","description":"Allow unauthenticated access to specific PostgreSQL REST API endpoints. Override global authorization requirements.","frontmatter":{"outline":[2,3],"title":"ALLOW_ANONYMOUS Annotation","titleTemplate":"NpgsqlRest","description":"Allow unauthenticated access to specific PostgreSQL REST API endpoints. Override global authorization requirements.","head":[["meta",{"name":"keywords","content":"npgsqlrest allow anonymous, public endpoint, unauthenticated access, anonymous api, public api endpoint"}],["meta",{"property":"og:title","content":"NpgsqlRest ALLOW_ANONYMOUS Annotation"}],["meta",{"property":"og:description","content":"Allow unauthenticated access to specific endpoints, overriding global authorization."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/allow-anonymous.md","filePath":"annotations/allow-anonymous.md"}'),t={name:"annotations/allow-anonymous.md"};function l(o,s,p,r,c,h){return n(),i("div",null,s[0]||(s[0]=[e(`
create function get_public_info()
+returns json
+language sql
+begin atomic;
+select '{"version": "1.0"}'::json;
+end;
+
+comment on function get_public_info() is
+'HTTP GET
+@allow_anonymous';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-public-info.sql):
sql
sql
-- HTTP GET
+-- @allow_anonymous
+select '{"version": "1.0"}'::json;
-- Anyone can read
+comment on function get_products() is
+'HTTP GET
+@allow_anonymous';
+
+-- Only authenticated users can create
+comment on function create_product(text, numeric) is
+'HTTP POST
+@authorize';
`,20)]))}const k=a(t,[["render",l]]);export{u as __pageData,k as default};
diff --git a/assets/annotations_allow-anonymous.md.B0UuFGg2.lean.js b/assets/annotations_allow-anonymous.md.B0UuFGg2.lean.js
new file mode 100644
index 000000000..8d8598a4f
--- /dev/null
+++ b/assets/annotations_allow-anonymous.md.B0UuFGg2.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"ALLOW_ANONYMOUS Annotation","titleTemplate":"NpgsqlRest","description":"Allow unauthenticated access to specific PostgreSQL REST API endpoints. Override global authorization requirements.","frontmatter":{"outline":[2,3],"title":"ALLOW_ANONYMOUS Annotation","titleTemplate":"NpgsqlRest","description":"Allow unauthenticated access to specific PostgreSQL REST API endpoints. Override global authorization requirements.","head":[["meta",{"name":"keywords","content":"npgsqlrest allow anonymous, public endpoint, unauthenticated access, anonymous api, public api endpoint"}],["meta",{"property":"og:title","content":"NpgsqlRest ALLOW_ANONYMOUS Annotation"}],["meta",{"property":"og:description","content":"Allow unauthenticated access to specific endpoints, overriding global authorization."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/allow-anonymous.md","filePath":"annotations/allow-anonymous.md"}'),t={name:"annotations/allow-anonymous.md"};function l(o,s,p,r,c,h){return n(),i("div",null,s[0]||(s[0]=[e("",20)]))}const k=a(t,[["render",l]]);export{u as __pageData,k as default};
diff --git a/assets/annotations_authorize.md.CK7v-SQu.js b/assets/annotations_authorize.md.CK7v-SQu.js
new file mode 100644
index 000000000..a87be45ba
--- /dev/null
+++ b/assets/annotations_authorize.md.CK7v-SQu.js
@@ -0,0 +1,64 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"AUTHORIZE Annotation","titleTemplate":"NpgsqlRest","description":"Require authentication for PostgreSQL REST API endpoints. Configure role-based access control with single or multiple required roles.","frontmatter":{"outline":[2,3],"title":"AUTHORIZE Annotation","titleTemplate":"NpgsqlRest","description":"Require authentication for PostgreSQL REST API endpoints. Configure role-based access control with single or multiple required roles.","head":[["meta",{"name":"keywords","content":"npgsqlrest authorize, postgresql api authentication, role based access, require authentication, api authorization"}],["meta",{"property":"og:title","content":"NpgsqlRest AUTHORIZE Annotation"}],["meta",{"property":"og:description","content":"Require authentication and configure role-based access for PostgreSQL REST API endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/authorize.md","filePath":"annotations/authorize.md"}'),l={name:"annotations/authorize.md"};function t(p,s,r,h,c,o){return n(),i("div",null,s[0]||(s[0]=[e(`
create function get_my_profile()
+returns json
+language sql
+begin atomic;
+select row_to_json(u) from users u where u.id = current_user_id();
+end;
+
+comment on function get_my_profile() is
+'HTTP GET
+@authorize';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-my-profile.sql):
sql
sql
-- HTTP GET
+-- @authorize
+select row_to_json(u) from users u where u.id = current_user_id();
-- All of these are equivalent
+comment on function func1() is 'HTTP
+@authorize';
+
+comment on function func2() is 'HTTP
+@authorized';
+
+comment on function func3() is 'HTTP
+@requires_authorization';
create function delete_user(_id int)
+returns void
+language sql
+begin atomic;
+delete from users where id = _id;
+end;
+
+comment on function delete_user(int) is
+'HTTP DELETE
+@authorize admin';
1 2 3 4 5 6 7 8 9 10
Only users with the admin role can access this endpoint.
create function get_my_profile()
+returns json
+language sql
+begin atomic;
+select row_to_json(u) from users u where u.id = current_user_id();
+end;
+
+comment on function get_my_profile() is
+'HTTP GET
+@authorize john';
1 2 3 4 5 6 7 8 9 10
Only the user with user name john can access this endpoint. Matches against the DefaultNameClaimType claim.
create function get_account()
+returns json
+language sql
+begin atomic;
+select row_to_json(a) from accounts a where a.user_id = current_user_id();
+end;
+
+comment on function get_account() is
+'HTTP GET
+@authorize user123';
1 2 3 4 5 6 7 8 9 10
Only the user with user ID user123 can access this endpoint. Matches against the DefaultUserIdClaimType claim.
comment on function get_data() is
+'HTTP GET
+@authorize admin, user123, jane';
1 2 3
Access is granted if the user matches any of the specified values — whether it's a role name, user name, or user ID. Each value is checked against all three claim types (DefaultRoleClaimType, DefaultNameClaimType, DefaultUserIdClaimType).
`,45)]))}const u=a(l,[["render",t]]);export{d as __pageData,u as default};
diff --git a/assets/annotations_authorize.md.CK7v-SQu.lean.js b/assets/annotations_authorize.md.CK7v-SQu.lean.js
new file mode 100644
index 000000000..efcf606de
--- /dev/null
+++ b/assets/annotations_authorize.md.CK7v-SQu.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"AUTHORIZE Annotation","titleTemplate":"NpgsqlRest","description":"Require authentication for PostgreSQL REST API endpoints. Configure role-based access control with single or multiple required roles.","frontmatter":{"outline":[2,3],"title":"AUTHORIZE Annotation","titleTemplate":"NpgsqlRest","description":"Require authentication for PostgreSQL REST API endpoints. Configure role-based access control with single or multiple required roles.","head":[["meta",{"name":"keywords","content":"npgsqlrest authorize, postgresql api authentication, role based access, require authentication, api authorization"}],["meta",{"property":"og:title","content":"NpgsqlRest AUTHORIZE Annotation"}],["meta",{"property":"og:description","content":"Require authentication and configure role-based access for PostgreSQL REST API endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/authorize.md","filePath":"annotations/authorize.md"}'),l={name:"annotations/authorize.md"};function t(p,s,r,h,c,o){return n(),i("div",null,s[0]||(s[0]=[e("",45)]))}const u=a(l,[["render",t]]);export{d as __pageData,u as default};
diff --git a/assets/annotations_basic-auth-command.md.Csb6mha2.js b/assets/annotations_basic-auth-command.md.Csb6mha2.js
new file mode 100644
index 000000000..ba2d6c376
--- /dev/null
+++ b/assets/annotations_basic-auth-command.md.Csb6mha2.js
@@ -0,0 +1,145 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"BASIC_AUTH_COMMAND Annotation","titleTemplate":"NpgsqlRest","description":"Configure PostgreSQL command for Basic Authentication credential validation. Custom user lookup and claim generation.","frontmatter":{"outline":[2,3],"title":"BASIC_AUTH_COMMAND Annotation","titleTemplate":"NpgsqlRest","description":"Configure PostgreSQL command for Basic Authentication credential validation. Custom user lookup and claim generation.","head":[["meta",{"name":"keywords","content":"npgsqlrest basic auth command, credential validation, user lookup postgresql, authentication command"}],["meta",{"property":"og:title","content":"NpgsqlRest BASIC_AUTH_COMMAND Annotation"}],["meta",{"property":"og:description","content":"Configure PostgreSQL command for Basic Authentication credential validation."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/basic-auth-command.md","filePath":"annotations/basic-auth-command.md"}'),l={name:"annotations/basic-auth-command.md"};function t(p,s,h,r,k,c){return n(),i("div",null,s[0]||(s[0]=[e(`
A row with a status column set to false (boolean) or a non-200 status code (integer)
sql
sql
-- Method 1: Return no rows
+select * from users where false;
+
+-- Method 2: Return status = false (boolean)
+select false as status, null as name;
+
+-- Method 3: Return status code (integer)
+select 401 as status, 'Invalid credentials' as body;
This will always return 401 Unauthorized because the status column is false.
Challenge Command Without Annotation Credentials
When basic_auth is used without credentials, $3 will be null:
sql
sql
create function get_basic_auth_challenge_command(
+ _user_claims json
+)
+returns text
+language sql
+begin atomic;
+select _user_claims;
+end;
+
+comment on function get_basic_auth_challenge_command(json) is '
+@basic_auth
+@challenge_command = select * from auth_challenge_command($1, $2, $3, $4, $5)
+@user_params
+';
1 2 3 4 5 6 7 8 9 10 11 12 13 14
Test with:
bash
bash
# Any username/password combination will be passed to the challenge command
+curl -H "Authorization: Basic eHh4Onl5eQ==" \\ # xxx:yyy
+ http://localhost:5000/api/get-basic-auth-challenge-command
+
+# Returns: {"name_identifier":"1","name":"xxx","password":"yyy","valid":null,"realm":"NpgsqlRest","path":"/api/get-basic-auth-challenge-command"}
The challenge command is executed for every request to the protected endpoint.
If both annotation credentials and a challenge command are configured, the password is first verified against annotation credentials, and the result is passed as $3.
The challenge command can implement custom logic such as:
Database-backed user authentication
Rate limiting based on failed attempts
IP-based access control using the path parameter
Audit logging of authentication attempts
Multi-factor authentication flows
If the challenge command returns a row (without status = false), the column names become claim types and values become claim values for the authenticated user.
Claims are accessible in the endpoint function via the user_params annotation.
LOGIN - Login endpoint (uses same result set interpretation)
USER_PARAMETERS - Map authenticated user claims to function parameters
`,46)]))}const u=a(l,[["render",t]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_basic-auth-command.md.Csb6mha2.lean.js b/assets/annotations_basic-auth-command.md.Csb6mha2.lean.js
new file mode 100644
index 000000000..4762e1023
--- /dev/null
+++ b/assets/annotations_basic-auth-command.md.Csb6mha2.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"BASIC_AUTH_COMMAND Annotation","titleTemplate":"NpgsqlRest","description":"Configure PostgreSQL command for Basic Authentication credential validation. Custom user lookup and claim generation.","frontmatter":{"outline":[2,3],"title":"BASIC_AUTH_COMMAND Annotation","titleTemplate":"NpgsqlRest","description":"Configure PostgreSQL command for Basic Authentication credential validation. Custom user lookup and claim generation.","head":[["meta",{"name":"keywords","content":"npgsqlrest basic auth command, credential validation, user lookup postgresql, authentication command"}],["meta",{"property":"og:title","content":"NpgsqlRest BASIC_AUTH_COMMAND Annotation"}],["meta",{"property":"og:description","content":"Configure PostgreSQL command for Basic Authentication credential validation."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/basic-auth-command.md","filePath":"annotations/basic-auth-command.md"}'),l={name:"annotations/basic-auth-command.md"};function t(p,s,h,r,k,c){return n(),i("div",null,s[0]||(s[0]=[e("",46)]))}const u=a(l,[["render",t]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_basic-auth-realm.md.DsMX0SDT.js b/assets/annotations_basic-auth-realm.md.DsMX0SDT.js
new file mode 100644
index 000000000..f42f27505
--- /dev/null
+++ b/assets/annotations_basic-auth-realm.md.DsMX0SDT.js
@@ -0,0 +1,36 @@
+import{_ as s,c as i,o as e,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"BASIC_AUTH_REALM Annotation","titleTemplate":"NpgsqlRest","description":"Set HTTP Basic Authentication realm name for PostgreSQL REST API endpoints. Customize the authentication prompt.","frontmatter":{"outline":[2,3],"title":"BASIC_AUTH_REALM Annotation","titleTemplate":"NpgsqlRest","description":"Set HTTP Basic Authentication realm name for PostgreSQL REST API endpoints. Customize the authentication prompt.","head":[["meta",{"name":"keywords","content":"npgsqlrest basic auth realm, authentication realm, www-authenticate header, basic auth prompt"}],["meta",{"property":"og:title","content":"NpgsqlRest BASIC_AUTH_REALM Annotation"}],["meta",{"property":"og:description","content":"Set HTTP Basic Authentication realm name for the authentication prompt."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/basic-auth-realm.md","filePath":"annotations/basic-auth-realm.md"}'),l={name:"annotations/basic-auth-realm.md"};function t(p,a,r,h,c,o){return e(),i("div",null,a[0]||(a[0]=[n(`
BASIC_AUTH_COMMAND - Set validation function for custom authentication logic
`,29)]))}const u=s(l,[["render",t]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_basic-auth-realm.md.DsMX0SDT.lean.js b/assets/annotations_basic-auth-realm.md.DsMX0SDT.lean.js
new file mode 100644
index 000000000..843ac730a
--- /dev/null
+++ b/assets/annotations_basic-auth-realm.md.DsMX0SDT.lean.js
@@ -0,0 +1 @@
+import{_ as s,c as i,o as e,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"BASIC_AUTH_REALM Annotation","titleTemplate":"NpgsqlRest","description":"Set HTTP Basic Authentication realm name for PostgreSQL REST API endpoints. Customize the authentication prompt.","frontmatter":{"outline":[2,3],"title":"BASIC_AUTH_REALM Annotation","titleTemplate":"NpgsqlRest","description":"Set HTTP Basic Authentication realm name for PostgreSQL REST API endpoints. Customize the authentication prompt.","head":[["meta",{"name":"keywords","content":"npgsqlrest basic auth realm, authentication realm, www-authenticate header, basic auth prompt"}],["meta",{"property":"og:title","content":"NpgsqlRest BASIC_AUTH_REALM Annotation"}],["meta",{"property":"og:description","content":"Set HTTP Basic Authentication realm name for the authentication prompt."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/basic-auth-realm.md","filePath":"annotations/basic-auth-realm.md"}'),l={name:"annotations/basic-auth-realm.md"};function t(p,a,r,h,c,o){return e(),i("div",null,a[0]||(a[0]=[n("",29)]))}const u=s(l,[["render",t]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_basic-auth.md.ClrT2h43.js b/assets/annotations_basic-auth.md.ClrT2h43.js
new file mode 100644
index 000000000..28dd3300a
--- /dev/null
+++ b/assets/annotations_basic-auth.md.ClrT2h43.js
@@ -0,0 +1,71 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"BASIC_AUTH Annotation","titleTemplate":"NpgsqlRest","description":"Enable HTTP Basic Authentication for PostgreSQL REST API endpoints. Require username and password in Authorization header.","frontmatter":{"outline":[2,3],"title":"BASIC_AUTH Annotation","titleTemplate":"NpgsqlRest","description":"Enable HTTP Basic Authentication for PostgreSQL REST API endpoints. Require username and password in Authorization header.","head":[["meta",{"name":"keywords","content":"npgsqlrest basic auth, http basic authentication, authorization header, password authentication api"}],["meta",{"property":"og:title","content":"NpgsqlRest BASIC_AUTH Annotation"}],["meta",{"property":"og:description","content":"Enable HTTP Basic Authentication requiring username and password."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/basic-auth.md","filePath":"annotations/basic-auth.md"}'),l={name:"annotations/basic-auth.md"};function t(p,s,h,r,c,o){return n(),i("div",null,s[0]||(s[0]=[e(`
Basic Auth Without Credentials (Requires Challenge Command)
When basic_auth is used without credentials, a challenge_command must be configured to validate the user:
sql
sql
create function get_basic_auth_no_creds(
+ _user_name text = null -- mapped to name claim
+)
+returns text
+language sql
+begin atomic;
+select _user_name;
+end;
+
+comment on function get_basic_auth_no_creds(text) is '
+@basic_auth
+@user_params
+';
1 2 3 4 5 6 7 8 9 10 11 12 13
Note: Without credentials and without a challenge_command, all requests will return 401 Unauthorized.
Basic Authentication transmits credentials encoded (not encrypted). The behavior when SSL is disabled is controlled by the SslRequirement configuration:
Required: Rejects all non-SSL requests with 401 Unauthorized.
Warning: Allows requests but logs a warning.
Ignore: Allows requests with only a debug-level log.
`,39)]))}const u=a(l,[["render",t]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_basic-auth.md.ClrT2h43.lean.js b/assets/annotations_basic-auth.md.ClrT2h43.lean.js
new file mode 100644
index 000000000..6fd293749
--- /dev/null
+++ b/assets/annotations_basic-auth.md.ClrT2h43.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"BASIC_AUTH Annotation","titleTemplate":"NpgsqlRest","description":"Enable HTTP Basic Authentication for PostgreSQL REST API endpoints. Require username and password in Authorization header.","frontmatter":{"outline":[2,3],"title":"BASIC_AUTH Annotation","titleTemplate":"NpgsqlRest","description":"Enable HTTP Basic Authentication for PostgreSQL REST API endpoints. Require username and password in Authorization header.","head":[["meta",{"name":"keywords","content":"npgsqlrest basic auth, http basic authentication, authorization header, password authentication api"}],["meta",{"property":"og:title","content":"NpgsqlRest BASIC_AUTH Annotation"}],["meta",{"property":"og:description","content":"Enable HTTP Basic Authentication requiring username and password."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/basic-auth.md","filePath":"annotations/basic-auth.md"}'),l={name:"annotations/basic-auth.md"};function t(p,s,h,r,c,o){return n(),i("div",null,s[0]||(s[0]=[e("",39)]))}const u=a(l,[["render",t]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_body-parameter-name.md.BfhRegXI.js b/assets/annotations_body-parameter-name.md.BfhRegXI.js
new file mode 100644
index 000000000..e4719f078
--- /dev/null
+++ b/assets/annotations_body-parameter-name.md.BfhRegXI.js
@@ -0,0 +1,27 @@
+import{_ as s,c as e,o as i,a5 as n}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"BODY_PARAMETER_NAME Annotation","titleTemplate":"NpgsqlRest","description":"Specify which PostgreSQL function parameter receives the raw HTTP request body. Handle JSON payloads in SQL functions.","frontmatter":{"outline":[2,3],"title":"BODY_PARAMETER_NAME Annotation","titleTemplate":"NpgsqlRest","description":"Specify which PostgreSQL function parameter receives the raw HTTP request body. Handle JSON payloads in SQL functions.","head":[["meta",{"name":"keywords","content":"npgsqlrest body parameter, request body parameter, json body postgresql, raw body function, http payload sql"}],["meta",{"property":"og:title","content":"NpgsqlRest BODY_PARAMETER_NAME Annotation"}],["meta",{"property":"og:description","content":"Specify which function parameter receives the raw HTTP request body."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/body-parameter-name.md","filePath":"annotations/body-parameter-name.md"}'),t={name:"annotations/body-parameter-name.md"};function l(p,a,r,o,h,d){return i(),e("div",null,a[0]||(a[0]=[n(`
create function process_payload(_metadata json, _payload text)
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function process_payload(json, text) is
+'HTTP POST
+@body_parameter_name _payload';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/process-payload.sql):
sql
sql
/*
+HTTP POST
+@body_parameter_name payload
+@param $1 metadata json
+@param $2 payload text
+*/
+select process_payload($1, $2);
create function handle_webhook(_body json)
+returns void
+language sql
+begin atomic;
+...;
+end;
+
+comment on function handle_webhook(json) is
+'HTTP POST
+@body_parameter_name _body';
The parameter name is matched case-insensitively and accepts any of the parameter's names:
the converted (API) name — e.g. responseBody (camelCase),
the actual SQL name — e.g. _response_body,
for a field expanded out of an HTTP Custom Type composite parameter, the expanded signature name (_response_body) and the base composite name (_response, shared by all expanded fields — resolves to the first one).
New in 3.18.2
Before 3.18.2 the value was force-lowercased and compared case-sensitively, so the camelCase converted name never matched, and the expanded signature name of an HTTP Custom Type field matched nothing at all. From 3.18.2 the same matching rule is applied consistently by request handling and every code generator (TypeScript client, HTTP file, OpenAPI), so they no longer disagree about which parameter carries the body.
Redirecting an HTTP Custom Type field into a proxy body
A common use is forwarding a large field — such as an HTTP Custom Type's responseBody — into a @proxy upstream request body instead of the query string (where an oversized value would be rejected, see MaxForwardedQueryParamLength). Target the field by its converted name (responseBody), its expanded signature name (_response_body), or the composite base (_response), and use a body-carrying method:
sql
sql
comment on function scrape_and_forward(...) is 'HTTP POST
+@proxy https://upstream.example.com/ingest
+@body_parameter_name responseBody';
1 2 3
The remaining small fields still travel on the proxy query string.
HTTP_TYPE - HTTP Custom Type whose expanded fields can be targeted as the body
PROXY - Forward the body field into an upstream request body
`,26)]))}const k=s(t,[["render",l]]);export{m as __pageData,k as default};
diff --git a/assets/annotations_body-parameter-name.md.BfhRegXI.lean.js b/assets/annotations_body-parameter-name.md.BfhRegXI.lean.js
new file mode 100644
index 000000000..41007aabb
--- /dev/null
+++ b/assets/annotations_body-parameter-name.md.BfhRegXI.lean.js
@@ -0,0 +1 @@
+import{_ as s,c as e,o as i,a5 as n}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"BODY_PARAMETER_NAME Annotation","titleTemplate":"NpgsqlRest","description":"Specify which PostgreSQL function parameter receives the raw HTTP request body. Handle JSON payloads in SQL functions.","frontmatter":{"outline":[2,3],"title":"BODY_PARAMETER_NAME Annotation","titleTemplate":"NpgsqlRest","description":"Specify which PostgreSQL function parameter receives the raw HTTP request body. Handle JSON payloads in SQL functions.","head":[["meta",{"name":"keywords","content":"npgsqlrest body parameter, request body parameter, json body postgresql, raw body function, http payload sql"}],["meta",{"property":"og:title","content":"NpgsqlRest BODY_PARAMETER_NAME Annotation"}],["meta",{"property":"og:description","content":"Specify which function parameter receives the raw HTTP request body."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/body-parameter-name.md","filePath":"annotations/body-parameter-name.md"}'),t={name:"annotations/body-parameter-name.md"};function l(p,a,r,o,h,d){return i(),e("div",null,a[0]||(a[0]=[n("",26)]))}const k=s(t,[["render",l]]);export{m as __pageData,k as default};
diff --git a/assets/annotations_buffer-rows.md.BrfXbHRV.js b/assets/annotations_buffer-rows.md.BrfXbHRV.js
new file mode 100644
index 000000000..44c006eb4
--- /dev/null
+++ b/assets/annotations_buffer-rows.md.BrfXbHRV.js
@@ -0,0 +1,11 @@
+import{_ as a,c as s,o as n,a5 as t}from"./chunks/framework.CgT1UzWm.js";const h=JSON.parse('{"title":"BUFFER_ROWS Annotation","titleTemplate":"NpgsqlRest","description":"Configure row buffering for PostgreSQL REST API responses. Control memory usage and streaming behavior for large result sets.","frontmatter":{"outline":[2,3],"title":"BUFFER_ROWS Annotation","titleTemplate":"NpgsqlRest","description":"Configure row buffering for PostgreSQL REST API responses. Control memory usage and streaming behavior for large result sets.","head":[["meta",{"name":"keywords","content":"npgsqlrest buffer rows, response buffering, streaming results, large result sets, memory optimization"}],["meta",{"property":"og:title","content":"NpgsqlRest BUFFER_ROWS Annotation"}],["meta",{"property":"og:description","content":"Configure row buffering for controlling memory usage and streaming."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/buffer-rows.md","filePath":"annotations/buffer-rows.md"}'),i={name:"annotations/buffer-rows.md"};function r(l,e,o,p,c,d){return n(),s("div",null,e[0]||(e[0]=[t(`
`,30)]))}const m=a(i,[["render",r]]);export{h as __pageData,m as default};
diff --git a/assets/annotations_buffer-rows.md.BrfXbHRV.lean.js b/assets/annotations_buffer-rows.md.BrfXbHRV.lean.js
new file mode 100644
index 000000000..bb2f26832
--- /dev/null
+++ b/assets/annotations_buffer-rows.md.BrfXbHRV.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as s,o as n,a5 as t}from"./chunks/framework.CgT1UzWm.js";const h=JSON.parse('{"title":"BUFFER_ROWS Annotation","titleTemplate":"NpgsqlRest","description":"Configure row buffering for PostgreSQL REST API responses. Control memory usage and streaming behavior for large result sets.","frontmatter":{"outline":[2,3],"title":"BUFFER_ROWS Annotation","titleTemplate":"NpgsqlRest","description":"Configure row buffering for PostgreSQL REST API responses. Control memory usage and streaming behavior for large result sets.","head":[["meta",{"name":"keywords","content":"npgsqlrest buffer rows, response buffering, streaming results, large result sets, memory optimization"}],["meta",{"property":"og:title","content":"NpgsqlRest BUFFER_ROWS Annotation"}],["meta",{"property":"og:description","content":"Configure row buffering for controlling memory usage and streaming."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/buffer-rows.md","filePath":"annotations/buffer-rows.md"}'),i={name:"annotations/buffer-rows.md"};function r(l,e,o,p,c,d){return n(),s("div",null,e[0]||(e[0]=[t("",30)]))}const m=a(i,[["render",r]]);export{h as __pageData,m as default};
diff --git a/assets/annotations_cache-expires-in.md.BRoExkyw.js b/assets/annotations_cache-expires-in.md.BRoExkyw.js
new file mode 100644
index 000000000..df1943018
--- /dev/null
+++ b/assets/annotations_cache-expires-in.md.BRoExkyw.js
@@ -0,0 +1,13 @@
+import{_ as e,c as s,o as n,a5 as i}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"CACHE_EXPIRES_IN Annotation","titleTemplate":"NpgsqlRest","description":"Set cache expiration time for PostgreSQL REST API endpoints. Configure TTL for cached responses.","frontmatter":{"outline":[2,3],"title":"CACHE_EXPIRES_IN Annotation","titleTemplate":"NpgsqlRest","description":"Set cache expiration time for PostgreSQL REST API endpoints. Configure TTL for cached responses.","head":[["meta",{"name":"keywords","content":"npgsqlrest cache expires, cache ttl, cache expiration, api cache duration, response cache timeout"}],["meta",{"property":"og:title","content":"NpgsqlRest CACHE_EXPIRES_IN Annotation"}],["meta",{"property":"og:description","content":"Set cache expiration time for cached PostgreSQL REST API endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/cache-expires-in.md","filePath":"annotations/cache-expires-in.md"}'),t={name:"annotations/cache-expires-in.md"};function l(c,a,o,r,p,d){return n(),s("div",null,a[0]||(a[0]=[i(`
Cache Options - Configure cache backend and settings
`,22)]))}const u=e(t,[["render",l]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_cache-expires-in.md.BRoExkyw.lean.js b/assets/annotations_cache-expires-in.md.BRoExkyw.lean.js
new file mode 100644
index 000000000..71e9c72d9
--- /dev/null
+++ b/assets/annotations_cache-expires-in.md.BRoExkyw.lean.js
@@ -0,0 +1 @@
+import{_ as e,c as s,o as n,a5 as i}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"CACHE_EXPIRES_IN Annotation","titleTemplate":"NpgsqlRest","description":"Set cache expiration time for PostgreSQL REST API endpoints. Configure TTL for cached responses.","frontmatter":{"outline":[2,3],"title":"CACHE_EXPIRES_IN Annotation","titleTemplate":"NpgsqlRest","description":"Set cache expiration time for PostgreSQL REST API endpoints. Configure TTL for cached responses.","head":[["meta",{"name":"keywords","content":"npgsqlrest cache expires, cache ttl, cache expiration, api cache duration, response cache timeout"}],["meta",{"property":"og:title","content":"NpgsqlRest CACHE_EXPIRES_IN Annotation"}],["meta",{"property":"og:description","content":"Set cache expiration time for cached PostgreSQL REST API endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/cache-expires-in.md","filePath":"annotations/cache-expires-in.md"}'),t={name:"annotations/cache-expires-in.md"};function l(c,a,o,r,p,d){return n(),s("div",null,a[0]||(a[0]=[i("",22)]))}const u=e(t,[["render",l]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_cache-profile.md.YD0xPH6k.js b/assets/annotations_cache-profile.md.YD0xPH6k.js
new file mode 100644
index 000000000..1a09adff0
--- /dev/null
+++ b/assets/annotations_cache-profile.md.YD0xPH6k.js
@@ -0,0 +1,47 @@
+import{_ as i,c as a,o as e,a5 as n}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"CACHE_PROFILE Annotation","titleTemplate":"NpgsqlRest","description":"Select a named cache profile defined in CacheOptions. Profiles let you mix multiple cache backends, dynamic TTLs, and conditional skip rules in one application.","frontmatter":{"outline":[2,3],"title":"CACHE_PROFILE Annotation","titleTemplate":"NpgsqlRest","description":"Select a named cache profile defined in CacheOptions. Profiles let you mix multiple cache backends, dynamic TTLs, and conditional skip rules in one application.","head":[["meta",{"name":"keywords","content":"npgsqlrest cache_profile, cache profiles, multiple cache backends, dynamic ttl, conditional caching, postgresql api cache profiles"}],["meta",{"property":"og:title","content":"NpgsqlRest CACHE_PROFILE Annotation"}],["meta",{"property":"og:description","content":"Select a named cache profile to apply per-endpoint cache backend, expiration, and conditional skip rules."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/cache-profile.md","filePath":"annotations/cache-profile.md"}'),t={name:"annotations/cache-profile.md"};function l(p,s,h,r,k,d){return e(),a("div",null,s[0]||(s[0]=[n(`
A cache profile bundles together a cache backend (Memory / Redis / Hybrid), a default expiration, the cache-key parameter list, and per-parameter conditional rules ("when X is null, bypass cache" or "when status='draft', cache 30 seconds"). Profiles are defined once in Cache Options configuration and selected per endpoint via this annotation.
@cache_profileimplies caching — you don't also need @cached. Both @cached and @cache_expires annotations remain valid; when present they override the profile's defaults.
The annotation accepts exactly one profile name. The name must match a profile defined in CacheOptions.Profiles and registered with "Enabled": true. Unknown names cause startup to fail with a single error listing every unresolved name and the offending endpoints.
create function get_dashboard()
+returns json
+language sql
+begin atomic;
+select dashboard_data();
+end;
+
+comment on function get_dashboard() is
+'HTTP GET
+@cache_profile fast_memory';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-dashboard.sql):
sql
sql
-- HTTP GET
+-- @cache_profile fast_memory
+select dashboard_data();
1 2 3
The fast_memory profile (defined in CacheOptions.Profiles) supplies the backend, expiration, and any conditional rules.
@cache_profile implies @cached — explicit @cached is unnecessary.
The profile's Cache (backend instance) is used instead of the root DefaultRoutineCache.
The profile's Expiration is used unless overridden by @cache_expires.
The profile's Parameters list is used as the default cache-key set unless overridden by @cached <list>.
The profile's When rules are evaluated at request time; first match wins. Rules can "skip" (bypass cache) or override TTL with a PostgreSQL interval.
Cache entries written under a profile are prefixed with the profile name, so two profiles sharing the same backend (e.g., two Memory profiles) cannot collide.
The cache invalidation endpoint (when InvalidateCacheSuffix is configured) routes through the same profile backend.
Cache Options — top-level cache backend and profile configuration
`,37)]))}const u=i(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_cache-profile.md.YD0xPH6k.lean.js b/assets/annotations_cache-profile.md.YD0xPH6k.lean.js
new file mode 100644
index 000000000..abe377105
--- /dev/null
+++ b/assets/annotations_cache-profile.md.YD0xPH6k.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as e,a5 as n}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"CACHE_PROFILE Annotation","titleTemplate":"NpgsqlRest","description":"Select a named cache profile defined in CacheOptions. Profiles let you mix multiple cache backends, dynamic TTLs, and conditional skip rules in one application.","frontmatter":{"outline":[2,3],"title":"CACHE_PROFILE Annotation","titleTemplate":"NpgsqlRest","description":"Select a named cache profile defined in CacheOptions. Profiles let you mix multiple cache backends, dynamic TTLs, and conditional skip rules in one application.","head":[["meta",{"name":"keywords","content":"npgsqlrest cache_profile, cache profiles, multiple cache backends, dynamic ttl, conditional caching, postgresql api cache profiles"}],["meta",{"property":"og:title","content":"NpgsqlRest CACHE_PROFILE Annotation"}],["meta",{"property":"og:description","content":"Select a named cache profile to apply per-endpoint cache backend, expiration, and conditional skip rules."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/cache-profile.md","filePath":"annotations/cache-profile.md"}'),t={name:"annotations/cache-profile.md"};function l(p,s,h,r,k,d){return e(),a("div",null,s[0]||(s[0]=[n("",37)]))}const u=i(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_cached.md.Z17IaMQ8.js b/assets/annotations_cached.md.Z17IaMQ8.js
new file mode 100644
index 000000000..1c65858ec
--- /dev/null
+++ b/assets/annotations_cached.md.Z17IaMQ8.js
@@ -0,0 +1,55 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"CACHED Annotation","titleTemplate":"NpgsqlRest","description":"Enable server-side response caching for PostgreSQL function results. Configure cache keys and expiration for improved performance.","frontmatter":{"outline":[2,3],"title":"CACHED Annotation","titleTemplate":"NpgsqlRest","description":"Enable server-side response caching for PostgreSQL function results. Configure cache keys and expiration for improved performance.","head":[["meta",{"name":"keywords","content":"npgsqlrest cached, response caching, api cache, postgresql cache, server side cache"}],["meta",{"property":"og:title","content":"NpgsqlRest CACHED Annotation"}],["meta",{"property":"og:description","content":"Enable server-side response caching for PostgreSQL function results."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/cached.md","filePath":"annotations/cached.md"}'),l={name:"annotations/cached.md"};function t(p,s,h,r,c,k){return n(),i("div",null,s[0]||(s[0]=[e(`
create function get_app_settings()
+returns json
+language sql
+begin atomic;
+select settings from app_config where id = 1;
+end;
+
+comment on function get_app_settings() is
+'HTTP GET
+@cached';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-app-settings.sql):
sql
sql
-- HTTP GET
+-- @cached
+select settings from app_config where id = 1;
create function get_user_profile(_user_id int)
+returns json
+language sql
+begin atomic;
+select row_to_json(u) from users u where id = _user_id;
+end;
+
+comment on function get_user_profile(int) is
+'HTTP GET
+@cached _user_id';
1 2 3 4 5 6 7 8 9 10
Different _user_id values create separate cache entries.
Caching works for set-returning functions and record types. When a cached function returns multiple rows, the entire result set is cached:
sql
sql
create function get_all_users()
+returns table(id int, name text)
+language sql
+begin atomic;
+select id, name from users;
+end;
+
+comment on function get_all_users() is
+'HTTP GET
+@cached
+@cache_expires_in 5m';
1 2 3 4 5 6 7 8 9 10 11
Use MaxCacheableRows in Cache Options to limit the maximum number of rows that can be cached. Result sets exceeding this limit are returned but not cached.
Cache Options - Configure cache backend and settings
`,40)]))}const u=a(l,[["render",t]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_cached.md.Z17IaMQ8.lean.js b/assets/annotations_cached.md.Z17IaMQ8.lean.js
new file mode 100644
index 000000000..ab63bdf4d
--- /dev/null
+++ b/assets/annotations_cached.md.Z17IaMQ8.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"CACHED Annotation","titleTemplate":"NpgsqlRest","description":"Enable server-side response caching for PostgreSQL function results. Configure cache keys and expiration for improved performance.","frontmatter":{"outline":[2,3],"title":"CACHED Annotation","titleTemplate":"NpgsqlRest","description":"Enable server-side response caching for PostgreSQL function results. Configure cache keys and expiration for improved performance.","head":[["meta",{"name":"keywords","content":"npgsqlrest cached, response caching, api cache, postgresql cache, server side cache"}],["meta",{"property":"og:title","content":"NpgsqlRest CACHED Annotation"}],["meta",{"property":"og:description","content":"Enable server-side response caching for PostgreSQL function results."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/cached.md","filePath":"annotations/cached.md"}'),l={name:"annotations/cached.md"};function t(p,s,h,r,c,k){return n(),i("div",null,s[0]||(s[0]=[e("",40)]))}const u=a(l,[["render",t]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_column-names.md.BgCUEwzC.js b/assets/annotations_column-names.md.BgCUEwzC.js
new file mode 100644
index 000000000..b99cc7d2f
--- /dev/null
+++ b/assets/annotations_column-names.md.BgCUEwzC.js
@@ -0,0 +1,29 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"COLUMN_NAMES Annotation","titleTemplate":"NpgsqlRest","description":"Include column names as header row in raw output mode. Add CSV headers to PostgreSQL REST API responses.","frontmatter":{"outline":[2,3],"title":"COLUMN_NAMES Annotation","titleTemplate":"NpgsqlRest","description":"Include column names as header row in raw output mode. Add CSV headers to PostgreSQL REST API responses.","head":[["meta",{"name":"keywords","content":"npgsqlrest column names, csv header row, include headers, raw output headers, column headers"}],["meta",{"property":"og:title","content":"NpgsqlRest COLUMN_NAMES Annotation"}],["meta",{"property":"og:description","content":"Include column names as header row in raw output mode."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/column-names.md","filePath":"annotations/column-names.md"}'),l={name:"annotations/column-names.md"};function t(p,s,r,h,c,o){return n(),i("div",null,s[0]||(s[0]=[e(`
`,18)]))}const m=a(l,[["render",t]]);export{k as __pageData,m as default};
diff --git a/assets/annotations_column-names.md.BgCUEwzC.lean.js b/assets/annotations_column-names.md.BgCUEwzC.lean.js
new file mode 100644
index 000000000..ff57649aa
--- /dev/null
+++ b/assets/annotations_column-names.md.BgCUEwzC.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"COLUMN_NAMES Annotation","titleTemplate":"NpgsqlRest","description":"Include column names as header row in raw output mode. Add CSV headers to PostgreSQL REST API responses.","frontmatter":{"outline":[2,3],"title":"COLUMN_NAMES Annotation","titleTemplate":"NpgsqlRest","description":"Include column names as header row in raw output mode. Add CSV headers to PostgreSQL REST API responses.","head":[["meta",{"name":"keywords","content":"npgsqlrest column names, csv header row, include headers, raw output headers, column headers"}],["meta",{"property":"og:title","content":"NpgsqlRest COLUMN_NAMES Annotation"}],["meta",{"property":"og:description","content":"Include column names as header row in raw output mode."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/column-names.md","filePath":"annotations/column-names.md"}'),l={name:"annotations/column-names.md"};function t(p,s,r,h,c,o){return n(),i("div",null,s[0]||(s[0]=[e("",18)]))}const m=a(l,[["render",t]]);export{k as __pageData,m as default};
diff --git a/assets/annotations_command-timeout.md.DGZAbOuK.js b/assets/annotations_command-timeout.md.DGZAbOuK.js
new file mode 100644
index 000000000..0d7959457
--- /dev/null
+++ b/assets/annotations_command-timeout.md.DGZAbOuK.js
@@ -0,0 +1,38 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"COMMAND_TIMEOUT Annotation","titleTemplate":"NpgsqlRest","description":"Set query execution timeout for PostgreSQL REST API endpoints. Configure per-endpoint database command timeouts.","frontmatter":{"outline":[2,3],"title":"COMMAND_TIMEOUT Annotation","titleTemplate":"NpgsqlRest","description":"Set query execution timeout for PostgreSQL REST API endpoints. Configure per-endpoint database command timeouts.","head":[["meta",{"name":"keywords","content":"npgsqlrest timeout, query timeout, command timeout, postgresql timeout, api request timeout"}],["meta",{"property":"og:title","content":"NpgsqlRest COMMAND_TIMEOUT Annotation"}],["meta",{"property":"og:description","content":"Set query execution timeout for individual PostgreSQL REST API endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/command-timeout.md","filePath":"annotations/command-timeout.md"}'),t={name:"annotations/command-timeout.md"};function l(p,s,o,r,h,d){return n(),i("div",null,s[0]||(s[0]=[e(`
The @timeout annotation reads only the first token after the keyword. Use formats without spaces to avoid parsing issues. Numbers without a unit default to seconds.
create function quick_lookup(_id int)
+returns json
+language sql
+begin atomic;
+select row_to_json(t) from table t where id = _id;
+end;
+
+comment on function quick_lookup(int) is
+'HTTP GET
+@timeout 5s';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/quick-lookup.sql):
sql
sql
/*
+HTTP GET
+@timeout 5s
+@param $1 id
+*/
+select row_to_json(t) from items t where t.id = $1;
create function generate_report(_year int)
+returns json
+language sql
+begin atomic;
+...complex aggregation...;
+end;
+
+comment on function generate_report(int) is
+'HTTP GET
+@timeout 2min
+@authorize';
`,34)]))}const u=a(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_command-timeout.md.DGZAbOuK.lean.js b/assets/annotations_command-timeout.md.DGZAbOuK.lean.js
new file mode 100644
index 000000000..2eda9b0c1
--- /dev/null
+++ b/assets/annotations_command-timeout.md.DGZAbOuK.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"COMMAND_TIMEOUT Annotation","titleTemplate":"NpgsqlRest","description":"Set query execution timeout for PostgreSQL REST API endpoints. Configure per-endpoint database command timeouts.","frontmatter":{"outline":[2,3],"title":"COMMAND_TIMEOUT Annotation","titleTemplate":"NpgsqlRest","description":"Set query execution timeout for PostgreSQL REST API endpoints. Configure per-endpoint database command timeouts.","head":[["meta",{"name":"keywords","content":"npgsqlrest timeout, query timeout, command timeout, postgresql timeout, api request timeout"}],["meta",{"property":"og:title","content":"NpgsqlRest COMMAND_TIMEOUT Annotation"}],["meta",{"property":"og:description","content":"Set query execution timeout for individual PostgreSQL REST API endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/command-timeout.md","filePath":"annotations/command-timeout.md"}'),t={name:"annotations/command-timeout.md"};function l(p,s,o,r,h,d){return n(),i("div",null,s[0]||(s[0]=[e("",34)]))}const u=a(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_connection.md.kVRk6UjZ.js b/assets/annotations_connection.md.kVRk6UjZ.js
new file mode 100644
index 000000000..25d15468c
--- /dev/null
+++ b/assets/annotations_connection.md.kVRk6UjZ.js
@@ -0,0 +1,8 @@
+import{_ as e,c as n,o as s,a5 as i}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"CONNECTION Annotation","titleTemplate":"NpgsqlRest","description":"Route PostgreSQL REST API endpoints to specific database connections. Use different databases per endpoint.","frontmatter":{"outline":[2,3],"title":"CONNECTION Annotation","titleTemplate":"NpgsqlRest","description":"Route PostgreSQL REST API endpoints to specific database connections. Use different databases per endpoint.","head":[["meta",{"name":"keywords","content":"npgsqlrest connection, named connection, multiple databases, database routing, connection per endpoint"}],["meta",{"property":"og:title","content":"NpgsqlRest CONNECTION Annotation"}],["meta",{"property":"og:description","content":"Route endpoints to specific database connections for multi-database setups."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/connection.md","filePath":"annotations/connection.md"}'),t={name:"annotations/connection.md"};function o(l,a,c,r,p,d){return s(),n("div",null,a[0]||(a[0]=[i(`
`,20)]))}const m=e(t,[["render",o]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_connection.md.kVRk6UjZ.lean.js b/assets/annotations_connection.md.kVRk6UjZ.lean.js
new file mode 100644
index 000000000..a8e6667d3
--- /dev/null
+++ b/assets/annotations_connection.md.kVRk6UjZ.lean.js
@@ -0,0 +1 @@
+import{_ as e,c as n,o as s,a5 as i}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"CONNECTION Annotation","titleTemplate":"NpgsqlRest","description":"Route PostgreSQL REST API endpoints to specific database connections. Use different databases per endpoint.","frontmatter":{"outline":[2,3],"title":"CONNECTION Annotation","titleTemplate":"NpgsqlRest","description":"Route PostgreSQL REST API endpoints to specific database connections. Use different databases per endpoint.","head":[["meta",{"name":"keywords","content":"npgsqlrest connection, named connection, multiple databases, database routing, connection per endpoint"}],["meta",{"property":"og:title","content":"NpgsqlRest CONNECTION Annotation"}],["meta",{"property":"og:description","content":"Route endpoints to specific database connections for multi-database setups."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/connection.md","filePath":"annotations/connection.md"}'),t={name:"annotations/connection.md"};function o(l,a,c,r,p,d){return s(),n("div",null,a[0]||(a[0]=[i("",20)]))}const m=e(t,[["render",o]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_custom-parameters.md.C_JoJInz.js b/assets/annotations_custom-parameters.md.C_JoJInz.js
new file mode 100644
index 000000000..6c3dfbd94
--- /dev/null
+++ b/assets/annotations_custom-parameters.md.C_JoJInz.js
@@ -0,0 +1,20 @@
+import{_ as e,c as s,o as i,a5 as t}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"Custom Parameters Annotation","titleTemplate":"NpgsqlRest","description":"Set custom key-value configuration for PostgreSQL REST API endpoints. Add metadata and custom settings to endpoints.","frontmatter":{"outline":[2,3],"title":"Custom Parameters Annotation","titleTemplate":"NpgsqlRest","description":"Set custom key-value configuration for PostgreSQL REST API endpoints. Add metadata and custom settings to endpoints.","head":[["meta",{"name":"keywords","content":"npgsqlrest custom parameters, endpoint metadata, key value config, custom endpoint settings, api custom config"}],["meta",{"property":"og:title","content":"NpgsqlRest Custom Parameters Annotation"}],["meta",{"property":"og:description","content":"Set custom key-value configuration and metadata for endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/custom-parameters.md","filePath":"annotations/custom-parameters.md"}'),n={name:"annotations/custom-parameters.md"};function l(o,a,r,p,c,d){return i(),s("div",null,a[0]||(a[0]=[t(`
The @ prefix is optional - both @key = value and key = value work identically. Custom parameters with @ prefix are stored without the prefix (e.g., @my_param = value is stored as my_param).
Some parameters support dynamic values using the {param_name} format, where param_name references a function parameter. The value is resolved at runtime from the actual parameter value passed to the endpoint. The matching and substitution rules are shared across annotations — see Parameter Value Substitution.
create function upload_file(_path text, _file text)
+returns void
+language sql
+begin atomic;
+ -- function body
+end;
+
+comment on function upload_file(text, text) is '
+@upload for file_system
+@file_system_path = {_path}
+@file_system_file = {_file}
+';
1 2 3 4 5 6 7 8 9 10 11 12
Equivalent as a SQL file endpoint (sql/upload-file.sql):
sql
sql
/*
+HTTP POST
+@upload for file_system
+@file_system_path = {path}
+@file_system_file = {file}
+@param $1 path
+@param $2 file
+*/
+select;
1 2 3 4 5 6 7 8 9
When called with {"_path": "/uploads/images", "_file": "photo.jpg"}, the file will be saved to /uploads/images/photo.jpg.
`,31)]))}const u=e(n,[["render",l]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_custom-parameters.md.C_JoJInz.lean.js b/assets/annotations_custom-parameters.md.C_JoJInz.lean.js
new file mode 100644
index 000000000..8894158b1
--- /dev/null
+++ b/assets/annotations_custom-parameters.md.C_JoJInz.lean.js
@@ -0,0 +1 @@
+import{_ as e,c as s,o as i,a5 as t}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"Custom Parameters Annotation","titleTemplate":"NpgsqlRest","description":"Set custom key-value configuration for PostgreSQL REST API endpoints. Add metadata and custom settings to endpoints.","frontmatter":{"outline":[2,3],"title":"Custom Parameters Annotation","titleTemplate":"NpgsqlRest","description":"Set custom key-value configuration for PostgreSQL REST API endpoints. Add metadata and custom settings to endpoints.","head":[["meta",{"name":"keywords","content":"npgsqlrest custom parameters, endpoint metadata, key value config, custom endpoint settings, api custom config"}],["meta",{"property":"og:title","content":"NpgsqlRest Custom Parameters Annotation"}],["meta",{"property":"og:description","content":"Set custom key-value configuration and metadata for endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/custom-parameters.md","filePath":"annotations/custom-parameters.md"}'),n={name:"annotations/custom-parameters.md"};function l(o,a,r,p,c,d){return i(),s("div",null,a[0]||(a[0]=[t("",31)]))}const u=e(n,[["render",l]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_define-param.md.BEpTOvZh.js b/assets/annotations_define-param.md.BEpTOvZh.js
new file mode 100644
index 000000000..09de563cf
--- /dev/null
+++ b/assets/annotations_define-param.md.BEpTOvZh.js
@@ -0,0 +1,16 @@
+import{_ as e,c as s,o as i,a5 as t}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"DEFINE_PARAM Annotation","titleTemplate":"NpgsqlRest","description":"Define virtual HTTP parameters that are not bound to the PostgreSQL command. Used for custom parameter placeholders, claim mapping, and HTTP request matching in SQL file endpoints.","frontmatter":{"outline":[2,3],"title":"DEFINE_PARAM Annotation","titleTemplate":"NpgsqlRest","description":"Define virtual HTTP parameters that are not bound to the PostgreSQL command. Used for custom parameter placeholders, claim mapping, and HTTP request matching in SQL file endpoints.","head":[["meta",{"name":"keywords","content":"npgsqlrest define_param, virtual parameter, sql file parameter, claim mapping parameter, custom parameter placeholder"}],["meta",{"property":"og:title","content":"NpgsqlRest DEFINE_PARAM Annotation"}],["meta",{"property":"og:description","content":"Define virtual HTTP parameters that are not bound to the PostgreSQL command."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/define-param.md","filePath":"annotations/define-param.md"}'),n={name:"annotations/define-param.md"};function l(r,a,p,o,d,h){return i(),s("div",null,a[0]||(a[0]=[t(`
Define HTTP parameters that are not bound to the PostgreSQL command. These virtual parameters exist in the HTTP request (query string or JSON body) but do not correspond to any $N positional parameter in the SQL query.
This is useful for SQL file endpoints where you need HTTP parameters for:
Custom parameter placeholders — parameters that feed into annotation placeholders like {format} without being part of the SQL
Claim mapping — auto-filling parameters from authenticated user claims without referencing them in the query
HTTP request matching — parameters that affect endpoint behavior without participating in the database query
Pass HTTP parameters that control endpoint behavior without referencing them in SQL:
sql
sql
-- sql/users_report.sql
+-- @define_param format text
+-- @table_format = {format}
+-- @param $1 department_id
+select id, name, email from users where department_id = $1;
1 2 3 4 5
GET /api/users-report?department_id=5&format=html_table
The format parameter feeds into the @table_format annotation via the {format} placeholder, selecting the output format (JSON, HTML table, Excel, etc.) without being part of the SQL query. Without @define_param, there would be no format parameter in the endpoint — the {format} placeholder would have nothing to resolve.
Here _user_id is created as a virtual parameter that maps to the name_identifier claim (via standard User Parameters claim mapping). The authenticated user's ID is injected automatically — but unlike @param, this parameter doesn't correspond to any $N in the SQL. The query itself doesn't filter by user — the virtual parameter exists solely for the claim mapping mechanism.
This is different from using @param with @user_parameters:
sql
sql
-- This uses @param — $1 IS in the SQL query
+-- @authorize
+-- @user_parameters
+-- @param $1 _user_id
+select * from orders where user_id = $1;
1 2 3 4 5
Use @define_param when the parameter shouldn't appear in the SQL at all. Use @param when you need the value both as a claim-mapped parameter and as a query parameter.
`,27)]))}const u=e(n,[["render",l]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_define-param.md.BEpTOvZh.lean.js b/assets/annotations_define-param.md.BEpTOvZh.lean.js
new file mode 100644
index 000000000..78e965946
--- /dev/null
+++ b/assets/annotations_define-param.md.BEpTOvZh.lean.js
@@ -0,0 +1 @@
+import{_ as e,c as s,o as i,a5 as t}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"DEFINE_PARAM Annotation","titleTemplate":"NpgsqlRest","description":"Define virtual HTTP parameters that are not bound to the PostgreSQL command. Used for custom parameter placeholders, claim mapping, and HTTP request matching in SQL file endpoints.","frontmatter":{"outline":[2,3],"title":"DEFINE_PARAM Annotation","titleTemplate":"NpgsqlRest","description":"Define virtual HTTP parameters that are not bound to the PostgreSQL command. Used for custom parameter placeholders, claim mapping, and HTTP request matching in SQL file endpoints.","head":[["meta",{"name":"keywords","content":"npgsqlrest define_param, virtual parameter, sql file parameter, claim mapping parameter, custom parameter placeholder"}],["meta",{"property":"og:title","content":"NpgsqlRest DEFINE_PARAM Annotation"}],["meta",{"property":"og:description","content":"Define virtual HTTP parameters that are not bound to the PostgreSQL command."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/define-param.md","filePath":"annotations/define-param.md"}'),n={name:"annotations/define-param.md"};function l(r,a,p,o,d,h){return i(),s("div",null,a[0]||(a[0]=[t("",27)]))}const u=e(n,[["render",l]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_disabled.md.DLiSD84Q.js b/assets/annotations_disabled.md.DLiSD84Q.js
new file mode 100644
index 000000000..101c041c9
--- /dev/null
+++ b/assets/annotations_disabled.md.DLiSD84Q.js
@@ -0,0 +1,6 @@
+import{_ as a,c as t,o as s,a5 as i}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"DISABLED Annotation","titleTemplate":"NpgsqlRest","description":"Disable a PostgreSQL function or procedure as an HTTP endpoint without dropping or modifying the routine itself.","frontmatter":{"outline":[2,3],"title":"DISABLED Annotation","titleTemplate":"NpgsqlRest","description":"Disable a PostgreSQL function or procedure as an HTTP endpoint without dropping or modifying the routine itself.","head":[["meta",{"name":"keywords","content":"npgsqlrest disabled, disable endpoint, hide api endpoint"}],["meta",{"property":"og:title","content":"NpgsqlRest DISABLED Annotation"}],["meta",{"property":"og:description","content":"Disable a function or procedure from being exposed as an HTTP endpoint."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/disabled.md","filePath":"annotations/disabled.md"}'),n={name:"annotations/disabled.md"};function o(l,e,d,r,c,p){return s(),t("div",null,e[0]||(e[0]=[i(`
Disables the endpoint only when the routine matches at least one of the listed tags. The available auto-tags assigned by RoutineSource are:
Tag
Matches
function
PostgreSQL functions
procedure
PostgreSQL procedures
volatile
Functions declared VOLATILE (the default)
stable
Functions declared STABLE
immutable
Functions declared IMMUTABLE
other
Procedures (volatility doesn't apply)
sql
sql
-- Disable only if the function is volatile (e.g., to enforce read-only API surface)
+comment on function get_data() is '
+HTTP GET
+@disabled volatile';
1 2 3 4
Custom tags are not supported — only the auto-tags above are available. SQL file endpoints have no auto-tags.
Most projects don't need the tag form
The unconditional @disabled is the form you'll reach for in practice. The tag form is a leftover from earlier versions where the CRUD source assigned per-operation tags (select, insert, etc.).
TAGS — apply annotations conditionally by routine tag
INTERNAL — alternative for marking a routine as internal-only
`,20)]))}const m=a(n,[["render",o]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_disabled.md.DLiSD84Q.lean.js b/assets/annotations_disabled.md.DLiSD84Q.lean.js
new file mode 100644
index 000000000..abfc35f1d
--- /dev/null
+++ b/assets/annotations_disabled.md.DLiSD84Q.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as t,o as s,a5 as i}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"DISABLED Annotation","titleTemplate":"NpgsqlRest","description":"Disable a PostgreSQL function or procedure as an HTTP endpoint without dropping or modifying the routine itself.","frontmatter":{"outline":[2,3],"title":"DISABLED Annotation","titleTemplate":"NpgsqlRest","description":"Disable a PostgreSQL function or procedure as an HTTP endpoint without dropping or modifying the routine itself.","head":[["meta",{"name":"keywords","content":"npgsqlrest disabled, disable endpoint, hide api endpoint"}],["meta",{"property":"og:title","content":"NpgsqlRest DISABLED Annotation"}],["meta",{"property":"og:description","content":"Disable a function or procedure from being exposed as an HTTP endpoint."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/disabled.md","filePath":"annotations/disabled.md"}'),n={name:"annotations/disabled.md"};function o(l,e,d,r,c,p){return s(),t("div",null,e[0]||(e[0]=[i("",20)]))}const m=a(n,[["render",o]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_enabled.md.w_f0uh0_.js b/assets/annotations_enabled.md.w_f0uh0_.js
new file mode 100644
index 000000000..f9b5585a6
--- /dev/null
+++ b/assets/annotations_enabled.md.w_f0uh0_.js
@@ -0,0 +1,6 @@
+import{_ as a,c as n,o as t,a5 as s}from"./chunks/framework.CgT1UzWm.js";const h=JSON.parse('{"title":"ENABLED Annotation","titleTemplate":"NpgsqlRest","description":"Re-enable a PostgreSQL endpoint after a prior @disabled, optionally scoped by routine tag.","frontmatter":{"outline":[2,3],"title":"ENABLED Annotation","titleTemplate":"NpgsqlRest","description":"Re-enable a PostgreSQL endpoint after a prior @disabled, optionally scoped by routine tag.","head":[["meta",{"name":"keywords","content":"npgsqlrest enabled, enable endpoint, conditional enable"}],["meta",{"property":"og:title","content":"NpgsqlRest ENABLED Annotation"}],["meta",{"property":"og:description","content":"Re-enable an endpoint after @disabled, optionally scoped by routine tag."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/enabled.md","filePath":"annotations/enabled.md"}'),l={name:"annotations/enabled.md"};function i(o,e,d,p,c,r){return t(),n("div",null,e[0]||(e[0]=[s(`
Re-enable an endpoint that an earlier @disabled would otherwise hide.
Rarely needed
Endpoints are enabled by default. You only need @enabled to undo a @disabled on a tag-conditional basis. If you've never reached for @disabled, you don't need @enabled either.
Without tags: enables the endpoint unconditionally.
With tags: enables only when the routine matches at least one of the listed tags.
The available auto-tags assigned by RoutineSource are function, procedure, volatile, stable, immutable, other. SQL file endpoints have no auto-tags.
Example: disable-by-default, enable for immutable only
sql
sql
comment on function calculate_total(_items json) is '
+HTTP GET
+@disabled
+@enabled immutable
+@cached';
1 2 3 4 5
The endpoint is disabled by default, but re-enabled when the function is declared IMMUTABLE. If you later mark the function STABLE or VOLATILE, the endpoint disappears without further changes.
TAGS — apply annotations conditionally by routine tag
`,14)]))}const u=a(l,[["render",i]]);export{h as __pageData,u as default};
diff --git a/assets/annotations_enabled.md.w_f0uh0_.lean.js b/assets/annotations_enabled.md.w_f0uh0_.lean.js
new file mode 100644
index 000000000..f9ade70d0
--- /dev/null
+++ b/assets/annotations_enabled.md.w_f0uh0_.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as n,o as t,a5 as s}from"./chunks/framework.CgT1UzWm.js";const h=JSON.parse('{"title":"ENABLED Annotation","titleTemplate":"NpgsqlRest","description":"Re-enable a PostgreSQL endpoint after a prior @disabled, optionally scoped by routine tag.","frontmatter":{"outline":[2,3],"title":"ENABLED Annotation","titleTemplate":"NpgsqlRest","description":"Re-enable a PostgreSQL endpoint after a prior @disabled, optionally scoped by routine tag.","head":[["meta",{"name":"keywords","content":"npgsqlrest enabled, enable endpoint, conditional enable"}],["meta",{"property":"og:title","content":"NpgsqlRest ENABLED Annotation"}],["meta",{"property":"og:description","content":"Re-enable an endpoint after @disabled, optionally scoped by routine tag."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/enabled.md","filePath":"annotations/enabled.md"}'),l={name:"annotations/enabled.md"};function i(o,e,d,p,c,r){return t(),n("div",null,e[0]||(e[0]=[s("",14)]))}const u=a(l,[["render",i]]);export{h as __pageData,u as default};
diff --git a/assets/annotations_encrypt-decrypt.md.BVL3DPHk.js b/assets/annotations_encrypt-decrypt.md.BVL3DPHk.js
new file mode 100644
index 000000000..b2a7ccd27
--- /dev/null
+++ b/assets/annotations_encrypt-decrypt.md.BVL3DPHk.js
@@ -0,0 +1,46 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"ENCRYPT / DECRYPT Annotations","titleTemplate":"NpgsqlRest","description":"Transparent application-level column encryption using ASP.NET Data Protection. Encrypt parameter values before PostgreSQL, decrypt result columns before returning to client.","frontmatter":{"outline":[2,3],"title":"ENCRYPT / DECRYPT Annotations","titleTemplate":"NpgsqlRest","description":"Transparent application-level column encryption using ASP.NET Data Protection. Encrypt parameter values before PostgreSQL, decrypt result columns before returning to client.","head":[["meta",{"name":"keywords","content":"npgsqlrest encrypt, npgsqlrest decrypt, data protection encryption, column encryption postgresql, encrypt parameters, decrypt results"}],["meta",{"property":"og:title","content":"NpgsqlRest ENCRYPT / DECRYPT Annotations"}],["meta",{"property":"og:description","content":"Transparent column encryption and decryption using ASP.NET Data Protection."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/encrypt-decrypt.md","filePath":"annotations/encrypt-decrypt.md"}'),t={name:"annotations/encrypt-decrypt.md"};function l(p,s,r,h,c,o){return n(),i("div",null,s[0]||(s[0]=[e(`
Transparent application-level column encryption using ASP.NET Data Protection. Parameter values are encrypted before being sent to PostgreSQL, and result column values are decrypted before being returned to the API client. The database stores ciphertext; the API consumer sees plaintext. No pgcrypto or client-side encryption required.
Prerequisite: The DataProtection section must be enabled in appsettings.json (it is by default). See Data Protection Configuration.
Mark specific parameters to encrypt before they are sent to PostgreSQL:
sql
sql
create function store_patient_ssn(_patient_id int, _ssn text)
+returns void
+language plpgsql as $$
+begin
+ insert into patients (id, ssn) values (_patient_id, _ssn)
+ on conflict (id) do update set ssn = excluded.ssn;
+end;
+$$;
+comment on function store_patient_ssn(int, text) is '
+HTTP POST
+encrypt _ssn
+';
1 2 3 4 5 6 7 8 9 10 11 12
Equivalent as a SQL file endpoint (sql/store-patient-ssn.sql):
sql
sql
/*
+HTTP POST
+@encrypt ssn
+@param $1 patient_id
+@param $2 ssn
+*/
+insert into patients (id, ssn) values ($1, $2)
+on conflict (id) do update set ssn = excluded.ssn;
1 2 3 4 5 6 7 8
The client calls POST /api/store-patient-ssn/ with {"patientId": 1, "ssn": "123-45-6789"}. The server encrypts _ssn using Data Protection before executing the SQL — the database stores ciphertext like CfDJ8N..., never the plaintext SSN.
Use encrypt without arguments to encrypt all text parameters:
sql
sql
comment on function store_all_secrets(text, text) is '
+HTTP POST
+encrypt
+';
Mark specific result columns to decrypt before returning to the client:
sql
sql
create function get_patient(_patient_id int)
+returns table(id int, ssn text, name text)
+language plpgsql as $$
+begin
+ return query select p.id, p.ssn, p.name from patients p where p.id = _patient_id;
+end;
+$$;
+comment on function get_patient(int) is '
+decrypt ssn
+';
1 2 3 4 5 6 7 8 9 10
The client calls GET /api/get-patient/?patientId=1. The ssn column is decrypted from ciphertext back to "123-45-6789" before being included in the JSON response. The id and name columns are returned as-is.
Use decrypt without arguments to decrypt all result columns:
sql
sql
comment on function get_all_secrets(text) is '
+decrypt
+';
1 2 3
Decrypt also works on scalar (single-value) return types:
sql
sql
create function get_secret(_id int) returns text ...
+comment on function get_secret(int) is 'decrypt';
-- Store with encryption
+create function store_secret(_key text, _value text) returns void ...
+comment on function store_secret(text, text) is '
+HTTP POST
+encrypt _value
+';
+
+-- Retrieve with decryption
+create function get_secret(_key text) returns table(key text, value text) ...
+comment on function get_secret(text) is '
+decrypt value
+';
NULL values: NULL parameters are not encrypted (passed as DBNull). NULL columns are not decrypted (returned as JSON null).
Non-text types: Only string parameter values are encrypted. Integer, boolean, and other types are unaffected even when encrypt is used without arguments.
Decryption failures: If a column value cannot be decrypted (e.g., it was not encrypted, or keys were rotated/lost), the raw value is returned as-is — no error is thrown.
Key rotation: ASP.NET Data Protection maintains a key ring. Old keys still decrypt old ciphertext. Keys rotate based on DefaultKeyLifetimeDays (default: 90 days).
Encrypted columns are opaque to PostgreSQL: The database cannot filter, join, sort, or index on encrypted values. Use encryption only for columns that are written and read back, never queried by content.
`,36)]))}const u=a(t,[["render",l]]);export{d as __pageData,u as default};
diff --git a/assets/annotations_encrypt-decrypt.md.BVL3DPHk.lean.js b/assets/annotations_encrypt-decrypt.md.BVL3DPHk.lean.js
new file mode 100644
index 000000000..6c8f33007
--- /dev/null
+++ b/assets/annotations_encrypt-decrypt.md.BVL3DPHk.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"ENCRYPT / DECRYPT Annotations","titleTemplate":"NpgsqlRest","description":"Transparent application-level column encryption using ASP.NET Data Protection. Encrypt parameter values before PostgreSQL, decrypt result columns before returning to client.","frontmatter":{"outline":[2,3],"title":"ENCRYPT / DECRYPT Annotations","titleTemplate":"NpgsqlRest","description":"Transparent application-level column encryption using ASP.NET Data Protection. Encrypt parameter values before PostgreSQL, decrypt result columns before returning to client.","head":[["meta",{"name":"keywords","content":"npgsqlrest encrypt, npgsqlrest decrypt, data protection encryption, column encryption postgresql, encrypt parameters, decrypt results"}],["meta",{"property":"og:title","content":"NpgsqlRest ENCRYPT / DECRYPT Annotations"}],["meta",{"property":"og:description","content":"Transparent column encryption and decryption using ASP.NET Data Protection."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/encrypt-decrypt.md","filePath":"annotations/encrypt-decrypt.md"}'),t={name:"annotations/encrypt-decrypt.md"};function l(p,s,r,h,c,o){return n(),i("div",null,s[0]||(s[0]=[e("",36)]))}const u=a(t,[["render",l]]);export{d as __pageData,u as default};
diff --git a/assets/annotations_error-code-policy.md.CcDC1Uqp.js b/assets/annotations_error-code-policy.md.CcDC1Uqp.js
new file mode 100644
index 000000000..702e92f17
--- /dev/null
+++ b/assets/annotations_error-code-policy.md.CcDC1Uqp.js
@@ -0,0 +1,6 @@
+import{_ as a,c as s,o,a5 as i}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"ERROR_CODE_POLICY Annotation","titleTemplate":"NpgsqlRest","description":"Associate error handling policies with PostgreSQL REST API endpoints. Map PostgreSQL errors to custom HTTP responses.","frontmatter":{"outline":[2,3],"title":"ERROR_CODE_POLICY Annotation","titleTemplate":"NpgsqlRest","description":"Associate error handling policies with PostgreSQL REST API endpoints. Map PostgreSQL errors to custom HTTP responses.","head":[["meta",{"name":"keywords","content":"npgsqlrest error policy, postgresql error handling, custom error responses, error code mapping"}],["meta",{"property":"og:title","content":"NpgsqlRest ERROR_CODE_POLICY Annotation"}],["meta",{"property":"og:description","content":"Associate error handling policies for custom PostgreSQL error responses."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/error-code-policy.md","filePath":"annotations/error-code-policy.md"}'),n={name:"annotations/error-code-policy.md"};function r(t,e,l,c,p,d){return o(),s("div",null,e[0]||(e[0]=[i(`
HTTP Types are PostgreSQL composite types with a special comment that defines an HTTP request. When a function uses an HTTP Type as a parameter, NpgsqlRest automatically makes the HTTP request and populates the type fields with the response before executing the function.
-- Create response type
+create type simple_api as (
+ body text,
+ status_code int,
+ success boolean,
+ error_message text
+);
+
+-- Define HTTP request
+comment on type simple_api is 'GET https://api.example.com/data';
+
+-- Use in function
+create function fetch_data(_response simple_api)
+returns text
+language sql
+begin atomic;
+select (_response).body;
+end;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Equivalent as a SQL file endpoint (sql/fetch-data.sql):
The HTTP Type itself must be defined in DDL (it's a composite type), but the consuming endpoint can be a SQL file. Assuming simple_api is already defined as above:
sql
sql
/*
+HTTP GET
+@param $1 response simple_api
+*/
+select ($1::simple_api).body;
A function can have multiple HTTP Type parameters for chained API calls:
sql
sql
create type auth_api as (
+ body text,
+ status_code int,
+ success boolean,
+ error_message text
+);
+
+create type data_api as (
+ body text,
+ status_code int,
+ success boolean,
+ error_message text
+);
+
+comment on type auth_api is 'POST https://auth.example.com/token
+Content-Type: application/x-www-form-urlencoded
+
+client_id={_client_id}&client_secret={_client_secret}';
+
+comment on type data_api is 'GET https://api.example.com/data
+Authorization: Bearer {_token}';
+
+create function fetch_with_auth(
+ _client_id text,
+ _client_secret text,
+ _auth auth_api,
+ _token text,
+ _data data_api
+)
+returns json
+language plpgsql
+as $$
+begin
+ -- Note: _token would need to be extracted from _auth.body in practice
+ if not (_auth).success then
+ return json_build_object('error', 'Authentication failed');
+ end if;
+
+ if (_data).success then
+ return (_data).body::json;
+ else
+ return json_build_object('error', (_data).error_message);
+ end if;
+end;
+$$;
Timeout can appear before the request line or after headers:
sql
sql
-- Before request line
+comment on type api_type is 'timeout 30
+GET https://api.example.com/data';
+
+-- After headers
+comment on type api_type is 'GET https://api.example.com/data
+Authorization: Bearer {_token}
+@timeout 30s';
Placeholders in the format {name} are replaced via the shared Parameter Value Substitution mechanism (case-insensitive name matching, NULL → empty, unknown → left literal). For HTTP types the type's own field names are also valid placeholders. A {name} can be supplied by any of three sources:
a request/function parameter (shown below);
an allowlisted environment variable — ideal for a static API key, without routing it through a parameter (e.g. Authorization: Bearer {WEATHER_API_KEY});
a resolved parameter expression — a value computed server-side from SQL (e.g. a token read from a table), never supplied by the client.
The @retry_delay directive adds automatic retries with configurable delays for transient failures:
sql
sql
-- Retry on any failure:
+comment on type my_api_type is '@retry_delay 1s, 2s, 5s
+GET https://api.example.com/data';
+
+-- Retry only on specific HTTP status codes:
+comment on type my_api_type is '@retry_delay 1s, 2s, 5s on 429, 503
+GET https://api.example.com/data';
+
+-- Combined with timeout:
+comment on type my_api_type is '@timeout 10s
+@retry_delay 1s, 2s, 5s on 429, 503
+GET https://api.example.com/data';
1 2 3 4 5 6 7 8 9 10 11 12
The delay list defines both the number of retries and the delay before each retry. 1s, 2s, 5s means 3 retries with 1s, 2s, and 5s delays respectively. Delay values use the same format as timeout — 100ms, 1s, 5m, 30, 00:00:01, etc.
Without on filter: Retries on any non-success HTTP response, timeout, or network error.
With on filter: Retries only when the status code matches a listed code. Timeouts and network errors always trigger retry.
Retry exhaustion: If all retries fail, the last error is passed to the function.
The @cache directive caches the outbound HTTP response and reuses it for matching requests within a time window, instead of calling the upstream on every request:
sql
sql
comment on type books_api is '@cache 5m
+GET https://books.toscrape.com/';
1 2
A cached type fires one outbound call for a given request shape; subsequent matching requests are served from an in-memory cache until the TTL elapses. For a type with no per-request placeholders (a constant URL, headers, and body), that means a single shared upstream call per TTL window across the whole application — rather than one call per inbound request.
sql
sql
-- TTL accepts the same interval formats as @timeout:
+comment on type t is '@cache 30s
+GET https://api.example.com/data';
+
+comment on type t is '@cache 5m
+GET https://api.example.com/data';
+
+comment on type t is '@cache 00:05:00
+GET https://api.example.com/data';
+
+-- Combined with other directives (order and placement are flexible):
+comment on type t is '@timeout 10s
+@retry_delay 1s, 2s on 429, 503
+@cache 5m
+GET https://api.example.com/data';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Behavior and rules:
Opt-in, per type. Caching happens only when @cache is present. Without it, every request fires a fresh call (the previous behavior).
GET only. A @cache directive on any non-GET method is ignored with a startup warning — caching a mutating request is almost always a mistake.
TTL.@cache <interval> uses the interval format (30s, 5m, 1h, 00:05:00, or a bare number of seconds). A bare @cache (no interval) caches with no expiration — until the process restarts — and logs a warning.
Successful responses only. Only 2xx responses are cached, so a transient upstream failure is never pinned for the whole TTL; the next request re-fetches.
Stampede protection. A burst of concurrent requests for the same cache key coalesces into a single outbound call; the rest await the in-flight result.
Cache key. The key is the HTTP method + resolved URL + resolved content-type + resolved headers + resolved body. Placeholders are resolved first, so per-request values vary the key naturally — each distinct resolved request is cached separately.
Caching is configured globally under HttpClientOptions (CacheEnabled kill switch, MaxCacheEntries, CachePruneIntervalSeconds).
A common need with HTTP Types is a value computed server-side — an API token read from a table, a secret derived from the user's claims — injected into a {name} placeholder without the client ever supplying it. A resolved parameter expression does this: a param = <sql> annotation on the function runs that SQL per request and binds the result to the parameter, which then substitutes into the URL/headers/body.
sql
sql
comment on type my_api_response is 'GET https://api.example.com/data
+Authorization: Bearer {_token}';
+
+comment on function get_secure_data(_user_id int, _req my_api_response, _token text) is '
+_token = select api_token from user_tokens where user_id = {_user_id}
+';
1 2 3 4 5 6
The server resolves _token from the database, substitutes it into the Authorization header, and makes the call — the token never leaves the server or appears in client input.
See Resolved Parameters for the full reference (behavior, security, multiple expressions, table/refresh-token patterns).
create function create_user(_name text)
+returns int
+language sql
+begin atomic;
+insert into users(name) values(_name) returning id;
+end;
+
+comment on function create_user(text) is 'HTTP POST';
create function get_all_users()
+returns setof users
+language sql
+begin atomic;
+select * from users;
+end;
+
+comment on function get_all_users() is 'HTTP GET /users';
create function search_products(_query text)
+returns setof products
+language sql
+begin atomic;
+select * from products where name ilike '%' || _query || '%';
+end;
+
+comment on function search_products(text) is 'HTTP GET /products/search';
comment on function get_user_profile(int) is
+'Returns the complete user profile including preferences.
+Used by the frontend dashboard.
+
+HTTP GET /users/profile';
1 2 3 4 5
The documentation text is ignored; only the HTTP line is parsed.
You can define RESTful path parameters using the {param} syntax in URL paths. Parameter values are extracted directly from the URL path instead of query strings or request body.
create function get_product(p_id int)
+returns text
+language sql
+begin atomic;
+select ...;
+end;
+
+comment on function get_product(int) is 'HTTP GET /products/{p_id}';
create function get_review(p_id int, review_id int)
+returns text
+language sql
+begin atomic;
+select ...;
+end;
+
+comment on function get_review(int, int) is 'HTTP GET /products/{p_id}/reviews/{review_id}';
1 2 3 4 5 6 7 8
Call: GET /products/5/reviews/10 → p_id = 5, review_id = 10
create function get_product_details(p_id int, include_reviews boolean default false)
+returns text
+language sql
+begin atomic;
+select ...;
+end;
+
+comment on function get_product_details(int, boolean) is 'HTTP GET /products/{p_id}/details';
1 2 3 4 5 6 7 8
Call: GET /products/42/details?includeReviews=true → p_id = 42, include_reviews = true
create function update_product(p_id int, new_name text)
+returns text
+language sql
+begin atomic;
+select ...;
+end;
+
+comment on function update_product(int, text) is 'HTTP POST /products/{p_id}';
1 2 3 4 5 6 7 8
Call: POST /products/7 with body {"newName": "New Name"} → p_id = 7, new_name = "New Name"
`,58)]))}const u=a(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_http.md.DPCDKDD2.lean.js b/assets/annotations_http.md.DPCDKDD2.lean.js
new file mode 100644
index 000000000..71c5ef485
--- /dev/null
+++ b/assets/annotations_http.md.DPCDKDD2.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"HTTP Annotation","titleTemplate":"NpgsqlRest","description":"Expose PostgreSQL functions, procedures, and SQL files as HTTP endpoints. Configure HTTP methods (GET, POST, PUT, DELETE) and custom URL paths.","frontmatter":{"outline":[2,3],"title":"HTTP Annotation","titleTemplate":"NpgsqlRest","description":"Expose PostgreSQL functions, procedures, and SQL files as HTTP endpoints. Configure HTTP methods (GET, POST, PUT, DELETE) and custom URL paths.","head":[["meta",{"name":"keywords","content":"npgsqlrest http annotation, postgresql http endpoint, rest api function, http method postgresql"}],["meta",{"property":"og:title","content":"NpgsqlRest HTTP Annotation"}],["meta",{"property":"og:description","content":"Expose PostgreSQL functions, procedures, and SQL files as HTTP endpoints with configurable methods and paths."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/http.md","filePath":"annotations/http.md"}'),t={name:"annotations/http.md"};function l(p,s,h,r,d,o){return n(),i("div",null,s[0]||(s[0]=[e("",58)]))}const u=a(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_index.md.DSU3OO0a.js b/assets/annotations_index.md.DSU3OO0a.js
new file mode 100644
index 000000000..e4d25729f
--- /dev/null
+++ b/assets/annotations_index.md.DSU3OO0a.js
@@ -0,0 +1 @@
+import{_ as a,c as t,o as i,a5 as n}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"Annotations Reference","titleTemplate":"NpgsqlRest","description":"Complete reference for all NpgsqlRest comment annotations. HTTP methods, authorization, caching, rate limiting, and more for PostgreSQL REST APIs.","frontmatter":{"outline":[2,3],"title":"Annotations Reference","titleTemplate":"NpgsqlRest","description":"Complete reference for all NpgsqlRest comment annotations. HTTP methods, authorization, caching, rate limiting, and more for PostgreSQL REST APIs.","head":[["meta",{"name":"keywords","content":"npgsqlrest annotations, postgresql comment annotations, rest api annotations, http endpoint configuration, sql api annotations"}],["meta",{"property":"og:title","content":"NpgsqlRest Annotations Reference"}],["meta",{"property":"og:description","content":"Complete reference for all NpgsqlRest comment annotations for PostgreSQL REST APIs."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/index.md","filePath":"annotations/index.md"}'),o={name:"annotations/index.md"};function r(l,e,s,h,c,u){return i(),t("div",null,e[0]||(e[0]=[n('
Complete reference for all NpgsqlRest comment annotations. For an introduction to how annotations work, see the Comment Annotations Guide.
INFO
All annotations work in both PostgreSQL function/procedure comments (COMMENT ON FUNCTION ...) and SQL file endpoints (-- and /* */ comments in .sql files). The "SQL File Annotations" section below lists annotations that are specific to SQL files.
',44)]))}const f=a(o,[["render",r]]);export{d as __pageData,f as default};
diff --git a/assets/annotations_index.md.DSU3OO0a.lean.js b/assets/annotations_index.md.DSU3OO0a.lean.js
new file mode 100644
index 000000000..69b78173f
--- /dev/null
+++ b/assets/annotations_index.md.DSU3OO0a.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as t,o as i,a5 as n}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"Annotations Reference","titleTemplate":"NpgsqlRest","description":"Complete reference for all NpgsqlRest comment annotations. HTTP methods, authorization, caching, rate limiting, and more for PostgreSQL REST APIs.","frontmatter":{"outline":[2,3],"title":"Annotations Reference","titleTemplate":"NpgsqlRest","description":"Complete reference for all NpgsqlRest comment annotations. HTTP methods, authorization, caching, rate limiting, and more for PostgreSQL REST APIs.","head":[["meta",{"name":"keywords","content":"npgsqlrest annotations, postgresql comment annotations, rest api annotations, http endpoint configuration, sql api annotations"}],["meta",{"property":"og:title","content":"NpgsqlRest Annotations Reference"}],["meta",{"property":"og:description","content":"Complete reference for all NpgsqlRest comment annotations for PostgreSQL REST APIs."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/index.md","filePath":"annotations/index.md"}'),o={name:"annotations/index.md"};function r(l,e,s,h,c,u){return i(),t("div",null,e[0]||(e[0]=[n("",44)]))}const f=a(o,[["render",r]]);export{d as __pageData,f as default};
diff --git a/assets/annotations_internal.md.yWqX_Gop.js b/assets/annotations_internal.md.yWqX_Gop.js
new file mode 100644
index 000000000..afa23c19b
--- /dev/null
+++ b/assets/annotations_internal.md.yWqX_Gop.js
@@ -0,0 +1,39 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"INTERNAL Annotation","titleTemplate":"NpgsqlRest","description":"Mark an endpoint as internal-only — accessible via self-referencing calls (proxy, HTTP client types) but not exposed as a public HTTP route.","frontmatter":{"outline":[2,3],"title":"INTERNAL Annotation","titleTemplate":"NpgsqlRest","description":"Mark an endpoint as internal-only — accessible via self-referencing calls (proxy, HTTP client types) but not exposed as a public HTTP route.","head":[["meta",{"name":"keywords","content":"npgsqlrest internal annotation, internal endpoint, internal only, self-referencing call, parallel query composition"}],["meta",{"property":"og:title","content":"NpgsqlRest INTERNAL Annotation"}],["meta",{"property":"og:description","content":"Mark an endpoint as internal-only — accessible via self-referencing calls but not exposed as a public HTTP route."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/internal.md","filePath":"annotations/internal.md"}'),l={name:"annotations/internal.md"};function t(p,s,r,h,k,c){return n(),a("div",null,s[0]||(s[0]=[e(`
internal, internal_only (with or without @ prefix)
Mark an endpoint as internal-only — accessible via self-referencing calls (proxy annotations and HTTP client types with relative paths) but not exposed as a public HTTP route.
Direct HTTP calls to an internal endpoint return 404. Internal calls via proxy or HTTP client types work normally.
-- Internal helper: returns data but is NOT callable from outside
+create function get_cached_rates()
+returns json language sql as $$
+ select rates from exchange_rates order by fetched_at desc limit 1
+$$;
+comment on function get_cached_rates() is 'HTTP GET
+@internal';
+
+-- Public endpoint that proxies the internal one
+create function convert_currency(_amount numeric, _from text, _to text)
+returns json language plpgsql as $$
+...
+$$;
+comment on function convert_currency(numeric, text, text) is 'HTTP GET
+proxy GET /api/get-cached-rates';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
GET /api/get-cached-rates → 404 Not Found
GET /api/convert-currency?amount=100&from=USD&to=EUR → works (proxies internally)
-- Internal data source
+create function get_users()
+returns json language sql as $$
+ select json_agg(row_to_json(u)) from users u
+$$;
+comment on function get_users() is 'HTTP GET
+@internal';
+
+-- HTTP client type pointing to internal endpoint
+create type api_users as (body text);
+comment on type api_users is 'GET /api/get-users';
+
+-- Public endpoint composing internal calls
+create function get_dashboard(_users api_users)
+returns json language plpgsql as $$
+begin
+ return json_build_object('users', (_users).body::json);
+end;
+$$;
`,17)]))}const y=i(l,[["render",t]]);export{d as __pageData,y as default};
diff --git a/assets/annotations_internal.md.yWqX_Gop.lean.js b/assets/annotations_internal.md.yWqX_Gop.lean.js
new file mode 100644
index 000000000..bdd5a14af
--- /dev/null
+++ b/assets/annotations_internal.md.yWqX_Gop.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"INTERNAL Annotation","titleTemplate":"NpgsqlRest","description":"Mark an endpoint as internal-only — accessible via self-referencing calls (proxy, HTTP client types) but not exposed as a public HTTP route.","frontmatter":{"outline":[2,3],"title":"INTERNAL Annotation","titleTemplate":"NpgsqlRest","description":"Mark an endpoint as internal-only — accessible via self-referencing calls (proxy, HTTP client types) but not exposed as a public HTTP route.","head":[["meta",{"name":"keywords","content":"npgsqlrest internal annotation, internal endpoint, internal only, self-referencing call, parallel query composition"}],["meta",{"property":"og:title","content":"NpgsqlRest INTERNAL Annotation"}],["meta",{"property":"og:description","content":"Mark an endpoint as internal-only — accessible via self-referencing calls but not exposed as a public HTTP route."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/internal.md","filePath":"annotations/internal.md"}'),l={name:"annotations/internal.md"};function t(p,s,r,h,k,c){return n(),a("div",null,s[0]||(s[0]=[e("",17)]))}const y=i(l,[["render",t]]);export{d as __pageData,y as default};
diff --git a/assets/annotations_interval-format.md.qinH4egR.js b/assets/annotations_interval-format.md.qinH4egR.js
new file mode 100644
index 000000000..6a766643d
--- /dev/null
+++ b/assets/annotations_interval-format.md.qinH4egR.js
@@ -0,0 +1,59 @@
+import{_ as a,c as n,o as e,a5 as i}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"Interval Format Reference","titleTemplate":"NpgsqlRest","description":"Complete reference for time and duration formats used in NpgsqlRest annotations. Supported units, syntax variations, and examples.","frontmatter":{"outline":[2,3],"title":"Interval Format Reference","titleTemplate":"NpgsqlRest","description":"Complete reference for time and duration formats used in NpgsqlRest annotations. Supported units, syntax variations, and examples.","head":[["meta",{"name":"keywords","content":"npgsqlrest interval, time format, duration format, timeout format, cache expiration format, postgresql interval"}],["meta",{"property":"og:title","content":"NpgsqlRest Interval Format Reference"}],["meta",{"property":"og:description","content":"Complete reference for time and duration formats used in NpgsqlRest annotations."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/interval-format.md","filePath":"annotations/interval-format.md"}'),t={name:"annotations/interval-format.md"};function l(p,s,r,o,c,d){return e(),n("div",null,s[0]||(s[0]=[i(`
comment on function quick_lookup() is
+'HTTP GET
+@timeout 5s';
+
+comment on function slow_report() is
+'HTTP GET
+@timeout 2min';
+
+comment on function very_long_process() is
+'HTTP GET
+@timeout 1h';
1 2 3 4 5 6 7 8 9 10 11
Single Token for @timeout
The @timeout annotation reads only the first token after the keyword. Use formats without spaces or use the short forms to avoid parsing issues.
comment on function get_live_data() is
+'HTTP GET
+@cached
+@cache_expires_in 10s';
+
+comment on function get_dashboard() is
+'HTTP GET
+@cached
+@cache_expires_in 5m';
+
+comment on function get_static_config() is
+'HTTP GET
+@cached
+@cache_expires_in 1d';
5.5.5h -- Multiple decimal points
+h5 -- Unit before number
+5 m m -- Multiple units
+5months -- Unsupported unit
+1year -- Unsupported unit (use days or weeks)
`,35)]))}const m=a(t,[["render",l]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_interval-format.md.qinH4egR.lean.js b/assets/annotations_interval-format.md.qinH4egR.lean.js
new file mode 100644
index 000000000..873a68cd6
--- /dev/null
+++ b/assets/annotations_interval-format.md.qinH4egR.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as n,o as e,a5 as i}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"Interval Format Reference","titleTemplate":"NpgsqlRest","description":"Complete reference for time and duration formats used in NpgsqlRest annotations. Supported units, syntax variations, and examples.","frontmatter":{"outline":[2,3],"title":"Interval Format Reference","titleTemplate":"NpgsqlRest","description":"Complete reference for time and duration formats used in NpgsqlRest annotations. Supported units, syntax variations, and examples.","head":[["meta",{"name":"keywords","content":"npgsqlrest interval, time format, duration format, timeout format, cache expiration format, postgresql interval"}],["meta",{"property":"og:title","content":"NpgsqlRest Interval Format Reference"}],["meta",{"property":"og:description","content":"Complete reference for time and duration formats used in NpgsqlRest annotations."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/interval-format.md","filePath":"annotations/interval-format.md"}'),t={name:"annotations/interval-format.md"};function l(p,s,r,o,c,d){return e(),n("div",null,s[0]||(s[0]=[i("",35)]))}const m=a(t,[["render",l]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_login.md.CNtMBAwP.js b/assets/annotations_login.md.CNtMBAwP.js
new file mode 100644
index 000000000..6f713e5d5
--- /dev/null
+++ b/assets/annotations_login.md.CNtMBAwP.js
@@ -0,0 +1,219 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"LOGIN Annotation","titleTemplate":"NpgsqlRest","description":"Create authentication endpoints for PostgreSQL REST APIs. Handle user sign-in with cookies, JWT tokens, or bearer tokens — and turn returned columns into user claims.","frontmatter":{"outline":[2,3],"title":"LOGIN Annotation","titleTemplate":"NpgsqlRest","description":"Create authentication endpoints for PostgreSQL REST APIs. Handle user sign-in with cookies, JWT tokens, or bearer tokens — and turn returned columns into user claims.","head":[["meta",{"name":"keywords","content":"npgsqlrest login, authentication endpoint, signin api, user login postgresql, jwt login endpoint, claims mapping"}],["meta",{"property":"og:title","content":"NpgsqlRest LOGIN Annotation"}],["meta",{"property":"og:description","content":"Create authentication endpoints for user sign-in with various token types."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/login.md","filePath":"annotations/login.md"}'),t={name:"annotations/login.md"};function l(p,s,h,r,k,o){return n(),a("div",null,s[0]||(s[0]=[e(`
Mark a routine (function/procedure) or SQL file endpoint as a sign-in endpoint.
code
@login
1
Looking for the bigger picture?
This page is the reference for the @login annotation. For an end-to-end walkthrough — configuring an auth scheme, how claims flow through the system, and reading claims back in your other endpoints — see the Authentication guide.
A login endpoint is an ordinary endpoint that returns one row. NpgsqlRest treats that row specially:
The client POSTs credentials (e.g. username + password) to the endpoint.
Your SQL runs and returns at most one record.
NpgsqlRest reads a few special columns (status, scheme, body, hash) for control flow.
Every other column becomes a user claim — the column name is the claim name, the column value is the claim value.
NpgsqlRest signs the user in by issuing the cookie or token for the active scheme.
mermaid
flowchart TD
+ C["Client
+ POST /login (username, password)"]
+ F["Your login function / .sql
+ returns one row"]
+ R["Returned row
+ user_id=1, username=alice, email=a@x.com"]
+ N["NpgsqlRest
+ reads special columns (status, scheme, body, hash)
+ turns every other column into a claim
+ issues cookie / token"]
+ O["Signed in
+ Set-Cookie or Bearer token
+ claims: user_id=1, username=alice, email=a@x.com"]
+
+ C --> F --> R --> N --> O
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
There is no status column required — if the row is returned the login succeeds; if no row is returned the result is 401 Unauthorized. (Add a status column only when you need explicit HTTP status control.)
The simplest login: verify the password inside SQL, return the user's claims on success, return nothing on failure.
sql
sql
create function login(_username text, _password text)
+returns table (
+ scheme text,
+ user_id int,
+ username text,
+ email text
+)
+language sql
+security definer
+as $$
+select
+ 'cookies' as scheme, -- special column: which auth scheme to sign in
+ u.user_id, -- every non-special column
+ u.username, -- becomes a claim
+ u.email
+from users u
+where u.username = _username
+ and verify_password(_password, u.password_hash); -- your own check
+$$;
+
+comment on function login(text, text) is '
+HTTP POST
+@login
+@anonymous
+@security_sensitive';
This is the pattern used in the Security & Auth example. NpgsqlRest never sees the password hash — you verify it yourself. For the alternative where NpgsqlRest verifies the hash for you, see Password verification.
A void, a scalar (int/text), or an unnamed record → 401 Unauthorized
Returns a row (and no failing status/hash)
Login succeeds, claims are created
Returns no row (empty result)
401 Unauthorized
Returns multiple rows
Only the first row is read; the rest is discarded
Column names are matched against the configured special-column names and claim mappings using either the original PostgreSQL column name or the converted name (camelCase by default).
Sets the authentication scheme used for this sign-in. Use it when more than one scheme is configured (e.g. cookie and bearer token and JWT) so a single login function can issue any of them — typically driven by a request parameter:
sql
sql
-- the client asks for 'cookies', 'token', or 'jwt'
+select _scheme as scheme, u.user_id, u.username, u.roles
+from users u
+where u.username = _username;
This is the core of the login contract. Every returned column that isn't a special column becomes a claim, where:
column name → claim name (claim type)
column value → claim value
So a login function returning user_id, username, email, roles produces exactly those four claims, plus whatever else you select. No transformation, no mapping config is needed to create claims — you simply select the columns you want.
Among all the claims, three are designated as the canonical identity. NpgsqlRest uses them for the signed-in principal, for role-based @authorize, and as $2/$3 in the verification callbacks. They are configured in AuthenticationOptions:
Config option
Default claim name
Used for
DefaultUserIdClaimType
user_id
The user identifier
DefaultNameClaimType
user_name
The display name
DefaultRoleClaimType
user_roles
Roles for @authorize role1, role2
Make sure your login routine returns a column matching each of these names (or change the config to match your column names). For example, the Multiple Auth Schemes example returns a roles column and configures:
There are two ways to verify the password. Pick one.
Which one should I use?
Option B (the built-in hasher) is the more secure default and is recommended for production. Two reasons:
Security — it uses a strong, OWASP-recommended PBKDF2-SHA256 configuration out of the box, so you don't have to get the cryptography right yourself.
Where the work runs — password hashing is deliberately CPU-intensive. The built-in hasher runs it on the NpgsqlRest application instance, whereas verifying in SQL (Option A) runs it on your database server. The app tier is usually far easier to scale horizontally than PostgreSQL, so keeping expensive hashing off the database is an important architectural consideration.
Option A (verify in SQL) is simpler and keeps everything in the database — fine for small or low-traffic apps, or when you want full control over the hashing scheme.
You verify the password yourself (as in the minimal example) and simply don't return a matching row when it fails. NpgsqlRest stays out of it — this is the simplest approach and gives you full control over hashing.
You don't need anything external: PostgreSQL's built-in pgcrypto extension already provides crypt(), gen_salt(), and digest():
sql
sql
create extension if not exists pgcrypto;
1
Recommended hashing — pre-hash the password with SHA-256 and base64-encode it before bcrypt. Bcrypt silently truncates its input at 72 bytes; the SHA-256 + base64 step produces a fixed 44-character digest that always fits, so passwords of any length (and any byte content) are hashed safely:
sql
sql
-- hash (on registration / password change)
+crypt(encode(digest(_password, 'sha256'), 'base64'), gen_salt('bf', 12))
+
+-- verify (on login) — compare the recomputed hash against the stored one
+crypt(encode(digest(_password, 'sha256'), 'base64'), _password_hash) = _password_hash
1 2 3 4 5
Wrap them as reusable helpers — verify_password() is the function used in the minimal example above:
Store the hash when registering a user with the same hash_password():
sql
sql
insert into users (username, email, password_hash)
+values (_username, _email, hash_password(_password));
1 2
Work factor
The second argument to gen_salt('bf', …) is the bcrypt work factor (cost). 12 is a sensible default in 2025 — raise it for stronger (but slower) hashing.
Option B — built-in hasher (return a hash column)
Return the stored password hash in a column named hash (configurable via HashColumnName) and let NpgsqlRest verify it against the submitted password using its built-in hasher.
When a hash column is present, NpgsqlRest:
Reads the hash value from that column.
Identifies the password parameter — the first parameter whose name contains PasswordParameterNameContains (default pass).
Verifies the submitted password against the hash.
On failure, returns 404 Not Found and the row's claims are discarded.
The hash column name and the password-parameter substring are set in AuthenticationOptions — these are the defaults:
Change them to match your own naming. The example below uses these defaults:
sql
sql
create function login(_username text, _password text)
+returns table (hash text, user_id int, username text, email text, roles text[])
+language sql
+as $$
+ select
+ u.password_hash as hash, -- NpgsqlRest verifies _password against this
+ u.user_id,
+ u.username,
+ u.email,
+ u.roles
+ from users u
+ where u.username = _username;
+$$;
+
+comment on function login(text, text) is '
+HTTP POST
+@login
+@anonymous
+@security_sensitive';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
The built-in hasher uses PBKDF2 with SHA-256, a 128-bit salt, and 600,000 iterations (OWASP-recommended as of 2025). Use the matching @parameter_hash annotation when registering users so the stored hash is compatible. A custom IPasswordHasher can be injected in source code if needed.
With Option B, you can run a command on success or failure of the built-in verification — the only way to react to the outcome, since the verification itself happens inside NpgsqlRest.
A single login function that can sign the user into cookie, bearer-token, or JWT depending on the requested scheme, using the built-in hasher (hash column):
sql
sql
create function login(_scheme text, _username text, _password text)
+returns table (
+ scheme text,
+ user_id int,
+ username text,
+ roles text[],
+ email text,
+ hash text
+)
+language sql
+as $$
+select
+ _scheme, -- 'cookies', 'token' or 'jwt'
+ u.user_id,
+ u.username,
+ u.roles,
+ u.email,
+ u.password_hash as hash -- built-in verification
+from users u
+where u.username = _username;
+$$;
+
+comment on function login(text, text, text) is '
+HTTP POST
+@login
+@anonymous
+@security_sensitive';
`,101)]))}const u=i(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_login.md.CNtMBAwP.lean.js b/assets/annotations_login.md.CNtMBAwP.lean.js
new file mode 100644
index 000000000..bc111c22d
--- /dev/null
+++ b/assets/annotations_login.md.CNtMBAwP.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"LOGIN Annotation","titleTemplate":"NpgsqlRest","description":"Create authentication endpoints for PostgreSQL REST APIs. Handle user sign-in with cookies, JWT tokens, or bearer tokens — and turn returned columns into user claims.","frontmatter":{"outline":[2,3],"title":"LOGIN Annotation","titleTemplate":"NpgsqlRest","description":"Create authentication endpoints for PostgreSQL REST APIs. Handle user sign-in with cookies, JWT tokens, or bearer tokens — and turn returned columns into user claims.","head":[["meta",{"name":"keywords","content":"npgsqlrest login, authentication endpoint, signin api, user login postgresql, jwt login endpoint, claims mapping"}],["meta",{"property":"og:title","content":"NpgsqlRest LOGIN Annotation"}],["meta",{"property":"og:description","content":"Create authentication endpoints for user sign-in with various token types."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/login.md","filePath":"annotations/login.md"}'),t={name:"annotations/login.md"};function l(p,s,h,r,k,o){return n(),a("div",null,s[0]||(s[0]=[e("",101)]))}const u=i(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_logout.md.Cle7WE1K.js b/assets/annotations_logout.md.Cle7WE1K.js
new file mode 100644
index 000000000..2a6c19a33
--- /dev/null
+++ b/assets/annotations_logout.md.Cle7WE1K.js
@@ -0,0 +1,62 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"LOGOUT Annotation","titleTemplate":"NpgsqlRest","description":"Create sign-out endpoints for PostgreSQL REST APIs. Handle user logout by clearing cookies and invalidating sessions.","frontmatter":{"outline":[2,3],"title":"LOGOUT Annotation","titleTemplate":"NpgsqlRest","description":"Create sign-out endpoints for PostgreSQL REST APIs. Handle user logout by clearing cookies and invalidating sessions.","head":[["meta",{"name":"keywords","content":"npgsqlrest logout, signout endpoint, user logout api, session invalidation, clear authentication"}],["meta",{"property":"og:title","content":"NpgsqlRest LOGOUT Annotation"}],["meta",{"property":"og:description","content":"Create sign-out endpoints that clear cookies and invalidate sessions."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/logout.md","filePath":"annotations/logout.md"}'),l={name:"annotations/logout.md"};function t(p,s,h,r,o,k){return n(),a("div",null,s[0]||(s[0]=[e(`
If the function returns values, all returned values are interpreted as authentication scheme names to sign out from. This allows selective logout from specific schemes.
Single values are added as scheme names
Arrays are expanded - each element becomes a scheme name
NULL values are ignored
If no schemes are returned (empty result), signs out from all schemes
This is useful when using multiple authentication schemes (e.g., Cookie and Bearer Token) and you want to sign out from only specific ones.
create function signout()
+returns void
+language sql
+begin atomic;
+ -- Optionally perform cleanup
+ delete from sessions where user_id = current_user_id();
+end;
+
+comment on function signout() is
+'HTTP POST
+@logout
+@authorize';
1 2 3 4 5 6 7 8 9 10 11 12
Equivalent as a SQL file endpoint (sql/signout.sql):
sql
sql
-- HTTP POST
+-- @logout
+-- @authorize
+delete from sessions where user_id = current_user_id();
create function logout_cookie()
+returns text
+language sql
+begin atomic;
+ select 'Cookies'::text;
+end;
+
+comment on function logout_cookie() is
+'HTTP POST /auth/logout/cookie
+@logout
+@authorize';
1 2 3 4 5 6 7 8 9 10 11
Signs out only from the "Cookies" authentication scheme.
create function logout_web()
+returns text[]
+language sql
+begin atomic;
+ select array['Cookies', 'Bearer']::text[];
+end;
+
+comment on function logout_web() is
+'HTTP POST /auth/logout/web
+@logout
+@authorize';
1 2 3 4 5 6 7 8 9 10 11
Signs out from both "Cookies" and "Bearer" schemes.
create function smart_logout(_scheme text default null)
+returns text
+language sql
+begin atomic;
+ select _scheme; -- Returns NULL to logout from all, or specific scheme
+end;
+
+comment on function smart_logout(text) is
+'HTTP POST /auth/logout
+@logout
+@authorize';
1 2 3 4 5 6 7 8 9 10 11
POST /auth/logout → Signs out from all schemes
POST /auth/logout?_scheme=Cookies → Signs out only from Cookies
create function full_logout()
+returns void
+language plpgsql
+as $$
+begin
+ -- Revoke all refresh tokens for this user
+ delete from refresh_tokens where user_id = current_user_id();
+
+ -- Log the logout event
+ insert into audit_log(user_id, action)
+ values (current_user_id(), 'logout');
+end;
+$$;
+
+comment on function full_logout() is
+'HTTP POST
+@logout
+@authorize';
`,37)]))}const u=i(l,[["render",t]]);export{d as __pageData,u as default};
diff --git a/assets/annotations_logout.md.Cle7WE1K.lean.js b/assets/annotations_logout.md.Cle7WE1K.lean.js
new file mode 100644
index 000000000..de76eaab5
--- /dev/null
+++ b/assets/annotations_logout.md.Cle7WE1K.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"LOGOUT Annotation","titleTemplate":"NpgsqlRest","description":"Create sign-out endpoints for PostgreSQL REST APIs. Handle user logout by clearing cookies and invalidating sessions.","frontmatter":{"outline":[2,3],"title":"LOGOUT Annotation","titleTemplate":"NpgsqlRest","description":"Create sign-out endpoints for PostgreSQL REST APIs. Handle user logout by clearing cookies and invalidating sessions.","head":[["meta",{"name":"keywords","content":"npgsqlrest logout, signout endpoint, user logout api, session invalidation, clear authentication"}],["meta",{"property":"og:title","content":"NpgsqlRest LOGOUT Annotation"}],["meta",{"property":"og:description","content":"Create sign-out endpoints that clear cookies and invalidate sessions."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/logout.md","filePath":"annotations/logout.md"}'),l={name:"annotations/logout.md"};function t(p,s,h,r,o,k){return n(),a("div",null,s[0]||(s[0]=[e("",37)]))}const u=i(l,[["render",t]]);export{d as __pageData,u as default};
diff --git a/assets/annotations_mcp.md.CUGE4v1n.js b/assets/annotations_mcp.md.CUGE4v1n.js
new file mode 100644
index 000000000..c4a97c357
--- /dev/null
+++ b/assets/annotations_mcp.md.CUGE4v1n.js
@@ -0,0 +1,29 @@
+import{_ as s,c as t,o as a,a5 as n}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"MCP Annotation","titleTemplate":"NpgsqlRest","description":"Opt a PostgreSQL routine in as a Model Context Protocol (MCP) tool. Expose functions to AI agents for discovery and execution, with an optional MCP-only (no HTTP route) mode.","frontmatter":{"outline":[2,3],"title":"MCP Annotation","titleTemplate":"NpgsqlRest","description":"Opt a PostgreSQL routine in as a Model Context Protocol (MCP) tool. Expose functions to AI agents for discovery and execution, with an optional MCP-only (no HTTP route) mode.","head":[["meta",{"name":"keywords","content":"npgsqlrest mcp annotation, model context protocol postgresql, expose function as mcp tool, ai agent tools, postgresql mcp server, mcp tool name"}],["meta",{"property":"og:title","content":"NpgsqlRest MCP Annotation"}],["meta",{"property":"og:description","content":"Opt a PostgreSQL routine in as an MCP tool for AI agents in NpgsqlRest."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/mcp.md","filePath":"annotations/mcp.md"}'),i={name:"annotations/mcp.md"};function o(l,e,r,p,c,d){return a(),t("div",null,e[0]||(e[0]=[n(`
The @mcp annotation and the NpgsqlRest.Mcp plugin were added in version 3.17.0. It implements the Model Context Protocol specification 2025-11-25.
Opt a routine in as an MCP tool so an AI agent can discover it (tools/list) and execute it (tools/call) over the MCP server endpoint.
Exposure is never automatic — a routine becomes a tool only when its comment carries @mcp. When the MCP plugin is not loaded (or McpOptions.Enabled is false), the annotation is a no-op — safe to leave on a routine regardless of how the host is configured.
@mcp # expose as a tool; description from the comment prose
+@mcp <text> # expose; <text> is an inline (explicit) tool description
+@mcp_description <text> # expose; explicit, authoritative description (alias: @mcp_desc)
+@mcp_name <name> # override the tool name (default: the routine name)
The tool's description uses a fixed priority — the highest-priority source that is present wins, regardless of the order the lines appear in the comment — and an explicit description suppresses the comment-prose fallback (so unrelated comment lines never leak into it):
@mcp_description <text> — explicit and authoritative. Always wins when present, even if it appears after an @mcp <text> line.
inline @mcp <text> — explicit.
comment prose — the routine's free-text comment lines (those that aren't annotations). Used only when no explicit description is given.
the routine name — last resort (a warning is logged).
So if you give any explicit description, the rest of your comment is just a comment. (Order only matters when you repeat the same annotation — the last occurrence wins.) Provide a description explicitly (preferably @mcp_description) whenever your comment also contains notes you don't want an agent to see; let the prose fallback do the work when your comment is the description.
The HTTP tag controls the REST route; @mcp controls the tool — independently. A bare @mcp with no HTTP tag exposes the routine only as an MCP tool, with no public REST endpoint:
sql
sql
comment on function summarize_account(_account_id int) is '
+@mcp Summarize an account for the agent, including balance and recent activity.
+';
1 2 3
The routine is callable via tools/call but has no HTTP route — an endpoint that exists only because @mcp requested it is internal-only by default, so opting into MCP never silently widens your HTTP surface. (Requires the comment-gated modes — OnlyAnnotated, the client default, or OnlyWithHttpTag. A debug log notes the defaulting at startup.)
This works identically for SQL file endpoints: a .sql file whose comment carries @mcp but no HTTP tag becomes an MCP-only tool (without @mcp such a file is skipped as a non-endpoint script, as before).
All other annotations apply equally — most usefully @authorize: when a tool runs, the caller's authenticated identity is forwarded, so role checks are enforced exactly as they would be for the HTTP endpoint.
create function get_weather(_city text)
+returns text
+language sql as $$
+ select format('Weather for %s: sunny, 22C', _city);
+$$;
+
+comment on function get_weather(_city text) is '
+HTTP GET /api/weather
+@mcp Get the current weather for a city.
+';
1 2 3 4 5 6 7 8 9 10
The routine is reachable at GET /api/weatherand advertised as the get_weather MCP tool with the description "Get the current weather for a city." and an input schema derived from its parameters ({ "city": { "type": "string" } }).
comment on function list_open_tickets() is '
+HTTP GET /api/tickets/open
+List all currently open support tickets for triage.
+@mcp
+';
1 2 3 4 5
With a bare @mcp, the description is taken from the prose line — "List all currently open support tickets for triage."
Explicit description, with a private note that stays out of it
sql
sql
comment on function rebuild_search_index() is '
+HTTP POST
+@mcp Rebuild the product search index. Safe to call; runs in the background.
+@mcp_description Rebuild the product search index. Returns immediately.
+TODO: revisit batch size — internal note, must NOT reach the agent.
+';
1 2 3 4 5 6
Because @mcp_description is present, it is the description verbatim — the inline @mcp text and the TODO: prose line are both ignored. (For SQL-file endpoints, also see SqlFileSource.CommentScope, which controls which comments are parsed at all.)
`,37)]))}const u=s(i,[["render",o]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_mcp.md.CUGE4v1n.lean.js b/assets/annotations_mcp.md.CUGE4v1n.lean.js
new file mode 100644
index 000000000..0e42c03a9
--- /dev/null
+++ b/assets/annotations_mcp.md.CUGE4v1n.lean.js
@@ -0,0 +1 @@
+import{_ as s,c as t,o as a,a5 as n}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"MCP Annotation","titleTemplate":"NpgsqlRest","description":"Opt a PostgreSQL routine in as a Model Context Protocol (MCP) tool. Expose functions to AI agents for discovery and execution, with an optional MCP-only (no HTTP route) mode.","frontmatter":{"outline":[2,3],"title":"MCP Annotation","titleTemplate":"NpgsqlRest","description":"Opt a PostgreSQL routine in as a Model Context Protocol (MCP) tool. Expose functions to AI agents for discovery and execution, with an optional MCP-only (no HTTP route) mode.","head":[["meta",{"name":"keywords","content":"npgsqlrest mcp annotation, model context protocol postgresql, expose function as mcp tool, ai agent tools, postgresql mcp server, mcp tool name"}],["meta",{"property":"og:title","content":"NpgsqlRest MCP Annotation"}],["meta",{"property":"og:description","content":"Opt a PostgreSQL routine in as an MCP tool for AI agents in NpgsqlRest."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/mcp.md","filePath":"annotations/mcp.md"}'),i={name:"annotations/mcp.md"};function o(l,e,r,p,c,d){return a(),t("div",null,e[0]||(e[0]=[n("",37)]))}const u=s(i,[["render",o]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_nested.md.G3R18jm5.js b/assets/annotations_nested.md.G3R18jm5.js
new file mode 100644
index 000000000..34a2caa7c
--- /dev/null
+++ b/assets/annotations_nested.md.G3R18jm5.js
@@ -0,0 +1,78 @@
+import{_ as i,c as a,o as n,a5 as t}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"NESTED Annotation","titleTemplate":"NpgsqlRest","description":"Serialize composite type columns as nested JSON objects instead of expanding fields. Control JSON structure for PostgreSQL composite types.","frontmatter":{"outline":[2,3],"title":"NESTED Annotation","titleTemplate":"NpgsqlRest","description":"Serialize composite type columns as nested JSON objects instead of expanding fields. Control JSON structure for PostgreSQL composite types.","head":[["meta",{"name":"keywords","content":"npgsqlrest nested json, composite type json, postgresql nested object, json serialization, composite column"}],["meta",{"property":"og:title","content":"NpgsqlRest NESTED Annotation"}],["meta",{"property":"og:description","content":"Serialize composite type columns as nested JSON objects instead of expanding fields."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/nested.md","filePath":"annotations/nested.md"}'),e={name:"annotations/nested.md"};function l(p,s,h,k,r,d){return n(),a("div",null,s[0]||(s[0]=[t(`
create type address_type as (
+ street text,
+ city text,
+ zip_code text
+);
+
+create function get_user_with_address()
+returns table(
+ user_id int,
+ user_name text,
+ address address_type
+)
+language sql
+begin atomic;
+select 1, 'Alice', row('123 Main St', 'New York', '10001')::address_type;
+end;
+
+comment on function get_user_with_address() is 'HTTP GET
+@nested';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Default behavior (without @nested):
json
json
[{"userId":1,"userName":"Alice","street":"123 Main St","city":"New York","zipCode":"10001"}]
1
With @nested annotation:
json
json
[{"userId":1,"userName":"Alice","address":{"street":"123 Main St","city":"New York","zipCode":"10001"}}]
When composite types contain other composite types (or arrays of composites), the inner composites are also serialized as proper JSON objects by default:
sql
sql
create type inner_type as (id int, name text);
+create type outer_type as (label text, inner_val inner_type);
+
+create function get_nested_data()
+returns table(data outer_type)
+language sql
+begin atomic;
+select row('outer', row(1, 'inner')::inner_type)::outer_type;
+end;
+
+comment on function get_nested_data() is 'HTTP GET
+@nested';
This works to any nesting depth. Deep resolution is controlled by the ResolveNestedCompositeTypes option (default: true). See Routine Options for details and when you might want to disable it.
Instead of adding the annotation to each endpoint, you can enable nested JSON globally via configuration. Each endpoint source has its own independent setting:
When enabled globally, all composite type columns from the respective endpoint source will be serialized as nested JSON objects by default, without requiring the annotation.
`,39)]))}const F=i(e,[["render",l]]);export{c as __pageData,F as default};
diff --git a/assets/annotations_nested.md.G3R18jm5.lean.js b/assets/annotations_nested.md.G3R18jm5.lean.js
new file mode 100644
index 000000000..6537b5fd0
--- /dev/null
+++ b/assets/annotations_nested.md.G3R18jm5.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as n,a5 as t}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"NESTED Annotation","titleTemplate":"NpgsqlRest","description":"Serialize composite type columns as nested JSON objects instead of expanding fields. Control JSON structure for PostgreSQL composite types.","frontmatter":{"outline":[2,3],"title":"NESTED Annotation","titleTemplate":"NpgsqlRest","description":"Serialize composite type columns as nested JSON objects instead of expanding fields. Control JSON structure for PostgreSQL composite types.","head":[["meta",{"name":"keywords","content":"npgsqlrest nested json, composite type json, postgresql nested object, json serialization, composite column"}],["meta",{"property":"og:title","content":"NpgsqlRest NESTED Annotation"}],["meta",{"property":"og:description","content":"Serialize composite type columns as nested JSON objects instead of expanding fields."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/nested.md","filePath":"annotations/nested.md"}'),e={name:"annotations/nested.md"};function l(p,s,h,k,r,d){return n(),a("div",null,s[0]||(s[0]=[t("",39)]))}const F=i(e,[["render",l]]);export{c as __pageData,F as default};
diff --git a/assets/annotations_new-line.md.9HsK47GA.js b/assets/annotations_new-line.md.9HsK47GA.js
new file mode 100644
index 000000000..3067d1794
--- /dev/null
+++ b/assets/annotations_new-line.md.9HsK47GA.js
@@ -0,0 +1,12 @@
+import{_ as s,c as n,o as e,a5 as i}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"NEW_LINE Annotation","titleTemplate":"NpgsqlRest","description":"Set row separator for raw output mode in PostgreSQL REST APIs. Configure line endings for CSV and text output.","frontmatter":{"outline":[2,3],"title":"NEW_LINE Annotation","titleTemplate":"NpgsqlRest","description":"Set row separator for raw output mode in PostgreSQL REST APIs. Configure line endings for CSV and text output.","head":[["meta",{"name":"keywords","content":"npgsqlrest new line, row separator, line ending, csv line break, raw output newline"}],["meta",{"property":"og:title","content":"NpgsqlRest NEW_LINE Annotation"}],["meta",{"property":"og:description","content":"Set row separator for raw output mode and CSV line endings."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/new-line.md","filePath":"annotations/new-line.md"}'),t={name:"annotations/new-line.md"};function l(o,a,r,p,d,c){return e(),n("div",null,a[0]||(a[0]=[i(`
`,17)]))}const m=s(t,[["render",l]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_new-line.md.9HsK47GA.lean.js b/assets/annotations_new-line.md.9HsK47GA.lean.js
new file mode 100644
index 000000000..306e2c938
--- /dev/null
+++ b/assets/annotations_new-line.md.9HsK47GA.lean.js
@@ -0,0 +1 @@
+import{_ as s,c as n,o as e,a5 as i}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"NEW_LINE Annotation","titleTemplate":"NpgsqlRest","description":"Set row separator for raw output mode in PostgreSQL REST APIs. Configure line endings for CSV and text output.","frontmatter":{"outline":[2,3],"title":"NEW_LINE Annotation","titleTemplate":"NpgsqlRest","description":"Set row separator for raw output mode in PostgreSQL REST APIs. Configure line endings for CSV and text output.","head":[["meta",{"name":"keywords","content":"npgsqlrest new line, row separator, line ending, csv line break, raw output newline"}],["meta",{"property":"og:title","content":"NpgsqlRest NEW_LINE Annotation"}],["meta",{"property":"og:description","content":"Set row separator for raw output mode and CSV line endings."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/new-line.md","filePath":"annotations/new-line.md"}'),t={name:"annotations/new-line.md"};function l(o,a,r,p,d,c){return e(),n("div",null,a[0]||(a[0]=[i("",17)]))}const m=s(t,[["render",l]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_openapi.md.CYi2hImP.js b/assets/annotations_openapi.md.CYi2hImP.js
new file mode 100644
index 000000000..c58255a1b
--- /dev/null
+++ b/assets/annotations_openapi.md.CYi2hImP.js
@@ -0,0 +1,46 @@
+import{_ as a,c as e,o as n,a5 as i}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"OPENAPI Annotation","titleTemplate":"NpgsqlRest","description":"Per-routine control over OpenAPI document inclusion and grouping. Hide an endpoint from the spec or override its default schema tag.","frontmatter":{"outline":[2,3],"title":"OPENAPI Annotation","titleTemplate":"NpgsqlRest","description":"Per-routine control over OpenAPI document inclusion and grouping. Hide an endpoint from the spec or override its default schema tag.","head":[["meta",{"name":"keywords","content":"npgsqlrest openapi annotation, hide endpoint from openapi, openapi tag, swagger ui grouping, partner facing openapi, postgresql openapi"}],["meta",{"property":"og:title","content":"NpgsqlRest OPENAPI Annotation"}],["meta",{"property":"og:description","content":"Per-routine override for OpenAPI document inclusion and section grouping in NpgsqlRest."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/openapi.md","filePath":"annotations/openapi.md"}'),t={name:"annotations/openapi.md"};function l(p,s,r,o,d,c){return n(),e("div",null,s[0]||(s[0]=[i(`
The @openapi annotation was added in version 3.15.0.
Per-routine override for OpenAPI document inclusion and section grouping. Two sub-commands: hide an endpoint from the document entirely, or replace its default schema-name tag with one or more custom tags.
The HTTP endpoint itself is unaffected — @openapi hide only suppresses the spec entry. The endpoint is still reachable, still respects @authorize, still runs the same SQL.
When the OpenAPI plugin is not loaded, both sub-commands are no-ops — safe to leave on a routine regardless of how the host is configured.
@openapi # hide from document (default action)
+@openapi hide # hide from document
+@openapi hidden # alias for hide
+@openapi ignore # alias for hide
+
+@openapi tag <name> # replace default schema tag with <name>
+@openapi tags <a>, <b>, <c> # replace default tag with multiple tags
1 2 3 4 5 6 7
Tag values preserve their original casing — @openapi tag Partner API produces a Partner API tag, not partner api.
@openapi is the first filter applied — it wins over IncludeSchemas, ExcludeSchemas, NameSimilarTo, NameNotSimilarTo, and RequiresAuthorizationOnly. See Filter order in the OpenAPI config reference.
This means @openapi hide reliably keeps a routine out of the document even when broad config filters would otherwise include it (e.g. when IncludeSchemas allows the schema).
By default, endpoints are tagged with their schema name — every routine in public lands in a public section in Swagger UI / ReDoc. @openapi tag overrides that.
sql
sql
comment on function partner_get_orders(_partner_id text) is '
+HTTP GET /api/partner/orders
+@authorize partner
+@openapi tag Partner API
+';
+
+comment on function partner_create_order(_partner_id text, _order_json text) is '
+HTTP POST /api/partner/orders
+@authorize partner
+@openapi tag Partner API
+';
1 2 3 4 5 6 7 8 9 10 11
Both endpoints group under a single Partner API section in Swagger UI instead of the default public tag.
-- Lives in partner schema, but marked hidden — won't appear in the partner document.
+comment on function partner.diagnostic_check() is '
+HTTP GET /api/partner/_diagnostic
+@authorize partner
+@openapi hide
+';
`,32)]))}const k=a(t,[["render",l]]);export{u as __pageData,k as default};
diff --git a/assets/annotations_openapi.md.CYi2hImP.lean.js b/assets/annotations_openapi.md.CYi2hImP.lean.js
new file mode 100644
index 000000000..abbfa06a6
--- /dev/null
+++ b/assets/annotations_openapi.md.CYi2hImP.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as e,o as n,a5 as i}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"OPENAPI Annotation","titleTemplate":"NpgsqlRest","description":"Per-routine control over OpenAPI document inclusion and grouping. Hide an endpoint from the spec or override its default schema tag.","frontmatter":{"outline":[2,3],"title":"OPENAPI Annotation","titleTemplate":"NpgsqlRest","description":"Per-routine control over OpenAPI document inclusion and grouping. Hide an endpoint from the spec or override its default schema tag.","head":[["meta",{"name":"keywords","content":"npgsqlrest openapi annotation, hide endpoint from openapi, openapi tag, swagger ui grouping, partner facing openapi, postgresql openapi"}],["meta",{"property":"og:title","content":"NpgsqlRest OPENAPI Annotation"}],["meta",{"property":"og:description","content":"Per-routine override for OpenAPI document inclusion and section grouping in NpgsqlRest."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/openapi.md","filePath":"annotations/openapi.md"}'),t={name:"annotations/openapi.md"};function l(p,s,r,o,d,c){return n(),e("div",null,s[0]||(s[0]=[i("",32)]))}const k=a(t,[["render",l]]);export{u as __pageData,k as default};
diff --git a/assets/annotations_param.md.DCLc58O5.js b/assets/annotations_param.md.DCLc58O5.js
new file mode 100644
index 000000000..ce861eb0b
--- /dev/null
+++ b/assets/annotations_param.md.DCLc58O5.js
@@ -0,0 +1,82 @@
+import{_ as a,c as i,o as e,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"PARAM Annotation","titleTemplate":"NpgsqlRest","description":"Rename, retype, set defaults, and configure composite type parameters. Works on all endpoint types — functions, procedures, and SQL file endpoints.","frontmatter":{"outline":[2,3],"title":"PARAM Annotation","titleTemplate":"NpgsqlRest","description":"Rename, retype, set defaults, and configure composite type parameters. Works on all endpoint types — functions, procedures, and SQL file endpoints.","head":[["meta",{"name":"keywords","content":"npgsqlrest param annotation, rename parameter, retype parameter, default value, composite type parameter, sql file parameters, api parameter names"}],["meta",{"property":"og:title","content":"NpgsqlRest PARAM Annotation"}],["meta",{"property":"og:description","content":"Rename, retype, set defaults, and configure composite type parameters."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/param.md","filePath":"annotations/param.md"}'),t={name:"annotations/param.md"};function l(p,s,r,h,o,c){return e(),i("div",null,s[0]||(s[0]=[n(`
Rename and optionally retype individual endpoint parameters. This provides better API ergonomics by replacing positional parameter names ($1, $2) or internal parameter names (_old_name) with cleaner, user-facing names.
Works on all endpoint types — functions, procedures, and SQL file endpoints.
TIP
The @param keyword is shared with the PARAMETER_HASH annotation (@param X is hash of Y). Both forms coexist without ambiguity — the parser distinguishes them by the presence of hash of in the annotation.
@param <old_name> <new_name>
+@param <old_name> <new_name> <type>
+@param <old_name> is <new_name>
+@param <old_name> is <new_name> <type>
+@param <old_name> default <value>
+@param <old_name> <new_name> default <value>
+@param <old_name> <new_name> <type> default <value>
+@param <old_name> is <new_name> default <value>
+@param <old_name> is <new_name> <type> default <value>
+
+# \`=\` can be used instead of \`default\` in all forms above:
+@param <old_name> = <value>
+@param <old_name> <new_name> = <value>
+@param <old_name> <new_name> <type> = <value>
+@param <old_name> is <new_name> = <value>
+@param <old_name> is <new_name> <type> = <value>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
old_name: The original parameter name (e.g., $1, $2, or _old_name)
new_name: The new parameter name for the HTTP API. Used as-is — no name conversion is applied. If you write @param $1 authorId, the HTTP parameter name is exactly authorId, not author_id or author-id.
type: Optional PostgreSQL type override (e.g., integer, text, boolean)
Both @param and @parameter (long form) are supported.
SQL files use PostgreSQL positional parameters ($1, $2, ...) which aren't user-friendly as HTTP parameter names. Use @param to give them meaningful names:
sql
sql
-- sql/get_reports.sql
+-- HTTP GET
+-- @param $1 from_date
+-- @param $2 to_date
+select id, title, created_at
+from reports
+where created_at between $1 and $2;
1 2 3 4 5 6 7
Without rename: GET /api/get-reports?$1=2024-01-01&$2=2024-12-31
With rename: GET /api/get-reports?from_date=2024-01-01&to_date=2024-12-31
The is keyword is optional and provides consistency with the existing @param X is hash of Y style:
sql
sql
-- These are equivalent:
+-- @param $1 user_id
+-- @param $1 is user_id
+
+-- With type override:
+-- @param $1 user_id integer
+-- @param $1 is user_id integer
Renamed parameters work with user_parameters claim mapping. When you rename a positional parameter to a claim-mapped name (like _user_id or _user_name), the parameter is automatically filled from the authenticated user's claims — just like it would be for a native function parameter.
GET /api/get-my-profile (authenticated as user123) → [{"userId": "user123", "userName": "user"}]
The parameters are auto-filled from claims — the client doesn't need to send them. This is especially useful for SQL file endpoints where positional parameters ($1, $2) have no inherent name for claim matching.
SQL file parameters can have default values via @param. When a parameter with a default is not provided in the request, the default value is bound instead of returning 404.
This is essential for SQL files because positional parameters ($1, $2) must always be bound — unlike PostgreSQL functions where the engine applies its own defaults.
When a parameter type is a known composite type, the parameter is treated as a single text value. The SQL is never rewritten — it stays exactly as written.
The framework makes the HTTP call and passes the response as a composite text value automatically.
Client-sent composite types:
sql
sql
-- @param $1 data my_composite_type
+select ($1::my_composite_type).field1, ($1::my_composite_type).field2;
1 2
The client sends the value as PostgreSQL composite text format: ?data=("val1","val2").
If the type in @param is not a recognized PostgreSQL type or composite type, a warning is logged and the parameter keeps its original type from Describe.
`,64)]))}const m=a(t,[["render",l]]);export{k as __pageData,m as default};
diff --git a/assets/annotations_param.md.DCLc58O5.lean.js b/assets/annotations_param.md.DCLc58O5.lean.js
new file mode 100644
index 000000000..b65f20f31
--- /dev/null
+++ b/assets/annotations_param.md.DCLc58O5.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as e,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"PARAM Annotation","titleTemplate":"NpgsqlRest","description":"Rename, retype, set defaults, and configure composite type parameters. Works on all endpoint types — functions, procedures, and SQL file endpoints.","frontmatter":{"outline":[2,3],"title":"PARAM Annotation","titleTemplate":"NpgsqlRest","description":"Rename, retype, set defaults, and configure composite type parameters. Works on all endpoint types — functions, procedures, and SQL file endpoints.","head":[["meta",{"name":"keywords","content":"npgsqlrest param annotation, rename parameter, retype parameter, default value, composite type parameter, sql file parameters, api parameter names"}],["meta",{"property":"og:title","content":"NpgsqlRest PARAM Annotation"}],["meta",{"property":"og:description","content":"Rename, retype, set defaults, and configure composite type parameters."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/param.md","filePath":"annotations/param.md"}'),t={name:"annotations/param.md"};function l(p,s,r,h,o,c){return e(),i("div",null,s[0]||(s[0]=[n("",64)]))}const m=a(t,[["render",l]]);export{k as __pageData,m as default};
diff --git a/assets/annotations_parameter-hash.md.DAN4SbBB.js b/assets/annotations_parameter-hash.md.DAN4SbBB.js
new file mode 100644
index 000000000..f068a256a
--- /dev/null
+++ b/assets/annotations_parameter-hash.md.DAN4SbBB.js
@@ -0,0 +1,56 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"PARAMETER_HASH Annotation","titleTemplate":"NpgsqlRest","description":"Hash password parameters for secure user registration. Automatically hash passwords before storing in PostgreSQL database.","frontmatter":{"outline":[2,3],"title":"PARAMETER_HASH Annotation","titleTemplate":"NpgsqlRest","description":"Hash password parameters for secure user registration. Automatically hash passwords before storing in PostgreSQL database.","head":[["meta",{"name":"keywords","content":"npgsqlrest parameter hash, password hashing, secure registration, hash password api, user registration postgresql"}],["meta",{"property":"og:title","content":"NpgsqlRest PARAMETER_HASH Annotation"}],["meta",{"property":"og:description","content":"Hash password parameters for secure user registration endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/parameter-hash.md","filePath":"annotations/parameter-hash.md"}'),t={name:"annotations/parameter-hash.md"};function l(p,s,h,r,k,o){return n(),i("div",null,s[0]||(s[0]=[e(`
Hash one parameter value using another parameter as the hash input. This annotation is commonly used to create user registration endpoints that securely store hashed passwords in the database.
The param is hash of annotation works together with the LOGIN annotation to provide a complete authentication flow using the same built-in password hasher:
Registration: Use param <target> is hash of <source> to hash passwords before storing them
Login: Return the stored hash in a hash column and NpgsqlRest verifies it automatically
create function register(_email text, _password text, _hash text)
+returns int
+language sql
+begin atomic;
+insert into users (email, password_hash) values (_email, _hash) returning id;
+end;
+
+comment on function register(text, text, text) is '
+HTTP POST /auth/register
+@param _hash is hash of _password
+@sensitive
+';
create function login(_email text, _password text)
+returns table(hash text, id int, name text, email text)
+language sql
+begin atomic;
+select u.password_hash as hash, u.id, u.name, u.email
+from users u where u.email = _email;
+end;
+
+comment on function login(text, text) is '
+HTTP POST /auth/login
+@login
+@sensitive
+';
1 2 3 4 5 6 7 8 9 10 11 12 13
Both functions use the same PBKDF2 hasher, ensuring passwords hashed during registration can be verified during login.
`,33)]))}const u=a(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_parameter-hash.md.DAN4SbBB.lean.js b/assets/annotations_parameter-hash.md.DAN4SbBB.lean.js
new file mode 100644
index 000000000..5f999d1c4
--- /dev/null
+++ b/assets/annotations_parameter-hash.md.DAN4SbBB.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"PARAMETER_HASH Annotation","titleTemplate":"NpgsqlRest","description":"Hash password parameters for secure user registration. Automatically hash passwords before storing in PostgreSQL database.","frontmatter":{"outline":[2,3],"title":"PARAMETER_HASH Annotation","titleTemplate":"NpgsqlRest","description":"Hash password parameters for secure user registration. Automatically hash passwords before storing in PostgreSQL database.","head":[["meta",{"name":"keywords","content":"npgsqlrest parameter hash, password hashing, secure registration, hash password api, user registration postgresql"}],["meta",{"property":"og:title","content":"NpgsqlRest PARAMETER_HASH Annotation"}],["meta",{"property":"og:description","content":"Hash password parameters for secure user registration endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/parameter-hash.md","filePath":"annotations/parameter-hash.md"}'),t={name:"annotations/parameter-hash.md"};function l(p,s,h,r,k,o){return n(),i("div",null,s[0]||(s[0]=[e("",33)]))}const u=a(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_parameter-substitution.md.BAnY-Etv.js b/assets/annotations_parameter-substitution.md.BAnY-Etv.js
new file mode 100644
index 000000000..6f4a21c08
--- /dev/null
+++ b/assets/annotations_parameter-substitution.md.BAnY-Etv.js
@@ -0,0 +1,27 @@
+import{_ as a,c as s,o as t,a5 as n}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse(`{"title":"Parameter Value Substitution","titleTemplate":"NpgsqlRest","description":"Use {name} placeholders in NpgsqlRest comment annotations to inject a request's parameter values into response headers, custom parameters, and HTTP custom type calls at request time.","frontmatter":{"outline":[2,3],"title":"Parameter Value Substitution","titleTemplate":"NpgsqlRest","description":"Use {name} placeholders in NpgsqlRest comment annotations to inject a request's parameter values into response headers, custom parameters, and HTTP custom type calls at request time.","head":[["meta",{"name":"keywords","content":"npgsqlrest parameter substitution, annotation placeholder, dynamic response header, dynamic content-type, parameter value placeholder, npgsqlrest {name}"}],["meta",{"property":"og:title","content":"NpgsqlRest Parameter Value Substitution"}],["meta",{"property":"og:description","content":"Inject request parameter values into annotation values with {name} placeholders."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/parameter-substitution.md","filePath":"annotations/parameter-substitution.md"}`),i={name:"annotations/parameter-substitution.md"};function r(l,e,o,p,d,h){return t(),s("div",null,e[0]||(e[0]=[n(`
Several comment annotations accept a {name} placeholder in their value. At request time, {name} is replaced with the value of the routine parameter name taken from that request. This lets a single endpoint produce a response header, file name, upload path, or outbound HTTP call that depends on what the caller sent.
This is one shared mechanism reused by a few annotations — this page documents it once; each annotation page links here.
sql
sql
create function export_report(_type text, _file text)
+returns text language sql as $$ select '...report...' $$;
+
+comment on function export_report(text, text) is '
+HTTP GET
+Content-Type: {_type}
+Content-Disposition: attachment; filename={_file}
+';
1 2 3 4 5 6 7 8
A request GET /api/export-report?type=text/csv&file=q1.csv responds with Content-Type: text/csv and Content-Disposition: attachment; filename=q1.csv.
Other annotations do not perform this substitution. (Braces in unrelated annotations — e.g. a URL {segment} in PATH — are a different feature; see Not to be confused with.)
For each request, NpgsqlRest builds a lookup from the bound parameters (plus any allowlisted environment variables) and replaces every {name} it finds:
The name is matched case-insensitively.{userId}, {USERID}, and {userid} all resolve the same parameter. (Consistent with how PostgreSQL folds unquoted identifiers, and with resolved parameter expressions.)
Both names work. A placeholder matches either the original PostgreSQL parameter name (e.g. {_user_id}) or its converted (camelCase) name (e.g. {userId}). For HTTP custom types, the type field name also matches.
NULL or a missing value → empty string. If the parameter is SQL NULL (or not supplied), {name} becomes \`\` (nothing).
An unknown name is left untouched — and warned about. If name matches no parameter, the literal text {name} is kept verbatim in the output, and NpgsqlRest logs a build-time warning naming the placeholder, so typos (e.g. {_fil} for {_file}) surface at startup instead of silently shipping literal text. (The warning only fires for response headers and custom parameters, and only when the placeholder looks like an identifier — {0} or JSON-like {"a":1} are never treated as placeholders.)
Substitution is per-request, evaluated against the actual values bound for that call — not fixed when the endpoint is created.
Zero overhead when unused. A value is only scanned when it actually contains braces, so endpoints without placeholders pay nothing.
There is no escape sequence for a literal brace. A {...} whose inner text doesn't match a parameter is simply passed through unchanged (so {not_a_param} survives literally), but you cannot force a literal {userId} when userIdis a parameter.
A stray } with no opening {, and an unclosed {, are passed through as-is.
A {name} can also resolve to an environment variable — useful for outbound API keys (HTTP custom types) or per-deployment values like a server/environment name in a response header — without routing them through request parameters.
This is opt-in via an allowlist: only environment variables you name in NpgsqlRest:AvailableEnvVars can be referenced. Any other {NAME} is never read from the environment (it stays literal, like an unknown parameter). The allowlist is the security boundary — there is no way to substitute an arbitrary env var.
jsonc
jsonc
"NpgsqlRest": {
+ // array form — a missing variable resolves to an empty string
+ "AvailableEnvVars": [ "WEATHER_API_KEY", "SERVER_NAME" ]
+
+ // …or object form — name → default used when the variable is absent
+ // "AvailableEnvVars": { "SERVER_NAME": "local" }
+}
1 2 3 4 5 6 7
sql
sql
comment on type weather_api is '
+GET https://api.example.com/v1/current?city={_city}
+Authorization: Bearer {WEATHER_API_KEY}
+';
1 2 3 4
Here {_city} comes from a request parameter and {WEATHER_API_KEY} from the allowlisted environment variable — the API key never has to be passed by the caller.
Rules specific to env vars:
Resolved once at startup. The process environment is read when the app starts; changing a variable requires a restart (e.g. a new pod).
Case-insensitive, same as parameters ({server_name} resolves SERVER_NAME).
A routine parameter of the same name wins. If a request parameter and an allowlisted env var share a name, the parameter value is used.
A value substituted into a response header is sent to the caller. That's exactly what you want for a per-pod Server: {SERVER_NAME} header, but it means you must not put a secret env var in a response header. Reserve secrets (API keys, tokens) for outbound HTTP custom type calls and custom parameters, which stay server-side.
comment on function get_invoice(_id int, _filename text) is '
+HTTP GET
+Content-Type: application/pdf
+Content-Disposition: attachment; filename={_filename}
+';
See HTTP Custom Types. The URL, headers, and body of the proxied call accept placeholders — mix request parameters with an allowlisted environment variable so the API key never has to be passed by the caller:
sql
sql
comment on type weather_api is '
+GET https://api.example.com/v1/current?city={_city}
+Authorization: Bearer {WEATHER_API_KEY}
+';
`,37)]))}const m=a(i,[["render",r]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_parameter-substitution.md.BAnY-Etv.lean.js b/assets/annotations_parameter-substitution.md.BAnY-Etv.lean.js
new file mode 100644
index 000000000..d0f7fdc4a
--- /dev/null
+++ b/assets/annotations_parameter-substitution.md.BAnY-Etv.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as s,o as t,a5 as n}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse(`{"title":"Parameter Value Substitution","titleTemplate":"NpgsqlRest","description":"Use {name} placeholders in NpgsqlRest comment annotations to inject a request's parameter values into response headers, custom parameters, and HTTP custom type calls at request time.","frontmatter":{"outline":[2,3],"title":"Parameter Value Substitution","titleTemplate":"NpgsqlRest","description":"Use {name} placeholders in NpgsqlRest comment annotations to inject a request's parameter values into response headers, custom parameters, and HTTP custom type calls at request time.","head":[["meta",{"name":"keywords","content":"npgsqlrest parameter substitution, annotation placeholder, dynamic response header, dynamic content-type, parameter value placeholder, npgsqlrest {name}"}],["meta",{"property":"og:title","content":"NpgsqlRest Parameter Value Substitution"}],["meta",{"property":"og:description","content":"Inject request parameter values into annotation values with {name} placeholders."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/parameter-substitution.md","filePath":"annotations/parameter-substitution.md"}`),i={name:"annotations/parameter-substitution.md"};function r(l,e,o,p,d,h){return t(),s("div",null,e[0]||(e[0]=[n("",37)]))}const m=a(i,[["render",r]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_path.md.4EcrWuEH.js b/assets/annotations_path.md.4EcrWuEH.js
new file mode 100644
index 000000000..9591bdee6
--- /dev/null
+++ b/assets/annotations_path.md.4EcrWuEH.js
@@ -0,0 +1,53 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"PATH Annotation","titleTemplate":"NpgsqlRest","description":"Set custom URL paths for PostgreSQL REST API endpoints. Override default naming conventions with custom routes.","frontmatter":{"outline":[2,3],"title":"PATH Annotation","titleTemplate":"NpgsqlRest","description":"Set custom URL paths for PostgreSQL REST API endpoints. Override default naming conventions with custom routes.","head":[["meta",{"name":"keywords","content":"npgsqlrest path, custom url path, api routing, endpoint path, custom route postgresql"}],["meta",{"property":"og:title","content":"NpgsqlRest PATH Annotation"}],["meta",{"property":"og:description","content":"Set custom URL paths for PostgreSQL REST API endpoints with custom routes."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/path.md","filePath":"annotations/path.md"}'),t={name:"annotations/path.md"};function l(p,s,r,h,d,c){return n(),i("div",null,s[0]||(s[0]=[e(`
create function get_user_data()
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function get_user_data() is
+'HTTP GET
+@path /users/data';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-user-data.sql):
sql
sql
-- HTTP GET
+-- @path /users/data
+select row_to_json(u) from users u where id = current_user_id();
create function get_user(user_id int)
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function get_user(int) is
+'HTTP GET
+@path /users/{user_id}';
create function get_user_order(user_id int, order_id int)
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function get_user_order(int, int) is
+'HTTP GET
+@path /users/{user_id}/orders/{order_id}';
1 2 3 4 5 6 7 8 9 10
Call: GET /users/42/orders/123 → user_id = 42, order_id = 123
Optional path parameters were added in version 3.8.0.
Path parameters support the ASP.NET Core optional parameter syntax {param?}. When a path parameter is marked as optional and the corresponding PostgreSQL function parameter has a default value, omitting the URL segment will use the PostgreSQL default:
sql
sql
create function get_item(p_id int default 42)
+returns text
+language sql
+begin atomic;
+select p_id::text;
+end;
+
+comment on function get_item(int) is '
+HTTP GET /items/{p_id?}
+';
create function get_item(p_id int default null)
+returns text
+language sql
+begin atomic;
+select p_id::text;
+end;
+
+comment on function get_item(int) is '
+HTTP GET /items/{p_id}
+query_string_null_handling null_literal
+';
`,43)]))}const u=a(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_path.md.4EcrWuEH.lean.js b/assets/annotations_path.md.4EcrWuEH.lean.js
new file mode 100644
index 000000000..57a95e3df
--- /dev/null
+++ b/assets/annotations_path.md.4EcrWuEH.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"PATH Annotation","titleTemplate":"NpgsqlRest","description":"Set custom URL paths for PostgreSQL REST API endpoints. Override default naming conventions with custom routes.","frontmatter":{"outline":[2,3],"title":"PATH Annotation","titleTemplate":"NpgsqlRest","description":"Set custom URL paths for PostgreSQL REST API endpoints. Override default naming conventions with custom routes.","head":[["meta",{"name":"keywords","content":"npgsqlrest path, custom url path, api routing, endpoint path, custom route postgresql"}],["meta",{"property":"og:title","content":"NpgsqlRest PATH Annotation"}],["meta",{"property":"og:description","content":"Set custom URL paths for PostgreSQL REST API endpoints with custom routes."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/path.md","filePath":"annotations/path.md"}'),t={name:"annotations/path.md"};function l(p,s,r,h,d,c){return n(),i("div",null,s[0]||(s[0]=[e("",43)]))}const u=a(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_proxy-out.md.C6XnOMaD.js b/assets/annotations_proxy-out.md.C6XnOMaD.js
new file mode 100644
index 000000000..474ab88fa
--- /dev/null
+++ b/assets/annotations_proxy-out.md.C6XnOMaD.js
@@ -0,0 +1,130 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"PROXY_OUT Annotation","titleTemplate":"NpgsqlRest","description":"Execute PostgreSQL function first, then forward the result to an upstream service. Build post-processing pipelines with PDF rendering, ML inference, and more.","frontmatter":{"outline":[2,3],"title":"PROXY_OUT Annotation","titleTemplate":"NpgsqlRest","description":"Execute PostgreSQL function first, then forward the result to an upstream service. Build post-processing pipelines with PDF rendering, ML inference, and more.","head":[["meta",{"name":"keywords","content":"npgsqlrest proxy_out, forward proxy postgresql, post-execution proxy, upstream service, pdf rendering, ml inference"}],["meta",{"property":"og:title","content":"NpgsqlRest PROXY_OUT Annotation"}],["meta",{"property":"og:description","content":"Execute PostgreSQL function first, then forward the result to an upstream service."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/proxy-out.md","filePath":"annotations/proxy-out.md"}'),t={name:"annotations/proxy-out.md"};function l(p,s,r,h,k,o){return n(),a("div",null,s[0]||(s[0]=[e(`
The proxy_out annotation reverses the flow of the existing proxy annotation. Instead of forwarding the incoming request to upstream, proxy_out forwards the outgoing function result.
This enables a common pattern where business logic in PostgreSQL prepares a payload, and an external service performs processing that PostgreSQL cannot do — PDF rendering, image processing, ML inference, email sending, etc.
code
Client Request → NpgsqlRest
+ → Execute PostgreSQL function
+ → Forward function result as request body to upstream service
+ → Append the original request path and query string to the upstream host
+ → Return upstream response to client
1 2 3 4 5
The client-facing HTTP method and the upstream HTTP method are independent — the client can send a GET while the upstream receives a POST.
The upstream URL is built the same way as for proxy — the incoming request path and query string are appended to the host:
The difference from proxy is only the direction of the body: proxy_out sends the function's result as the request body to the upstream, whereas proxy sends the incoming request body.
create function generate_report(report_id int)
+returns json
+language plpgsql as $$
+begin
+ return json_build_object(
+ 'title', 'Monthly Report',
+ 'data', (select json_agg(row_to_json(t)) from sales t where month = report_id)
+ );
+end;
+$$;
+
+comment on function generate_report(int) is 'HTTP GET
+@proxy_out POST https://render-service.internal/render';
1 2 3 4 5 6 7 8 9 10 11 12 13
Equivalent as a SQL file endpoint (sql/generate-report.sql):
sql
sql
/*
+HTTP GET
+@proxy_out POST https://render-service.internal/render
+@param $1 report_id
+*/
+select json_build_object(
+ 'title', 'Monthly Report',
+ 'data', (select json_agg(row_to_json(t)) from sales t where month = $1)
+);
1 2 3 4 5 6 7 8 9
The client calls GET /api/generate-report/?reportId=3. The server:
Executes generate_report(3) in PostgreSQL.
Takes the returned JSON and POSTs it to https://render-service.internal/render/api/generate-report/?reportId=3 (original query string forwarded).
Returns the upstream response (e.g., a rendered PDF) directly to the client with the upstream's content-type and status code.
The original client request path and query string are both appended to the upstream host as-is (host + path + query). This lets the upstream receive the same path and parameters that were used to invoke the function:
sql
sql
create function generate_report(p_format text, p_id int)
+returns json
+language plpgsql as $$
+begin
+ return json_build_object('id', p_id, 'data', 'report');
+end;
+$$;
+
+comment on function generate_report(text, int) is 'HTTP GET
+@proxy_out POST';
1 2 3 4 5 6 7 8 9 10
With ProxyOptions.Host = "https://api.example.com", calling GET /api/generate-report/?pFormat=pdf&pId=123 executes the function, then POSTs the result body to https://api.example.com/api/generate-report/?pFormat=pdf&pId=123 — both the path and query string are appended.
To send the result to a fixed upstream path instead, put it in the annotation host (e.g. @proxy_out POST https://api.example.com/render, which forwards to https://api.example.com/render/api/generate-report/?...), or change the endpoint path with HTTP <method> <path>.
Self-calls are the exception
For a relative self-call (host starting with /, e.g. @proxy_out POST /api/processor), the annotation path is the full target and the incoming request path is not appended.
If the function fails (database error, exception), the error is returned directly to the client — the proxy call is never made.
If the upstream fails (5xx, timeout, connection error), the upstream's error status and body are forwarded to the client (502 for connection errors, 504 for timeouts).
Prepare data in PostgreSQL and render it as a PDF via an external service:
sql
sql
create function invoice_pdf(invoice_id int)
+returns json
+language plpgsql as $$
+begin
+ return json_build_object(
+ 'invoice_number', invoice_id,
+ 'items', (select json_agg(row_to_json(i)) from invoice_items i where i.invoice_id = invoice_pdf.invoice_id),
+ 'total', (select sum(amount) from invoice_items where invoice_items.invoice_id = invoice_pdf.invoice_id)
+ );
+end;
+$$;
+
+comment on function invoice_pdf(int) is 'HTTP GET
+@proxy_out POST https://pdf-service.internal/render';
Prepare email content in PostgreSQL and send via an email service:
sql
sql
create function send_welcome_email(user_id int)
+returns json
+language plpgsql as $$
+declare
+ u record;
+begin
+ select * into u from users where id = user_id;
+ return json_build_object(
+ 'to', u.email,
+ 'subject', 'Welcome to Our Platform',
+ 'body', format('Hello %s, welcome!', u.display_name)
+ );
+end;
+$$;
+
+comment on function send_welcome_email(int) is 'HTTP POST
+@proxy_out POST https://email-service.internal/send';
The TypeScript client generator (NpgsqlRest.TsClient) recognizes proxy_out endpoints and generates functions that return the raw Response object. Since the actual response comes from the upstream proxy service (not from the PostgreSQL function's return type), the generated function returns Promise<Response>:
Proxy Config - Configure proxy options and settings
`,76)]))}const u=i(t,[["render",l]]);export{d as __pageData,u as default};
diff --git a/assets/annotations_proxy-out.md.C6XnOMaD.lean.js b/assets/annotations_proxy-out.md.C6XnOMaD.lean.js
new file mode 100644
index 000000000..fa5a1d748
--- /dev/null
+++ b/assets/annotations_proxy-out.md.C6XnOMaD.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"PROXY_OUT Annotation","titleTemplate":"NpgsqlRest","description":"Execute PostgreSQL function first, then forward the result to an upstream service. Build post-processing pipelines with PDF rendering, ML inference, and more.","frontmatter":{"outline":[2,3],"title":"PROXY_OUT Annotation","titleTemplate":"NpgsqlRest","description":"Execute PostgreSQL function first, then forward the result to an upstream service. Build post-processing pipelines with PDF rendering, ML inference, and more.","head":[["meta",{"name":"keywords","content":"npgsqlrest proxy_out, forward proxy postgresql, post-execution proxy, upstream service, pdf rendering, ml inference"}],["meta",{"property":"og:title","content":"NpgsqlRest PROXY_OUT Annotation"}],["meta",{"property":"og:description","content":"Execute PostgreSQL function first, then forward the result to an upstream service."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/proxy-out.md","filePath":"annotations/proxy-out.md"}'),t={name:"annotations/proxy-out.md"};function l(p,s,r,h,k,o){return n(),a("div",null,s[0]||(s[0]=[e("",76)]))}const u=i(t,[["render",l]]);export{d as __pageData,u as default};
diff --git a/assets/annotations_proxy.md.C1XKqZ1u.js b/assets/annotations_proxy.md.C1XKqZ1u.js
new file mode 100644
index 000000000..2a5778d1b
--- /dev/null
+++ b/assets/annotations_proxy.md.C1XKqZ1u.js
@@ -0,0 +1,174 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"PROXY Annotation","titleTemplate":"NpgsqlRest","description":"Create reverse proxy endpoints that forward requests to upstream services. Transform responses with PostgreSQL functions.","frontmatter":{"outline":[2,3],"title":"PROXY Annotation","titleTemplate":"NpgsqlRest","description":"Create reverse proxy endpoints that forward requests to upstream services. Transform responses with PostgreSQL functions.","head":[["meta",{"name":"keywords","content":"npgsqlrest proxy, reverse proxy postgresql, upstream service, api gateway, proxy annotation"}],["meta",{"property":"og:title","content":"NpgsqlRest PROXY Annotation"}],["meta",{"property":"og:description","content":"Create reverse proxy endpoints that forward requests to upstream services."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/proxy.md","filePath":"annotations/proxy.md"}'),t={name:"annotations/proxy.md"};function l(p,s,r,h,o,d){return n(),i("div",null,s[0]||(s[0]=[e(`
The proxy annotation marks an endpoint as a reverse proxy. When a request arrives, NpgsqlRest forwards it to an upstream service and either returns the response directly (passthrough mode) or passes it to your PostgreSQL function for processing (transform mode).
This is the most important thing to understand about @proxy. The function still becomes a normal NpgsqlRest endpoint with its usual URL (auto-generated from the function name, or whatever you set with HTTP <method> <path>). When a request hits that endpoint, NpgsqlRest builds the upstream URL by appending the incoming request path and query string to the host:
The host is the value from the annotation (@proxy https://...) if present, otherwise the global ProxyOptions.Host. The path is not the function name directly — it is the actual path the client used to reach the endpoint (which, by default, is derived from the function name).
Walkthrough: what does the basic example call?
sql
sql
create function get_external_data()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function get_external_data() is 'HTTP GET
+@proxy';
The function is exposed at its default endpoint: GET /api/get-external-data/.
A client calls GET /api/get-external-data/?id=42 on your NpgsqlRest server.
NpgsqlRest forwards it to the host with the same path and query appended:
GET https://api.example.com/api/get-external-data/?id=42
The upstream response is streamed straight back to the client (passthrough — no database connection is opened).
So @proxy alone is a mirror: it forwards each request to the same path on a different host. To forward to a different path, either change the endpoint path (HTTP GET /v1/data, which then forwards to https://api.example.com/v1/data) or use an absolute/relative URL in the annotation (see URL Resolution below).
Host is required
If neither the annotation nor ProxyOptions.Host provides a host, the endpoint responds with 500 and "Proxy host is not configured." The bare @proxy form only works when ProxyOptions.Host is set.
For simple proxy forwarding without database processing:
sql
sql
create function get_external_data()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function get_external_data() is 'HTTP GET
+@proxy';
1 2 3 4 5 6 7 8 9
Equivalent as a SQL file endpoint (sql/get-external-data.sql):
sql
sql
-- HTTP GET
+-- @proxy
+select;
1 2 3
When the function has no proxy response parameters, the upstream response is returned directly to the client without opening a database connection. The function body itself (select;) is never executed — it exists only to declare the endpoint and its annotations.
To process the upstream response in PostgreSQL, add one or more proxy response parameters to the function. Their presence is what switches the endpoint from passthrough into transform mode:
sql
sql
create function get_and_transform(
+ _proxy_status_code int default null,
+ _proxy_body text default null,
+ _proxy_headers json default null,
+ _proxy_content_type text default null,
+ _proxy_success boolean default null,
+ _proxy_error_message text default null
+)
+returns json
+language plpgsql as $$
+begin
+ if not _proxy_success then
+ return json_build_object('error', _proxy_error_message);
+ end if;
+ return json_build_object(
+ 'status', _proxy_status_code,
+ 'data', _proxy_body::json
+ );
+end;
+$$;
+
+comment on function get_and_transform(int, text, json, text, boolean, text) is 'HTTP GET
+@proxy';
In transform mode the order of operations is: forward the request to the upstream → collect the response → execute the PostgreSQL function with the response values bound to its proxy parameters → return the function's result to the client. The function output (not the raw upstream response) is what the client receives.
The proxy target host is resolved with the following priority:
Annotation URL — if the annotation includes a URL (absolute or relative), it is used. The global ProxyOptions.Host is ignored.
Global ProxyOptions.Host — used only when the annotation has no URL (e.g., @proxy or @proxy POST).
In every case except a relative self-call, the incoming request path and query string are then appended to the resolved host (host + request path + query). For relative self-calls (host starting with /), the annotation path is the full target and the incoming path is not appended.
Annotation
ProxyOptions.Host
Resolved Target
Self-Call?
@proxy
https://api.example.com
https://api.example.com + request path
No
@proxy POST
https://api.example.com
https://api.example.com + request path
No
@proxy https://other.com
https://api.example.com
https://other.com + request path
No
@proxy POST /api/data
https://api.example.com
/api/data (internal)
Yes
@proxy /api/data
https://api.example.com
/api/data (internal)
Yes
@proxy /api/data
null
/api/data (internal)
Yes
Important
A relative path in the annotation (starting with /) always creates a self-referencing internal call, regardless of the ProxyOptions.Host setting. The global host is never prepended to relative paths.
When the PostgreSQL function has parameters whose names match the configured proxy parameter names, the upstream response data is bound to them after the request returns:
Parameter Name
Type
Description
_proxy_status_code
int or text
HTTP status code from upstream (e.g., 200, 404). Bound as text if the parameter is declared text/varchar, otherwise as an integer.
_proxy_body
text
Response body content. null if empty.
_proxy_headers
json
Response headers as a JSON object.
_proxy_content_type
text
Content-Type header value.
_proxy_success
boolean
true for 2xx status codes.
_proxy_error_message
text
Error message if the request failed (timeout, connection error, etc.); null otherwise.
Matched by name, not position. Each parameter is identified by its name (case-insensitive), so order and placement in the signature are irrelevant. You can mix proxy parameters freely with regular parameters.
Declare only the ones you need. None of the six are required — include just the parameters your function uses. The presence of any one of them is what puts the endpoint in transform mode.
Not read from the request. Proxy response parameters are never supplied by the caller — NpgsqlRest sets a placeholder before the upstream call and overwrites it with the real value afterwards, then passes it to the function. Declaring them with default null (as in the examples) is the recommended convention: it documents intent and keeps the function directly callable from SQL.
Regular parameters work as usual. Any non-proxy parameter (e.g. city, report_id) is bound from the request (query string, body, route) exactly like a normal endpoint, and is available to the function. For @proxy, those request values are also forwarded to the upstream as part of the forwarded path/query/body.
The names are configurable. Override them under ProxyOptions (ResponseStatusCodeParameter, ResponseBodyParameter, ResponseHeadersParameter, ResponseContentTypeParameter, ResponseSuccessParameter, ResponseErrorMessageParameter) if the defaults clash with your own parameter names.
The function then uses those names instead of the defaults:
sql
sql
create function get_and_transform(
+ status int default null,
+ body text default null,
+ ok boolean default null
+)
+returns json
+language plpgsql as $$
+begin
+ if not ok then
+ return json_build_object('error', 'upstream failed');
+ end if;
+ return json_build_object('status', status, 'data', body::json);
+end;
+$$;
+
+comment on function get_and_transform(int, text, boolean) is 'HTTP GET
+@proxy';
-- Users service
+create function users_api()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function users_api() is 'HTTP GET /api/users
+@proxy https://users-service.internal:8080';
+
+-- Orders service
+create function orders_api()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function orders_api() is 'HTTP GET /api/orders
+@proxy https://orders-service.internal:8080';
Fetch external data and enrich it with local data:
sql
sql
create function get_enriched_weather(
+ city text,
+ _proxy_status_code int default null,
+ _proxy_body text default null,
+ _proxy_success boolean default null
+)
+returns json
+language plpgsql as $$
+declare
+ local_data json;
+begin
+ -- Get local city preferences
+ select json_build_object('favorite', is_favorite, 'notes', notes)
+ into local_data
+ from user_city_preferences
+ where city_name = city;
+
+ if not _proxy_success then
+ return json_build_object('error', 'Weather API unavailable');
+ end if;
+
+ return json_build_object(
+ 'weather', _proxy_body::json,
+ 'local', coalesce(local_data, '{}'::json)
+ );
+end;
+$$;
+
+comment on function get_enriched_weather(text, int, text, boolean) is 'HTTP GET /v1/current
+@proxy https://api.weather.com';
A client request to GET /v1/current?city=London is forwarded to https://api.weather.com/v1/current?city=London — the endpoint path and the incoming query string are appended to the host. The city value also populates the city parameter so it is available to the function for the local lookup.
No URL templating
The annotation host is used literally — there is no {city}-style substitution. Dynamic values reach the upstream only through the forwarded request path and query string (and, optionally, user_parameters). Do not put placeholders like ?city={city} in the host; they are forwarded verbatim.
Use NpgsqlRest as an authenticating gateway: it verifies the caller, then forwards the request to a protected upstream service along with the caller's identity as HTTP headers. This is a passthrough proxy — the function does no work, so it needs no body and no proxy parameters:
sql
sql
create function secure_api_call()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function secure_api_call() is 'HTTP GET
+@authorize
+@user_context
+@proxy https://secure-api.internal/data';
1 2 3 4 5 6 7 8 9 10 11
On a proxy endpoint, @user_context adds the caller's identity to the upstream request as HTTP headers: the claims JSON, the client IP, and one header per entry in ContextKeyClaimsMapping (e.g. request.user_id, request.user_name, request.user_roles). The upstream can trust these headers because the request was authenticated by the gateway, so it never re-authenticates.
In this passthrough example the function never runs, so header forwarding is the only effect. In transform mode the function does run, and there @user_context additionally sets the usual PostgreSQL session context for it — so the function can read the caller's identity while the upstream still receives the headers.
Forward user claims to the upstream as query string parameters:
sql
sql
create function proxy_with_user(
+ _user_id text default null, -- filled from the caller's user-id claim by @user_params,
+ -- then forwarded to the upstream as ?userId=...
+ _proxy_body text default null
+)
+returns json language plpgsql as $$
+begin
+ -- _user_id is sent to the upstream automatically; the function reads only the response here.
+ return _proxy_body::json;
+end;
+$$;
+
+comment on function proxy_with_user(text, text) is 'HTTP GET
+@authorize
+@user_params
+@proxy https://api.internal/user-data';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
With @user_params, _user_id is populated from the authenticated user's claim (not from the request) and appended to the upstream URL using the camelCase form of the parameter name. A call to GET /api/proxy-with-user/ is forwarded to:
GET https://api.internal/user-data/api/proxy-with-user/?userId=<claim value>
The function may also read _user_id directly if it needs the value — but it doesn't have to for the value to reach the upstream.
Proxy Config - Configure proxy options and settings
`,91)]))}const u=a(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_proxy.md.C1XKqZ1u.lean.js b/assets/annotations_proxy.md.C1XKqZ1u.lean.js
new file mode 100644
index 000000000..08b18fa8f
--- /dev/null
+++ b/assets/annotations_proxy.md.C1XKqZ1u.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"PROXY Annotation","titleTemplate":"NpgsqlRest","description":"Create reverse proxy endpoints that forward requests to upstream services. Transform responses with PostgreSQL functions.","frontmatter":{"outline":[2,3],"title":"PROXY Annotation","titleTemplate":"NpgsqlRest","description":"Create reverse proxy endpoints that forward requests to upstream services. Transform responses with PostgreSQL functions.","head":[["meta",{"name":"keywords","content":"npgsqlrest proxy, reverse proxy postgresql, upstream service, api gateway, proxy annotation"}],["meta",{"property":"og:title","content":"NpgsqlRest PROXY Annotation"}],["meta",{"property":"og:description","content":"Create reverse proxy endpoints that forward requests to upstream services."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/proxy.md","filePath":"annotations/proxy.md"}'),t={name:"annotations/proxy.md"};function l(p,s,r,h,o,d){return n(),i("div",null,s[0]||(s[0]=[e("",91)]))}const u=a(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_query-string-null-handling.md.bDnQmkU1.js b/assets/annotations_query-string-null-handling.md.bDnQmkU1.js
new file mode 100644
index 000000000..48e20c20a
--- /dev/null
+++ b/assets/annotations_query-string-null-handling.md.bDnQmkU1.js
@@ -0,0 +1,55 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"QUERY_STRING_NULL_HANDLING Annotation","titleTemplate":"NpgsqlRest","description":"Control NULL value interpretation in query string parameters. Configure empty string vs NULL handling for PostgreSQL APIs.","frontmatter":{"outline":[2,3],"title":"QUERY_STRING_NULL_HANDLING Annotation","titleTemplate":"NpgsqlRest","description":"Control NULL value interpretation in query string parameters. Configure empty string vs NULL handling for PostgreSQL APIs.","head":[["meta",{"name":"keywords","content":"npgsqlrest null handling, query string null, empty string null, parameter null handling, api null values"}],["meta",{"property":"og:title","content":"NpgsqlRest QUERY_STRING_NULL_HANDLING Annotation"}],["meta",{"property":"og:description","content":"Control how NULL values are interpreted in query string parameters."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/query-string-null-handling.md","filePath":"annotations/query-string-null-handling.md"}'),l={name:"annotations/query-string-null-handling.md"};function t(p,s,r,d,h,c){return n(),i("div",null,s[0]||(s[0]=[e(`
query_null_handling, query_string_null, query_null (with or without @ prefix)
Controls how clients can pass NULL values to PostgreSQL function parameters via query string.
Since query strings can only contain text values, there's no native way to represent SQL NULL. This annotation defines what query string value should be interpreted as NULL.
create function get_nullable_param(_t text)
+returns text
+language sql
+begin atomic;
+select _t;
+end;
+
+comment on function get_nullable_param(text) is '
+@query_string_null_handling empty_string
+';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-nullable-param.sql):
sql
sql
/*
+HTTP GET
+@query_string_null_handling empty_string
+@param $1 t
+*/
+select $1;
create function get_data(_filter text)
+returns text
+language sql
+begin atomic;
+select _filter;
+end;
+
+comment on function get_data(text) is '
+@query_string_null_handling null_literal
+';
create function search(_query text)
+returns text
+language sql
+begin atomic;
+select _query;
+end;
+
+comment on function search(text) is '
+@query_string_null_handling ignore
+';
Path parameter interaction with null_literal mode was added in version 3.8.0.
The null_literal mode also works with path parameters. When combined with optional path parameters, you can pass NULL via the literal string "null" in the URL path:
sql
sql
create function get_item(p_id int default null)
+returns text
+language sql
+begin atomic;
+select p_id::text;
+end;
+
+comment on function get_item(int) is '
+HTTP GET /items/{p_id}
+query_string_null_handling null_literal
+';
`,48)]))}const k=a(l,[["render",t]]);export{u as __pageData,k as default};
diff --git a/assets/annotations_query-string-null-handling.md.bDnQmkU1.lean.js b/assets/annotations_query-string-null-handling.md.bDnQmkU1.lean.js
new file mode 100644
index 000000000..2c1344c3a
--- /dev/null
+++ b/assets/annotations_query-string-null-handling.md.bDnQmkU1.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"QUERY_STRING_NULL_HANDLING Annotation","titleTemplate":"NpgsqlRest","description":"Control NULL value interpretation in query string parameters. Configure empty string vs NULL handling for PostgreSQL APIs.","frontmatter":{"outline":[2,3],"title":"QUERY_STRING_NULL_HANDLING Annotation","titleTemplate":"NpgsqlRest","description":"Control NULL value interpretation in query string parameters. Configure empty string vs NULL handling for PostgreSQL APIs.","head":[["meta",{"name":"keywords","content":"npgsqlrest null handling, query string null, empty string null, parameter null handling, api null values"}],["meta",{"property":"og:title","content":"NpgsqlRest QUERY_STRING_NULL_HANDLING Annotation"}],["meta",{"property":"og:description","content":"Control how NULL values are interpreted in query string parameters."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/query-string-null-handling.md","filePath":"annotations/query-string-null-handling.md"}'),l={name:"annotations/query-string-null-handling.md"};function t(p,s,r,d,h,c){return n(),i("div",null,s[0]||(s[0]=[e("",48)]))}const k=a(l,[["render",t]]);export{u as __pageData,k as default};
diff --git a/assets/annotations_rate-limiter-policy.md.C6rNxcxq.js b/assets/annotations_rate-limiter-policy.md.C6rNxcxq.js
new file mode 100644
index 000000000..127b6f756
--- /dev/null
+++ b/assets/annotations_rate-limiter-policy.md.C6rNxcxq.js
@@ -0,0 +1,68 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"RATE_LIMITER_POLICY Annotation","titleTemplate":"NpgsqlRest","description":"Apply rate limiting policies to PostgreSQL REST API endpoints. Control request rates per endpoint with configured policies.","frontmatter":{"outline":[2,3],"title":"RATE_LIMITER_POLICY Annotation","titleTemplate":"NpgsqlRest","description":"Apply rate limiting policies to PostgreSQL REST API endpoints. Control request rates per endpoint with configured policies.","head":[["meta",{"name":"keywords","content":"npgsqlrest rate limiter, api throttling, request rate limit, endpoint throttle, rate limit policy"}],["meta",{"property":"og:title","content":"NpgsqlRest RATE_LIMITER_POLICY Annotation"}],["meta",{"property":"og:description","content":"Apply rate limiting policies to control request rates per endpoint."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/rate-limiter-policy.md","filePath":"annotations/rate-limiter-policy.md"}'),l={name:"annotations/rate-limiter-policy.md"};function t(p,s,h,k,r,o){return n(),a("div",null,s[0]||(s[0]=[e(`
If the policy name doesn't match any configured policy, rate limiting won't be applied
Returns 429 Too Many Requests when limit exceeded (status code and message are configurable)
Policy defines requests per time window based on the policy type (FixedWindow, SlidingWindow, TokenBucket, or Concurrency)
Policies with a Partition block bucket requests per-user / per-IP / per-header instead of using a single global bucket
The policy applies to HTTP requests hitting this endpoint's route. It is not consulted when the endpoint is invoked in-process — via HTTP client type self-calls, proxy self-calls, or MCP tools/call (use McpOptions.RateLimiterPolicy for agent traffic). See Rate Limiting Scope
`,35)]))}const u=i(l,[["render",t]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_rate-limiter-policy.md.C6rNxcxq.lean.js b/assets/annotations_rate-limiter-policy.md.C6rNxcxq.lean.js
new file mode 100644
index 000000000..1e135f0b1
--- /dev/null
+++ b/assets/annotations_rate-limiter-policy.md.C6rNxcxq.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"RATE_LIMITER_POLICY Annotation","titleTemplate":"NpgsqlRest","description":"Apply rate limiting policies to PostgreSQL REST API endpoints. Control request rates per endpoint with configured policies.","frontmatter":{"outline":[2,3],"title":"RATE_LIMITER_POLICY Annotation","titleTemplate":"NpgsqlRest","description":"Apply rate limiting policies to PostgreSQL REST API endpoints. Control request rates per endpoint with configured policies.","head":[["meta",{"name":"keywords","content":"npgsqlrest rate limiter, api throttling, request rate limit, endpoint throttle, rate limit policy"}],["meta",{"property":"og:title","content":"NpgsqlRest RATE_LIMITER_POLICY Annotation"}],["meta",{"property":"og:description","content":"Apply rate limiting policies to control request rates per endpoint."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/rate-limiter-policy.md","filePath":"annotations/rate-limiter-policy.md"}'),l={name:"annotations/rate-limiter-policy.md"};function t(p,s,h,k,r,o){return n(),a("div",null,s[0]||(s[0]=[e("",35)]))}const u=i(l,[["render",t]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_raw.md.mVR52W_-.js b/assets/annotations_raw.md.mVR52W_-.js
new file mode 100644
index 000000000..1812a6aed
--- /dev/null
+++ b/assets/annotations_raw.md.mVR52W_-.js
@@ -0,0 +1,88 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"RAW Annotation","titleTemplate":"NpgsqlRest","description":"Return raw text output instead of JSON from PostgreSQL REST API endpoints. Output CSV, plain text, or custom formats.","frontmatter":{"outline":[2,3],"title":"RAW Annotation","titleTemplate":"NpgsqlRest","description":"Return raw text output instead of JSON from PostgreSQL REST API endpoints. Output CSV, plain text, or custom formats.","head":[["meta",{"name":"keywords","content":"npgsqlrest raw output, text response api, csv output postgresql, non-json response, plain text api"}],["meta",{"property":"og:title","content":"NpgsqlRest RAW Annotation"}],["meta",{"property":"og:description","content":"Return raw text output instead of JSON formatting from PostgreSQL."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/raw.md","filePath":"annotations/raw.md"}'),l={name:"annotations/raw.md"};function p(t,s,h,r,k,c){return n(),i("div",null,s[0]||(s[0]=[e(`
create function get_plain_text()
+returns text
+language sql
+begin atomic;
+select 'Hello, World!';
+end;
+
+comment on function get_plain_text() is
+'HTTP GET
+@raw';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-plain-text.sql):
sql
sql
-- HTTP GET
+-- @raw
+select 'Hello, World!';
1 2 3
Response: Hello, World! (plain text, no JSON wrapping)
create function get_user_info()
+returns table(name text, email text)
+language sql
+begin atomic;
+select name, email from users limit 1;
+end;
+
+comment on function get_user_info() is
+'HTTP GET
+@raw';
create function export_data()
+returns table(a text, b text, c text)
+language sql
+begin atomic;
+...;
+end;
+
+comment on function export_data() is
+'HTTP GET
+@raw
+@separator |
+@new_line \\n';
`,41)]))}const u=a(l,[["render",p]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_raw.md.mVR52W_-.lean.js b/assets/annotations_raw.md.mVR52W_-.lean.js
new file mode 100644
index 000000000..dd7b08954
--- /dev/null
+++ b/assets/annotations_raw.md.mVR52W_-.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"RAW Annotation","titleTemplate":"NpgsqlRest","description":"Return raw text output instead of JSON from PostgreSQL REST API endpoints. Output CSV, plain text, or custom formats.","frontmatter":{"outline":[2,3],"title":"RAW Annotation","titleTemplate":"NpgsqlRest","description":"Return raw text output instead of JSON from PostgreSQL REST API endpoints. Output CSV, plain text, or custom formats.","head":[["meta",{"name":"keywords","content":"npgsqlrest raw output, text response api, csv output postgresql, non-json response, plain text api"}],["meta",{"property":"og:title","content":"NpgsqlRest RAW Annotation"}],["meta",{"property":"og:description","content":"Return raw text output instead of JSON formatting from PostgreSQL."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/raw.md","filePath":"annotations/raw.md"}'),l={name:"annotations/raw.md"};function p(t,s,h,r,k,c){return n(),i("div",null,s[0]||(s[0]=[e("",41)]))}const u=a(l,[["render",p]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_request-headers-mode.md.CiBM2WBe.js b/assets/annotations_request-headers-mode.md.CiBM2WBe.js
new file mode 100644
index 000000000..1ce580a3e
--- /dev/null
+++ b/assets/annotations_request-headers-mode.md.CiBM2WBe.js
@@ -0,0 +1,21 @@
+import{_ as a,c as e,o as i,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"REQUEST_HEADERS_MODE Annotation","titleTemplate":"NpgsqlRest","description":"Control how HTTP request headers are passed to PostgreSQL functions. Access headers via context or parameters.","frontmatter":{"outline":[2,3],"title":"REQUEST_HEADERS_MODE Annotation","titleTemplate":"NpgsqlRest","description":"Control how HTTP request headers are passed to PostgreSQL functions. Access headers via context or parameters.","head":[["meta",{"name":"keywords","content":"npgsqlrest request headers, http headers postgresql, access request headers, headers to function, header mode"}],["meta",{"property":"og:title","content":"NpgsqlRest REQUEST_HEADERS_MODE Annotation"}],["meta",{"property":"og:description","content":"Control how HTTP request headers are passed to PostgreSQL functions."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/request-headers-mode.md","filePath":"annotations/request-headers-mode.md"}'),t={name:"annotations/request-headers-mode.md"};function l(r,s,p,o,d,h){return i(),e("div",null,s[0]||(s[0]=[n(`
`,23)]))}const u=a(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_request-headers-mode.md.CiBM2WBe.lean.js b/assets/annotations_request-headers-mode.md.CiBM2WBe.lean.js
new file mode 100644
index 000000000..11c1ceaa3
--- /dev/null
+++ b/assets/annotations_request-headers-mode.md.CiBM2WBe.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as e,o as i,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"REQUEST_HEADERS_MODE Annotation","titleTemplate":"NpgsqlRest","description":"Control how HTTP request headers are passed to PostgreSQL functions. Access headers via context or parameters.","frontmatter":{"outline":[2,3],"title":"REQUEST_HEADERS_MODE Annotation","titleTemplate":"NpgsqlRest","description":"Control how HTTP request headers are passed to PostgreSQL functions. Access headers via context or parameters.","head":[["meta",{"name":"keywords","content":"npgsqlrest request headers, http headers postgresql, access request headers, headers to function, header mode"}],["meta",{"property":"og:title","content":"NpgsqlRest REQUEST_HEADERS_MODE Annotation"}],["meta",{"property":"og:description","content":"Control how HTTP request headers are passed to PostgreSQL functions."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/request-headers-mode.md","filePath":"annotations/request-headers-mode.md"}'),t={name:"annotations/request-headers-mode.md"};function l(r,s,p,o,d,h){return i(),e("div",null,s[0]||(s[0]=[n("",23)]))}const u=a(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_request-headers-parameter-name.md.B1w65j2m.js b/assets/annotations_request-headers-parameter-name.md.B1w65j2m.js
new file mode 100644
index 000000000..f143d28ac
--- /dev/null
+++ b/assets/annotations_request-headers-parameter-name.md.B1w65j2m.js
@@ -0,0 +1,27 @@
+import{_ as a,c as e,o as i,a5 as n}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"REQUEST_HEADERS_PARAMETER_NAME Annotation","titleTemplate":"NpgsqlRest","description":"Set parameter name for receiving HTTP request headers in PostgreSQL functions. Customize header parameter naming.","frontmatter":{"outline":[2,3],"title":"REQUEST_HEADERS_PARAMETER_NAME Annotation","titleTemplate":"NpgsqlRest","description":"Set parameter name for receiving HTTP request headers in PostgreSQL functions. Customize header parameter naming.","head":[["meta",{"name":"keywords","content":"npgsqlrest headers parameter, request headers param, http headers function, header parameter name"}],["meta",{"property":"og:title","content":"NpgsqlRest REQUEST_HEADERS_PARAMETER_NAME Annotation"}],["meta",{"property":"og:description","content":"Set the parameter name that receives HTTP request headers."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/request-headers-parameter-name.md","filePath":"annotations/request-headers-parameter-name.md"}'),t={name:"annotations/request-headers-parameter-name.md"};function l(r,s,p,h,d,o){return i(),e("div",null,s[0]||(s[0]=[n(`
`,19)]))}const m=a(t,[["render",l]]);export{c as __pageData,m as default};
diff --git a/assets/annotations_request-headers-parameter-name.md.B1w65j2m.lean.js b/assets/annotations_request-headers-parameter-name.md.B1w65j2m.lean.js
new file mode 100644
index 000000000..f195262b1
--- /dev/null
+++ b/assets/annotations_request-headers-parameter-name.md.B1w65j2m.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as e,o as i,a5 as n}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"REQUEST_HEADERS_PARAMETER_NAME Annotation","titleTemplate":"NpgsqlRest","description":"Set parameter name for receiving HTTP request headers in PostgreSQL functions. Customize header parameter naming.","frontmatter":{"outline":[2,3],"title":"REQUEST_HEADERS_PARAMETER_NAME Annotation","titleTemplate":"NpgsqlRest","description":"Set parameter name for receiving HTTP request headers in PostgreSQL functions. Customize header parameter naming.","head":[["meta",{"name":"keywords","content":"npgsqlrest headers parameter, request headers param, http headers function, header parameter name"}],["meta",{"property":"og:title","content":"NpgsqlRest REQUEST_HEADERS_PARAMETER_NAME Annotation"}],["meta",{"property":"og:description","content":"Set the parameter name that receives HTTP request headers."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/request-headers-parameter-name.md","filePath":"annotations/request-headers-parameter-name.md"}'),t={name:"annotations/request-headers-parameter-name.md"};function l(r,s,p,h,d,o){return i(),e("div",null,s[0]||(s[0]=[n("",19)]))}const m=a(t,[["render",l]]);export{c as __pageData,m as default};
diff --git a/assets/annotations_request-param-type.md.D2ADbicS.js b/assets/annotations_request-param-type.md.D2ADbicS.js
new file mode 100644
index 000000000..81557763c
--- /dev/null
+++ b/assets/annotations_request-param-type.md.D2ADbicS.js
@@ -0,0 +1,46 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"REQUEST_PARAM_TYPE Annotation","titleTemplate":"NpgsqlRest","description":"Control parameter transmission method for PostgreSQL REST API endpoints. Choose between query string and request body parameters.","frontmatter":{"outline":[2,3],"title":"REQUEST_PARAM_TYPE Annotation","titleTemplate":"NpgsqlRest","description":"Control parameter transmission method for PostgreSQL REST API endpoints. Choose between query string and request body parameters.","head":[["meta",{"name":"keywords","content":"npgsqlrest param type, query string parameters, request body params, parameter transmission, api input method"}],["meta",{"property":"og:title","content":"NpgsqlRest REQUEST_PARAM_TYPE Annotation"}],["meta",{"property":"og:description","content":"Control parameter transmission via query string or request body."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/request-param-type.md","filePath":"annotations/request-param-type.md"}'),t={name:"annotations/request-param-type.md"};function l(p,s,r,h,o,d){return n(),i("div",null,s[0]||(s[0]=[e(`
The bare value keywords also work as standalone annotations: query_string / query (same as @request_param_type query_string) and body_json / body (same as @request_param_type body_json).
Control how parameters are transmitted to the endpoint - via query string or request body.
create function search_users(_name text, _active bool)
+returns setof users
+language sql
+begin atomic;
+select * from users where name ilike '%' || _name || '%' and active = _active;
+end;
+
+comment on function search_users(text, bool) is
+'HTTP GET
+@request_param_type query_string';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/search-users.sql):
sql
sql
/*
+HTTP GET
+@request_param_type query_string
+@param $1 name
+@param $2 active boolean
+*/
+select * from users where name ilike '%' || $1 || '%' and active = $2;
1 2 3 4 5 6 7
Request: GET /api/search-users?_name=john&_active=true
create function get_filtered_data(_filters text)
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function get_filtered_data(text) is
+'HTTP GET
+@request_param_type body_json';
1 2 3 4 5 6 7 8 9 10
Request:
http
http
GET /api/get-filtered-data
+Content-Type: application/json
+
+{"_filters": "status=active"}
-- Using '@param_type' instead of '@request_param_type'
+comment on function func1(text) is
+'HTTP
+@param_type query';
+
+-- Using 'BODY' (case-insensitive)
+comment on function func2(text) is
+'HTTP
+@param_type BODY';
create function quick_action(_id int)
+returns text
+language sql
+begin atomic;
+...;
+end;
+
+comment on function quick_action(int) is
+'HTTP POST
+@param_type query_string';
`,34)]))}const u=a(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_request-param-type.md.D2ADbicS.lean.js b/assets/annotations_request-param-type.md.D2ADbicS.lean.js
new file mode 100644
index 000000000..4f02d5e0c
--- /dev/null
+++ b/assets/annotations_request-param-type.md.D2ADbicS.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"REQUEST_PARAM_TYPE Annotation","titleTemplate":"NpgsqlRest","description":"Control parameter transmission method for PostgreSQL REST API endpoints. Choose between query string and request body parameters.","frontmatter":{"outline":[2,3],"title":"REQUEST_PARAM_TYPE Annotation","titleTemplate":"NpgsqlRest","description":"Control parameter transmission method for PostgreSQL REST API endpoints. Choose between query string and request body parameters.","head":[["meta",{"name":"keywords","content":"npgsqlrest param type, query string parameters, request body params, parameter transmission, api input method"}],["meta",{"property":"og:title","content":"NpgsqlRest REQUEST_PARAM_TYPE Annotation"}],["meta",{"property":"og:description","content":"Control parameter transmission via query string or request body."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/request-param-type.md","filePath":"annotations/request-param-type.md"}'),t={name:"annotations/request-param-type.md"};function l(p,s,r,h,o,d){return n(),i("div",null,s[0]||(s[0]=[e("",34)]))}const u=a(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_resolved-parameters.md.CtIRul_U.js b/assets/annotations_resolved-parameters.md.CtIRul_U.js
new file mode 100644
index 000000000..96e817581
--- /dev/null
+++ b/assets/annotations_resolved-parameters.md.CtIRul_U.js
@@ -0,0 +1,15 @@
+import{_ as a,c as s,o as t,a5 as n}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse(`{"title":"Resolved Parameters","titleTemplate":"NpgsqlRest","description":"Compute a routine parameter's value server-side from a SQL expression at request time, instead of taking it from the client — for injecting DB-stored API tokens, secrets, or derived values into outbound HTTP calls, headers, and parameters.","frontmatter":{"outline":[2,3],"title":"Resolved Parameters","titleTemplate":"NpgsqlRest","description":"Compute a routine parameter's value server-side from a SQL expression at request time, instead of taking it from the client — for injecting DB-stored API tokens, secrets, or derived values into outbound HTTP calls, headers, and parameters.","head":[["meta",{"name":"keywords","content":"npgsqlrest resolved parameter, server-side parameter, sql expression parameter, inject api token postgresql, secret in authorization header, resolved parameter expression"}],["meta",{"property":"og:title","content":"NpgsqlRest Resolved Parameters"}],["meta",{"property":"og:description","content":"Resolve a parameter's value server-side from SQL at request time, never from the client."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/resolved-parameters.md","filePath":"annotations/resolved-parameters.md"}`),r={name:"annotations/resolved-parameters.md"};function i(o,e,l,p,d,c){return t(),s("div",null,e[0]||(e[0]=[n(`
A resolved parameter has its value computed server-side from a SQL expression at request time, instead of being supplied by the client. You declare it with a param_name = <sql> comment annotation where param_name matches a real routine parameter.
This is how you inject a value the caller must not provide or see — a DB-stored API token, a secret, or anything derived in SQL — into the routine and into {name} placeholder substitution (response headers, custom parameters, and HTTP custom type URL/headers/body).
sql
sql
comment on function get_secure_data(_user_id int, _req my_api_type, _token text) is '
+HTTP GET
+_token = select api_token from user_tokens where user_id = {_user_id}
+';
1 2 3 4
The client calls GET /api/get-secure-data/?user_id=42; the server runs select api_token from user_tokens where user_id = 42, binds the result to _token, and uses it wherever {_token} appears. The token never leaves the server, and a client &token=hacked is ignored.
parameter_name must match an actual routine parameter (by its PostgreSQL name). If the key doesn't match a parameter, it's treated as a custom parameter instead.
<sql expression> is any scalar SQL expression — a column read, a subquery, a function call, concatenation, coalesce, etc. It is run with ExecuteScalar, so it must return a single value.
It may contain {name} placeholders referencing other parameters (resolved case-insensitively, by actual or converted name), which are passed as safe $N parameters — never string-concatenated.
Server-side only. The resolved value cannot be overridden by client input. Even if the client sends &token=hacked, the SQL-resolved value wins.
Runs before the call. Resolved expressions execute before the outbound HTTP-type request and before placeholder substitution, so the resolved value is available everywhere the parameter is referenced.
NULL handling. If the expression returns no rows or NULL, the parameter becomes SQL NULL (an empty string in placeholder substitution).
SQL-injection safe.{name} placeholders inside the expression are converted to positional $N parameters.
Sequential. Multiple resolved expressions run one-by-one on the same connection, in annotation order. A later expression can reference an earlier resolved parameter.
Works with claims. Expressions can reference parameters auto-filled from JWT claims via user parameters, enabling fully zero-input authenticated calls.
Hidden from callers. A resolved parameter is excluded from the client input surface and from MCP tools/list input schemas — an agent or caller can neither see nor set it.
Inject a DB-stored API token into an outbound call
sql
sql
comment on type weather_api is 'GET https://api.example.com/v1/current?city={_city}
+Authorization: Bearer {_api_key}';
+
+comment on function get_weather(_city text, _api weather_api, _api_key text) is '
+HTTP GET
+_api_key = select token from weather_tokens order by fetched_at desc limit 1
+';
1 2 3 4 5 6 7
The caller supplies only _city. _api_key is read from weather_tokens per request, so it always reflects the latest token — useful when a separate refresh/login routine periodically writes a new token into that table. (Pair it with pg_cron or a refresh routine to keep the row current; a tight-expiry variant: … where expires_at > now() order by fetched_at desc limit 1.)
`,24)]))}const u=a(r,[["render",i]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_resolved-parameters.md.CtIRul_U.lean.js b/assets/annotations_resolved-parameters.md.CtIRul_U.lean.js
new file mode 100644
index 000000000..8b24b5f8d
--- /dev/null
+++ b/assets/annotations_resolved-parameters.md.CtIRul_U.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as s,o as t,a5 as n}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse(`{"title":"Resolved Parameters","titleTemplate":"NpgsqlRest","description":"Compute a routine parameter's value server-side from a SQL expression at request time, instead of taking it from the client — for injecting DB-stored API tokens, secrets, or derived values into outbound HTTP calls, headers, and parameters.","frontmatter":{"outline":[2,3],"title":"Resolved Parameters","titleTemplate":"NpgsqlRest","description":"Compute a routine parameter's value server-side from a SQL expression at request time, instead of taking it from the client — for injecting DB-stored API tokens, secrets, or derived values into outbound HTTP calls, headers, and parameters.","head":[["meta",{"name":"keywords","content":"npgsqlrest resolved parameter, server-side parameter, sql expression parameter, inject api token postgresql, secret in authorization header, resolved parameter expression"}],["meta",{"property":"og:title","content":"NpgsqlRest Resolved Parameters"}],["meta",{"property":"og:description","content":"Resolve a parameter's value server-side from SQL at request time, never from the client."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/resolved-parameters.md","filePath":"annotations/resolved-parameters.md"}`),r={name:"annotations/resolved-parameters.md"};function i(o,e,l,p,d,c){return t(),s("div",null,e[0]||(e[0]=[n("",24)]))}const u=a(r,[["render",i]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_response-headers.md.BjZbt4Z0.js b/assets/annotations_response-headers.md.BjZbt4Z0.js
new file mode 100644
index 000000000..55448a980
--- /dev/null
+++ b/assets/annotations_response-headers.md.BjZbt4Z0.js
@@ -0,0 +1,81 @@
+import{_ as a,c as n,o as i,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"Response Headers Annotation","titleTemplate":"NpgsqlRest","description":"Set custom HTTP response headers for PostgreSQL REST API endpoints. Configure Cache-Control, Content-Type, and custom headers.","frontmatter":{"outline":[2,3],"title":"Response Headers Annotation","titleTemplate":"NpgsqlRest","description":"Set custom HTTP response headers for PostgreSQL REST API endpoints. Configure Cache-Control, Content-Type, and custom headers.","head":[["meta",{"name":"keywords","content":"npgsqlrest response headers, custom http headers, cache control header, content type header, api response headers"}],["meta",{"property":"og:title","content":"NpgsqlRest Response Headers Annotation"}],["meta",{"property":"og:description","content":"Set custom HTTP response headers like Cache-Control and Content-Type."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/response-headers.md","filePath":"annotations/response-headers.md"}'),l={name:"annotations/response-headers.md"};function t(p,s,r,h,c,k){return i(),n("div",null,s[0]||(s[0]=[e(`
create function get_html_page()
+returns text
+language sql
+begin atomic;
+select '<html><body><h1>Hello</h1></body></html>';
+end;
+
+comment on function get_html_page() is
+'HTTP GET
+Content-Type: text/html';
1 2 3 4 5 6 7 8 9 10
Equivalent as a SQL file endpoint (sql/get-html-page.sql):
sql
sql
/*
+HTTP GET
+Content-Type: text/html
+*/
+select '<html><body><h1>Hello</h1></body></html>';
create function set_cookies()
+returns text
+language sql
+begin atomic;
+select 'OK';
+end;
+
+comment on function set_cookies() is
+'HTTP GET
+Set-Cookie: session=abc123
+Set-Cookie: theme=dark
+Set-Cookie: lang=en';
create function get_static_config()
+returns json
+language sql
+begin atomic;
+select config from app_config where id = 1;
+end;
+
+comment on function get_static_config() is
+'HTTP GET
+Cache-Control: public, max-age=3600';
create function export_report()
+returns text
+language sql
+begin atomic;
+...;
+end;
+
+comment on function export_report() is
+'HTTP GET
+@authorize manager
+Content-Type: text/csv
+Content-Disposition: attachment; filename="report.csv"
+Cache-Control: no-cache';
Header values can include parameter values using the {param_name} template syntax. The matching and substitution rules (case-sensitivity, NULL handling, etc.) are shared across annotations — see Parameter Value Substitution.
sql
sql
create function export_report(_type text, _file text)
+returns text
+language sql
+begin atomic;
+...;
+end;
+
+comment on function export_report(text, text) is
+'HTTP GET
+@authorize manager
+Content-Type: {_type}
+Content-Disposition: attachment; filename={_file}
+Cache-Control: no-cache';
1 2 3 4 5 6 7 8 9 10 11 12 13
Request: GET /api/export-report?_type=text/csv&_file=report.csv
create function cors_endpoint()
+returns json
+language sql
+begin atomic;
+select '{}'::json;
+end;
+
+comment on function cors_endpoint() is
+'HTTP GET
+Access-Control-Allow-Origin: *
+Access-Control-Allow-Methods: GET, POST
+Access-Control-Allow-Headers: Content-Type';
1 2 3 4 5 6 7 8 9 10 11 12
Note: To configure CORS centrally (origins, methods, credentials, preflight), use the CORS configuration instead.
`,38)]))}const m=a(l,[["render",t]]);export{d as __pageData,m as default};
diff --git a/assets/annotations_response-headers.md.BjZbt4Z0.lean.js b/assets/annotations_response-headers.md.BjZbt4Z0.lean.js
new file mode 100644
index 000000000..e50b7057b
--- /dev/null
+++ b/assets/annotations_response-headers.md.BjZbt4Z0.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as n,o as i,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"Response Headers Annotation","titleTemplate":"NpgsqlRest","description":"Set custom HTTP response headers for PostgreSQL REST API endpoints. Configure Cache-Control, Content-Type, and custom headers.","frontmatter":{"outline":[2,3],"title":"Response Headers Annotation","titleTemplate":"NpgsqlRest","description":"Set custom HTTP response headers for PostgreSQL REST API endpoints. Configure Cache-Control, Content-Type, and custom headers.","head":[["meta",{"name":"keywords","content":"npgsqlrest response headers, custom http headers, cache control header, content type header, api response headers"}],["meta",{"property":"og:title","content":"NpgsqlRest Response Headers Annotation"}],["meta",{"property":"og:description","content":"Set custom HTTP response headers like Cache-Control and Content-Type."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/response-headers.md","filePath":"annotations/response-headers.md"}'),l={name:"annotations/response-headers.md"};function t(p,s,r,h,c,k){return i(),n("div",null,s[0]||(s[0]=[e("",38)]))}const m=a(l,[["render",t]]);export{d as __pageData,m as default};
diff --git a/assets/annotations_response-null-handling.md.BXujxmf9.js b/assets/annotations_response-null-handling.md.BXujxmf9.js
new file mode 100644
index 000000000..66c2717eb
--- /dev/null
+++ b/assets/annotations_response-null-handling.md.BXujxmf9.js
@@ -0,0 +1,13 @@
+import{_ as n,c as e,o as a,a5 as t}from"./chunks/framework.CgT1UzWm.js";const h=JSON.parse('{"title":"RESPONSE_NULL_HANDLING Annotation","titleTemplate":"NpgsqlRest","description":"Control how NULL results are returned in PostgreSQL REST API responses. Configure JSON null handling and empty responses.","frontmatter":{"outline":[2,3],"title":"RESPONSE_NULL_HANDLING Annotation","titleTemplate":"NpgsqlRest","description":"Control how NULL results are returned in PostgreSQL REST API responses. Configure JSON null handling and empty responses.","head":[["meta",{"name":"keywords","content":"npgsqlrest response null, null json response, empty response handling, postgresql null output, api null response"}],["meta",{"property":"og:title","content":"NpgsqlRest RESPONSE_NULL_HANDLING Annotation"}],["meta",{"property":"og:description","content":"Control how NULL results are returned in API responses."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/response-null-handling.md","filePath":"annotations/response-null-handling.md"}'),i={name:"annotations/response-null-handling.md"};function l(o,s,r,p,d,c){return a(),e("div",null,s[0]||(s[0]=[t(`
`,26)]))}const m=n(i,[["render",l]]);export{h as __pageData,m as default};
diff --git a/assets/annotations_response-null-handling.md.BXujxmf9.lean.js b/assets/annotations_response-null-handling.md.BXujxmf9.lean.js
new file mode 100644
index 000000000..d7fe713e6
--- /dev/null
+++ b/assets/annotations_response-null-handling.md.BXujxmf9.lean.js
@@ -0,0 +1 @@
+import{_ as n,c as e,o as a,a5 as t}from"./chunks/framework.CgT1UzWm.js";const h=JSON.parse('{"title":"RESPONSE_NULL_HANDLING Annotation","titleTemplate":"NpgsqlRest","description":"Control how NULL results are returned in PostgreSQL REST API responses. Configure JSON null handling and empty responses.","frontmatter":{"outline":[2,3],"title":"RESPONSE_NULL_HANDLING Annotation","titleTemplate":"NpgsqlRest","description":"Control how NULL results are returned in PostgreSQL REST API responses. Configure JSON null handling and empty responses.","head":[["meta",{"name":"keywords","content":"npgsqlrest response null, null json response, empty response handling, postgresql null output, api null response"}],["meta",{"property":"og:title","content":"NpgsqlRest RESPONSE_NULL_HANDLING Annotation"}],["meta",{"property":"og:description","content":"Control how NULL results are returned in API responses."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/response-null-handling.md","filePath":"annotations/response-null-handling.md"}'),i={name:"annotations/response-null-handling.md"};function l(o,s,r,p,d,c){return a(),e("div",null,s[0]||(s[0]=[t("",26)]))}const m=n(i,[["render",l]]);export{h as __pageData,m as default};
diff --git a/assets/annotations_result-name.md.oSFavaHs.js b/assets/annotations_result-name.md.oSFavaHs.js
new file mode 100644
index 000000000..b98b0bd2b
--- /dev/null
+++ b/assets/annotations_result-name.md.oSFavaHs.js
@@ -0,0 +1,37 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"RESULT_NAME Annotation","titleTemplate":"NpgsqlRest","description":"Rename result keys in multi-command SQL file endpoints. Replace default result1, result2 keys with meaningful names.","frontmatter":{"outline":[2,3],"title":"RESULT_NAME Annotation","titleTemplate":"NpgsqlRest","description":"Rename result keys in multi-command SQL file endpoints. Replace default result1, result2 keys with meaningful names.","head":[["meta",{"name":"keywords","content":"npgsqlrest result name, multi-command result, sql file result, rename result key, batch sql endpoint"}],["meta",{"property":"og:title","content":"NpgsqlRest RESULT_NAME Annotation"}],["meta",{"property":"og:description","content":"Rename result keys in multi-command SQL file endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/result-name.md","filePath":"annotations/result-name.md"}'),t={name:"annotations/result-name.md"};function l(h,s,p,k,r,d){return n(),a("div",null,s[0]||(s[0]=[e(`
Rename the default result keys (result1, result2, ...) in multi-command SQL file endpoints. This makes the response JSON more descriptive and easier to consume.
This annotation only applies to multi-command SQL file endpoints (files with multiple SQL statements separated by ;).
Commands without a @result annotation keep their default auto-generated key:
sql
sql
-- sql/process_order.sql
+-- HTTP POST
+-- @param $1 order_id
+-- @result validate
+select count(*) from orders where id = $1;
+update orders set status = 'processing' where id = $1;
+-- @result confirm
+select id, status from orders where id = $1;
1 2 3 4 5 6 7 8
POST /api/process-order with {"order_id": 42} returns:
-- Use aggressive retry for critical operations
+comment on function process_payment() is
+'HTTP POST
+@retry aggressive';
+
+-- Use minimal retry for fast queries
+comment on function quick_lookup() is
+'HTTP GET
+@retry minimal';
1 2 3 4 5 6 7 8 9
See Command Retry for complete configuration reference.
`,31)]))}const u=a(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_retry-strategy.md.DJkjr3eT.lean.js b/assets/annotations_retry-strategy.md.DJkjr3eT.lean.js
new file mode 100644
index 000000000..c1b925766
--- /dev/null
+++ b/assets/annotations_retry-strategy.md.DJkjr3eT.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"RETRY_STRATEGY Annotation","titleTemplate":"NpgsqlRest","description":"Assign retry strategies for handling transient PostgreSQL database failures. Configure automatic retries per endpoint.","frontmatter":{"outline":[2,3],"title":"RETRY_STRATEGY Annotation","titleTemplate":"NpgsqlRest","description":"Assign retry strategies for handling transient PostgreSQL database failures. Configure automatic retries per endpoint.","head":[["meta",{"name":"keywords","content":"npgsqlrest retry strategy, transient error retry, database failure handling, automatic retry api"}],["meta",{"property":"og:title","content":"NpgsqlRest RETRY_STRATEGY Annotation"}],["meta",{"property":"og:description","content":"Assign retry strategies for handling transient database failures."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/retry-strategy.md","filePath":"annotations/retry-strategy.md"}'),t={name:"annotations/retry-strategy.md"};function l(r,s,p,h,k,o){return n(),i("div",null,s[0]||(s[0]=[e("",31)]))}const u=a(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_returns.md.BXcLtPWm.js b/assets/annotations_returns.md.BXcLtPWm.js
new file mode 100644
index 000000000..38d479e92
--- /dev/null
+++ b/assets/annotations_returns.md.BXcLtPWm.js
@@ -0,0 +1,34 @@
+import{_ as i,c as e,o as a,a5 as t}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"RETURNS Annotation","titleTemplate":"NpgsqlRest","description":"Skip the PostgreSQL Describe step and resolve return columns from a composite type. Enables SQL files that use runtime-created temp tables.","frontmatter":{"outline":[2,3],"title":"RETURNS Annotation","titleTemplate":"NpgsqlRest","description":"Skip the PostgreSQL Describe step and resolve return columns from a composite type. Enables SQL files that use runtime-created temp tables.","head":[["meta",{"name":"keywords","content":"npgsqlrest returns annotation, composite type override, skip describe, temp table sql file, do block result"}],["meta",{"property":"og:title","content":"NpgsqlRest RETURNS Annotation"}],["meta",{"property":"og:description","content":"Skip the PostgreSQL Describe step and resolve return columns from a composite type."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/returns.md","filePath":"annotations/returns.md"}'),n={name:"annotations/returns.md"};function l(p,s,r,h,o,c){return a(),e("div",null,s[0]||(s[0]=[t(`
Skip the PostgreSQL Describe step for a statement and resolve return columns from a composite type instead. This is a positional annotation — it applies to the next statement below it.
Composite type name — schema-qualified (e.g., public.my_type) or unqualified (e.g., my_type). Columns resolved from the type definition.
Scalar type — any built-in PostgreSQL type (e.g., integer, text, boolean, jsonb). Declares a single-column result. Only the first column from the query is used at runtime.
void — no columns, no results.
This annotation skips the PostgreSQL Describe step entirely for the annotated statement. The statement's SQL is never sent to PostgreSQL during startup.
-- HTTP GET
+-- @param $1 val1 text
+-- @param $2 val2 integer
+begin;
+select set_config('app.val1', $1, true); -- @skip
+select set_config('app.val2', $2::text, true); -- @skip
+do $$ begin
+ create temp table _result on commit drop as
+ select current_setting('app.val1') as val1,
+ current_setting('app.val2')::int as val2,
+ true as active;
+end; $$;
+-- @returns my_result_type
+-- @result data
+-- @single
+select * from _result;
+end;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Where my_result_type is defined as:
sql
sql
create type my_result_type as (
+ val1 text,
+ val2 integer,
+ active boolean
+);
1 2 3 4 5
Without @returns, the select * from _result statement fails at startup because the temp table doesn't exist yet. With @returns my_result_type, the columns are resolved from the composite type definition in pg_catalog.
Use @returns void to skip Describe for statements that return no results:
sql
sql
-- HTTP POST
+-- @param $1 key text
+-- @param $2 value text
+-- @returns void
+select set_config($1, $2, false);
+-- @result data
+select current_setting($1, true) as result;
1 2 3 4 5 6 7
The first statement's Describe is skipped entirely. In multi-command files, it produces a rows-affected count in the response. For single-command files, it makes the endpoint void (returns 204 No Content).
The Describe step is skipped entirely for annotated statements — the SQL is never sent to PostgreSQL during startup
For composite types: the type must exist in the database at startup. If not found, an error is logged and the file is skipped or exits (depending on ErrorMode)
For void: the statement is treated as returning no columns (zero-column result)
No parameter type inference happens for the skipped statement — other statements in the same multi-command file provide parameter types
At runtime, the actual query result must match the declared type's column structure — mismatches may produce incorrect output
Can be combined with other positional annotations like @result, @single, @skip
@returns void vs @void
For single-command SQL files, @returns void has the same runtime effect as @void — both return 204 No Content. The difference: @returns voidskips the Describe step (the SQL is never sent to PostgreSQL at startup), while @void still runs Describe and only changes the runtime response. Use @returns void when the statement would fail Describe (e.g., references a temp table). Use @void when Describe succeeds but you don't want any response.
`,32)]))}const u=i(n,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_returns.md.BXcLtPWm.lean.js b/assets/annotations_returns.md.BXcLtPWm.lean.js
new file mode 100644
index 000000000..251ff956e
--- /dev/null
+++ b/assets/annotations_returns.md.BXcLtPWm.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as e,o as a,a5 as t}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"RETURNS Annotation","titleTemplate":"NpgsqlRest","description":"Skip the PostgreSQL Describe step and resolve return columns from a composite type. Enables SQL files that use runtime-created temp tables.","frontmatter":{"outline":[2,3],"title":"RETURNS Annotation","titleTemplate":"NpgsqlRest","description":"Skip the PostgreSQL Describe step and resolve return columns from a composite type. Enables SQL files that use runtime-created temp tables.","head":[["meta",{"name":"keywords","content":"npgsqlrest returns annotation, composite type override, skip describe, temp table sql file, do block result"}],["meta",{"property":"og:title","content":"NpgsqlRest RETURNS Annotation"}],["meta",{"property":"og:description","content":"Skip the PostgreSQL Describe step and resolve return columns from a composite type."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/returns.md","filePath":"annotations/returns.md"}'),n={name:"annotations/returns.md"};function l(p,s,r,h,o,c){return a(),e("div",null,s[0]||(s[0]=[t("",32)]))}const u=i(n,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_security-sensitive.md.iGNlRYXu.js b/assets/annotations_security-sensitive.md.iGNlRYXu.js
new file mode 100644
index 000000000..2251a6762
--- /dev/null
+++ b/assets/annotations_security-sensitive.md.iGNlRYXu.js
@@ -0,0 +1,42 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"SECURITY_SENSITIVE Annotation","titleTemplate":"NpgsqlRest","description":"Mark PostgreSQL REST API endpoints as security-sensitive. Obfuscate passwords and sensitive data in logs.","frontmatter":{"outline":[2,3],"title":"SECURITY_SENSITIVE Annotation","titleTemplate":"NpgsqlRest","description":"Mark PostgreSQL REST API endpoints as security-sensitive. Obfuscate passwords and sensitive data in logs.","head":[["meta",{"name":"keywords","content":"npgsqlrest security sensitive, obfuscate logs, password logging, sensitive data protection, secure logging"}],["meta",{"property":"og:title","content":"NpgsqlRest SECURITY_SENSITIVE Annotation"}],["meta",{"property":"og:description","content":"Mark endpoints as security-sensitive to obfuscate parameter values in logs."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/security-sensitive.md","filePath":"annotations/security-sensitive.md"}'),l={name:"annotations/security-sensitive.md"};function t(p,s,h,r,k,c){return n(),i("div",null,s[0]||(s[0]=[e(`
create function change_password(_old_password text, _new_password text)
+returns boolean
+language sql
+begin atomic;
+...;
+end;
+
+comment on function change_password(text, text) is
+'HTTP POST
+@authorize
+@sensitive';
1 2 3 4 5 6 7 8 9 10 11
Equivalent as a SQL file endpoint (sql/change-password.sql):
create function authenticate(_username text, _password text)
+returns json
+language sql
+begin atomic;
+...;
+end;
+
+comment on function authenticate(text, text) is
+'HTTP POST
+@login
+@sensitive';
`,20)]))}const g=a(l,[["render",t]]);export{d as __pageData,g as default};
diff --git a/assets/annotations_security-sensitive.md.iGNlRYXu.lean.js b/assets/annotations_security-sensitive.md.iGNlRYXu.lean.js
new file mode 100644
index 000000000..40b9a64b1
--- /dev/null
+++ b/assets/annotations_security-sensitive.md.iGNlRYXu.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse('{"title":"SECURITY_SENSITIVE Annotation","titleTemplate":"NpgsqlRest","description":"Mark PostgreSQL REST API endpoints as security-sensitive. Obfuscate passwords and sensitive data in logs.","frontmatter":{"outline":[2,3],"title":"SECURITY_SENSITIVE Annotation","titleTemplate":"NpgsqlRest","description":"Mark PostgreSQL REST API endpoints as security-sensitive. Obfuscate passwords and sensitive data in logs.","head":[["meta",{"name":"keywords","content":"npgsqlrest security sensitive, obfuscate logs, password logging, sensitive data protection, secure logging"}],["meta",{"property":"og:title","content":"NpgsqlRest SECURITY_SENSITIVE Annotation"}],["meta",{"property":"og:description","content":"Mark endpoints as security-sensitive to obfuscate parameter values in logs."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/security-sensitive.md","filePath":"annotations/security-sensitive.md"}'),l={name:"annotations/security-sensitive.md"};function t(p,s,h,r,k,c){return n(),i("div",null,s[0]||(s[0]=[e("",20)]))}const g=a(l,[["render",t]]);export{d as __pageData,g as default};
diff --git a/assets/annotations_separator.md.Bh3F0ZIY.js b/assets/annotations_separator.md.Bh3F0ZIY.js
new file mode 100644
index 000000000..526c82fbc
--- /dev/null
+++ b/assets/annotations_separator.md.Bh3F0ZIY.js
@@ -0,0 +1,13 @@
+import{_ as s,c as e,o as n,a5 as t}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"SEPARATOR Annotation","titleTemplate":"NpgsqlRest","description":"Set column separator for raw output mode in PostgreSQL REST APIs. Configure CSV delimiters and custom separators.","frontmatter":{"outline":[2,3],"title":"SEPARATOR Annotation","titleTemplate":"NpgsqlRest","description":"Set column separator for raw output mode in PostgreSQL REST APIs. Configure CSV delimiters and custom separators.","head":[["meta",{"name":"keywords","content":"npgsqlrest separator, csv delimiter, column separator, raw output format, custom delimiter"}],["meta",{"property":"og:title","content":"NpgsqlRest SEPARATOR Annotation"}],["meta",{"property":"og:description","content":"Set column separator for raw output mode and CSV generation."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/separator.md","filePath":"annotations/separator.md"}'),i={name:"annotations/separator.md"};function l(r,a,p,o,c,d){return n(),e("div",null,a[0]||(a[0]=[t(`
`,19)]))}const u=s(i,[["render",l]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_separator.md.Bh3F0ZIY.lean.js b/assets/annotations_separator.md.Bh3F0ZIY.lean.js
new file mode 100644
index 000000000..7923a086a
--- /dev/null
+++ b/assets/annotations_separator.md.Bh3F0ZIY.lean.js
@@ -0,0 +1 @@
+import{_ as s,c as e,o as n,a5 as t}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"SEPARATOR Annotation","titleTemplate":"NpgsqlRest","description":"Set column separator for raw output mode in PostgreSQL REST APIs. Configure CSV delimiters and custom separators.","frontmatter":{"outline":[2,3],"title":"SEPARATOR Annotation","titleTemplate":"NpgsqlRest","description":"Set column separator for raw output mode in PostgreSQL REST APIs. Configure CSV delimiters and custom separators.","head":[["meta",{"name":"keywords","content":"npgsqlrest separator, csv delimiter, column separator, raw output format, custom delimiter"}],["meta",{"property":"og:title","content":"NpgsqlRest SEPARATOR Annotation"}],["meta",{"property":"og:description","content":"Set column separator for raw output mode and CSV generation."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/separator.md","filePath":"annotations/separator.md"}'),i={name:"annotations/separator.md"};function l(r,a,p,o,c,d){return n(),e("div",null,a[0]||(a[0]=[t("",19)]))}const u=s(i,[["render",l]]);export{m as __pageData,u as default};
diff --git a/assets/annotations_single.md.6tuGsQhF.js b/assets/annotations_single.md.6tuGsQhF.js
new file mode 100644
index 000000000..99c89ba60
--- /dev/null
+++ b/assets/annotations_single.md.6tuGsQhF.js
@@ -0,0 +1,28 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"SINGLE Annotation","titleTemplate":"NpgsqlRest","description":"Return a single record as a JSON object instead of a JSON array. Unwrap single-row results for cleaner API responses.","frontmatter":{"outline":[2,3],"title":"SINGLE Annotation","titleTemplate":"NpgsqlRest","description":"Return a single record as a JSON object instead of a JSON array. Unwrap single-row results for cleaner API responses.","head":[["meta",{"name":"keywords","content":"npgsqlrest single record, json object response, single result api, unwrap json array, postgresql single row"}],["meta",{"property":"og:title","content":"NpgsqlRest SINGLE Annotation"}],["meta",{"property":"og:description","content":"Return a single record as a JSON object instead of a JSON array."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/single.md","filePath":"annotations/single.md"}'),l={name:"annotations/single.md"};function t(p,s,h,k,r,d){return n(),a("div",null,s[0]||(s[0]=[e(`
By default, all endpoints return results as a JSON array, even when only one row is returned. With the @single annotation, the result is returned as a plain JSON object.
create function get_user(_id int)
+returns table(id int, name text, email text)
+language sql
+begin atomic;
+select id, name, email from users where id = _id;
+end;
+
+comment on function get_user(int) is 'HTTP GET /users/{_id}
+@single';
In multi-command SQL files, @single is positional — it applies to the next statement below it:
sql
sql
-- sql/process_user.sql
+-- HTTP POST
+-- @param $1 id
+-- @single
+SELECT id, name FROM users WHERE id = $1;
+UPDATE orders SET status = 'done' WHERE id = $1;
+-- @single
+SELECT id, status FROM orders WHERE id = $1;
`,38)]))}const u=i(l,[["render",t]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_single.md.6tuGsQhF.lean.js b/assets/annotations_single.md.6tuGsQhF.lean.js
new file mode 100644
index 000000000..840a54493
--- /dev/null
+++ b/assets/annotations_single.md.6tuGsQhF.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"SINGLE Annotation","titleTemplate":"NpgsqlRest","description":"Return a single record as a JSON object instead of a JSON array. Unwrap single-row results for cleaner API responses.","frontmatter":{"outline":[2,3],"title":"SINGLE Annotation","titleTemplate":"NpgsqlRest","description":"Return a single record as a JSON object instead of a JSON array. Unwrap single-row results for cleaner API responses.","head":[["meta",{"name":"keywords","content":"npgsqlrest single record, json object response, single result api, unwrap json array, postgresql single row"}],["meta",{"property":"og:title","content":"NpgsqlRest SINGLE Annotation"}],["meta",{"property":"og:description","content":"Return a single record as a JSON object instead of a JSON array."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/single.md","filePath":"annotations/single.md"}'),l={name:"annotations/single.md"};function t(p,s,h,k,r,d){return n(),a("div",null,s[0]||(s[0]=[e("",38)]))}const u=i(l,[["render",t]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_skip.md.Dh_dVMzK.js b/assets/annotations_skip.md.Dh_dVMzK.js
new file mode 100644
index 000000000..1d620ac26
--- /dev/null
+++ b/assets/annotations_skip.md.Dh_dVMzK.js
@@ -0,0 +1,31 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"SKIP Annotation","titleTemplate":"NpgsqlRest","description":"Exclude commands from multi-command SQL file JSON responses while still executing them. Control which statements appear in the result.","frontmatter":{"outline":[2,3],"title":"SKIP Annotation","titleTemplate":"NpgsqlRest","description":"Exclude commands from multi-command SQL file JSON responses while still executing them. Control which statements appear in the result.","head":[["meta",{"name":"keywords","content":"npgsqlrest skip result, skip command, multi-command skip, sql file skip result, exclude result"}],["meta",{"property":"og:title","content":"NpgsqlRest SKIP Annotation"}],["meta",{"property":"og:description","content":"Exclude commands from multi-command SQL file JSON responses while still executing them."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/skip.md","filePath":"annotations/skip.md"}'),t={name:"annotations/skip.md"};function l(p,s,h,k,r,o){return n(),a("div",null,s[0]||(s[0]=[e(`
Mark a command in a multi-command SQL file to be executed but excluded from the JSON response. The statement runs against the database, but its result is not included in the response object and it does not consume a result number.
-- sql/process_and_notify.sql
+-- HTTP POST
+-- @param $1 user_id
+-- @skip
+do $$ begin perform pg_notify('user_updated', 'event'); end; $$;
+-- @result data
+SELECT id, name FROM users WHERE id = $1;
1 2 3 4 5 6 7
Result: {"data": [{"id": 1, "name": "Alice"}]}
The DO block executes (sending the notification) but does not appear in the response.
-- sql/cleanup.sql
+-- HTTP POST
+-- @param $1 user_id
+DELETE FROM sessions WHERE user_id = $1; -- @skip
+-- @result user
+SELECT id, name FROM users WHERE id = $1;
The SkipNonQueryCommands setting (default: true) in SqlFileSource configuration automatically excludes non-query commands from the response. This covers transaction control (BEGIN, COMMIT, ROLLBACK, etc.), session commands (SET, RESET), DO blocks, and other non-query statements.
With SkipNonQueryCommands enabled (the default), you typically do not need @skip for these common cases. The @skip annotation is useful for:
Explicitly skipping DML commands (INSERT, UPDATE, DELETE) whose rows-affected count you do not want in the response
Skipping statements when SkipNonQueryCommands is set to false
Making skip intent explicit in the SQL file for documentation purposes
RESULT_NAME - Rename result keys in multi-command files
SINGLE - Return single records as objects in multi-command results
SQL File Source - SQL file source configuration including SkipNonQueryCommands
`,30)]))}const u=i(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_skip.md.Dh_dVMzK.lean.js b/assets/annotations_skip.md.Dh_dVMzK.lean.js
new file mode 100644
index 000000000..95a6033d3
--- /dev/null
+++ b/assets/annotations_skip.md.Dh_dVMzK.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"SKIP Annotation","titleTemplate":"NpgsqlRest","description":"Exclude commands from multi-command SQL file JSON responses while still executing them. Control which statements appear in the result.","frontmatter":{"outline":[2,3],"title":"SKIP Annotation","titleTemplate":"NpgsqlRest","description":"Exclude commands from multi-command SQL file JSON responses while still executing them. Control which statements appear in the result.","head":[["meta",{"name":"keywords","content":"npgsqlrest skip result, skip command, multi-command skip, sql file skip result, exclude result"}],["meta",{"property":"og:title","content":"NpgsqlRest SKIP Annotation"}],["meta",{"property":"og:description","content":"Exclude commands from multi-command SQL file JSON responses while still executing them."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/skip.md","filePath":"annotations/skip.md"}'),t={name:"annotations/skip.md"};function l(p,s,h,k,r,o){return n(),a("div",null,s[0]||(s[0]=[e("",30)]))}const u=i(t,[["render",l]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_sse-events-level.md.BzejI_6s.js b/assets/annotations_sse-events-level.md.BzejI_6s.js
new file mode 100644
index 000000000..145ec061b
--- /dev/null
+++ b/assets/annotations_sse-events-level.md.BzejI_6s.js
@@ -0,0 +1,11 @@
+import{_ as s,c as a,o as n,a5 as t}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"SSE_EVENTS_LEVEL Annotation","titleTemplate":"NpgsqlRest","description":"Set minimum PostgreSQL notice level for Server-Sent Events. Filter SSE messages by severity (INFO, WARNING, ERROR).","frontmatter":{"outline":[2,3],"title":"SSE_EVENTS_LEVEL Annotation","titleTemplate":"NpgsqlRest","description":"Set minimum PostgreSQL notice level for Server-Sent Events. Filter SSE messages by severity (INFO, WARNING, ERROR).","head":[["meta",{"name":"keywords","content":"npgsqlrest sse level, server sent events filter, notice level sse, postgresql notice events, sse severity filter"}],["meta",{"property":"og:title","content":"NpgsqlRest SSE_EVENTS_LEVEL Annotation"}],["meta",{"property":"og:description","content":"Set minimum PostgreSQL notice level for Server-Sent Events filtering."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/sse-events-level.md","filePath":"annotations/sse-events-level.md"}'),l={name:"annotations/sse-events-level.md"};function i(o,e,r,p,c,d){return n(),a("div",null,e[0]||(e[0]=[t(`
Control who receives Server-Sent Events from this endpoint.
Why scope matters
Every event flows through the single global broadcaster, and every connected EventSource reads from the same stream. Scope is the per-event filter that decides which subscribers actually have the event written to their response. Without scope (or with all), every subscriber sees every event from this endpoint.
comment on function team_task() is
+'HTTP POST
+@sse /team-events
+@sse_scope matching';
1 2 3 4
Equivalent as a SQL file endpoint (sql/team-task.sql):
sql
sql
/*
+HTTP POST
+@sse /team-events
+@sse_scope matching
+*/
+do $$ begin
+ raise info 'team task progress...';
+end $$;
1 2 3 4 5 6 7 8
Events are sent to clients with matching security context:
If the endpoint requires authorization, all authorized sessions receive events
If the endpoint requires specific roles, user names, or user IDs, only sessions matching those values receive events (checks DefaultRoleClaimType, DefaultNameClaimType, and DefaultUserIdClaimType)
The scope can also be set dynamically at runtime using the HINT parameter of PostgreSQL RAISE statements. This allows different events within the same function to have different scopes:
sql
sql
create function process_with_notifications()
+returns void
+language plpgsql
+as $$
+begin
+ -- This event goes to all clients
+ raise notice 'System maintenance starting...' using hint = 'all';
+
+ -- This event only goes to admins
+ raise notice 'Admin: detailed system stats...' using hint = 'authorize admin';
+
+ -- This event goes to specific users
+ raise notice 'Your task is complete' using hint = 'authorize john.doe, jane.smith';
+
+ -- This event uses the default scope from annotation
+ raise notice 'General progress update...';
+end;
+$$;
+
+comment on function process_with_notifications() is
+'HTTP POST
+@sse /process-events
+@sse_scope matching';
`,43)]))}const u=a(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_sse-events-scope.md.DSBEdrmZ.lean.js b/assets/annotations_sse-events-scope.md.DSBEdrmZ.lean.js
new file mode 100644
index 000000000..c70408251
--- /dev/null
+++ b/assets/annotations_sse-events-scope.md.DSBEdrmZ.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as e,o as i,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"SSE_EVENTS_SCOPE Annotation","titleTemplate":"NpgsqlRest","description":"Control Server-Sent Events broadcast scope. Configure SSE message delivery to individual connections or all listeners.","frontmatter":{"outline":[2,3],"title":"SSE_EVENTS_SCOPE Annotation","titleTemplate":"NpgsqlRest","description":"Control Server-Sent Events broadcast scope. Configure SSE message delivery to individual connections or all listeners.","head":[["meta",{"name":"keywords","content":"npgsqlrest sse scope, server sent events broadcast, sse message scope, event broadcasting, real-time scope"}],["meta",{"property":"og:title","content":"NpgsqlRest SSE_EVENTS_SCOPE Annotation"}],["meta",{"property":"og:description","content":"Control Server-Sent Events broadcast scope for message delivery."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/sse-events-scope.md","filePath":"annotations/sse-events-scope.md"}'),t={name:"annotations/sse-events-scope.md"};function l(p,s,r,c,o,h){return i(),e("div",null,s[0]||(s[0]=[n("",43)]))}const u=a(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_sse.md.VtYFy1W4.js b/assets/annotations_sse.md.VtYFy1W4.js
new file mode 100644
index 000000000..ef75ba84f
--- /dev/null
+++ b/assets/annotations_sse.md.VtYFy1W4.js
@@ -0,0 +1,110 @@
+import{_ as i,c as e,o as a,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"SSE Annotation","titleTemplate":"NpgsqlRest","description":"Enable Server-Sent Events streaming for PostgreSQL REST APIs. Create real-time endpoints with SSE for live data updates.","frontmatter":{"outline":[2,3],"title":"SSE Annotation","titleTemplate":"NpgsqlRest","description":"Enable Server-Sent Events streaming for PostgreSQL REST APIs. Create real-time endpoints with SSE for live data updates.","head":[["meta",{"name":"keywords","content":"npgsqlrest sse, server sent events, real-time api, streaming endpoint, postgresql streaming, live updates"}],["meta",{"property":"og:title","content":"NpgsqlRest SSE Annotation"}],["meta",{"property":"og:description","content":"Enable Server-Sent Events streaming for real-time data updates from PostgreSQL."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/sse.md","filePath":"annotations/sse.md"}'),t={name:"annotations/sse.md"};function l(p,s,r,h,o,c){return a(),e("div",null,s[0]||(s[0]=[n(`
@sse is the only SSE annotation that affects runtime behavior on its own, and it does two independent things:
Registers a connection URL at <endpoint-path>/<level> — clients open an EventSource against it to listen.
Enables broadcasting from this procedure — RAISE statements inside this procedure's body forward their notices to the SSE broadcaster.
A procedure without @sse can RAISE whatever it wants — those notices never reach SSE subscribers.
mermaid
flowchart LR
+ A["Procedure A<br/>(@sse)"] -->|RAISE| BC[("Global Broadcaster<br/>(process-wide)")]
+ B["Procedure B<br/>(@sse)"] -->|RAISE| BC
+ X["Procedure X<br/>(no @sse)"] -. RAISE not broadcast .-> Drop((("✗")))
+ BC --> S1["Subscriber on<br/>/api/a/info"]
+ BC --> S2["Subscriber on<br/>/api/b/info"]
+ BC --> S3["Subscriber on<br/>/api/c/info"]
1 2 3 4 5 6 7
There is one process-wide broadcaster. Every connected EventSource reads from the same stream regardless of which /info URL it opened — the URL is just an entry point, not a topic name. Once a connection is established, the path it came in through is no longer used for routing.
Per-event filtering decides which subscribers actually receive each event:
The originating endpoint's scope (matching / authorize / all).
An optional RAISE ... USING HINT override, parsed as <scope> [value1] [value2] ....
Optional execution-ID correlation via the X-NpgsqlRest-ID header.
Common pitfall
The URL is not a topic. Subscribers on /api/foo/info and /api/bar/info do not see different streams — they see the same stream. If you want events from procedure B to reach clients connected to procedure A's URL, both procedures must have @sse: A so clients can connect, B so its RAISEs broadcast. See the cross-procedure pattern below.
When the path is omitted (@sse without arguments), the SSE path segment defaults to the notice level name in lowercase:
Level
SSE Path Segment
INFO (default)
info
NOTICE
notice
WARNING
warning
Example: If your endpoint path is /api/my-function and you use @sse without arguments, the SSE endpoint will be at /api/my-function/info (since INFO is the default level).
SSE events are sent only for the exact level specified, not for "this level and above".
When you set the level to NOTICE, only RAISE NOTICE statements will generate SSE events. RAISE INFO and RAISE WARNING statements will not generate SSE events for that endpoint.
Configured Level
RAISE INFO
RAISE NOTICE
RAISE WARNING
INFO
Sent
Not sent
Not sent
NOTICE
Not sent
Sent
Not sent
WARNING
Not sent
Not sent
Sent
If you need events from multiple levels, create separate SSE endpoints for each level.
create function long_running_process(_id int)
+returns void
+language plpgsql
+as $$
+begin
+ raise info 'Starting process...';
+ -- do work
+ raise info 'Progress: 50%%';
+ -- more work
+ raise info 'Complete!';
+end;
+$$;
+
+comment on function long_running_process(int) is
+'HTTP POST
+@sse events';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
If the endpoint is at /api/long-running-process, the SSE endpoint will be at /api/long-running-process/events. It receives RAISE INFO messages (the default level).
/*
+HTTP POST
+@sse events
+@param $1 _id int
+@void
+*/
+do $$
+begin
+ raise info 'Starting process...';
+ -- do work
+ raise info 'Progress: 50%%';
+ -- more work
+ raise info 'Complete!';
+end;
+$$;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
For files placed under the configured Path with the default CommentsMode, the leading comment block carries the same annotations as a function comment.
The single-procedure case (one procedure both broadcasts and exposes the URL) is straightforward. But sometimes the procedure that triggers an event isn't the one that should be the client subscription URL. Common reasons:
The trigger has restrictive authorization (e.g. manager only) but listeners are regular users.
Multiple triggers feed one logical stream — having a stable subscribe URL keeps the client code simple as new triggers are added.
The semantic name of the trigger (update_user_roles) reads wrong as a client-facing URL.
The pattern: split publish from subscribe across two procedures, each with @sse. Annotate the trigger so its RAISEs broadcast; annotate a no-op procedure so its URL is the stable client entry point. Use RAISE ... USING HINT inside the trigger to scope events per user.
mermaid
flowchart LR
+ Client["Browser<br/>EventSource"] -->|opens connection| SubURL["/api/user-events-subscribe/info"]
+ SubURL -.->|registers via @sse| SubProc["user_events_subscribe<br/>(no-op, @sse)"]
+ Manager["Manager<br/>browser"] -->|POST| EmitURL["/api/update-user-roles"]
+ EmitURL --> EmitProc["update_user_roles<br/>(@sse)"]
+ EmitProc -->|RAISE INFO<br/>using hint| BC[("Global<br/>Broadcaster")]
+ BC -->|filtered by hint| Client
-- Subscribe URL: a no-op procedure whose @sse only registers the URL.
+-- Annotated 'authorize' so any authenticated user can connect.
+create procedure user_events_subscribe()
+language plpgsql as $$ begin perform 1; end; $$;
+
+comment on procedure user_events_subscribe() is '
+HTTP GET
+@authorize
+@sse
+@sse_scope authorize';
+
+-- Emitter: the procedure that actually causes events. @sse is required
+-- here too — without it, the RAISE never reaches the broadcaster.
+create procedure update_user_roles(_target_user_id int, _roles text[])
+language plpgsql as $$
+begin
+ -- ... do the role update ...
+ raise info 'roles updated'
+ using hint = format('authorize %s', _target_user_id);
+end;
+$$;
+
+comment on procedure update_user_roles(int, text[]) is '
+HTTP POST
+@authorize manager
+@sse
+@sse_scope authorize';
const eventSource = new EventSource('/api/user-events-subscribe/info');
+
+eventSource.onmessage = () => {
+ // ... handle the event ...
+};
1 2 3 4 5
Clients open EventSource once against /api/user-events-subscribe/info. When update_user_roles runs, its RAISE flows through the global broadcaster, every subscriber receives it, and the per-event hint (authorize <target_user_id>) ensures only the affected user's connection writes the data line. The fact that the event came from a different URL than the one the client subscribed to is invisible to both sides — they share the broadcaster.
The @sse on update_user_roles is what enables broadcasting; the @sse on user_events_subscribe is what gives clients a stable, semantically meaningful URL to open. They serve different purposes despite using the same annotation.
Subscribes to PostgreSQL notices on the connection during the procedure's execution.
Filters by the configured level (only RAISE statements matching that level are forwarded).
Pushes matching notices to the global broadcaster, tagged with the originating endpoint's metadata and the optional X-NpgsqlRest-ID header for execution-ID correlation.
Procedures without @sse skip this entire path — their notices are not visible to any subscriber.
Registers <endpoint-path>/<level> as an SSE connection URL (or the custom path you specified).
Connections to this URL are pure listeners — they never invoke the procedure body.
Each connection iterates the broadcaster's stream and decides per-event whether to write to the response, based on the originating endpoint's scope and any HINT override.
Because the URL is a connection point and not a topic, subscribers on different @sse URLs see the same stream. Use the URL primarily to give clients a stable, meaningful connection address and to scope which roles can subscribe (via the procedure's regular authorization).
`,80)]))}const u=i(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_sse.md.VtYFy1W4.lean.js b/assets/annotations_sse.md.VtYFy1W4.lean.js
new file mode 100644
index 000000000..e66810d1d
--- /dev/null
+++ b/assets/annotations_sse.md.VtYFy1W4.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as e,o as a,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"SSE Annotation","titleTemplate":"NpgsqlRest","description":"Enable Server-Sent Events streaming for PostgreSQL REST APIs. Create real-time endpoints with SSE for live data updates.","frontmatter":{"outline":[2,3],"title":"SSE Annotation","titleTemplate":"NpgsqlRest","description":"Enable Server-Sent Events streaming for PostgreSQL REST APIs. Create real-time endpoints with SSE for live data updates.","head":[["meta",{"name":"keywords","content":"npgsqlrest sse, server sent events, real-time api, streaming endpoint, postgresql streaming, live updates"}],["meta",{"property":"og:title","content":"NpgsqlRest SSE Annotation"}],["meta",{"property":"og:description","content":"Enable Server-Sent Events streaming for real-time data updates from PostgreSQL."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/sse.md","filePath":"annotations/sse.md"}'),t={name:"annotations/sse.md"};function l(p,s,r,h,o,c){return a(),e("div",null,s[0]||(s[0]=[n("",80)]))}const u=i(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_table-format.md.BKXSdBmi.js b/assets/annotations_table-format.md.BKXSdBmi.js
new file mode 100644
index 000000000..2fa961c4c
--- /dev/null
+++ b/assets/annotations_table-format.md.BKXSdBmi.js
@@ -0,0 +1,43 @@
+import{_ as a,c as e,o as i,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"TABLE_FORMAT Annotation","titleTemplate":"NpgsqlRest","description":"Render PostgreSQL function results as HTML tables or Excel spreadsheet downloads instead of JSON. Per-endpoint table format control with dynamic placeholders.","frontmatter":{"outline":[2,3],"title":"TABLE_FORMAT Annotation","titleTemplate":"NpgsqlRest","description":"Render PostgreSQL function results as HTML tables or Excel spreadsheet downloads instead of JSON. Per-endpoint table format control with dynamic placeholders.","head":[["meta",{"name":"keywords","content":"npgsqlrest table format, html table rendering, excel download api, spreadsheet export, table_format annotation"}],["meta",{"property":"og:title","content":"NpgsqlRest TABLE_FORMAT Annotation"}],["meta",{"property":"og:description","content":"Render function results as HTML tables or Excel downloads with per-endpoint annotation control."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/table-format.md","filePath":"annotations/table-format.md"}'),t={name:"annotations/table-format.md"};function l(p,s,r,h,o,c){return i(),e("div",null,s[0]||(s[0]=[n(`
Control how function results (from routines returning SETOF or TABLE) are rendered. Instead of JSON, results can be rendered as HTML tables or Excel spreadsheet downloads.
Applies to Set-Returning Functions Only
Table format rendering only applies to routines that return SETOF or TABLE results. Scalar-returning functions are not affected.
Requires Configuration
Table format rendering must be enabled in the Table Format Options configuration (TableFormatOptions.Enabled = true).
Sets the table format renderer for the endpoint. Values: html (render as HTML table), excel (render as .xlsx download). If the value is not a recognized format, a warning is logged and the endpoint falls back to the default JSON response.
excel_file_name
Sets the download filename for Excel table format output. Only applies when table_format is excel. If omitted, defaults to the routine name.
excel_sheet
Sets the worksheet name for Excel table format output. Only applies when table_format is excel. If omitted, defaults to the routine name (max 31 characters).
create function get_report()
+returns table (id int, name text, amount numeric)
+language sql
+begin atomic;
+ select * from reports;
+end;
+
+comment on function get_report() is '
+HTTP GET
+@table_format = html
+';
1 2 3 4 5 6 7 8 9 10 11
Equivalent as a SQL file endpoint (sql/get-report.sql):
sql
sql
/*
+HTTP GET
+@table_format = html
+*/
+select id, name, amount from reports;
When called with ?format=html, renders an HTML table. When called with ?format=excel&excelFileName=report.xlsx, returns an Excel download.
Use with tsclient_url_only
Table format endpoints are typically consumed via browser navigation (opening a URL directly), not via fetch. Use @tsclient_url_only = true to generate only the URL builder in the TypeScript client.
`,27)]))}const m=a(t,[["render",l]]);export{k as __pageData,m as default};
diff --git a/assets/annotations_table-format.md.BKXSdBmi.lean.js b/assets/annotations_table-format.md.BKXSdBmi.lean.js
new file mode 100644
index 000000000..a1a31cdae
--- /dev/null
+++ b/assets/annotations_table-format.md.BKXSdBmi.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as e,o as i,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"TABLE_FORMAT Annotation","titleTemplate":"NpgsqlRest","description":"Render PostgreSQL function results as HTML tables or Excel spreadsheet downloads instead of JSON. Per-endpoint table format control with dynamic placeholders.","frontmatter":{"outline":[2,3],"title":"TABLE_FORMAT Annotation","titleTemplate":"NpgsqlRest","description":"Render PostgreSQL function results as HTML tables or Excel spreadsheet downloads instead of JSON. Per-endpoint table format control with dynamic placeholders.","head":[["meta",{"name":"keywords","content":"npgsqlrest table format, html table rendering, excel download api, spreadsheet export, table_format annotation"}],["meta",{"property":"og:title","content":"NpgsqlRest TABLE_FORMAT Annotation"}],["meta",{"property":"og:description","content":"Render function results as HTML tables or Excel downloads with per-endpoint annotation control."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/table-format.md","filePath":"annotations/table-format.md"}'),t={name:"annotations/table-format.md"};function l(p,s,r,h,o,c){return i(),e("div",null,s[0]||(s[0]=[n("",27)]))}const m=a(t,[["render",l]]);export{k as __pageData,m as default};
diff --git a/assets/annotations_tags.md.DmTy6McN.js b/assets/annotations_tags.md.DmTy6McN.js
new file mode 100644
index 000000000..181c482b0
--- /dev/null
+++ b/assets/annotations_tags.md.DmTy6McN.js
@@ -0,0 +1,4 @@
+import{_ as t,c as a,o,a5 as n}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"TAGS Annotation","titleTemplate":"NpgsqlRest","description":"Apply annotations conditionally based on routine volatility tags.","frontmatter":{"outline":[2,3],"title":"TAGS Annotation","titleTemplate":"NpgsqlRest","description":"Apply annotations conditionally based on routine volatility tags.","head":[["meta",{"name":"keywords","content":"npgsqlrest tags, conditional annotations, for keyword, volatility scoping"}],["meta",{"property":"og:title","content":"NpgsqlRest TAGS Annotation"}],["meta",{"property":"og:description","content":"Apply annotations conditionally based on routine volatility tags."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/tags.md","filePath":"annotations/tags.md"}'),s={name:"annotations/tags.md"};function i(l,e,d,c,r,p){return o(),a("div",null,e[0]||(e[0]=[n(`
for, tags, tag (no @ prefix needed; @for and @tags also work)
Apply subsequent annotations only when the routine matches a specific volatility or routine-type tag.
Rarely needed
Most projects never use this. Reach for it only when a single comment needs to behave differently depending on the function's volatility — and even then, putting the annotations directly on the specific function is usually clearer.
Annotations following a for line apply only when the routine matches at least one of the listed tags. The scope ends at the next for line or at the end of the comment.
comment on function calculate_hash(_data text) is '
+HTTP GET
+for immutable
+@cached';
1 2 3 4
If the function is later changed to STABLE or VOLATILE, the @cached annotation no longer applies — no other comment changes needed. This is the one pattern where for carries its weight.
DISABLED — hide an endpoint, optionally scoped by tag
ENABLED — re-enable an endpoint, optionally scoped by tag
`,18)]))}const m=t(s,[["render",i]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_tags.md.DmTy6McN.lean.js b/assets/annotations_tags.md.DmTy6McN.lean.js
new file mode 100644
index 000000000..46361977f
--- /dev/null
+++ b/assets/annotations_tags.md.DmTy6McN.lean.js
@@ -0,0 +1 @@
+import{_ as t,c as a,o,a5 as n}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"TAGS Annotation","titleTemplate":"NpgsqlRest","description":"Apply annotations conditionally based on routine volatility tags.","frontmatter":{"outline":[2,3],"title":"TAGS Annotation","titleTemplate":"NpgsqlRest","description":"Apply annotations conditionally based on routine volatility tags.","head":[["meta",{"name":"keywords","content":"npgsqlrest tags, conditional annotations, for keyword, volatility scoping"}],["meta",{"property":"og:title","content":"NpgsqlRest TAGS Annotation"}],["meta",{"property":"og:description","content":"Apply annotations conditionally based on routine volatility tags."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/tags.md","filePath":"annotations/tags.md"}'),s={name:"annotations/tags.md"};function i(l,e,d,c,r,p){return o(),a("div",null,e[0]||(e[0]=[n("",18)]))}const m=t(s,[["render",i]]);export{u as __pageData,m as default};
diff --git a/assets/annotations_test-claim.md.B8Axvirh.js b/assets/annotations_test-claim.md.B8Axvirh.js
new file mode 100644
index 000000000..d6060eed5
--- /dev/null
+++ b/assets/annotations_test-claim.md.B8Axvirh.js
@@ -0,0 +1,26 @@
+import{_ as i,c as a,o as e,a5 as n}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse(`{"title":"TEST @claim Directive","titleTemplate":"NpgsqlRest","description":"Set the acting principal's claims for an in-process endpoint call inside a SQL test file HTTP block. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @claim Directive","titleTemplate":"NpgsqlRest","description":"Set the acting principal's claims for an in-process endpoint call inside a SQL test file HTTP block. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test claim, test authentication, claims principal, authorized endpoint testing"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @claim Directive"}],["meta",{"property":"og:description","content":"Set the acting principal's claims for an in-process endpoint call in a SQL test file."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-claim.md","filePath":"annotations/test-claim.md"}`),t={name:"annotations/test-claim.md"};function l(p,s,r,c,h,o){return e(),a("div",null,s[0]||(s[0]=[n(`
Repeatable — including the same claim type twice (two roles claims above), exactly like a real multi-valued principal.
Any # @claim makes the request authenticated; a block with no# @claim is anonymous — an @authorize endpoint returns 401.
Role checks (@authorize roles ...) and claim-to-parameter bindings (@user_parameters, ParameterNameClaimsMapping) run exactly as in production — the directive injects the principal, everything downstream is the real authorization path.
// @claim is accepted as an alternative to # @claim.
@login/@logout endpoints are rejected in test mode (they manipulate real authentication schemes that don't exist in-process). Inject the principal directly instead — it is both faster and lets a test act as any user:
sql
sql
/*
+POST /api/admin/delete-user
+Content-Type: application/json
+# @claim user_id=1
+# @claim roles=admin
+
+{"id": 42}
+*/
+select status = 200, 'admin can delete' from _response;
+
+/*
+POST /api/admin/delete-user
+Content-Type: application/json
+# @claim user_id=2
+# @claim roles=viewer
+
+{"id": 42}
+*/
+-- second block → second response table (_response_1, _response_2)
+select status = 403, 'viewer cannot delete' from _response_2;
`,11)]))}const m=i(t,[["render",l]]);export{d as __pageData,m as default};
diff --git a/assets/annotations_test-claim.md.B8Axvirh.lean.js b/assets/annotations_test-claim.md.B8Axvirh.lean.js
new file mode 100644
index 000000000..e56461b72
--- /dev/null
+++ b/assets/annotations_test-claim.md.B8Axvirh.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as e,a5 as n}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse(`{"title":"TEST @claim Directive","titleTemplate":"NpgsqlRest","description":"Set the acting principal's claims for an in-process endpoint call inside a SQL test file HTTP block. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @claim Directive","titleTemplate":"NpgsqlRest","description":"Set the acting principal's claims for an in-process endpoint call inside a SQL test file HTTP block. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test claim, test authentication, claims principal, authorized endpoint testing"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @claim Directive"}],["meta",{"property":"og:description","content":"Set the acting principal's claims for an in-process endpoint call in a SQL test file."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-claim.md","filePath":"annotations/test-claim.md"}`),t={name:"annotations/test-claim.md"};function l(p,s,r,c,h,o){return e(),a("div",null,s[0]||(s[0]=[n("",11)]))}const m=i(t,[["render",l]]);export{d as __pageData,m as default};
diff --git a/assets/annotations_test-connection.md.CBXd7WXg.js b/assets/annotations_test-connection.md.CBXd7WXg.js
new file mode 100644
index 000000000..6c2a950db
--- /dev/null
+++ b/assets/annotations_test-connection.md.CBXd7WXg.js
@@ -0,0 +1,19 @@
+import{_ as n,c as e,o as t,a5 as i}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"TEST @connection Annotation","titleTemplate":"NpgsqlRest","description":"Run an individual SQL test file on a different named connection. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @connection Annotation","titleTemplate":"NpgsqlRest","description":"Run an individual SQL test file on a different named connection. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test connection, per-file connection, test isolation, isolated test database"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @connection Annotation"}],["meta",{"property":"og:description","content":"Run an individual SQL test file on a different named connection."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-connection.md","filePath":"annotations/test-connection.md"}'),a={name:"annotations/test-connection.md"};function l(o,s,p,r,c,h){return t(),e("div",null,s[0]||(s[0]=[i(`
This annotation applies only to test files run by the SQL test runner (npgsqlrest --test). It is distinct from the endpoint CONNECTION annotation, which selects a connection for a routine endpoint.
Run this test file on a named ConnectionStrings entry instead of the test runner's default connection (TestRunner.ConnectionName or the app's main connection).
Placed in the file's header — the leading -- line comments before the first SQL statement or HTTP block:
sql
sql
-- @connection Name
1
The whole file — its SQL statements and the endpoints invoked by its HTTP blocks — runs on a non-pooled connection built from that entry. This is the key to perfect per-test isolation: point the file at a database that its own @setup step just created.
Sequences are the classic motivation: nextval() is non-transactional (it sticks even through rollback), so on a shared test database a generated id depends on which other tests ran first. In a private clone the id is deterministic.
The endpoint pipeline still type-checks (Describe) against the run-level test connection at startup; @connection switches the execution connection for this file. The databases must therefore be structurally compatible — which they are by construction when both are created from the same template or migrations.
{rnd} tokens in the connection string resolve once per run; use indexed tokens ({rnd5_1}, {rnd5_2}) when several files each need their own database name.
Testing Guide — the template-database isolation scenario
`,17)]))}const u=n(a,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_test-connection.md.CBXd7WXg.lean.js b/assets/annotations_test-connection.md.CBXd7WXg.lean.js
new file mode 100644
index 000000000..11d89ea4b
--- /dev/null
+++ b/assets/annotations_test-connection.md.CBXd7WXg.lean.js
@@ -0,0 +1 @@
+import{_ as n,c as e,o as t,a5 as i}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"TEST @connection Annotation","titleTemplate":"NpgsqlRest","description":"Run an individual SQL test file on a different named connection. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @connection Annotation","titleTemplate":"NpgsqlRest","description":"Run an individual SQL test file on a different named connection. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test connection, per-file connection, test isolation, isolated test database"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @connection Annotation"}],["meta",{"property":"og:description","content":"Run an individual SQL test file on a different named connection."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-connection.md","filePath":"annotations/test-connection.md"}'),a={name:"annotations/test-connection.md"};function l(o,s,p,r,c,h){return t(),e("div",null,s[0]||(s[0]=[i("",17)]))}const u=n(a,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_test-response.md.BIQYW_7j.js b/assets/annotations_test-response.md.BIQYW_7j.js
new file mode 100644
index 000000000..37abc2bff
--- /dev/null
+++ b/assets/annotations_test-response.md.BIQYW_7j.js
@@ -0,0 +1,9 @@
+import{_ as e,c as t,o as a,a5 as i}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse(`{"title":"TEST @response Directive","titleTemplate":"NpgsqlRest","description":"Name the temp table that captures an HTTP block's response in a SQL test file. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @response Directive","titleTemplate":"NpgsqlRest","description":"Name the temp table that captures an HTTP block's response in a SQL test file. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test response, response temp table, response capture, sql test assertions"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @response Directive"}],["meta",{"property":"og:description","content":"Name the temp table that captures an HTTP block's response in a SQL test file."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-response.md","filePath":"annotations/test-response.md"}`),n={name:"annotations/test-response.md"};function l(o,s,r,p,h,c){return a(),t("div",null,s[0]||(s[0]=[i(`
Each block's table is created fresh (no IF NOT EXISTS): reusing a name — two blocks both saying # @response x, or a name colliding with the default — fails the test loudly rather than silently overwriting.
Named tables make multi-call tests readable: login_result, created, after_delete beat _response_1..3.
// @response is accepted as an alternative to # @response.
`,14)]))}const u=e(n,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_test-response.md.BIQYW_7j.lean.js b/assets/annotations_test-response.md.BIQYW_7j.lean.js
new file mode 100644
index 000000000..dc924c783
--- /dev/null
+++ b/assets/annotations_test-response.md.BIQYW_7j.lean.js
@@ -0,0 +1 @@
+import{_ as e,c as t,o as a,a5 as i}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse(`{"title":"TEST @response Directive","titleTemplate":"NpgsqlRest","description":"Name the temp table that captures an HTTP block's response in a SQL test file. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @response Directive","titleTemplate":"NpgsqlRest","description":"Name the temp table that captures an HTTP block's response in a SQL test file. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test response, response temp table, response capture, sql test assertions"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @response Directive"}],["meta",{"property":"og:description","content":"Name the temp table that captures an HTTP block's response in a SQL test file."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-response.md","filePath":"annotations/test-response.md"}`),n={name:"annotations/test-response.md"};function l(o,s,r,p,h,c){return a(),t("div",null,s[0]||(s[0]=[i("",14)]))}const u=e(n,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_test-setup.md.CEjyi1f2.js b/assets/annotations_test-setup.md.CEjyi1f2.js
new file mode 100644
index 000000000..2a8479b3f
--- /dev/null
+++ b/assets/annotations_test-setup.md.CEjyi1f2.js
@@ -0,0 +1,24 @@
+import{_ as i,c as e,o as a,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"TEST @setup Annotation","titleTemplate":"NpgsqlRest","description":"Run named setup steps before an individual SQL test file. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @setup Annotation","titleTemplate":"NpgsqlRest","description":"Run named setup steps before an individual SQL test file. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test setup, per-file setup, test fixtures, sql test runner annotations"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @setup Annotation"}],["meta",{"property":"og:description","content":"Run named setup steps before an individual SQL test file."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-setup.md","filePath":"annotations/test-setup.md"}'),t={name:"annotations/test-setup.md"};function l(p,s,r,o,h,d){return a(),e("div",null,s[0]||(s[0]=[n(`
This annotation applies only to test files run by the SQL test runner (npgsqlrest --test). It has no meaning in endpoint SQL files or routine comments.
Run one or more named steps (from the TestRunner.Steps registry) before this test file executes.
Placed in the file's header — the leading -- line comments before the first SQL statement or HTTP block:
sql
sql
-- @setup StepName [StepName ...]
1
Names may be whitespace- or comma-separated: -- @setup CreateDb SeedData and -- @setup CreateDb, SeedData are equivalent.
The annotation is repeatable; all listed steps run in the order written.
Every name must exist in the TestRunner.Steps registry — an unknown name is a loud error, not a silent skip.
A step with "Enabled": false is the one sanctioned skip: it is ignored wherever referenced (logged at debug level) — the default configuration ships disabled example steps to flip on instead of typing.
-- @setup CreateIsolatedDb
+-- @teardown DropIsolatedDb
+-- @connection Isolated
+
+/*
+POST /api/create-user
+Content-Type: application/json
+
+{"name": "Ada"}
+*/
+select status = 200, 'user created in the isolated clone' from _response;
1 2 3 4 5 6 7 8 9 10 11
The step runs once, immediately before this file (after the run-level Setup). Combined with -- @teardown and -- @connection, this gives a single test file its own private database.
The header ends at the first SQL statement or HTTP block. An included file (\\i/\\ir) that contains only comments (an annotation profile) continues the header — its annotations count as if written in-place — so a shared profile can carry @setup/@teardown/@connection/@tag for many test files.
Watch the prose
Everything after the step names on the line is treated as more step names. Write explanatory text on its own comment line, not after the names.
`,18)]))}const u=i(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_test-setup.md.CEjyi1f2.lean.js b/assets/annotations_test-setup.md.CEjyi1f2.lean.js
new file mode 100644
index 000000000..5204fd93c
--- /dev/null
+++ b/assets/annotations_test-setup.md.CEjyi1f2.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as e,o as a,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"TEST @setup Annotation","titleTemplate":"NpgsqlRest","description":"Run named setup steps before an individual SQL test file. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @setup Annotation","titleTemplate":"NpgsqlRest","description":"Run named setup steps before an individual SQL test file. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test setup, per-file setup, test fixtures, sql test runner annotations"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @setup Annotation"}],["meta",{"property":"og:description","content":"Run named setup steps before an individual SQL test file."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-setup.md","filePath":"annotations/test-setup.md"}'),t={name:"annotations/test-setup.md"};function l(p,s,r,o,h,d){return a(),e("div",null,s[0]||(s[0]=[n("",18)]))}const u=i(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_test-tag.md.CzXuyAz7.js b/assets/annotations_test-tag.md.CzXuyAz7.js
new file mode 100644
index 000000000..84f23f028
--- /dev/null
+++ b/assets/annotations_test-tag.md.CzXuyAz7.js
@@ -0,0 +1,21 @@
+import{_ as a,c as i,o as e,a5 as t}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"TEST @tag Annotation","titleTemplate":"NpgsqlRest","description":"Tag SQL test files for selective runs with Tag/ExcludeTag filtering. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @tag Annotation","titleTemplate":"NpgsqlRest","description":"Tag SQL test files for selective runs with Tag/ExcludeTag filtering. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test tag, tag filtering, smoke tests, test suites, sql test runner annotations"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @tag Annotation"}],["meta",{"property":"og:description","content":"Tag SQL test files for selective runs with Tag/ExcludeTag filtering."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-tag.md","filePath":"annotations/test-tag.md"}'),n={name:"annotations/test-tag.md"};function l(p,s,r,h,o,c){return e(),i("div",null,s[0]||(s[0]=[t(`
This annotation applies only to test files run by the SQL test runner (npgsqlrest --test). It is distinct from the endpoint TAGS annotation, which scopes routine annotations by volatility.
`,17)]))}const g=a(n,[["render",l]]);export{k as __pageData,g as default};
diff --git a/assets/annotations_test-tag.md.CzXuyAz7.lean.js b/assets/annotations_test-tag.md.CzXuyAz7.lean.js
new file mode 100644
index 000000000..807caa045
--- /dev/null
+++ b/assets/annotations_test-tag.md.CzXuyAz7.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as e,a5 as t}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"TEST @tag Annotation","titleTemplate":"NpgsqlRest","description":"Tag SQL test files for selective runs with Tag/ExcludeTag filtering. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @tag Annotation","titleTemplate":"NpgsqlRest","description":"Tag SQL test files for selective runs with Tag/ExcludeTag filtering. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test tag, tag filtering, smoke tests, test suites, sql test runner annotations"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @tag Annotation"}],["meta",{"property":"og:description","content":"Tag SQL test files for selective runs with Tag/ExcludeTag filtering."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-tag.md","filePath":"annotations/test-tag.md"}'),n={name:"annotations/test-tag.md"};function l(p,s,r,h,o,c){return e(),i("div",null,s[0]||(s[0]=[t("",17)]))}const g=a(n,[["render",l]]);export{k as __pageData,g as default};
diff --git a/assets/annotations_test-teardown.md.DrTOzo2w.js b/assets/annotations_test-teardown.md.DrTOzo2w.js
new file mode 100644
index 000000000..68a33a98c
--- /dev/null
+++ b/assets/annotations_test-teardown.md.DrTOzo2w.js
@@ -0,0 +1,8 @@
+import{_ as s,c as t,o as a,a5 as i}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"TEST @teardown Annotation","titleTemplate":"NpgsqlRest","description":"Run named teardown steps after an individual SQL test file, always. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @teardown Annotation","titleTemplate":"NpgsqlRest","description":"Run named teardown steps after an individual SQL test file, always. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test teardown, per-file teardown, test cleanup, sql test runner annotations"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @teardown Annotation"}],["meta",{"property":"og:description","content":"Run named teardown steps after an individual SQL test file, always."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-teardown.md","filePath":"annotations/test-teardown.md"}'),n={name:"annotations/test-teardown.md"};function l(r,e,o,p,d,h){return a(),t("div",null,e[0]||(e[0]=[i(`
This annotation applies only to test files run by the SQL test runner (npgsqlrest --test). It has no meaning in endpoint SQL files or routine comments.
Run one or more named steps (from the TestRunner.Steps registry) after this test file — always, best-effort, even when the file failed or errored.
`,16)]))}const u=s(n,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_test-teardown.md.DrTOzo2w.lean.js b/assets/annotations_test-teardown.md.DrTOzo2w.lean.js
new file mode 100644
index 000000000..e791d3d5e
--- /dev/null
+++ b/assets/annotations_test-teardown.md.DrTOzo2w.lean.js
@@ -0,0 +1 @@
+import{_ as s,c as t,o as a,a5 as i}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"TEST @teardown Annotation","titleTemplate":"NpgsqlRest","description":"Run named teardown steps after an individual SQL test file, always. Test-runner (--test) test files only.","frontmatter":{"outline":[2,3],"title":"TEST @teardown Annotation","titleTemplate":"NpgsqlRest","description":"Run named teardown steps after an individual SQL test file, always. Test-runner (--test) test files only.","head":[["meta",{"name":"keywords","content":"npgsqlrest test teardown, per-file teardown, test cleanup, sql test runner annotations"}],["meta",{"property":"og:title","content":"NpgsqlRest TEST @teardown Annotation"}],["meta",{"property":"og:description","content":"Run named teardown steps after an individual SQL test file, always."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/test-teardown.md","filePath":"annotations/test-teardown.md"}'),n={name:"annotations/test-teardown.md"};function l(r,e,o,p,d,h){return a(),t("div",null,e[0]||(e[0]=[i("",16)]))}const u=s(n,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_tsclient.md.BNgVXSoY.js b/assets/annotations_tsclient.md.BNgVXSoY.js
new file mode 100644
index 000000000..704dbf926
--- /dev/null
+++ b/assets/annotations_tsclient.md.BNgVXSoY.js
@@ -0,0 +1,55 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"TSCLIENT Annotation","titleTemplate":"NpgsqlRest","description":"Control TypeScript client code generation per-endpoint. Disable generation, set module names, configure URL exports and response options.","frontmatter":{"outline":[2,3],"title":"TSCLIENT Annotation","titleTemplate":"NpgsqlRest","description":"Control TypeScript client code generation per-endpoint. Disable generation, set module names, configure URL exports and response options.","head":[["meta",{"name":"keywords","content":"npgsqlrest tsclient, typescript client annotation, codegen control, api client generation, per-endpoint typescript"}],["meta",{"property":"og:title","content":"NpgsqlRest TSCLIENT Annotation"}],["meta",{"property":"og:description","content":"Control TypeScript client code generation per-endpoint with custom parameter annotations."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/tsclient.md","filePath":"annotations/tsclient.md"}'),t={name:"annotations/tsclient.md"};function l(p,s,r,h,d,c){return n(),i("div",null,s[0]||(s[0]=[e(`
Set to false, off, disabled, disable, or 0 to disable TypeScript client code generation for the endpoint.
tsclient_module
Sets a different module name for the generated TypeScript client file. Endpoints with the same module name are grouped into the same file.
tsclient_events
Enable or disable SSE events parameter for endpoints with SSE events enabled.
tsclient_parse_url
Enable or disable parseUrl parameter in the generated function.
tsclient_parse_request
Enable or disable parseRequest parameter in the generated function.
tsclient_status_code
Enable or disable status code in the return value.
tsclient_export_url
When true, exports a URL constant for this endpoint regardless of the global ExportUrls setting.
tsclient_url_only
When true, only the URL constant and request interface are exported — the fetch function and response type are skipped. Implies tsclient_export_url = true. Useful for endpoints consumed via browser navigation (e.g., table format downloads).
Use @tsclient = false to skip client generation for endpoints that return binary data or are not useful in the TypeScript client:
sql
sql
create function get_image(_id int)
+returns bytea
+language sql
+begin atomic;
+ select data from images where id = _id;
+end;
+
+comment on function get_image(int) is '
+HTTP GET
+@tsclient = false
+';
1 2 3 4 5 6 7 8 9 10 11
Equivalent as a SQL file endpoint (sql/get-image.sql):
sql
sql
/*
+HTTP GET
+@tsclient = false
+@param $1 id
+*/
+select data from images where id = $1;
Use @tsclient_module to group endpoints from different schemas into the same generated file:
sql
sql
comment on function public.get_users() is '
+HTTP GET
+@tsclient_module = admin
+';
+
+comment on function auth.get_roles() is '
+HTTP GET
+@tsclient_module = admin
+';
1 2 3 4 5 6 7 8 9
Both endpoints will be generated in the admin module file.
If no handler is specified (only upload annotation without for), then the default handler will be used. The default handler is large_object unless configured otherwise via DefaultUploadHandler setting.
These options are available for all handler types:
Option
Type
Default
Description
stop_after_first_success
bool
false
Stop upload after first successful upload when multiple handlers are used. Subsequent files will have status Ignored.
included_mime_types
string
null
CSV string of MIME type patterns to include. Set to null to allow all.
excluded_mime_types
string
null
CSV string of MIME type patterns to exclude. Set to null to exclude none.
buffer_size
int
null
Buffer size in bytes for raw content uploads (large_object and file_system).
check_text
bool
false
Validate file is a text file (not binary). Set to true to accept only text files.
check_image
bool/string
false
Validate file is an image. Set to true to accept only images, or CSV of allowed types: jpg, png, gif, bmp, tiff, webp.
test_buffer_size
int
4096
Buffer size in bytes when checking text files.
non_printable_threshold
int
5
Maximum non-printable characters allowed in test buffer to consider a valid text file.
check_format
bool
false
Validate the file format before processing. When true and validation fails, the fallback_handler is used if configured.
fallback_handler
string
null
Handler name to delegate to if format validation fails (e.g., large_object, file_system, csv, excel). When a handler's format validation fails and a fallback_handler is configured, processing is automatically delegated to the named handler.
comment on function fs_upload_include_mime_type(json) is '
+@upload for file_system
+@param _meta is upload metadata
+@path = ./test
+@file = mime_type.csv
+@included_mime_types = image/*, application/*
+';
The row command function receives up to 4 parameters:
sql
sql
create function my_csv_row_processor(
+ _index int, -- $1: Row index (1-based)
+ _row text[], -- $2: Parsed row values as text array
+ _prev_result any, -- $3: Result of previous row command (for chaining)
+ _meta json -- $4: Row metadata JSON
+)
+returns any -- Return value passed to next row as $3
Parsed row values as text array (e.g., _row[1], _row[2], etc.)
$3
any
Result of previous row command execution (see below)
$4
json
Row metadata JSON object
Row chaining with $3: The return value from each row command is passed to the next row as $3. For the first row, $3 is NULL. If the row command returns void (no return value), $3 will be NULL for the next row. This enables accumulating values across rows (e.g., counting rows, summing values).
comment on function csv_upload(json) is '
+@upload for csv
+@param _meta is upload metadata
+@delimiters = ,;
+@row_command = select csv_upload_row($1,$2,$3,$4)
+';
1 2 3 4 5 6
This will use comma (,) and semicolon (;) as delimiters. Use \\t for tab.
Row values as text array, or JSON if row_is_json = true
$3
any
Result of previous row command execution (see below)
$4
json
Row metadata JSON object (includes sheet info)
Row chaining with $3: The return value from each row command is passed to the next row as $3. For the first row, $3 is NULL. If the row command returns void (no return value), $3 will be NULL for the next row. This enables accumulating values across rows (e.g., counting rows, summing values). Note: When processing multiple sheets (all_sheets = true), $3 resets to NULL at the start of each sheet.
The metadata JSON passed to each row command contains:
json
json
{
+ "type": "excel",
+ "fileName": "data.xlsx",
+ "contentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
+ "size": 5678,
+ "sheet": "Sheet1",
+ "rowIndex": 5,
+ "claims": { // Only if RowCommandUserClaimsKey is set
+ "user_id": "1",
+ "user_name": "alice"
+ }
+}
1 2 3 4 5 6 7 8 9 10 11 12
Property
Type
Description
type
string
Handler type ("excel")
fileName
string
Original uploaded file name
contentType
string
MIME type of the file
size
int
File size in bytes
sheet
string
Current sheet name being processed
rowIndex
int
Excel row index (1-based, includes empty rows)
claims
object
User claims (when RowCommandUserClaimsKey is configured)
Note: Excel row metadata includes rowIndex (actual Excel row number) and sheet name. The $1 parameter is a sequential counter for non-empty rows only, while rowIndex reflects the actual Excel row position.
When row_is_json = true, row data is passed as JSON with Excel cell references as keys:
sql
sql
comment on function excel_upload(json) is '
+@upload for excel
+@param _meta is upload metadata
+@row_is_json = true
+@row_command = select excel_upload_row($1,$2,$3,$4)
+';
comment on function upload_to_large_object(text, json) is '
+HTTP POST
+@upload for large_object
+@param _meta is upload metadata
+@check_image = true';
comment on function upload_to_file_system(text, json) is '
+HTTP POST
+@upload for file_system
+@param _meta is upload metadata
+@check_image = true
+@path = ./public/uploads
+@unique_name = true
+@create_path = true';
comment on function csv_upload(json) is '
+HTTP POST
+@upload for csv
+@param _meta is upload metadata
+@delimiters = ,;
+@row_command = select csv_upload_row($1,$2,$3,$4)';
comment on function excel_upload(json) is '
+HTTP POST
+@upload for excel
+@param _meta is upload metadata
+@all_sheets = true
+@row_command = select excel_upload_row($1,$2,$3,$4)';
`,143)]))}const u=a(t,[["render",l]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_upload.md.BJPkIDDG.lean.js b/assets/annotations_upload.md.BJPkIDDG.lean.js
new file mode 100644
index 000000000..6d8ffad76
--- /dev/null
+++ b/assets/annotations_upload.md.BJPkIDDG.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"UPLOAD Annotation","titleTemplate":"NpgsqlRest","description":"Create file upload endpoints for PostgreSQL REST APIs. Handle multipart uploads with Large Objects, file system, CSV, or Excel handlers.","frontmatter":{"outline":[2,3],"title":"UPLOAD Annotation","titleTemplate":"NpgsqlRest","description":"Create file upload endpoints for PostgreSQL REST APIs. Handle multipart uploads with Large Objects, file system, CSV, or Excel handlers.","head":[["meta",{"name":"keywords","content":"npgsqlrest upload, file upload api, multipart upload, postgresql large objects, csv upload excel upload"}],["meta",{"property":"og:title","content":"NpgsqlRest UPLOAD Annotation"}],["meta",{"property":"og:description","content":"Create file upload endpoints with Large Objects, file system, CSV, or Excel handlers."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/upload.md","filePath":"annotations/upload.md"}'),t={name:"annotations/upload.md"};function l(p,s,r,d,h,k){return n(),i("div",null,s[0]||(s[0]=[e("",143)]))}const u=a(t,[["render",l]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_user-context.md.D9DNdqIU.js b/assets/annotations_user-context.md.D9DNdqIU.js
new file mode 100644
index 000000000..30d507737
--- /dev/null
+++ b/assets/annotations_user-context.md.D9DNdqIU.js
@@ -0,0 +1,67 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"USER_CONTEXT Annotation","titleTemplate":"NpgsqlRest","description":"Pass authenticated user claims to PostgreSQL session context variables. Access user info in SQL functions via current_setting().","frontmatter":{"outline":[2,3],"title":"USER_CONTEXT Annotation","titleTemplate":"NpgsqlRest","description":"Pass authenticated user claims to PostgreSQL session context variables. Access user info in SQL functions via current_setting().","head":[["meta",{"name":"keywords","content":"npgsqlrest user context, postgresql session context, user claims sql, current_setting user, session variables"}],["meta",{"property":"og:title","content":"NpgsqlRest USER_CONTEXT Annotation"}],["meta",{"property":"og:description","content":"Pass user claims to PostgreSQL session context variables for SQL access."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/user-context.md","filePath":"annotations/user-context.md"}'),t={name:"annotations/user-context.md"};function l(p,s,r,h,k,c){return n(),i("div",null,s[0]||(s[0]=[e(`
`,32)]))}const u=a(t,[["render",l]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_user-context.md.D9DNdqIU.lean.js b/assets/annotations_user-context.md.D9DNdqIU.lean.js
new file mode 100644
index 000000000..e4166c9b2
--- /dev/null
+++ b/assets/annotations_user-context.md.D9DNdqIU.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"USER_CONTEXT Annotation","titleTemplate":"NpgsqlRest","description":"Pass authenticated user claims to PostgreSQL session context variables. Access user info in SQL functions via current_setting().","frontmatter":{"outline":[2,3],"title":"USER_CONTEXT Annotation","titleTemplate":"NpgsqlRest","description":"Pass authenticated user claims to PostgreSQL session context variables. Access user info in SQL functions via current_setting().","head":[["meta",{"name":"keywords","content":"npgsqlrest user context, postgresql session context, user claims sql, current_setting user, session variables"}],["meta",{"property":"og:title","content":"NpgsqlRest USER_CONTEXT Annotation"}],["meta",{"property":"og:description","content":"Pass user claims to PostgreSQL session context variables for SQL access."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/user-context.md","filePath":"annotations/user-context.md"}'),t={name:"annotations/user-context.md"};function l(p,s,r,h,k,c){return n(),i("div",null,s[0]||(s[0]=[e("",32)]))}const u=a(t,[["render",l]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_user-parameters.md.RuNgxxKs.js b/assets/annotations_user-parameters.md.RuNgxxKs.js
new file mode 100644
index 000000000..549aad694
--- /dev/null
+++ b/assets/annotations_user-parameters.md.RuNgxxKs.js
@@ -0,0 +1,73 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"USER_PARAMETERS Annotation","titleTemplate":"NpgsqlRest","description":"Pass authenticated user claims as PostgreSQL function parameters. Inject user ID, roles, and custom claims into SQL functions.","frontmatter":{"outline":[2,3],"title":"USER_PARAMETERS Annotation","titleTemplate":"NpgsqlRest","description":"Pass authenticated user claims as PostgreSQL function parameters. Inject user ID, roles, and custom claims into SQL functions.","head":[["meta",{"name":"keywords","content":"npgsqlrest user parameters, user claims parameters, inject user id, function user parameter, authenticated user sql"}],["meta",{"property":"og:title","content":"NpgsqlRest USER_PARAMETERS Annotation"}],["meta",{"property":"og:description","content":"Pass user claims as function parameters for authenticated endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/user-parameters.md","filePath":"annotations/user-parameters.md"}'),l={name:"annotations/user-parameters.md"};function t(p,s,r,h,k,c){return n(),i("div",null,s[0]||(s[0]=[e(`
Equivalent as a SQL file endpoint (sql/get-user-params.sql):
sql
sql
/*
+HTTP GET
+@authorize
+@user_params
+@param $1 user_id text
+@param $2 user_name text
+@param $3 user_roles text[]
+*/
+select $1::int as user_id, $2 as user_name, $3 as user_roles;
1 2 3 4 5 6 7 8 9
With Default Values (for unauthenticated access)
sql
sql
create function get_user_params_optional(
+ _user_id text = null,
+ _user_name text = 'anonymous',
+ _user_roles text[] = array[]::text[]
+)
+returns table (
+ user_id int,
+ user_name text,
+ user_roles text[]
+)
+language sql
+begin atomic;
+select
+ _user_id::int,
+ _user_name,
+ _user_roles;
+end;
+
+comment on function get_user_params_optional(text, text, text[]) is '
+@user_params
+';
Default behavior for all endpoints can be configured via UseUserParameters
Parameters with default values work without authentication; claim values override defaults when authenticated
Parameters not found in claims use their default values or null
Claim values are always passed as text type. For multi-value claims (like roles), values are passed as text[]. PostgreSQL handles type coercion to your parameter types.
`,28)]))}const u=a(l,[["render",t]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_user-parameters.md.RuNgxxKs.lean.js b/assets/annotations_user-parameters.md.RuNgxxKs.lean.js
new file mode 100644
index 000000000..35d05b422
--- /dev/null
+++ b/assets/annotations_user-parameters.md.RuNgxxKs.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"USER_PARAMETERS Annotation","titleTemplate":"NpgsqlRest","description":"Pass authenticated user claims as PostgreSQL function parameters. Inject user ID, roles, and custom claims into SQL functions.","frontmatter":{"outline":[2,3],"title":"USER_PARAMETERS Annotation","titleTemplate":"NpgsqlRest","description":"Pass authenticated user claims as PostgreSQL function parameters. Inject user ID, roles, and custom claims into SQL functions.","head":[["meta",{"name":"keywords","content":"npgsqlrest user parameters, user claims parameters, inject user id, function user parameter, authenticated user sql"}],["meta",{"property":"og:title","content":"NpgsqlRest USER_PARAMETERS Annotation"}],["meta",{"property":"og:description","content":"Pass user claims as function parameters for authenticated endpoints."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/user-parameters.md","filePath":"annotations/user-parameters.md"}'),l={name:"annotations/user-parameters.md"};function t(p,s,r,h,k,c){return n(),i("div",null,s[0]||(s[0]=[e("",28)]))}const u=a(l,[["render",t]]);export{o as __pageData,u as default};
diff --git a/assets/annotations_validate.md.BYjsje_G.js b/assets/annotations_validate.md.BYjsje_G.js
new file mode 100644
index 000000000..efea03174
--- /dev/null
+++ b/assets/annotations_validate.md.BYjsje_G.js
@@ -0,0 +1,100 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"VALIDATE Annotation","titleTemplate":"NpgsqlRest","description":"Validate endpoint parameters before database execution. Apply validation rules like NotNull, NotEmpty, Required, Regex, MinLength, and MaxLength to PostgreSQL function parameters.","frontmatter":{"outline":[2,3],"title":"VALIDATE Annotation","titleTemplate":"NpgsqlRest","description":"Validate endpoint parameters before database execution. Apply validation rules like NotNull, NotEmpty, Required, Regex, MinLength, and MaxLength to PostgreSQL function parameters.","head":[["meta",{"name":"keywords","content":"npgsqlrest validate, parameter validation, api input validation, postgresql validation, request validation annotation"}],["meta",{"property":"og:title","content":"NpgsqlRest VALIDATE Annotation"}],["meta",{"property":"og:description","content":"Validate endpoint parameters before database execution using predefined validation rules."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/validate.md","filePath":"annotations/validate.md"}'),l={name:"annotations/validate.md"};function t(p,s,h,r,k,d){return n(),i("div",null,s[0]||(s[0]=[e(`
Validate endpoint parameters before database execution. Validation is performed immediately after parameters are parsed, before any database connection is opened, authorization checks, or proxy handling.
@validate <parameter_name> using <rule_name>
+@validate <parameter_name> using <rule1>, <rule2>, <rule3>, ...
1 2
parameter_name - The parameter to validate. Can use either the original PostgreSQL name (_email) or the converted camelCase name (email). Matching is case-insensitive.
rule_name - The name of a validation rule defined in ValidationOptions configuration.
Multiple rules can be specified as comma-separated values or on separate lines.
create function get_user(_user_id int)
+returns json
+language sql
+begin atomic;
+select row_to_json(u) from users u where id = _user_id;
+end;
+
+comment on function get_user(int) is '
+HTTP GET
+@validate _user_id using not_null
+';
1 2 3 4 5 6 7 8 9 10 11
Equivalent as a SQL file endpoint (sql/get-user.sql):
sql
sql
/*
+HTTP GET
+@validate user_id using not_null
+@param $1 user_id int
+*/
+select row_to_json(u) from users u where id = $1;
create function update_email(_user_id int, _email text)
+returns json
+language plpgsql
+as $$
+begin
+ update users set email = _email where id = _user_id;
+ return json_build_object('success', true);
+end;
+$$;
+
+comment on function update_email(int, text) is '
+HTTP PUT
+@validate _user_id using not_null
+@validate _email using required, email
+';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
The _email parameter must pass both required (not null and not empty) and email (regex pattern) validation.
`,45)]))}const u=a(l,[["render",t]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_validate.md.BYjsje_G.lean.js b/assets/annotations_validate.md.BYjsje_G.lean.js
new file mode 100644
index 000000000..7a8e1173d
--- /dev/null
+++ b/assets/annotations_validate.md.BYjsje_G.lean.js
@@ -0,0 +1 @@
+import{_ as a,c as i,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"VALIDATE Annotation","titleTemplate":"NpgsqlRest","description":"Validate endpoint parameters before database execution. Apply validation rules like NotNull, NotEmpty, Required, Regex, MinLength, and MaxLength to PostgreSQL function parameters.","frontmatter":{"outline":[2,3],"title":"VALIDATE Annotation","titleTemplate":"NpgsqlRest","description":"Validate endpoint parameters before database execution. Apply validation rules like NotNull, NotEmpty, Required, Regex, MinLength, and MaxLength to PostgreSQL function parameters.","head":[["meta",{"name":"keywords","content":"npgsqlrest validate, parameter validation, api input validation, postgresql validation, request validation annotation"}],["meta",{"property":"og:title","content":"NpgsqlRest VALIDATE Annotation"}],["meta",{"property":"og:description","content":"Validate endpoint parameters before database execution using predefined validation rules."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/validate.md","filePath":"annotations/validate.md"}'),l={name:"annotations/validate.md"};function t(p,s,h,r,k,d){return n(),i("div",null,s[0]||(s[0]=[e("",45)]))}const u=a(l,[["render",t]]);export{c as __pageData,u as default};
diff --git a/assets/annotations_void.md.CdJ8Ec9f.js b/assets/annotations_void.md.CdJ8Ec9f.js
new file mode 100644
index 000000000..9dd828564
--- /dev/null
+++ b/assets/annotations_void.md.CdJ8Ec9f.js
@@ -0,0 +1,19 @@
+import{_ as i,c as a,o as e,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"VOID Annotation","titleTemplate":"NpgsqlRest","description":"Force an endpoint to return 204 No Content. Execute all statements for side effects without returning a JSON response.","frontmatter":{"outline":[2,3],"title":"VOID Annotation","titleTemplate":"NpgsqlRest","description":"Force an endpoint to return 204 No Content. Execute all statements for side effects without returning a JSON response.","head":[["meta",{"name":"keywords","content":"npgsqlrest void annotation, no content response, 204 response, side effect endpoint, void endpoint"}],["meta",{"property":"og:title","content":"NpgsqlRest VOID Annotation"}],["meta",{"property":"og:description","content":"Force an endpoint to return 204 No Content."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/void.md","filePath":"annotations/void.md"}'),t={name:"annotations/void.md"};function l(p,s,o,r,d,h){return e(),a("div",null,s[0]||(s[0]=[n(`
`,22)]))}const u=i(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/annotations_void.md.CdJ8Ec9f.lean.js b/assets/annotations_void.md.CdJ8Ec9f.lean.js
new file mode 100644
index 000000000..2409120ca
--- /dev/null
+++ b/assets/annotations_void.md.CdJ8Ec9f.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as e,a5 as n}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"VOID Annotation","titleTemplate":"NpgsqlRest","description":"Force an endpoint to return 204 No Content. Execute all statements for side effects without returning a JSON response.","frontmatter":{"outline":[2,3],"title":"VOID Annotation","titleTemplate":"NpgsqlRest","description":"Force an endpoint to return 204 No Content. Execute all statements for side effects without returning a JSON response.","head":[["meta",{"name":"keywords","content":"npgsqlrest void annotation, no content response, 204 response, side effect endpoint, void endpoint"}],["meta",{"property":"og:title","content":"NpgsqlRest VOID Annotation"}],["meta",{"property":"og:description","content":"Force an endpoint to return 204 No Content."}],["meta",{"property":"og:type","content":"article"}]]},"headers":[],"relativePath":"annotations/void.md","filePath":"annotations/void.md"}'),t={name:"annotations/void.md"};function l(p,s,o,r,d,h){return e(),a("div",null,s[0]||(s[0]=[n("",22)]))}const u=i(t,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/app.Ds8YbgIC.js b/assets/app.Ds8YbgIC.js
new file mode 100644
index 000000000..c4e9d7f5e
--- /dev/null
+++ b/assets/app.Ds8YbgIC.js
@@ -0,0 +1 @@
+import{R as p}from"./chunks/theme.kqgpP4eL.js";import{R as s,a6 as i,a7 as u,a8 as c,a9 as l,aa as f,ab as d,ac as m,ad as h,ae as g,af as A,d as v,u as R,v as w,s as y,ag as C,ah as P,ai as b,a2 as E}from"./chunks/framework.CgT1UzWm.js";function r(e){if(e.extends){const a=r(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const n=r(p),S=v({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=R();return w(()=>{y(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&C(),P(),b(),n.setup&&n.setup(),()=>E(n.Layout)}});async function T(){globalThis.__VITEPRESS__=!0;const e=_(),a=D();a.provide(u,e);const t=c(e.route);return a.provide(l,t),a.component("Content",f),a.component("ClientOnly",d),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),n.enhanceApp&&await n.enhanceApp({app:a,router:e,siteData:m}),{app:a,router:e,data:t}}function D(){return A(S)}function _(){let e=s;return h(a=>{let t=g(a),o=null;return t&&(e&&(t=t.replace(/\.js$/,".lean.js")),o=import(t)),s&&(e=!1),o},n.NotFound)}s&&T().then(({app:e,router:a,data:t})=>{a.go().then(()=>{i(a.route,t.site),e.mount("#app")})});export{T as createApp};
diff --git a/assets/blog_DRAFT-anniversary-vietnam-of-computer-science.md.D7rY_yx-.js b/assets/blog_DRAFT-anniversary-vietnam-of-computer-science.md.D7rY_yx-.js
new file mode 100644
index 000000000..aa1ce9f09
--- /dev/null
+++ b/assets/blog_DRAFT-anniversary-vietnam-of-computer-science.md.D7rY_yx-.js
@@ -0,0 +1,33 @@
+import{_ as t,c as a,o as i,a5 as s}from"./chunks/framework.CgT1UzWm.js";const n="/ddd-agggrate-transparent.webp",o="/vietnam/evans.png",r="/vietnam/vernon.png",l="/vietnam/codd.png",b=JSON.parse('{"title":"DRAFT: 20th Anniversary of The Vietnam of Computer Science","titleTemplate":"NpgsqlRest","description":"DRAFT — A compilation of a decade of arguments about DDD, Clean Architecture, the wrong abstractions modern business software is built on, and the case for putting the database back where it belongs.","frontmatter":{"layout":"doc","outline":[2,3],"title":"DRAFT: 20th Anniversary of The Vietnam of Computer Science","titleTemplate":"NpgsqlRest","description":"DRAFT — A compilation of a decade of arguments about DDD, Clean Architecture, the wrong abstractions modern business software is built on, and the case for putting the database back where it belongs.","badge":"human","head":[["meta",{"name":"robots","content":"noindex, nofollow"}],["meta",{"name":"keywords","content":"npgsqlrest postgresql clean architecture ddd database-first state abstraction sql platform business rules"}]]},"headers":[],"relativePath":"blog/DRAFT-anniversary-vietnam-of-computer-science.md","filePath":"blog/DRAFT-anniversary-vietnam-of-computer-science.md"}'),h={name:"blog/DRAFT-anniversary-vietnam-of-computer-science.md"};function d(c,e,p,m,u,g){return i(),a("div",null,e[0]||(e[0]=[s('
DRAFT: 20th Anniversary of The Vietnam of Computer Science
DRAFT — TODO: date · NpgsqlRestPostgreSQLArchitectureDDDClean ArchitectureOpinion
Did we win? Did we even leave? Are we stuck in a quagmire?
Since then, the industry has marched relentlessly through a never-ending parade of patterns, architectures, and methodologies: ORM tools of every flavor, Repository and Unit of Work patterns, Domain-Driven Design, CQRS, Event Sourcing (currently all the rage), Hexagonal Architecture, Clean Architecture, Onion Architecture, Service-Oriented Architecture (now obsolete and so last year), Microservices, and on and on.
The quagmire Neward described is, of course, Object-Relational Impedance Mismatch. So to speak, a shotgun marriage between Object and Relational worlds. One lives in your application memory and works over data structures, and the other, well, in a relational database.
And none of these patterns above made the problem go away. We need both, and somehow the majority of the effort goes into dealing with persistence in one way or another. It's like unsuccessful couples therapy for that shotgun marriage. Maybe we need divorce papers?
Let's dig in deep.
What Is The Object–Relational Impedance Mismatch
Object–relational impedance mismatch is a set of difficulties going between data in relational data stores and data in domain-driven object models.
Ok, got it. A set of difficulties. Difficulties that refuse to go away, it seems, but fine.
It's worth noting that Object–Relational isn't the only mismatch on the menu. OO isn't the only way we work over application memory — functional programming is on the rise too, so there's a Functional–Relational mismatch as well. To be fair, FP gets along with relational better than OO does: SQL is already declarative, set-based, and value-oriented, right up FP's alley. But it still works over application memory, so it still has to bridge to the relational database like everyone else.
Anyway...
Relational Database Management Systems (RDBMS) is the standard method for storing data in a dedicated database, while object-oriented (OO) programming is the default method for business-centric design in programming languages.
RDBMS is the standard method for storing data in a dedicated database, but are they typically doing only data storage? I mean, files are also doing that, are they not? Are we missing something here?
And this second claim that object-oriented (OO) programming is the default method for business-centric design, that might be true, but SQL is the default method for anything business data-related, like the way organizations store, manage, protect, and analyze their data.
We can see the tension already here, but let's move on.
The problem lies in neither relational databases nor OO programming, but in the conceptual difficulty mapping between the two logic models. Both logical models are differently implementable using database servers, programming languages, design patterns, or other technologies.
Now, why would they say that we have two logical models?
Take a Customer. In your business, a customer is one thing — one concept. DDD even has a name for this: within a bounded context there is one ubiquitous language, so there is one shared notion of what a Customer is. That single concept becomes one logical model — what a Customer is, which attributes it has, how it relates to orders — with no implementation details attached. That's why it's called a logical model.
Then you build it. And here is where it splits: that one logical model gets implemented physically more than once. Once as a table — customer, with a varchar(255) name column. Once as a class — Customer, with a string Name property. Same concept, same logical model, two physical incarnations.
So in modern software design we are not talking about two different logical models, as Wikipedia claims. We have one logical model and two — sometimes more — physical models. Modern overengineering knows no bounds.
The reason why they say that we have two logical models is probably because OO and Relational are seen as totally different paradigms so the logical models must be genuinely different. For example OO does have behavior, but the problem is that we are talking strictly about data here, not behavior. Behavior is a different problem axis - we'll come to it when we get to algorithms.
In any case, impedance mismatch is not about two different logical models, but about the mismatch between those two physical models. Your system has to map them and make them work together because, logically, we still have one logical model and the system needs to reflect that. That’s the real problem and source of tension.
Issues range from application to enterprise scale, whenever stored relational data is used in domain-driven object models, and vice versa. Object-oriented data stores can trade this problem for other implementation difficulties.
This last sentence just confirms what I just said. Whenever stored relational data (one physical model) is used in domain-driven object models (another physical model), we have this problem or mismatch. Maybe the belief that we are talking about two different logical models is the reason why these difficulties exist and persist and are not being resolved. If it was just a simple mapping, let's say from varchar(255) to a string, that would be easy to solve a long time ago. Or something a bit more complex, let's say many-to-many on a logical model level. In a relational model, that requires a junction table, but in an object model that can be just a collection of references. Still, a little bit more complex mapping, but still solvable and indeed already solved.
My sincere belief is that we are talking here about a series of misconceptions and misunderstandings about the nature of abstractions themselves. More specifically, about abstractions the RDBMS already provides. And if RDBMS already provides them, well, that means that the application layer goes on and re-implements them anyway. No wonder we have difficulties. Let's look at these misconceptions one by one and discuss in detail:
Object-oriented programming has one of its core tenets called encapsulation. Encapsulation is supposed to protect internal data — the state. The object is the authoritative custodian of its state. Nobody else has it. Period. Without encapsulation, we don't really have OOP anymore.
On the other hand, functional programming has its own version of that — state immutability. A function takes values in and returns new values out, leaving the originals untouched — so there's no shared mutable state to corrupt in the first place. FP also enforces valid state through invariants, often by encoding them directly into the type system. Same goal, fewer bugs from uncontrolled state, arguably reached more elegantly. Fine. State status - protected, bugs - reduced. Great, beautiful, love it.
This, in fact, is very reasonable and well-thought-out. State data is data shared between different parts of the system and even different users. If every part of the system can poke at it without other parts knowing about it, then you have a lot of bugs. So, naturally, over time people came up with these concepts of encapsulation and immutability to protect that state and make sure it is only changed and fiddled with in a controlled way. Because we don't want to have bugs. Bugs are bad, okay.
No objection here. This is perfectly fine, and it makes a lot of sense. Let's say we have something complex. A game scene. Compiler syntax tree. Whatever. Protecting state in memory of such systems is invaluable, to say at least.
In his book Domain-Driven Design (2004), when describing the Domain Layer in Chapter 4, "Isolating the Domain," Eric Evans writes:
State that reflects the business situation is controlled and used here, even though the technical details of storing it are delegated to the infrastructure.
So he treats the in-memory object as the custodian of state - state that is "controlled and used here," where "here" is the in-memory Domain Layer — while the RDBMS is merely "delegated to the infrastructure." More on that in the next chapter. What matters here is the claim itself: the state is in memory. No doubt about it.
But what about applications backed by relational databases, business or otherwise?
In RDBMS-backed applications, the state lives in that RDBMS itself - not in memory. The authoritative custodian of state is the database table row, not the in-memory object.
Take any business application backed by a relational database. How do you check the current state of some entity? Do you peek at the object in memory? No, you query the database for that. Anyone who has worked 5 seconds in industry knows this, of course.
I know what DDD people will say now: object memory (or functional state memory) is the real state data, and RDBMS is just where that data is persisted (presumably when the user clicks on a "Save" icon).
And, if you still believe that objects/memory are the real state and not RDBMS, then riddle me this:
What if we have multiple instances of the application running behind a load balancer? And then maybe some background work as well, and some other services too. Maybe reporting replica as well, so we have multiple processes accessing the same state data. Who is the sole custodian of that state data in that case? The in-memory object of one process, or the database row? The obvious answer is, of course, NONE of the in-memory copies. The best we can do is to have each process hold a copy, while the real state is in the RDBMS itself.
Some may say now, but databases have multiplicity too, right? We have multiple replicas, and they are all copies of the same data. And there are also multi-master setups as well with multiple writers for high availability scenarios. Yeah, but the big difference is that the database solves it, while in-memory objects don't even try to be honest. They just deny the reality. For multiple replicas, there is never any ambiguity about which one is the source of truth, since we are talking about read-only copies, and for multi-master setups we have either different consensus protocols that ensure a single source of truth or so-called eventual-consistency for the source of truth. In-memory objects have no such machinery, so they just pretend that they are the single custodian of the state data, which is, of course, a big, fat lie.
If the object is the custodian of state, what if we kill and restart the application? Oh my, the object's custodianship has evaporated.
Also, what, for example, if we have two concurrent user writers? One loads an invoice as 'pending', but another writer marks it 'paid' while the first one holds it. Now the first one is lying about the state of that invoice. The database is right - it is the source of truth - the first one is stale. We will talk more about concurrency and integrity later - this is just to prove my point:
RDBMS is the authoritative custodian of state, not in-memory objects. The state lives in the database, not in memory.
This is a random example from Reddit, but it is indicative. Virtually every domain model is more or less like that - strip away the method, adjust types a bit, and it is basically an Entity-Relationship (ER) diagram, that's it. There is no structural difference between the domain model and the database model. It is the same logical model implemented twice.
And that method isValid() - the only behavior in the whole model - is just a data integrity check. Every rule it enforces, the database enforces too: dateBegin <= dateEnd is a one-line CHECK, and the harder ones —- price periods that must not overlap, quantity ranges that must stay contiguous — are exactly what database constraints exist for (more on the how in the integrity misconception). Same logical model implemented twice, same integrity rules implemented twice.
Because modern software design orthodoxy refuses to acknowledge that the state lives in the RDBMS, it forces us to implement the same model at least twice - once in the database (relational model implementation), once in memory (object model implementation, mapped usually with an O/R tool or a library).
I say at least, because there are examples where we have even more. Some "architects" will consider that O/R mapped model a persistence model because it doesn't have any behavior, and then they will add a separate domain model on top of that, which is the one with the behavior. So we have three implementations of the same logical model - database model, persistence model, and domain model.
And then, since we now have at least two physical models, we also have two type systems and two sets of constraints to protect the state. And we must keep them in sync at all times, and we must maintain the correct mapping. To be fair, this is mostly automated in modern systems (not completely), but we still have to do it and it is still there, automated or not. And even automated, it is still a cost and still a source of bugs and still a source of complexity. And even that can't bridge the semantic gap between the two type systems fully. For example, in PostgreSQL we can have a NOT NULL constraint on a column, but the corresponding C# property will be a nullable string.
All because we believe that there is some important state data we need to protect with our objects. In the best case, there are just some transient and disposable chunks of data copies, and in any case there is a lot of plumbing to manage: connections, transactions, commands, queries, etc. You know, the actual infrastructure.
Personally, I see a lot of irony in this. Modern orthodoxy calls RDBMS infrastructure, just to end up with code bases implementing, well, actual infrastructure.
A modern software engineering approach makes the assumption that an RDBMS is a storage device. A device used to store data. Therefore, good engineering practice is to abstract that storage device.
We can see that in the quote from Eric Evans above, where he says that:
... the technical details of storing it are delegated to the infrastructure.
Evans doesn't dwell on this point much - he just delegates storage to the infrastructure and moves on. On the other hand, Robert C. Martin is much more vocal about it. In Clean Architecture, Martin dedicates an entire chapter to "The Database Is a Detail" argument. He is very blunt about it, and he repeats it several times, for example:
It's just a mechanism we use to move the data back and forth between the surface of the disk and the RAM.
Or this:
The database is really nothing more than a big bucket of bits where we store our data on a long-term basis.
This is not some fringe blog post. These are two of the most-cited and influential authors in the field - arriving at one and the same conclusion - just at different volumes.
Evans states it just once and quietly, like he doesn't want to talk about it too much, and then delegates it away (perhaps he'd rather not have you examine it too closely, I don't know). Martin states it over and over, bluntly, and goes as far as to insist we should not even acknowledge that the disk exists.
Different approaches - identical claims: the database is a storage device. Storage is mechanical, it sits beneath the business — no different from a file system — and the architect's job is to wrap it up tight and forget it is there.
Reality is that RDBMS uses a storage device or devices, and that means that it already does this abstraction for you. It already abstracts storage.
If we go back to the beginning, when Edgar Codd introduced the relational model in 1970, the pitch was data independence — the whole point was to insulate the logical shape of your data from how it physically sits on a device. In fact, that is the core concept of the relational model. It was codified as the numbered Rule 8 fifteen years later in Edgar Codd's twelve rules: Rule 8: Physical data independence:
Application programs and terminal activities remain logically unimpaired whenever any changes are made in either storage representations or access methods.
The ANSI/SPARC Architecture from that era formalized it and walled off internal storage as well. So, the relational model was designed, from day one, to hide the disk.
Back to modern times and modern RDBMS implementations.
Riddle me this: We can write a SELECT, a JOIN, a WHERE, and even an INSERT, UPDATE, or DELETE, and in most cases it will be executed with the same results on different RDBMS engines from different vendors. That is called ANSI/ISO standardized SQL, which goes to show the real separation between the model and the physical implementation. Virtually every RDBMS implements the same ANSI/ISO SQL standard, but with dialect differences at the edges. Those differences can sometimes be significant, but the core of the language is the same, and that is what matters here. The same SELECT statement can run on MySQL, PostgreSQL, SQL Server, Oracle, and so on, given that you have the same logical model implemented in each of them.
But the abstraction doesn't stop at the SQL language. The relational model and the RDBMS implementations built on top of it are designed to be agnostic to the underlying storage device. For example:
In PostgreSQL, we can move any table to any different storage device we choose (they call it a tablespace), and the model above remains unchanged. Just use ALTER TABLE ... SET TABLESPACE — the table is now on a different physical device. The term TABLESPACE is Oracle's term for the same thing (switching table storage), and SQL Server has something called FILEGROUPS. Same SELECT, same result, different storage, no changes, no fuss.
You can change the actual byte format in storage. In PostgreSQL, the table access method is pluggable (Citus columnar, TimescaleDB). SQL Server flips a table from rows to columns with a clustered columnstore index. Oracle does it with Hybrid Columnar Compression, or stores the whole table inside a B-tree as an index-organized table instead of a heap. Same logical table, same query — completely different bytes on disk.
In MySQL you can swap the storage engine out from under a table entirely: ALTER TABLE t ENGINE=... moves a table between InnoDB (B-trees on disk), MyISAM, Archive (compressed), CSV (a literal text file), or MEMORY (pure RAM). One table, one query, completely different machinery underneath.
The data doesn't even have to be in local storage at all. In PostgreSQL, make it a FOREIGN TABLE over an FDW (Foreign Data Wrappers) and the rows live happily on another machine entirely — the query doesn't even care or know. Oracle reads flat files as external tables; DuckDB queries Parquet files on disk as if they were tables. The data is somewhere else, on a remote machine - SQL is the same.
It doesn't even have to be one machine. Hand it to a distributed SQL engine — CockroachDB, TiDB, Spanner — and your data becomes a replicated, sharded key-value store smeared across a cluster. You have no idea which node, let alone which disk, holds any given row. CockroachDB speaks Postgres's wire protocol so you can use standard PostgreSQL unchanged, TiDB speaks MySQL's, and you still write ordinary SQL. Or push it to the cloud, where Snowflake keeps everything as columnar micro-partitions in object storage. Same SELECT, same result, no fuss.
And finally — no disk at all. Who says we need disks? Declare a MySQL table ENGINE=MEMORY, run PostgreSQL on a tmpfs with the whole data directory in RAM, switch on SQL Server's In-Memory OLTP, open SQLite as :memory:. No persistent storage anywhere. Same query, same result — and the thing is still, unmistakably, a database.
Martin writes: "To mitigate the time delay imposed by disks, you need indexes...". Then why are in-memory databases full of indexes? Why are they (in-memory databases) a thing at all? Because an index was never about the medium - it is about not scanning every row when you want one, be it on disk or in RAM.
As we can see, different devices, different formats, even machines and clusters, or even no machines at all — the same logical model, the same SQL, the same results. The RDBMS already abstracts storage for you. It is designed to do exactly that. Thank you very much, but you are wrong.
Cost is never ending persistence-ceremony. We are asked to carefully construct our data models in memory (to maintain the illusion of encapsulation), protect it from illogical and unwanted changes, and then save it to the database (persist it) when the time is right.
It is hard to overstate how big this persistence-ceremony thing really is. The number of specialized patterns, libraries, countless tutorials, videos, entire philosophies, strategies, etc. But take a look at this trivial example:
This is a simple SQL statement to update a transfer approval - two people must sign off, they must be different people, and the status moves from pending to partly to fully approved. In a traditional codebase this would be a considerable chunk of code spanning multiple files and doing several database calls, just to maintain the illusion.
sql
sql
update transfer_approvals
+set
+ status = case
+ when status = 'pending' then 'partly_approved'
+ when status = 'partly_approved'
+ and approver1 is distinct from $1 then 'fully_approved'
+ else status
+ end,
+ approver1 = case when status = 'pending' then $1 else approver1 end,
+ approver2 = case
+ when status = 'partly_approved'
+ and approver1 is distinct from $1 then $1
+ else approver2
+ end
+where
+ transfer_id = $2
+ and status in ('pending', 'partly_approved')
+returning status;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
We don't know where those transfer approvals are. Is it stored on a disk? What disk is it on? Is it in memory, what format it's in, or even what machine it is on, and we don't care. That is not the point. This is a DECLARATION. We have just declared business rules for how to update transfer approvals.
It has nothing to do with storage as far as the application is concerned. And since our RDBMS engine hides and abstracts all the storage details and does all the persistence work for us, what are we left with then? That's right: the business logic and business rules. Just a declaration of how our transfer approvals should be updated in this case. Nothing else. No ceremony, no plumbing, no persistence layer, no storage, no nothing.
The entire pile of code which is now gone with this move is the following:
the entity / aggregate class (the in-memory model)
the repository (to fetch it and put it back)
the unit-of-work / change tracker (to know which fields are dirty)
the O/R mapping config (to translate object <-> row)
the load → mutate-in-memory → save dance
the surrounding transaction scope
Every one of those exists for one reason only: to carry state from memory to storage and back. Remove that silly belief, and every one of those big code blocks removes itself.
If we already have established two previous claims — that the state lives in memory and that the database is a storage device — then data itself must be an in-memory data structure as well. And, if we are going to perform operations on it, protect the state, mutate, and so on, then we need to have it in memory, and only suitable in-memory data structures will do, period.
Direct quote from Eric Evans, Domain-Driven Design (2003), Part II "Building Blocks of a Model-Driven Design," Chapter 6 "The Lifecycle of a Domain Object," in the section on Repositories (p. 108), he writes:
For each type of object that needs global access, create an object that can provide the illusion of an in-memory collection of all objects of that type.
Eric Evans, Domain-Driven Design (2003), p. 108.
The word Evans uses: illusion. Not a real collection, oh no, just the illusion of an in-memory structure. This should tell you everything now: You should only build an elaborate pattern to simulate an in-memory collection if the real data collection was never in memory to begin with.
The Repository exists precisely because the objects live in the database, and its entire job is to make them look like they are sitting in memory. Fake it until you make it, except you will never make it.
The repository pattern is an admission in structural form: relational data, dressed up to pass as an in-memory data structure (so we can do OOP on it).
This is not a coincidence nor an isolated quote. For example, in the book Patterns of Enterprise Application Architecture (2002), Martin Fowler writes (source: https://martinfowler.com/eaaCatalog/repository.html):
A Repository mediates between the domain and data mapping layers, acting like an in-memory domain object collection.
Acting like an in-memory domain object collection? Why do we want to force relational data into an in-memory collection? Just for good measure, let's check out Microsoft's recommendation in their Software Architecture e-book, in a part that teaches us how to "Design the infrastructure persistence layer." Microsoft echoes Fowler almost word for word, putting it as a set of domain objects in memory.
A repository performs the tasks of an intermediary between the domain model layers and data mapping, acting in a similar way to a set of domain objects in memory.
And then they continue:
Basically, a repository allows you to populate data in memory that comes from the database in the form of the domain entities. Once the entities are in memory, they can be changed and then persisted back to the database through transactions.
Again, just goes to prove the point above - real state is in the database, we are simply mandated to load temporary chunks into memory - in order to maintain the illusion of encapsulation and illusion of in-memory data structure.
Perhaps we might end up with an illusion of the entire software solution?
In any case, more than a decade after Evans and Fowler had laid out this machinery that simulates in-memory collections, the mismatch still had not been solved. We know this because in 2014, the field's leading DDD experts from around the world gathered at the DDD eXchange conference in NYC to figure out how to do DDD better and, finally, solve this Object-Relational Impedance Mismatch. Because you do not hold a summit to solve a problem you have already solved.
One of the speakers, renowned DDD expert Vaughn Vernon, gave a talk called "The Ideal Domain-Driven Design Aggregate Store?" where he proposed a final solution to the O/R Impedance Mismatch problem:
During the park bench discussion I promoted the idea of serializing Aggregates as JSON and storing them in that object notation in a document store. A JSON-based store would enable you to query the object’s fields. Central to the discussion, there would be no need to use an ORM. This would help to keep the Domain Model pure and save days or weeks of time generally spent fiddling with mapping details. Even more, your objects could be designed in just the way your Ubiquitous Language is developed, and without any object-relational impedance mismatch whatsoever. Anyone who has used ORM with DDD knows that the limitations of mapping options regularly impede your modeling efforts.
Framing in this case is that the O/R mapping tools and libraries are the main source of impedance mismatch, and if we could just get rid of them, then we would have solved the problem. No O/R mapping, no O/R mapping at all, and no impedance mismatch. That's the idea. In essence, the proposed data design is this:
Serialize each aggregate Object to JSON, store it as a blob
Every table is just (id, data json) — a key and a blob, nothing else
"Reference Other Aggregates By Identity Only" — no foreign keys, no joins, nothing, each blob standalone
That's it. That is the "ideal aggregate store" solution to the impedance mismatch problem.
Now, to be fair, Vaughn Vernon is not saying that RDBMS = file system. He does propose using Postgres for ACID and JSON querying. He does want to keep the relational engine. Just not the relational model.
And that is the whole trick. We have solved the Object-Relational impedance mismatch by removing the relational part entirely — and keeping the Object part, obviously. No relations, no foreign keys, no joins, no set operations, no nothing. Just a flat collection of objects, serialized, frozen to disk, and fetched by id. The illusion of an in-memory collection, made real at last.
So, yeah, the solution to the O/R impedance mismatch is to remove the R (relational part) entirely, and just have a key-value store with JSON blobs.
That was proposed ten years ago. Does anyone use that today? Is that how the industry builds? I don't think so. Twenty years after Evans and Fowler, the mismatch sits exactly where it started. We never solved it.
Let's get one thing out of the way immediately, because I don't want to win this argument by cheating.
A table is a set. That is not a metaphor — it is the mathematical definition. Codd's 1970 paper defines a relation as a subset of the Cartesian product of domains: a set of tuples.
Codd, E.F., "A Relational Model of Data for Large Shared Data Banks," CACM 13(6), June 1970, pp. 377–387, §1.3.
And SQL is an algebra over those sets — selection, projection, JOIN, UNION, INTERSECT, EXCEPT — a closed algebra, so every operation over sets returns another set you can keep operating on.
All true. And here is the problem with building the argument on that: an in-memory collection can do all of it too. LINQ in C# ships Join, GroupJoin, Union, Intersect, Except, Distinct, GroupBy. Those are not arbitrary method names — those are Codd's operators, reimplemented over IEnumerable. And every other ecosystem rebuilt some version of the same algebra over its collections; LINQ just did it most completely.
So if the impedance mismatch were about operations — about what you can do with the data — it would have been solved around 2007, when the operators finished porting. Case closed, everybody go home.
The mismatch is still here. Which means it was never about the operations.
Here is what the table has that no collection in your process can have. Not what it does — what it is:
It is the record. As established in the first misconception: the row is not a representation of the state, it is the state. Your collection is a copy of it, taken at load time.
It is shared. Every process, every writer, every background job operates on the same table, under the engine's arbitration. Your collection is private to one process. The other writers don't know it exists, and they are not waiting for it.
It is durable and live. The table existed before your process started, will exist after it dies, and keeps changing under other writers the whole time. Your collection is a photograph. The table is the thing being photographed — and it kept moving after the shutter clicked.
It is guarded.CHECK, UNIQUE, NOT NULL, foreign keys — enforced transactionally, against every writer, no exceptions. Your in-memory validation binds exactly one thing: your copy. The next writer does not inherit your discipline.
And now the key observation, the one this whole chapter hangs on: not one of these four is an operation.
LINQ could port Join because join is a function — values in, values out. Pure computation travels; you can implement it anywhere. Being the shared, durable, guarded record is not a function. There is no method you can add to List<T> that makes it be the authoritative state. You can port an operator. You cannot port a status.
Notice where the line falls between what made the trip into memory and what didn't. Everything that is algebra — join, filter, group, project — ported over just fine. Everything that is state — the transaction, the arbitration, the constraints, the durability — never left the database. It can't. The line between them is exactly the line we drew in the first misconception: computation versus state.
And if you want this confirmed by the industry itself: the most serious application of LINQ's relational operators is LINQ-to-Entities, which takes your C# expression tree and compiles it back into SQL, to send to the database. We rebuilt the algebra in memory, and its main job turned out to be translating itself back — because the algebra made the trip, and the data never did.
Which puts the domain object model in a completely new light. It is not an alternative data structure for your data. Look at the machinery again, piece by piece:
The object model builds
To simulate
Repository
the table
Identity map
the primary key
Navigation properties
foreign keys and joins
Unit of work
the transaction
Change tracker
what UPDATE ... SET already knew
In-memory validation
CHECK, UNIQUE, and foreign key constraints
That is not a different model. That is the same model — the database — re-implemented in RAM, minus the four properties that made it meaningful. The domain model is a simulation of the database, running inside your process. Evans told us himself, remember: the illusion of an in-memory collection. And the real thing sits two feet away the entire time, doing all of it correctly, under ACID, for every process at once. We call the copy "the domain" and the authority "a detail."
To be precise about what I am not claiming, before somebody builds a strawman out of it:
In-memory data structures are not the problem. Pure computation over values you were genuinely given is exactly what memory is for — take inputs, compute, return outputs. The game scene and the compiler syntax tree from the first misconception live in memory legitimately, because they are the state of those systems. LINQ over data you rightfully hold is wonderful.
Caching is not the problem either — honest caching. A cache knows it is a copy. It has a TTL, an invalidation story, and it never claims to be the truth.
The sin is narrow and specific: a copy that claims to be the authority and has no answer for the moment it goes stale. That is not a cache, and it is not a data-structure choice. That is a simulation impersonating the thing it copied.
Hold on to that word — impersonating — because it explains something two decades of framework engineering could not fix. Every famous ORM pathology you have ever fought is not a separate bug with a separate fix. It is one failure with many faces: a simulation forced to behave like the authority it impersonates. Let's count the faces.
What follows are not four independent grievances. It is one impossibility wearing four costumes.
Copy, not record → staleness and write amplification
The object must be hydrated before it can be mutated — that is the whole contract. So to change one column, the ORM does a SELECT followed by an UPDATE: load the row (usually the whole aggregate — scroll back to that Reddit picture and count the objects), let the object "decide" in memory, write it back. Remember the transfer approval from the previous chapter: one UPDATE statement, zero preliminary round trips, the rule declared right where the state lives. The simulated version is load → check in memory → mutate in memory → save. And between load and save, the row is free to change under you.
Hence lost updates. Hence the "optimistic concurrency token" — a rowversion or xmin column added to the schema not because the business needs it, but to detect that your copy lied to you between load and save. The token is a confession written in DDL: the copy is not the record, and we know it.
Private, not shared → arbitration lives in the database anyway
Two requests load the same invoice. Each holds a private snapshot; each decides from it; both decisions are "valid" in memory, and one of them is wrong in reality. The decision your domain model makes is provisional — the only binding decision happens in the database, under a lock, inside a transaction, where arbitration has lived all along. The version-token "rescue" concedes exactly this: the object proposes, but the WHERE clause of the write disposes. Now add a background job, a second service, a nightly import — and the in-memory "state" stops being state at all. It is one process's guess about what the state was, some number of milliseconds ago. (Much more on this in the concurrency and integrity misconception.)
Graph walk, not set operation → the access-pattern tax
We conceded that collections have the operators. But the object model's shape pushes you away from them: objects navigate. customer.Orders, order.Lines — walking references one object at a time, each step a query you didn't see, fired from behind a property getter. One JOIN becomes a hundred SELECTs, and the call site looks innocent. This is N+1, the most documented performance pathology of the last two decades. And the fixes bill you separately: eager-load with Include and over-fetch half the database, or project into DTOs — at which point you are writing relational queries again, in C#, so that a library can compile them back into the SQL you were abstracting away. The abstraction gets abandoned at exactly the moment it gets tested.
Window functions. Recursive CTEs — foreign keys form a graph, and the engine will walk arbitrary-depth hierarchies for you, declaratively. GROUPING SETS, lateral joins, partial and expression indexes, set-based bulk updates. And underneath all of it: a cost-based planner with live statistics about your actual data, choosing between a hash join, a merge join, and an index scan — per query, per data distribution. The simulation has none of this and cannot grow it. This one isn't even a defect — it is simply what a private copy in RAM lacks next to a database engine.
The standard reply — "but EF has raw SQL escape hatches" — is my argument wearing a different hat. If the object model were the system of record, there would be nothing to escape to. The moment you drop to SQL for the hard 20%, you have admitted where the real system was all along. The escape hatch is not a counterexample. It is the proof.
Now step back and look at the four together. None of them is an implementation defect. Hibernate is twenty-five years old; Entity Framework is eighteen. Some of the best engineers in the industry have been sanding these edges for two decades, and every one of these problems is still here — because they are not bugs in the simulation. They are the simulation working correctly: behaving exactly like what it is — a private, transient copy — instead of what it plays: the shared, durable record. That gap does not close with effort, because it is not made of code. It is made of what the two things are.
And that is Neward's quagmire, stated mechanically. An escalating investment that cannot win — not because the enemy is strong, but because a copy cannot out-invest its way into being the original.
Back in the Wikipedia section, I promised that behavior is a different problem axis and that we would come to it when we get to algorithms. Here we are.
The first three misconceptions were about data. This one is about behavior. The claim goes like this: fine, the data may sit in the database — but the algorithms, the logic, the behavior of the system, those belong in application code. SQL fetches; code computes. The database is where data sleeps, and the application is where it wakes up.
Martin Fowler wrote an article about this exact question back in February 2003, called "Domain Logic and SQL". It opens with an honest description of the mainstream attitude:
Many application developers, particularly strong OO developers like myself, tend to treat relational databases as a storage mechanism that is best hidden away.
There it is again — the storage device from the second misconception — but this time the subject is logic. To his credit, Fowler takes the SQL option far more seriously than most of his readers ever did. And still, the verdict:
Personally I don't think performance should be the first question. My philosophy is that most of the time you should focus on writing maintainable code.
With a warning label attached:
I would suggest that if you go the route of putting a lot of logic in SQL, don't expect to be portable — use all of your vendors extensions and cheerfully bind yourself to their technology.
And a concession that defines SQL's proper place in this worldview:
If you use an in-memory approach and have hot-spots that can be solved by more powerful queries, then do that.
So there is the claim, in its most reasonable and balanced form, from its most reasonable and balanced proponent: logic in memory is the default — maintainable, portable, testable. Logic in SQL is the exception — a performance hot-fix, to be applied reluctantly, hot-spot by hot-spot. Twenty-three years later, this is still the mainstream position, and most codebases you will open this week are built on it.
SQL is a programming language. A declarative one, but a programming language.
Look back at the transfer approval statement from the second misconception. Two approvers, they must be different people, the status walks from pending to partly to fully approved. That is not "fetching data." That is behavior — an algorithm, expressed as a declaration, executed next to the data, atomically.
Now ask what the algorithms of a business system actually are. Strip away the ceremony and it is overwhelmingly this: filter, join, group, aggregate, rank, deduplicate, walk a hierarchy, compute something over ordered data. Which is, item for item, exactly what SQL was designed to express. A running balance, for example:
sql
sql
select
+ customer_id,
+ transaction_date,
+ amount,
+ sum(amount) over (
+ partition by customer_id
+ order by transaction_date, transaction_id
+ ) as running_balance
+from transactions;
1 2 3 4 5 6 7 8 9
The in-memory version of this algorithm: fetch every transaction over the wire, group by customer in a dictionary, sort each group, loop and accumulate — plus the memory footprint, plus deciding what happens on the day the table stops fitting in RAM. The declarative version is the window function above. Ranking, top-N-per-group, gaps in sequences, running totals, year-over-year — window functions. Org charts, bills of materials, category trees — recursive CTEs: declare the traversal, and the engine walks the graph. With recursive CTEs, SQL is Turing-complete — not that you should compute Fibonacci in it, but "SQL can't express my logic" stopped being true decades ago.
But here is the part that actually settles the argument, and it is not expressiveness. When you write the loop, you are writing one algorithm, frozen at commit time. When you write the declaration, the engine writes the algorithm — at runtime, with a cost-based planner and live statistics about your actual data. Hash join, merge join, nested loop; index scan or sequential scan; parallel workers or not — chosen per query, per data distribution, and re-chosen as the data grows. Your hand-written loop was a perfectly good plan at ten thousand rows. At ten million it is a catastrophe, and it will not adapt, because it is code — someone has to notice it, profile it, and rewrite it. The declaration just quietly gets a new plan.
Nobody would hand-write three join algorithms plus a statistics-driven optimizer to choose between them in the service layer. That machinery already exists. It sits directly under the data — and the claim instructs us not to use it.
Which leaves the claim's justifications, so let's take them in order. Maintainability: is the eight-line window function really less maintainable than the same algorithm spread across a repository, a service method, and a mapping profile? "Maintainable" is not a synonym for "written in my favorite language." Portability: the second misconception already dealt with that — the core of SQL is an ANSI/ISO standard that runs on every engine, while your domain layer is portable to exactly nothing; nobody in recorded history has swapped C# + EF for Java + Hibernate because the code was so nicely decoupled. Testability: SQL is testable — pgTAP exists, and the oldest trick in the book still works: open a transaction, run the test, roll back. Besides, when you mock the database out of a test of data logic, look at what is left standing: you are testing the simulation from the previous misconception, not the system.
Every other corner of the industry has a name for this cost: moving data to compute instead of moving compute to data. The entire big-data field was built on the lesson that you ship the algorithm to where the data lives, because the other direction does not scale. Business software orthodoxy teaches the other direction as a best practice.
So we pay, in four installments:
The wire tax. Rows are read, serialized, shipped across the network, deserialized, and mapped into objects — so that a loop can run in the application, redoing work the engine would have done in place, with indexes.
The round-trip tax. Iterative logic in the application is chatty by nature: a query per step, per entity, per iteration. The N+1 problem from the previous chapter is this tax's most famous invoice.
The reimplementation tax. Every in-memory group, sort, join, and aggregate is a worse copy of what the engine already had: no indexes, no statistics, no planner, no parallelism, and memory bounded by your heap.
The frozen plan tax. The hand-written algorithm does not adapt to data growth. It just gets slower, quietly, until the nightly job that took a minute takes six hours, and someone gets paged to rediscover this chapter.
And the punchline is already inside the claim itself. SQL is admitted as the exception, for hot-spots — and then, over the life of the system, every part that matters turns out to be a hot-spot. One by one, the pieces that count get rewritten in SQL anyway, by tired people, during incident reviews. It is the same concession we saw with the raw-SQL escape hatch in the previous misconception: the exception clause ends up doing all the load-bearing work. At some point, the honest question is why the exception is not the architecture.
DDD's answer to data integrity is the aggregate. Eric Evans, Domain-Driven Design, Chapter 6:
An AGGREGATE is a cluster of associated objects that we treat as a unit for the purpose of data changes.
The aggregate root guards the boundary and enforces the invariants — the business rules that must never be broken. That Reddit picture from the first misconception is exactly this: Article at the root, guarding its packages, price periods, and quantity ranges, with isValid() standing watch.
Vaughn Vernon — the same Vaughn Vernon from the aggregate store — codified the discipline in Implementing Domain-Driven Design (2013) and the "Effective Aggregate Design" essays it grew from. He is admirably precise about it:
An invariant is a business rule that must always be consistent.
A properly designed Aggregate is one that can be modified in any way required by the business with its invariants completely consistent within a single transaction.
Thus, Aggregate is synonymous with transactional consistency boundary.
Along with the rule that turns it into a discipline:
A properly designed Bounded Context modifies only one Aggregate instance per transaction in all cases.
So the claim: invariants — the rules that must always hold — are enforced by the domain model, in memory, one aggregate at a time. The community even has a slogan for it: the always-valid domain model.
But read Vernon's third sentence again, slowly, because something remarkable is happening in it. "Aggregate is synonymous with transactional consistency boundary." The pattern defines itself as a transaction. Hold that thought.
First things first: the goal is completely right. Invariants must hold — that was never in dispute; it is the same reasonable instinct we already conceded in the first misconception. The question was never whether to enforce invariants. The question is where enforcement actually binds.
An invariant enforced in memory binds exactly one process — property four of the data structures misconception: the next writer does not inherit your discipline. And it binds at exactly one moment — validation time. Between the check and the write, the world keeps moving.
The canonical example, the one every team eventually learns in production: usernames must be unique. The domain model checks — no such username, valid — and inserts. Two concurrent registrations both check, both pass, both insert. The "always-valid" model just produced invalid data, twice, without a single line of it misbehaving. Check-then-act on a private snapshot is a race by construction — TOCTOU, time-of-check to time-of-use, a bug class old enough to have its own acronym. And notice what every team actually does about it: they add a UNIQUE constraint. The engine catches what the model cannot.
It is worth being precise about why the engine can do what the model cannot: it is the only party that sees every writer. Which makes it the only place where invariant machinery means anything: NOT NULL, CHECK, UNIQUE, foreign keys, EXCLUDE — wrapped in transactions, with isolation levels up to SERIALIZABLE, where concurrent transactions are guaranteed to behave as if they had run one at a time. Enforced against every writer: your application, the second instance behind the load balancer, the background job, the DBA at 2 a.m. No exceptions, and no discipline required.
Time to pay the debt from the first misconception. The hardest invariant in that Reddit aggregate: price periods must not overlap. isValid() can inspect its own copy — while another process commits an overlapping period it has never heard of. Here is the entire invariant, declared:
sql
sql
create extension if not exists btree_gist;
+
+alter table price_periods
+add constraint price_periods_no_overlap
+exclude using gist (
+ package_id with =,
+ daterange(date_begin, date_end, '[]') with &&
+);
1 2 3 4 5 6 7 8
Two periods for the same package with overlapping date ranges can now not exist. Not "will be caught, provided the request comes in through the domain layer" — cannot exist. Under any concurrency, from any writer, forever. One declaration. That is what enforcing an invariant actually means.
And now unhold that thought from the claim. Aggregate is synonymous with transactional consistency boundary. The transaction is a database concept. The pattern's own definition concedes that invariant enforcement is transaction work — it just redraws the transaction as an object graph, in one process's private memory, where it can see no other writer and therefore enforce nothing. The aggregate is a hand-drawn picture of a transaction. The database has the real ones — and the real ones can span whatever rows and tables the invariant actually needs, not just one object cluster.
Everything is enforced twice — or worse, once, in the wrong place. The same rules live in C# validation and in database constraints, drifting apart release by release — the behavioral edition of the duplicated models from the first misconception, same bill, new line item. And the team that takes "always-valid" at its word and skips the constraints has it worse: their invariants are now enforced nowhere. They hold only in the absence of concurrency — which is to say, they are not enforced. They are observed, until further notice.
The races ship. Check-then-act bugs pass every unit test, because in the test the domain model really is alone — the race needs a second writer, and the test suite proudly mocks that out. The mock removes the exact enemy the invariant exists to fight. So the bug appears only under production load, intermittently, and is discovered as corrupted data weeks later: the duplicate payment, the double-booked slot, the negative stock. Every experienced engineer has one of these stories, and in every single one of them, the domain model passed all of its tests.
The aggregate-boundary industry. Vernon's rule — one aggregate instance per transaction — voluntarily outlaws the multi-row, multi-table atomicity the engine offers natively. So what happens when a real invariant spans two aggregates? A whole discipline unfolds: redesign the boundaries, or accept eventual consistency between aggregates, coordinated through domain events, process managers, sagas, compensating actions. An entire detect-and-compensate machinery, invented to route around BEGIN ... COMMIT. The database would have held both rows in one transaction — the real kind — and gone to lunch.
And with that, the five misconceptions close into a single picture. The state lives in the database (1), which already abstracts its own storage (2). Its tables cannot be replaced by in-memory structures — only impersonated by them (3). Its language already expresses the algorithms (4), and its transactions and constraints are the only invariant enforcement that actually binds (5). Every axis the modern application layer re-implements is an axis the engine already owns. The impedance mismatch was never a mapping problem between two equal worlds. It is the ongoing cost of running a simulation of one world inside the other — and calling the original "a detail."
`,213)]))}const f=t(h,[["render",d]]);export{b as __pageData,f as default};
diff --git a/assets/blog_DRAFT-anniversary-vietnam-of-computer-science.md.D7rY_yx-.lean.js b/assets/blog_DRAFT-anniversary-vietnam-of-computer-science.md.D7rY_yx-.lean.js
new file mode 100644
index 000000000..808a53100
--- /dev/null
+++ b/assets/blog_DRAFT-anniversary-vietnam-of-computer-science.md.D7rY_yx-.lean.js
@@ -0,0 +1 @@
+import{_ as t,c as a,o as i,a5 as s}from"./chunks/framework.CgT1UzWm.js";const n="/ddd-agggrate-transparent.webp",o="/vietnam/evans.png",r="/vietnam/vernon.png",l="/vietnam/codd.png",b=JSON.parse('{"title":"DRAFT: 20th Anniversary of The Vietnam of Computer Science","titleTemplate":"NpgsqlRest","description":"DRAFT — A compilation of a decade of arguments about DDD, Clean Architecture, the wrong abstractions modern business software is built on, and the case for putting the database back where it belongs.","frontmatter":{"layout":"doc","outline":[2,3],"title":"DRAFT: 20th Anniversary of The Vietnam of Computer Science","titleTemplate":"NpgsqlRest","description":"DRAFT — A compilation of a decade of arguments about DDD, Clean Architecture, the wrong abstractions modern business software is built on, and the case for putting the database back where it belongs.","badge":"human","head":[["meta",{"name":"robots","content":"noindex, nofollow"}],["meta",{"name":"keywords","content":"npgsqlrest postgresql clean architecture ddd database-first state abstraction sql platform business rules"}]]},"headers":[],"relativePath":"blog/DRAFT-anniversary-vietnam-of-computer-science.md","filePath":"blog/DRAFT-anniversary-vietnam-of-computer-science.md"}'),h={name:"blog/DRAFT-anniversary-vietnam-of-computer-science.md"};function d(c,e,p,m,u,g){return i(),a("div",null,e[0]||(e[0]=[s("",213)]))}const f=t(h,[["render",d]]);export{b as __pageData,f as default};
diff --git a/assets/blog_DRAFT-npgsqlrest-vs-sqlpage.md.DbSL1Z8X.js b/assets/blog_DRAFT-npgsqlrest-vs-sqlpage.md.DbSL1Z8X.js
new file mode 100644
index 000000000..27a875d09
--- /dev/null
+++ b/assets/blog_DRAFT-npgsqlrest-vs-sqlpage.md.DbSL1Z8X.js
@@ -0,0 +1,36 @@
+import{_ as t,C as a,c as i,o as n,a5 as l,G as r}from"./chunks/framework.CgT1UzWm.js";const y=JSON.parse(`{"title":"NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers","titleTemplate":"NpgsqlRest","description":"NpgsqlRest and SQLPage are both SQL-first tools that connect straight to your database — but one builds REST APIs and the other builds web UIs. An honest comparison of where each fits, and why they're often complementary.","frontmatter":{"layout":"doc","outline":[2,3],"title":"NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers","titleTemplate":"NpgsqlRest","description":"NpgsqlRest and SQLPage are both SQL-first tools that connect straight to your database — but one builds REST APIs and the other builds web UIs. An honest comparison of where each fits, and why they're often complementary.","head":[["meta",{"name":"keywords","content":"npgsqlrest vs sqlpage, sqlpage alternative, sql web framework, sql rest api, sqlpage rest api, build app with sql, sql-first tools, postgresql sql ui"}],["meta",{"property":"og:title","content":"NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers"}],["meta",{"property":"og:description","content":"Both are SQL-first and connect straight to the database — but SQLPage renders UIs and NpgsqlRest serves APIs. Where each fits, and why they're complementary."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers"}],["meta",{"name":"twitter:description","content":"SQLPage renders web UIs from SQL; NpgsqlRest serves REST APIs from SQL. Different layers of the stack — and often complementary."}]]},"headers":[],"relativePath":"blog/DRAFT-npgsqlrest-vs-sqlpage.md","filePath":"blog/DRAFT-npgsqlrest-vs-sqlpage.md"}`),p={name:"blog/DRAFT-npgsqlrest-vs-sqlpage.md"};function o(h,s,d,c,g,k){const e=a("BlogNav");return n(),i("div",null,[s[0]||(s[0]=l(`
NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers
Comparison · SQLPage · SQL-First · June 2026
Most comparisons on this site put NpgsqlRest next to other tools that do the same job — turning PostgreSQL into a REST API. PostgREST and Supabase are direct competitors in that sense: all three answer the same question.
SQLPage is different. It shares NpgsqlRest's core idea — write SQL, not application code — but it spends that idea on the other end of the stack. SQLPage renders web UIs from SQL. NpgsqlRest serves REST APIs from SQL. So this isn't a "which one wins" piece. It's a map of where each one fits — and they fit together more often than they compete.
Both tools belong to the same family: logic and data live in the database, and a single self-contained binary turns SQL into something a browser can use — no ORM, no hand-written backend, no separate runtime.
Shared foundation
NpgsqlRest
SQLPage
SQL-first (.sql files are the unit of work)
✅
✅
Single self-contained binary
✅ (.NET)
✅ (Rust)
Connects directly to the database
✅
✅
Built-in authentication & sessions
✅
✅
File uploads
✅
✅
CSV export
✅
✅
Open source
✅
✅ (MIT)
Trivial deployment (copy binary, run)
✅
✅
If you like the SQL-first philosophy, you'll feel at home in either. The difference is what comes out of the binary.
flowchart LR
+ subgraph SP [SQLPage]
+ direction LR
+ S1[".sql file"] --> S2["UI components"] --> S3["HTML page"]
+ end
+ subgraph NR [NpgsqlRest]
+ direction LR
+ N1[".sql file / function"] --> N2["REST endpoint"] --> N3["JSON + typed client"]
+ end
1 2 3 4 5 6 7 8 9
SQLPage maps SQL results to UI components and streams back an HTML page. Each .sql file is a page. You pick a component (list, card, chart, form, table, map…) and feed it rows. There is no separate frontend — SQLPage is the frontend.
NpgsqlRest maps SQL files and functions to REST endpoints and returns JSON. Each .sql file or routine is an API endpoint. There is no UI — you consume the API from your own frontend (often with a generated TypeScript client), a mobile app, or another service.
That single difference — HTML out vs JSON out — is what everything else follows from.
This is SQLPage's whole identity, and it's genuinely strong. Building a page is a couple of SELECTs:
sql
sql
-- users.sql — a complete, working web page
+SELECT 'list' AS component, 'Users' AS title;
+SELECT name AS title, email AS description, '/user.sql?id=' || id AS link
+FROM users
+ORDER BY name;
1 2 3 4 5
Want a bar chart instead? Change the component name:
sql
sql
SELECT 'chart' AS component, 'Monthly sales' AS title, 'bar' AS type;
+SELECT month AS x, total AS y FROM sales ORDER BY month;
1 2
SQLPage ships 50+ components — tables, cards, forms, charts, maps (with PostGIS/Spatialite), timelines, carousels, steps — plus password auth, form handling, and even multi-database support (PostgreSQL, MySQL/MariaDB, SQLite, SQL Server, and ODBC sources like DuckDB, ClickHouse, Snowflake, and BigQuery). For an internal dashboard, an admin panel, or a data-entry tool, you can have a working interface in minutes with zero frontend code.
NpgsqlRest does not do this. It does not render SQL results into UI components. What it offers on the frontend side is the plumbing to build your own UI:
SQLPage can emit JSON — it has a json component, and with sqlpage.request_method() you can branch on GET/POST/PUT/DELETE and hand-roll an endpoint:
sql
sql
-- A JSON endpoint in SQLPage — manual, one file at a time
+SELECT 'json' AS component, 'array' AS type;
+SELECT id, name, email FROM users ORDER BY name;
1 2 3
That's fine for a simple read endpoint. SQLPage routes it automatically — like NpgsqlRest, dropping a .sql file gives you a URL with no route registration. But the file is an imperative script that happens to output JSON, not a declared endpoint. There's no inferred contract — no typed parameters, no OpenAPI, no client codegen, no per-endpoint policy. Every method check, status code, and header is something you write by hand in SQL.
NpgsqlRest is built around the API. The same kind of endpoint is generated automatically, and configured declaratively in a SQL comment:
sql
sql
create function api.get_user(p_id int)
+returns setof user_info
+language sql
+begin atomic;
+select id, name, email, role from users where id = p_id;
+end;
+
+comment on function api.get_user(int) is '
+HTTP GET /users/{p_id}
+@authorize admin, user
+@cached
+@cache_expires_in 300
+@rate_limiter_policy standard
+';
1 2 3 4 5 6 7 8 9 10 11 12 13 14
And it brings the rest of the API platform with it:
API capability
NpgsqlRest
SQLPage
File-based routing (drop a .sql file, get a URL)
✅
✅
Expose existing functions/procedures as endpoints (no file)
Here's the part most "X vs Y" posts miss: because they target different layers, you can run both against the same PostgreSQL database — and it's a good architecture.
mermaid
flowchart TD
+ DB[("PostgreSQL")]
+ SP["SQLPage<br/>internal dashboards,<br/>admin tools, reports"]
+ NR["NpgsqlRest<br/>customer-facing REST API<br/>+ typed TS client"]
+ DB <--> SP
+ DB <--> NR
+ SP --> Ops[Internal users / analysts]
+ NR --> App[Public app / mobile / partners]
1 2 3 4 5 6 7 8
A common split:
SQLPage for the inside — the ops dashboard, the admin panel, the quick report a colleague needs by Friday. Things where the audience is internal and a generated UI is exactly enough.
NpgsqlRest for the outside — the customer-facing API behind your product's frontend or mobile app, where you need a stable contract, typed clients, caching, rate limiting, and real auth.
Both read the same tables and call the same functions. Your business logic stays in one place — the database — which is the whole point of the SQL-first / business-rules-in-the-database approach both tools share.
SQLPage and NpgsqlRest answer different questions with the same philosophy. SQLPage asks "how do I get a UI out of SQL?" and answers it beautifully. NpgsqlRest asks "how do I get a production API out of SQL?" and answers that. Neither is a worse version of the other — they sit one layer apart.
If you've already adopted the SQL-first mindset, the honest takeaway isn't "switch." It's: use SQLPage where you need a screen, use NpgsqlRest where you need an endpoint, and let both lean on the same PostgreSQL so your logic never gets duplicated.
`,49)),r(e,{"get-started":[{text:"Installation Guide",href:"/guide/installation"},{text:"Quick Start",href:"/guide/quick-start"},{text:"SQL File Source",href:"/config/sql-file-source"},{text:"TypeScript Code Generation",href:"/config/codegen"}]})])}const m=t(p,[["render",o]]);export{y as __pageData,m as default};
diff --git a/assets/blog_DRAFT-npgsqlrest-vs-sqlpage.md.DbSL1Z8X.lean.js b/assets/blog_DRAFT-npgsqlrest-vs-sqlpage.md.DbSL1Z8X.lean.js
new file mode 100644
index 000000000..99be845f7
--- /dev/null
+++ b/assets/blog_DRAFT-npgsqlrest-vs-sqlpage.md.DbSL1Z8X.lean.js
@@ -0,0 +1 @@
+import{_ as t,C as a,c as i,o as n,a5 as l,G as r}from"./chunks/framework.CgT1UzWm.js";const y=JSON.parse(`{"title":"NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers","titleTemplate":"NpgsqlRest","description":"NpgsqlRest and SQLPage are both SQL-first tools that connect straight to your database — but one builds REST APIs and the other builds web UIs. An honest comparison of where each fits, and why they're often complementary.","frontmatter":{"layout":"doc","outline":[2,3],"title":"NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers","titleTemplate":"NpgsqlRest","description":"NpgsqlRest and SQLPage are both SQL-first tools that connect straight to your database — but one builds REST APIs and the other builds web UIs. An honest comparison of where each fits, and why they're often complementary.","head":[["meta",{"name":"keywords","content":"npgsqlrest vs sqlpage, sqlpage alternative, sql web framework, sql rest api, sqlpage rest api, build app with sql, sql-first tools, postgresql sql ui"}],["meta",{"property":"og:title","content":"NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers"}],["meta",{"property":"og:description","content":"Both are SQL-first and connect straight to the database — but SQLPage renders UIs and NpgsqlRest serves APIs. Where each fits, and why they're complementary."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers"}],["meta",{"name":"twitter:description","content":"SQLPage renders web UIs from SQL; NpgsqlRest serves REST APIs from SQL. Different layers of the stack — and often complementary."}]]},"headers":[],"relativePath":"blog/DRAFT-npgsqlrest-vs-sqlpage.md","filePath":"blog/DRAFT-npgsqlrest-vs-sqlpage.md"}`),p={name:"blog/DRAFT-npgsqlrest-vs-sqlpage.md"};function o(h,s,d,c,g,k){const e=a("BlogNav");return n(),i("div",null,[s[0]||(s[0]=l("",49)),r(e,{"get-started":[{text:"Installation Guide",href:"/guide/installation"},{text:"Quick Start",href:"/guide/quick-start"},{text:"SQL File Source",href:"/config/sql-file-source"},{text:"TypeScript Code Generation",href:"/config/codegen"}]})])}const m=t(p,[["render",o]]);export{y as __pageData,m as default};
diff --git a/assets/blog_case-study-zero-backend-code.md.BnEeD2xb.js b/assets/blog_case-study-zero-backend-code.md.BnEeD2xb.js
new file mode 100644
index 000000000..9c07579fc
--- /dev/null
+++ b/assets/blog_case-study-zero-backend-code.md.BnEeD2xb.js
@@ -0,0 +1 @@
+import{_ as o,C as n,c as a,o as i,a5 as s,G as r}from"./chunks/framework.CgT1UzWm.js";const f=JSON.parse('{"title":"Case Study: 74 Endpoints, Zero Backend Code — A Production App Built Entirely on NpgsqlRest","titleTemplate":"NpgsqlRest","description":"What it actually looks like to ship a production application without a controller layer. Real numbers from a finance/visualization app: ~74 HTTP endpoints, 12K LOC of SQL, zero lines of C# or Python, and an estimated 3,500–7,300 LOC of host-language boilerplate eliminated versus an equivalent ASP.NET Core build.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Case Study: 74 Endpoints, Zero Backend Code — A Production App Built Entirely on NpgsqlRest","titleTemplate":"NpgsqlRest","description":"What it actually looks like to ship a production application without a controller layer. Real numbers from a finance/visualization app: ~74 HTTP endpoints, 12K LOC of SQL, zero lines of C# or Python, and an estimated 3,500–7,300 LOC of host-language boilerplate eliminated versus an equivalent ASP.NET Core build.","head":[["meta",{"name":"keywords","content":"npgsqlrest case study, postgresql first development, no backend code, sql first architecture, asp.net core comparison, fastapi comparison, production npgsqlrest, webauthn sql, lines of code saved"}],["meta",{"property":"og:title","content":"Case Study: A Production App with Zero Backend Code"}],["meta",{"property":"og:description","content":"74 endpoints, 12K LOC of SQL, zero C# or Python. Real numbers from the first production-grade NpgsqlRest deployment we know of."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Case Study: 74 Endpoints, Zero Backend Code"}],["meta",{"name":"twitter:description","content":"What it actually looks like to ship a production application without a controller layer. Real numbers, honest tradeoffs."}]]},"headers":[],"relativePath":"blog/case-study-zero-backend-code.md","filePath":"blog/case-study-zero-backend-code.md"}'),d={name:"blog/case-study-zero-backend-code.md"};function c(l,e,h,p,u,g){const t=n("BlogNav");return i(),a("div",null,[e[0]||(e[0]=s('
Most of the blog posts on this site argue why you might want to build an application with NpgsqlRest. This one is different: it reports what happened when a team actually did, end-to-end, on a real product. The application is anonymized — it's a finance/visualization platform with time-series charts, expression-based metric computation, and per-user dashboards — but the numbers are unmodified, taken directly from the repository on the day this post was written.
It is, as far as we know, the first production-grade application built entirely on NpgsqlRest. No C#. No Python. No Node backend. The HTTP layer is the binary. Everything else lives in PostgreSQL.
Approximately 74 HTTP endpoints are exposed. There are no controllers, no DTO classes, no repository layer, no hand-written API client. The single appsettings.json replaces what would otherwise be a Program.cs plus DI registration plus route mapping plus auth pipeline configuration.
The application has shipped to production at build number 2.9.1517 — fifteen hundred production builds with no backend host code at any point in the project's history.
Read through the repository and the workload NpgsqlRest absorbs turns out broader than most users probably realize from the docs:
All ~74 endpoints are auto-exposed from annotated PostgreSQL functions. HTTP verb, route, authorization, response shape, and per-module grouping are declared in SQL comments via HTTP POST / HTTP GET, authorize, tsclient_module = .... There is no route table.
The entire TypeScript client (~5,679 lines across 12 modules) is regenerated from the live database catalog on every dev-mode startup. The frontend imports the generated per-module API files (e.g. from "./<feature>Api.ts") — files no human ever touches.
The full WebAuthn / passkey ceremony is implemented as nine named SQL commands wired up in appsettings.json. Challenge generation, attestation, authentication, sign-count validation — all in PL/pgSQL. The host process knows the protocol; the application logic lives in functions.
Data-protection key storage (the keys ASP.NET uses to encrypt cookies and other transient state) is two SQL commands, not a custom IXmlRepository implementation in C#.
Server-Sent Events streaming for the long-running compute endpoint. The SQL function emits RAISE INFO notices as it processes; NpgsqlRest forwards them as SSE events so the frontend can update progress UI without polling. The generator emits the EventSource factory in TypeScript automatically. Both ends of the streaming protocol are configured through annotations — there is no custom streaming middleware.
Admin and observability endpoints — /stats/routines, /stats/tables, /stats/indexes, /stats/activity — are built in. The team gets per-routine performance stats, table stats, and active-query visibility without writing any of it.
Static file serving with claims templating into index.html injects user identity into the SPA shell. No separate Node server in front of the app.
Equally telling is what's available without writing host code and either already configured or queued for near-term addition. Two features being added next to the compute path illustrate how additions to this stack actually work:
Rate limiting on the compute endpoint — roughly five lines of appsettings.json to define a Concurrency policy plus one @rate_limiter_policy annotation on the function. Four policy types are available (FixedWindow, SlidingWindow, TokenBucket, Concurrency); choosing one is a config decision, not an implementation.
Response caching for the read-heavy endpoints — a cache profile in appsettings.json (Memory / Redis / Hybrid backend, default expiration, key parameter list, conditional When rules) plus one @cache_profile annotation per cached endpoint. Automatic invalidation endpoints are emitted as a side effect.
The same applies to several other features the team has not yet needed but could enable with one config block and one annotation each: parameter validation rules (@validate), security headers (CSP / X-Frame-Options / Permissions-Policy via SecurityHeaders config), Kubernetes health probes (HealthChecks config), automatic OpenAPI/Swagger generation (OpenApiOptions), transparent column encryption (@encrypt / @decrypt) using ASP.NET Data Protection, parameter hashing for passwords (@parameter_hash), security-sensitive log obfuscation (@security_sensitive), antiforgery, response compression, command retry, CORS, external OAuth (Google / GitHub / Microsoft / LinkedIn / Facebook), and Excel/HTML table-format response rendering.
To be precise about what "configuration" means here: ASP.NET Core and FastAPI applications also configure these features — they configure them in startup code (Program.cs, DI registration, middleware pipeline ordering). NpgsqlRest configures them in layered JSON. The binary ships with a documented defaults baseline of roughly 2,900 lines covering every available knob; this project overrides it with appsettings.json (217 lines, production) and appsettings.development.json (88 lines, dev override that layers cleanly on top of prod — diagnostic logs turned up, codegen and HTTP-file generation enabled, WebAuthn relying-party pointed at localhost). Combined application-specific configuration: 305 lines of JSON. Combined application-specific startup code: zero lines.
The savings aren't that the features arrive magically. They're that they arrive pre-wired with sensible defaults, the override surface is uniform JSON rather than framework-specific DI ceremony, and prod-vs-dev layering is first-class. Every cross-cutting concern in the table below — caching, rate limiting, validation, security headers, health probes, OpenAPI — is enabled or tuned by adding keys to those 305 lines, not by modifying a startup pipeline.
The blast radius of "stop using NpgsqlRest" is therefore much wider than just losing the routing layer. It would mean replacing roughly a dozen distinct, individually load-bearing features and re-expressing 305 lines of declarative JSON as several hundred lines of imperative startup code.
The comparison: equivalent build in ASP.NET Core
The realistic alternative for a .NET-shop building this application would be ASP.NET Core with Minimal APIs or controllers, plus Dapper or Npgsql for data access (an ORM doesn't fit the workload — most of the endpoints return composite records or aggregated time-series data). A typical per-endpoint cost in that stack:
Request DTO: 5–15 LOC
Response DTO: 5–15 LOC
Controller / Minimal API handler with validation, model binding, error mapping: 10–25 LOC
Repository or data-access method: 10–30 LOC
Service-layer method (often present even when not strictly necessary): 5–15 LOC
DI registration: 1–2 LOC
Conservatively: 40–80 lines of C# per endpoint, spread across 3–5 files. For 74 endpoints, that is ~3,000–6,000 LOC before any application-specific concern is addressed.
On top of the per-endpoint cost, the cross-cutting concerns NpgsqlRest already absorbs (or will absorb the moment a config block is added). Most of these features exist in classic ASP.NET Core too — built into the framework, exposed as attributes, or provided as official NuGet packages — so the LOC estimate assumes a disciplined .NET team using those built-ins, not reinventing them from scratch:
Concern
NpgsqlRest
Hand-rolled ASP.NET Core (honest LOC est.)
Program.cs / DI / routing
config
50–150 (Minimal APIs are dense)
Cookie auth
config
10–30 (AddAuthentication().AddCookie())
WebAuthn / passkey ceremonies
9 named SQL commands
300–600 (Fido2.NET-Core plumbing, not built-in)
Data-protection keys → PostgreSQL
2 SQL commands
0–50 (filesystem default works for many cases)
TypeScript client generation + drift management
regenerated, free
0–ongoing (NSwag CLI if you want it; otherwise hand-write the frontend client)
Stats / activity / index admin endpoints
built-in
0 (optional; most apps don't have them)
SSE streaming endpoint(s)
@sse annotation
50–100 (Results.Stream, you own the protocol)
Parameter validation pipeline
@validate annotation + rules in config
20–50 ([Required], [Range], [StringLength] attributes are free)
30–100 (ResponseCacheAttribute + IDistributedCache; Redis adds more if needed)
Health checks (Kubernetes probes)
config
10–30 (AddHealthChecks() built-in)
Security headers middleware (CSP, X-Frame, etc.)
config
10–30 (NuGet package + a few lines)
OpenAPI / Swagger documentation
config
5–20 (Swashbuckle is nearly free)
Retry, forwarded headers, antiforgery, compression, CORS
config
30–80 (mostly built-in middleware)
Cross-cutting subtotal
—
~550–1,300
Adding the per-endpoint plumbing (~3,000–6,000 LOC for 74 composite/aggregated endpoints) to the honest cross-cutting subtotal gives a realistic ASP.NET Core equivalent total of ~3,500–7,300 lines of C# — plus a .csproj, a layered project structure, and a CI step to keep the generated TypeScript client in sync with the deployed API. None of this exists in the case-study repository.
A FastAPI / Python equivalent comes out leaner still — Pydantic is denser than C# DTOs, and FastAPI ships validation, OpenAPI, and dependency injection in the framework itself. WebAuthn plumbing (py_webauthn), rate limiting (slowapi), response caching (fastapi-cache + Redis), and SSE streaming still cost real lines, but the per-endpoint cost compresses substantially. Honest estimate: ~2,500–5,000 LOC of Python.
The earlier framing of this case study quoted higher figures (7,000–13,000 for .NET, 5,000–9,000 for Python). Those overcounted the cross-cutting layer because they assumed hand-rolled implementations of features that classic .NET / FastAPI actually ship with — built-in rate limiting, attribute-based validation, framework-managed health checks, Swashbuckle, and so on. The revised numbers above credit those frameworks honestly. The savings are still significant — 3,500–7,300 LOC is a meaningful slice of a full-stack codebase — but the LOC headline is smaller than it first appeared, and the real edge has to be argued qualitatively, not by raw line count alone.
How it scores on the four dimensions that matter
The headline number isn't lines of code — it's that impedance mismatch is gone entirely. Both kinds.
The classic object–relational impedance mismatch — objects on one side, rows on the other, an ORM negotiating between them — doesn't exist here because there's no object layer. PostgreSQL composite types and JSON are the data model, end to end. The frontend receives the same shapes the database returns.
The less-discussed function impedance mismatch — the chain of translation layers between an HTTP request and the SQL that ultimately runs (controller → service → repository → ORM → SQL) — doesn't exist either. The SQL function is the endpoint. The generated TypeScript wrapper calls it directly. There are no intermediate functions whose signatures can drift from the layer below them, because there are no intermediate functions.
In practice, adding a column in a typical ASP.NET Core + EF Core path means: write a migration, update the entity, update the DTO, update the mapping, update the endpoint, regenerate the TypeScript client, fix any drift the regeneration surfaces. In this project: edit the SQL function, restart the dev server. The TypeScript client rewrites itself; the type checker fails the build on every line of frontend code that no longer matches.
Adding a new endpoint is: write one annotated SQL function. Restart. Done. There is no parallel set of files in the host language to keep in sync, because there is no host language.
The empirical signal that this works at scale is build number 2.9.1517. A development loop that is genuinely faster is the only thing that gets a small team to that build count.
One productivity dimension worth naming explicitly in the LLM-assisted era: this architecture is far more token-efficient. Adding a feature in a conventional N-layer stack requires loading the DTO, controller, service, repository, ORM mapping, frontend type definition, and frontend API client into the model's context (eight to ten files with strict cross-file consistency requirements), and asking the model to produce the change requires it to write the new code in lockstep across all of them. In this architecture, the same change is one SQL function plus one frontend component. Two files, no inter-layer consistency burden (the generator handles it), and far less boilerplate for the model to reproduce. An "add an endpoint" task that runs roughly 5,000 tokens in a typical ASP.NET Core or FastAPI codebase runs closer to 1,000–1,500 here — a 3–5× reduction that compounds across a year of AI-assisted feature work, in both inference cost and developer wait time. The same simplification that The Power of Simplicity post frames at the architectural level as raw energy savings shows up at the per-task level as token savings.
The arguments above are structural. The same effect can be measured in hours and iteration-cycle time on the same repository — and the picture that emerges is stronger than the LOC table alone suggests.
One-time scaffolding avoided. In a hand-written stack, each endpoint costs roughly 20–35 minutes of pure typing: request interface (3–5 min), response interface (5–10 min), fetch wrapper with URL builder and serialiser (10–15 min), and an .http line for testing (3–5 min). Across the 74 endpoints exposed by this application, that is 25–45 hours of mechanical work the team never spent. The raw artifact size corroborates the estimate — the 5,679-line autogenerated TypeScript client plus an autogenerated .http test file is roughly the volume an experienced developer produces in that many hours on boilerplate (~125 LOC/hour).
The phrase "one-time" understates the saving in one important direction. The line counts in the table are the current snapshot of an API surface that has been reshaped many times as requirements — and the team's understanding of them — evolved. In a hand-written stack, every rename, every restructured return type, every endpoint that was later split, merged, or dropped would have required rewriting the corresponding client and interface code at the time of the change. NpgsqlRest regenerates the entire client on the next db-up, in full, regardless of how many iterations happened. The integral of typing avoided over the project's history is therefore meaningfully larger than the snapshot — earlier versions of these clients, including the ones that no longer exist, would all have been hand-written and rewritten in a conventional stack.
Ongoing maintenance avoided. Every backend signature change in a conventional stack means edits to the SQL, the request interface, the response interface, the fetch wrapper, and any callers — five files minimum, plus the inevitable type-drift bug when one of them is missed. Each such change costs roughly 5–15 minutes of cross-file editing, and the misses cost 30+ minutes of runtime debugging when an interface quietly lies about the shape the API actually returns. The NpgsqlRest cycle is edit SQL → restart → done; the regenerated client either matches or fails the type checker on every consumer at once. Across the lifetime of this codebase — through several significant refactors and feature additions spanning the auth surface, the visualization pipeline, and the user-management subsystem — there have been hundreds of signature-level changes. Even at a conservative 10 minutes saved per change × 200 changes, that is another ~30 hours of mechanical edits avoided, with the type-drift bug tail entirely absent.
Iteration-speed multiplier. This is the qualitative win, and it is the largest of the three:
Signature changes are roughly 5–10× faster end-to-end. No grep-for-callers pass, no parallel interface updates, no compile-and-fix loop. The TypeScript client rewrites itself on dev restart, and the compiler flags every stale call site.
New-feature wire-up is roughly 2–3× faster. The backend → frontend wire is free, so every cycle goes into UI / UX work rather than plumbing.
Refactoring courage is qualitatively different. Renaming a column or restructuring a return type is free across the host-language boundary, so refactors that would feel heavy in a conventional stack — full subsystem rewrites, schema reshuffles — get done instead of deferred. The 5.6× performance rewrite cited under Performance is one example; it was a full implementation-language change inside the function, and the only reason it shipped without weeks of cross-stack updates is that there were no cross-stack updates to make.
An entire class of bugs simply does not exist. "The interface said string | null but the API returns ''" or "the enum changed in the database but the frontend constant didn't" — these are the bugs that pad every release cycle in a hand-written stack and chew up debugging hours. With the schema as the single source of truth, they cannot happen.
The bottom line. Conservatively, 55–100 hours of typing saved across the lifetime of this project — and that "conservatively" matters: the figure is anchored to the current 74 endpoints, not to the larger set of endpoints that existed and were rewritten along the way as the product's requirements evolved. On top of that, an iteration loop that is roughly 5× faster on signature changes and 2–3× faster on end-to-end feature additions. None of those numbers were measured with a stopwatch — they are honest estimates from per-task timing and the actual change history — but they line up with the LOC totals and with the build cadence (1,500+ production builds, small team) the project has actually sustained. Combined with the token-efficiency multiplier described above, this is the kind of compounding gain that determines whether a small team can ship a feature surface this wide at all.
Net of the SQL the team would have written anyway (the business logic has to live somewhere), our honest estimate is ~3,500–7,300 lines of host-language code eliminated — roughly 3,000–6,000 of per-endpoint plumbing (DTOs, controllers, repositories, services, DI registrations across 220–370 files) plus another 550–1,300 of cross-cutting code that is configuration here and a mix of built-in middleware, attributes, and small custom wiring elsewhere. On top of that, the 5,679-line generated TypeScript client is a purely free byproduct.
The dominant slice of the saving — and the most defensible one — is the per-endpoint plumbing layer, not the cross-cutting infrastructure. Classic ASP.NET Core and FastAPI both ship with strong cross-cutting stories (built-in rate limiting, attribute-driven validation, framework-managed health checks, Swashbuckle, response caching). The compression NpgsqlRest provides on those concerns is real but modest. Where it dominates is on the architectural layer that classic stacks cannot compress: every endpoint still needs a request DTO, a response DTO, a controller, a repository, and a service in a hand-written stack, and those add up to thousands of lines that the SQL-as-endpoint model simply doesn't have.
One caveat: SQL functions tend to be denser than C# or Python, so a one-to-one LOC swap understates the effective savings. The eliminated code is overwhelmingly the low-value boilerplate — DTOs, mappers, route attributes, repository methods that are one query each — not the parts of an application where careful design pays off.
Where the real edge actually is — qualitatively. The LOC argument above tells part of the story. The structural wins, which are harder to put a number on but compound across the project's lifetime, are:
No DTO layer at all. The largest concrete saving (~3,000–6,000 LOC). Attributes don't help here; you still need the DTOs in classic .NET.
Per-endpoint annotations sit next to the SQL.@cache_profile, @rate_limiter_policy, @authorize on the function itself — same mechanism as [ResponseCache], far better locality than a controller four files away from the query.
WebAuthn shipped as SQL functions. ~300–600 LOC of C# that genuinely doesn't exist in this project, because Fido2.NET-Core wiring is not built-in to the framework.
Single source of truth. The schema is the contract. No DTO can lie about the database shape, no interface can drift from the response. This is a bug class that does not exist by construction — and the time-cost of those bugs is invisible in any LOC count.
TypeScript client + types regenerated from the live schema. A free byproduct; in classic .NET you either run NSwag/Kiota (works, but a separate toolchain to maintain) or hand-write the client on the frontend.
Layered prod-vs-dev JSON is first-class. Classic .NET has appsettings.{Environment}.json too, but in practice some of the environment-specific behaviour ends up in if (env.IsDevelopment()) branches in Program.cs. NpgsqlRest's overlay model puts every override in one place.
Strong, structurally. One database round-trip per request. No ORM materialization, no entity-graph allocation in the API process, no DTO mapping pass. Stored functions are precompiled in PostgreSQL. The transport layer is Kestrel + Npgsql, which is already at the top tier of TechEmpower-style benchmarks for the underlying primitives.
The performance-tuning work concentrates where it actually pays off: in the database. A recent optimization in this project rewrote one of the heaviest functions from PL/pgSQL with temp tables to plain SQL with CTEs and produced a measured 5.6× speedup (1.96 ms → 0.35 ms over 500 calls × 20 mixed inputs). That improvement is visible directly in pg_stat_statements. In a conventional stack, the same query is hidden behind ORM-generated SQL and the per-request cost is split across object materialization, JSON serialization, and HTTP middleware — all of which obscure where the actual time goes.
That kind of rewrite — a full implementation swap, a different language paradigm inside the function, and two unrelated correctness fixes folded in along the way — is exactly the change that goes badly wrong without a safety net. It didn't here, because the safety net already existed: the 110 SQL test files and 4,756 lines of assertions covered later in this post. The optimization shipped in the same commit as new test coverage for the edge cases the rewrite exposed. The tests run against the real PostgreSQL engine, against the real function being optimized, and finish in seconds. There is no faster correctness gate than that, and without it a 5.6× refactor is the sort of thing teams quietly decide isn't worth the risk. Performance work and test coverage are not two separate concerns in this architecture; they're the same loop.
End-to-end type safety is genuinely better than most hand-rolled stacks. PostgreSQL types map directly to TypeScript types via the generator. There is no DTO layer in the middle that can disagree with either the database or the frontend. Schema drift is impossible by construction: if a column is renamed, the generated client changes shape on the next dev restart, and every consumer fails to compile.
The schema is the single source of truth. There is no ORM mapping that can lie about it.
The test suite — 110 SQL test files totaling 4,756 lines — runs against the real PostgreSQL engine, not a mock or in-memory fake. Every assertion exercises the same code path that production uses. This is harder to do well than a conventional unit-test suite, but the tests that exist are categorically more truthful.
A case study that doesn't acknowledge tradeoffs is a sales pitch. After working through the obvious objections, two stand up:
Younger ecosystem. NpgsqlRest is newer and has a smaller community than ASP.NET Core or FastAPI. Fewer Stack Overflow answers, fewer third-party plugins, fewer "battle-tested by a thousand companies" reassurance signals. Mitigated by the fact that PostgreSQL itself — which does most of the heavy lifting in this architecture — is anything but new.
SQL fluency is a precondition, not a nice-to-have. Anyone working on the backend has to be comfortable in PL/pgSQL: not just SELECTs, but window functions, CTEs, procedural control flow, and reading EXPLAIN output. AI tooling has closed most of the on-ramp — modern coding assistants write competent PL/pgSQL on demand — but the architecture genuinely rewards teams that invest in SQL skill rather than treating it as a thing the ORM hides.
That's the honest list. A few other objections look like tradeoffs at first but don't survive scrutiny:
"Refactoring SQL across a schema lacks IDE support." In practice, the auto-generated TypeScript client gives every backend function a real, IDE-indexed symbol on the frontend (some_function_name → someFunctionName). "Find all references" on the generated function locates every cross-stack caller. Modern PostgreSQL IDEs (DataGrip, JetBrains DB tools) also index PL/pgSQL, and the database itself fails function creation if a referenced object is missing. The cross-stack refactoring story is, if anything, better than in conventional architectures.
"Logic-heavy SQL is harder to test." The opposite turned out to be true on this project. set constraints all deferred plus a transaction-scoped rollback gives clean isolation with no fixture framework. Putting drop function, create function, and the test in a single .sql file lets you re-run the entire cycle on save — a feedback loop measurably faster than rebuilding a .NET or Python project. Different idiom from xUnit / pytest, but not harder. (Since this project shipped, NpgsqlRest 3.19 turned this pattern into a built-in SQL test runner — .sql tests invoking the real endpoints in-process, with watch mode and coverage reporting.)
"Lock-in to NpgsqlRest." The exit path is to write the controller layer and cross-cutting concerns you skipped — i.e., to do the ~3,500–7,300 LOC of host-language work this case study just argued against. That isn't lock-in in any meaningful sense; it's a choice that's reversible at exactly the price the alternative architecture charges upfront. The SQL stays portable.
"Calling external APIs requires a host language." It doesn't. NpgsqlRest's HTTP Types let you declare external REST calls in a PostgreSQL type comment using .http file syntax — function parameters substitute into URLs, headers, and request bodies, and the response is handed to your function as a parameter. The HTTP call is made from the NpgsqlRest tier, not from inside the database, so there's no pgsql-http extension to install and no database connection sitting blocked on a remote service. For full gateway scenarios, the reverse proxy@proxy annotation supports both passthrough and transform modes (response routed through a PG function for caching, enrichment, or transformation). External integration is one of the architecture's stronger stories, not a weak point.
It isn't a benchmark. It isn't a controlled study. It's a single production application, observed honestly, with the numbers reported as they are.
What it does establish is that the architecture works — not as a demo, not as a "how-to," but as the substrate of a real product that has shipped 1,500+ builds. The combination most people assume can't be done without host code (WebAuthn, data-protection keys, real-time SSE streaming, an admin/observability surface, a generated frontend client, structured tests, and — when the team gets to them — rate limiting and response caching) is all here, in SQL and configuration, in production.
If you've been wondering whether a database-first architecture scales past CRUD demos, this is the existence proof.
',67)),r(t,{"get-started":[{text:"TypeScript Code Generation Walkthrough",href:"/blog/typescript-codegen-walkthrough"},{text:"Implementing WebAuthn Passkeys with Pure SQL",href:"/blog/passkey-sql-auth"},{text:"The Power of Simplicity",href:"/blog/the-power-of-simplicity"},{text:"PostgreSQL REST API Benchmark 2026",href:"/blog/postgresql-rest-api-benchmark-2026"},{text:"Quick Start Guide",href:"/guide/quick-start"}]})])}const y=o(d,[["render",c]]);export{f as __pageData,y as default};
diff --git a/assets/blog_case-study-zero-backend-code.md.BnEeD2xb.lean.js b/assets/blog_case-study-zero-backend-code.md.BnEeD2xb.lean.js
new file mode 100644
index 000000000..f90100842
--- /dev/null
+++ b/assets/blog_case-study-zero-backend-code.md.BnEeD2xb.lean.js
@@ -0,0 +1 @@
+import{_ as o,C as n,c as a,o as i,a5 as s,G as r}from"./chunks/framework.CgT1UzWm.js";const f=JSON.parse('{"title":"Case Study: 74 Endpoints, Zero Backend Code — A Production App Built Entirely on NpgsqlRest","titleTemplate":"NpgsqlRest","description":"What it actually looks like to ship a production application without a controller layer. Real numbers from a finance/visualization app: ~74 HTTP endpoints, 12K LOC of SQL, zero lines of C# or Python, and an estimated 3,500–7,300 LOC of host-language boilerplate eliminated versus an equivalent ASP.NET Core build.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Case Study: 74 Endpoints, Zero Backend Code — A Production App Built Entirely on NpgsqlRest","titleTemplate":"NpgsqlRest","description":"What it actually looks like to ship a production application without a controller layer. Real numbers from a finance/visualization app: ~74 HTTP endpoints, 12K LOC of SQL, zero lines of C# or Python, and an estimated 3,500–7,300 LOC of host-language boilerplate eliminated versus an equivalent ASP.NET Core build.","head":[["meta",{"name":"keywords","content":"npgsqlrest case study, postgresql first development, no backend code, sql first architecture, asp.net core comparison, fastapi comparison, production npgsqlrest, webauthn sql, lines of code saved"}],["meta",{"property":"og:title","content":"Case Study: A Production App with Zero Backend Code"}],["meta",{"property":"og:description","content":"74 endpoints, 12K LOC of SQL, zero C# or Python. Real numbers from the first production-grade NpgsqlRest deployment we know of."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Case Study: 74 Endpoints, Zero Backend Code"}],["meta",{"name":"twitter:description","content":"What it actually looks like to ship a production application without a controller layer. Real numbers, honest tradeoffs."}]]},"headers":[],"relativePath":"blog/case-study-zero-backend-code.md","filePath":"blog/case-study-zero-backend-code.md"}'),d={name:"blog/case-study-zero-backend-code.md"};function c(l,e,h,p,u,g){const t=n("BlogNav");return i(),a("div",null,[e[0]||(e[0]=s("",67)),r(t,{"get-started":[{text:"TypeScript Code Generation Walkthrough",href:"/blog/typescript-codegen-walkthrough"},{text:"Implementing WebAuthn Passkeys with Pure SQL",href:"/blog/passkey-sql-auth"},{text:"The Power of Simplicity",href:"/blog/the-power-of-simplicity"},{text:"PostgreSQL REST API Benchmark 2026",href:"/blog/postgresql-rest-api-benchmark-2026"},{text:"Quick Start Guide",href:"/guide/quick-start"}]})])}const y=o(d,[["render",c]]);export{f as __pageData,y as default};
diff --git a/assets/blog_csv-excel-ingestion-postgresql-npgsqlrest.md.Rjqy9NyI.js b/assets/blog_csv-excel-ingestion-postgresql-npgsqlrest.md.Rjqy9NyI.js
new file mode 100644
index 000000000..5a7318340
--- /dev/null
+++ b/assets/blog_csv-excel-ingestion-postgresql-npgsqlrest.md.Rjqy9NyI.js
@@ -0,0 +1,335 @@
+import{_ as a,C as n,c as l,o as t,a5 as e,G as p}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse('{"title":"CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing","titleTemplate":"NpgsqlRest","description":"Import CSV and Excel files into PostgreSQL with dynamic schema handling. Row-by-row processing, automatic TypeScript client, progress tracking - all in SQL.","frontmatter":{"layout":"doc","outline":[2,3],"title":"CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing","titleTemplate":"NpgsqlRest","description":"Import CSV and Excel files into PostgreSQL with dynamic schema handling. Row-by-row processing, automatic TypeScript client, progress tracking - all in SQL.","head":[["meta",{"name":"keywords","content":"postgresql csv import, excel to postgresql, csv upload api, postgresql data ingestion, npgsqlrest csv, bulk import postgresql, excel file upload postgresql"}],["meta",{"property":"og:title","content":"CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing"}],["meta",{"property":"og:description","content":"Import CSV and Excel files into PostgreSQL with dynamic schema handling. Row-by-row processing in SQL."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"CSV and Excel Ingestion: PostgreSQL Row Processing"}],["meta",{"name":"twitter:description","content":"Import CSV and Excel into PostgreSQL with dynamic schema handling. Row-by-row processing."}]]},"headers":[],"relativePath":"blog/csv-excel-ingestion-postgresql-npgsqlrest.md","filePath":"blog/csv-excel-ingestion-postgresql-npgsqlrest.md"}'),h={name:"blog/csv-excel-ingestion-postgresql-npgsqlrest.md"};function k(r,s,d,o,c,g){const i=n("BlogNav");return t(),l("div",null,[s[0]||(s[0]=e(`
CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest
January 2026 · CSVExcelPostgreSQLData ImportNpgsqlRest
Most CSV and Excel import code makes you know the file structure in advance, hardcode it into your application, and redeploy on every change.
NpgsqlRest's CSV and Excel upload handlers move that structure into a SQL function instead: adding a column becomes a CREATE OR REPLACE, not a deployment. This tutorial walks through the row-by-row processing pipeline, with the auto-generated TypeScript client and progress tracking included.
Handle validation (MIME types, file size limits, format checking)
Integrate authentication to track who uploaded what
Write error handling for malformed files and partial failures
Create TypeScript types manually for the frontend
The result: a simple change like adding a column requires code changes, testing, and redeployment, on top of the hundreds of lines of boilerplate you wrote just to get the basics working.
TypeScript client with progress tracking? Auto-generated.
Your row function receives a text[] array containing whatever is in the row. That's it. No hardcoded structure, no column mappings in application code, no redeployment when formats change.
Simply put:
Your row function is executed for every row in the file
You receive dynamic data as text[] - the raw values from that row
You receive upload metadata - file name, content type, user claims
You receive the result from the previous row - enabling accumulation patterns (like returning the last inserted ID)
When the file structure changes, you just ALTER or CREATE OR REPLACE your row function. No application restart required.
The same row function works for both CSV and Excel with minor metadata differences. You can even reuse the same function for both if you don't need sheet-specific handling.
The $3 parameter (_prev_result) receives whatever the previous row's function call returned. For the first row, it's NULL. This enables accumulation patterns:
-- Insert and return the new ID
+insert into orders (...) values (...) returning id into _new_id;
+return _new_id; -- Next row receives this as _prev_result
1 2 3
Summing a column:
sql
sql
return coalesce(_prev_result, 0) + (_row[3])::numeric; -- Sum column 3
Key difference: Excel includes sheet (current sheet name) and rowIndex (actual Excel row number including empty rows). CSV does not have these - use $1 for the row index.
comment on function excel_upload(json) is '
+HTTP POST
+@upload for excel
+@sheet_name = Transactions
+@row_command = select process_transaction_row($1,$2,$3,$4)';
All row commands execute within a single transaction. If any row fails:
All previous inserts are rolled back
Error is returned to the client
No partial imports
This is automatic - you don't write transaction handling code.
Combining Handlers: Process AND Store the Original File
You can combine CSV/Excel handlers with file_system or large_object handlers to both process the rows AND store the original file. This is useful when you need to:
Keep the original file for audit/compliance
Allow users to download the source file later
Reprocess the file if business logic changes
sql
sql
comment on function example_7.csv_upload(json) is '
+HTTP POST
+@upload for csv, large_object
+@param _meta is upload metadata
+@row_command = select example_7.csv_upload_row($1,$2,$3,$4)';
1 2 3 4 5
The handler list is comma-separated. With this configuration:
The CSV handler processes each row via row_command
The CSV entry contains lastResult (final row function return value), while the Large Object entry contains oid (PostgreSQL Large Object identifier for retrieving the file later).
You can store both in your database:
sql
sql
insert into csv_imports (file_name, rows_processed, original_file_oid)
+select
+ m->>'fileName',
+ (m->>'lastResult')::int,
+ (select (x->>'oid')::bigint from json_array_elements(_meta) x where x->>'type' = 'large_object')
+from json_array_elements(_meta) m
+where m->>'type' = 'csv' and (m->>'success')::boolean = true;
1 2 3 4 5 6 7
If any row command fails or raises an exception, the entire transaction rolls back - including the Large Object storage. The original file won't be saved if processing fails.
You get structured data extraction and original-file preservation in a single transaction.
Fallback Handler: One Endpoint for Both Excel and CSV
Updated in 3.8.0
The fallback_handler parameter is now available on all upload handlers (previously Excel-only). This enables scenarios like CSV format check fails on a binary file → fall back to large_object or file_system to save the raw file.
Sometimes users don't know (or care) whether their file is .xlsx or .csv - they just want to upload it. With the fallback_handler parameter, you can create a single upload endpoint that tries Excel first and automatically falls back to CSV if the file isn't a valid Excel format:
sql
sql
create or replace function example_7.combined_upload(
+ _meta json = null
+)
+returns json
+language sql
+begin atomic;
+select _meta;
+end;
+
+comment on function example_7.combined_upload(json) is '
+HTTP POST
+@authorize
+@upload for excel
+@param _meta is upload metadata
+@all_sheets = true
+@fallback_handler = csv
+@row_command = select example_7.combined_upload_row($1,$2,$3,$4)';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
When @fallback_handler = csv is set:
The Excel handler (ExcelDataReader) tries to parse the uploaded file first
If it fails (invalid Excel format), the handler automatically delegates to the CSV handler
The same @row_command is used for both - your row function receives text[] either way
This is simpler than the combined handler approach when you just want to accept either format. No need for separate endpoints - one function handles both:
sql
sql
create or replace function example_7.combined_upload_row(
+ _index int,
+ _row text[],
+ _prev_result int,
+ _meta json
+)
+returns int
+language plpgsql
+as $$
+begin
+ insert into example_7.combined_uploads (user_id, file_name, sheet_name, row_index, row_data)
+ values (
+ (_meta->'claims'->>'user_id')::int,
+ _meta->>'fileName',
+ _meta->>'sheet', -- NULL for CSV, sheet name for Excel
+ _index,
+ coalesce(_row, '{}')
+ );
+
+ return coalesce(_prev_result, 0) + 1;
+end;
+$$;
Implementing this the traditional way means everything on the checklist at the top of this post: parsing library, upload endpoint, validation, transactions, error handling, auth integration, hand-written frontend types - and a redeploy whenever the structure changes.
With NpgsqlRest, you write:
One SQL row function (~15-20 lines)
One SQL upload function (~8-10 lines)
A few annotation lines (~4 lines)
Parsing, validation, transactions, user claims, and the TypeScript client all come from the handler and the annotations - and a structure change is a CREATE OR REPLACE, not a redeploy.
Estimated savings: 80-90% less code, 90%+ time reduction.
The text[] approach means your row function receives whatever data is in the file. When you know the structure, cast and transform inline. When you don't, store raw and process later. When the structure changes, update the function - no application restart required.
One caveat: if you control the file format, need no per-row logic, and are loading very large files, plain COPY will still be faster. For everything user-facing, this approach covers it.
`,147)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/7_csv_excel_uploads","get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Upload Annotations",href:"/annotations/upload"},{text:"Upload Configuration",href:"/config/uploads"},{text:"Code Generation",href:"/config/codegen"}]})])}const u=a(h,[["render",k]]);export{F as __pageData,u as default};
diff --git a/assets/blog_csv-excel-ingestion-postgresql-npgsqlrest.md.Rjqy9NyI.lean.js b/assets/blog_csv-excel-ingestion-postgresql-npgsqlrest.md.Rjqy9NyI.lean.js
new file mode 100644
index 000000000..2d23c39b3
--- /dev/null
+++ b/assets/blog_csv-excel-ingestion-postgresql-npgsqlrest.md.Rjqy9NyI.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as l,o as t,a5 as e,G as p}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse('{"title":"CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing","titleTemplate":"NpgsqlRest","description":"Import CSV and Excel files into PostgreSQL with dynamic schema handling. Row-by-row processing, automatic TypeScript client, progress tracking - all in SQL.","frontmatter":{"layout":"doc","outline":[2,3],"title":"CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing","titleTemplate":"NpgsqlRest","description":"Import CSV and Excel files into PostgreSQL with dynamic schema handling. Row-by-row processing, automatic TypeScript client, progress tracking - all in SQL.","head":[["meta",{"name":"keywords","content":"postgresql csv import, excel to postgresql, csv upload api, postgresql data ingestion, npgsqlrest csv, bulk import postgresql, excel file upload postgresql"}],["meta",{"property":"og:title","content":"CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing"}],["meta",{"property":"og:description","content":"Import CSV and Excel files into PostgreSQL with dynamic schema handling. Row-by-row processing in SQL."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"CSV and Excel Ingestion: PostgreSQL Row Processing"}],["meta",{"name":"twitter:description","content":"Import CSV and Excel into PostgreSQL with dynamic schema handling. Row-by-row processing."}]]},"headers":[],"relativePath":"blog/csv-excel-ingestion-postgresql-npgsqlrest.md","filePath":"blog/csv-excel-ingestion-postgresql-npgsqlrest.md"}'),h={name:"blog/csv-excel-ingestion-postgresql-npgsqlrest.md"};function k(r,s,d,o,c,g){const i=n("BlogNav");return t(),l("div",null,[s[0]||(s[0]=e("",147)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/7_csv_excel_uploads","get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Upload Annotations",href:"/annotations/upload"},{text:"Upload Configuration",href:"/config/uploads"},{text:"Code Generation",href:"/config/codegen"}]})])}const u=a(h,[["render",k]]);export{F as __pageData,u as default};
diff --git a/assets/blog_custom-types-multiset-rest-api.md.BEa032jW.js b/assets/blog_custom-types-multiset-rest-api.md.BEa032jW.js
new file mode 100644
index 000000000..73284dcc6
--- /dev/null
+++ b/assets/blog_custom-types-multiset-rest-api.md.BEa032jW.js
@@ -0,0 +1,548 @@
+import{_ as a,C as n,c as l,o as t,a5 as p,G as h}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs","titleTemplate":"NpgsqlRest","description":"Learn how to use PostgreSQL custom types and table types in REST APIs. Return nested JSON structures, use composite types as parameters, and build hierarchical responses with NpgsqlRest.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs","titleTemplate":"NpgsqlRest","description":"Learn how to use PostgreSQL custom types and table types in REST APIs. Return nested JSON structures, use composite types as parameters, and build hierarchical responses with NpgsqlRest.","badge":"human","head":[["meta",{"name":"keywords","content":"postgresql custom types, composite types rest api, nested json postgresql, table types api, npgsqlrest nested, postgresql array types, hierarchical json response, postgresql type system"}],["meta",{"property":"og:title","content":"Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs"}],["meta",{"property":"og:description","content":"Learn how to use PostgreSQL custom types and table types in REST APIs. Return nested JSON structures with NpgsqlRest."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs"}],["meta",{"name":"twitter:description","content":"Use PostgreSQL custom types to build hierarchical REST API responses with automatic TypeScript generation."}]]},"headers":[],"relativePath":"blog/custom-types-multiset-rest-api.md","filePath":"blog/custom-types-multiset-rest-api.md"}'),e={name:"blog/custom-types-multiset-rest-api.md"};function k(r,s,d,F,y,o){const i=n("BlogNav");return t(),l("div",null,[s[0]||(s[0]=p(`
Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs
There has been some exciting new features added to NpgsqlRest lately, and I wanted to share them personally, so this post will be human-written.
Those features revolve mainly around usage of custom types in PostgreSQL, including composite types and table types and their support in TypeScript code generation.
Custom types were supported from the beginning, but now, this support has been greatly expanded.
So lets do a quick overview of custom types and how they can help us building better APIs.
Databa schema for this example is fairly simple, we have authors and books tables with a one-to-many relationship (one author can have many books). There is also a reviews table that holds reviews for books. Source code (schema ommitted here for brevity) can be found in the example folder:
sql
sql
create table authors (
+ author_id int not null generated always as identity primary key,
+ first_name text,
+ last_name text
+);
+
+create table books (
+ book_id int not null generated always as identity primary key,
+ title text not null,
+ author_id int references authors(author_id)
+);
+
+create table reviews (
+ review_id int not null generated always as identity primary key,
+ book_id int references books(book_id),
+ reviewer_name text,
+ rating int check (rating between 1 and 5),
+ review_text text,
+ created_at timestamp default now()
+);
+
+-- Test data for authors
+insert into authors (first_name, last_name) values
+ ('George', 'Orwell'),
+ ('Jane', 'Austen'),
+ ('Ernest', 'Hemingway'),
+ ('Virginia', 'Woolf'),
+ ('Franz', 'Kafka');
+
+-- Test data for books
+insert into books (title, author_id) values
+ ('1984', 1),
+ ('Animal Farm', 1),
+ ('Pride and Prejudice', 2),
+ ('Sense and Sensibility', 2),
+ ('The Old Man and the Sea', 3),
+ ('A Farewell to Arms', 3),
+ ('Mrs Dalloway', 4),
+ ('To the Lighthouse', 4),
+ ('The Metamorphosis', 5),
+ ('The Trial', 5);
+
+-- Test data for reviews
+insert into reviews (book_id, reviewer_name, rating, review_text) values
+ (1, 'Alice Johnson', 5, 'A chilling and prophetic masterpiece.'),
+ (1, 'Bob Smith', 4, 'Thought-provoking but bleak.'),
+ (1, 'Carol White', 5, 'Essential reading for everyone.'),
+ (2, 'David Brown', 5, 'Brilliant political allegory.'),
+ (2, 'Eve Davis', 4, 'Simple yet profound.'),
+ (3, 'Frank Miller', 5, 'The perfect romance novel.'),
+ (3, 'Grace Lee', 5, 'Witty and timeless.'),
+ (4, 'Henry Wilson', 4, 'Austen at her finest.'),
+ (5, 'Ivy Chen', 5, 'Beautiful and moving.'),
+ (5, 'Jack Taylor', 4, 'A short but powerful read.'),
+ (6, 'Karen Adams', 4, 'Hemingway''s prose shines.'),
+ (7, 'Leo Garcia', 5, 'Stream of consciousness done right.'),
+ (8, 'Mia Robinson', 4, 'Poetic and haunting.'),
+ (9, 'Noah Martinez', 5, 'Surreal and unforgettable.'),
+ (9, 'Olivia Clark', 3, 'Disturbing but brilliant.'),
+ (10, 'Paul Wright', 4, 'Kafka at his most absurd.');
Common usage of custom types is to return a single object with multiple fields.
sql
sql
/*
+* Get author by ID or all authors if ID is null and return author object from table type
+*/
+create function get_author(
+ _author_id int
+)
+returns authors
+language sql
+begin atomic;
+select author_id, first_name, last_name
+from authors
+where author_id = _author_id;
+end;
+comment on function get_author(int) is 'HTTP GET';
1 2 3 4 5 6 7 8 9 10 11 12 13 14
The entire client code for .http file and TypeScript with generated types is automatically generated when we run NpgsqlRest with development configuration (check the example on GitHub).
And when we call /api/example-12/get-author?authorId=1 we get the following response:
As we can see, the function returns a single authors type object. Of course, that is a table type, we can also define our own composite types if needed. For example:
sql
sql
create type author_info as (
+ first_name text,
+ last_name text,
+ books int
+);
+
+/*
+* Get author info by ID and return custom type with additional info
+*/
+create function get_author_info(
+ _author_id int
+)
+returns author_info
+language sql
+begin atomic;
+select first_name, last_name, count(b.*)
+from authors a
+left join books b using (author_id)
+where author_id = _author_id
+group by author_id, first_name, last_name;
+end;
+comment on function .get_author_info(int) is 'HTTP GET';
This shows how we can use custom composite types to return simple JSON objects with specific fields. These types can also be reused accross multiple functions and even as parameters as we will see next.
For example, we can reuse entire authors table type as a parameter to insert a new author:
sql
sql
/*
+* Create author by passing author object as parameter to function.
+* Demonstrates passing custom type as parameter to function. It can be user-defined type or table type.
+* Type fields are unnested into individual parameters: authorFirstName, authorLastName
+*/
+create function create_author(
+ _author authors
+)
+returns authors
+language sql
+begin atomic;
+insert into authors (first_name, last_name)
+values (_author.first_name, _author.last_name)
+returning author_id, first_name, last_name;
+end;
+comment on function create_author(authors) is 'HTTP POST';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
We now have generated .http test call (along with TypeScript client code and types) that looks like this:
http
http
// function create_author(
+// _author_author_id integer,
+// _author_first_name text,
+// _author_last_name text
+// )
+// returns record
+//
+// comment on function create_author is 'HTTP POST
+POST {host}/api/example-12/create-author
+content-type: application/json
+
+{
+ "authorAuthorId": 1,
+ "authorFirstName": "XYZ",
+ "authorLastName": "IJK"
+}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
And when we call this endpoint with the above body, we get the following response:
You may notice that parameter names are prefixed with the type name (authorAuthorId, authorFirstName, etc). This is because custom type fields are expanded and merged with normal parameters.
The prefix avoids name collisions when multiple custom types are used as parameters in the same function. The separator between the type name and field name can be customized using the CustomTypeParameterSeparator setting in Routine Options.
If, for example, we would add two more parameters to the above function:
sql
sql
create function create_author(
+ _param1 text,
+ _author authors,
+ _param2 int
+)
+...
1 2 3 4 5 6
The generated parameter names would be: param1, authorAuthorId, authorFirstName, authorLastName and param2.
This is simple and effective way to share same types across multiple functions easily, either as return types or parameter types.
The most common usage of custom types is to return sets of objects, for example, returning all books for an author:
sql
sql
/*
+* Get author by ID or all authors if ID is null and return author object from table type
+*/
+create function get_authors(
+ _author_id int
+)
+returns setof authors
+language sql
+begin atomic;
+select author_id, first_name, last_name
+from authors
+where
+ _author_id is null or author_id = _author_id;
+end;
+comment on function get_authors(int) is 'HTTP GET';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Calling /api/example-12/get-authors now returns as expected a list of authors:
That is all fine, but in real-world scenarios, we rarely want to return the exact table structure. Those are our entities, meant to be part of the data model, we want to return something more tailored to the API consumer needs.
For example, we may want to return authors along with, for example, number of books they have written, then we may do something like this:
sql
sql
create function get_authors_with_details(
+ _author_id int
+)
+returns table(
+ author authors,
+ books int
+)
+language sql
+begin atomic;
+select
+ row(a.author_id, first_name, last_name),
+ count(b.*)
+from authors a join books b using (author_id)
+where
+ _author_id is null or author_id = _author_id
+group by
+ a.author_id, first_name, last_name;
+end;
+comment on function get_authors_with_details(int) is 'HTTP GET';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
When we return a table type with multiple columns, NpgsqlRest will merge all columns, including custom types, into a single JSON object per row. The response for /api/example-12/get-authors-with-details now looks like this:
As we can see, the author custom type fields are merged into the main object, resulting in a flat structure that is easy to consume.
But we are not limited to table types, we can comibine multiple custom types, including user defined types as well:
sql
sql
-- Define a custom type to hold book statistics
+create type books_info as (
+ books int,
+ active_reviews int,
+ avg_rating numeric
+);
+
+create function get_authors_with_details_type(
+ _author_id int
+)
+returns table(
+ author authors,
+ books_info books_info
+)
+language sql
+begin atomic;
+select
+ row(a.author_id, a.first_name, a.last_name),
+ (count(distinct b.book_id), count(r.review_id), avg(r.rating))
+from
+ authors a
+ left join books b using (author_id)
+ left join reviews r on b.book_id = r.book_id
+where
+ _author_id is null or author_id = _author_id
+group by
+ a.author_id, first_name, last_name;
+end;
+comment on function get_authors_with_details_type(int) is '
+HTTP GET
+';
As we can see, we are returning two custom types now, table type authors and custom type books_info. Note on implementation and casting types:
We are using usage of row(...) constructor to create a table row that matches the authors type.
We are using tuple syntax (count(...), count(...), avg(...)) to create a composite type that matches the books_info type. In this case, no explicit casting is needed as PostgreSQL can infer the type from the return type declaration.
Resulting JSON for /api/example-12/get-authors-with-details-type now looks like this:
So, this a powerful way to build tailored API responses using custom types, while keeping the database functions clean and reusable. There is one more piece.
As we can see, the custom types are now nested within their own JSON objects, preserving the structure defined in the database function. And the best part is that TypeScript types are also generated accordingly, so we get proper type safety when consuming these APIs.
Starting from NpgsqlRest 3.4.0, we can now return nested JSON arrays (multisets) using custom types.
But, first, what is the Multiset?
In scenmarios when we are returning joined datasets with one-to-many relationships, such as authors and their books for example, typical SQL join query would return a flat result set with repeated author information for each book.
For example, consider the following simple query:
sql
sql
select * from authors join books using (author_id)
1
author_id
first_name
last_name
book_id
title
1
George
Orwell
1
1984
1
George
Orwell
2
Animal Farm
2
Jane
Austen
3
Pride and Prejudice
2
Jane
Austen
4
Sense and Sensibility
As we can see, author information is repeated for each book. Now imageine this query for thousands of authors and books, the result set would be huge and inefficient to transfer over the network.
And if we would join, for example, author addresses as well to form multiple one-to-many relationships, the result would something called the Cartesian Explosion, which a very bad thing, obviously we don't want that in our API.
To solve this problems, database vendors came up with the concept of Multiset, which allows us to return hierarchical data structures directly from the database.
Unfortunately, PostgreSQL does not have built-in support and in general, multisets are not widely supported in SQL databases. This is the support matrix from my AI research:
Database
Native MULTISET
Workaround
Oracle
✅ Full
-
Informix
✅ Full
-
PostgreSQL
❌
ARRAY, JSON_AGG
EDB Postgres
✅
Oracle compat mode
SQL Server
❌
FOR JSON/XML
MySQL
❌
JSON_ARRAYAGG
Teradata
Partial
SET/MULTISET tables
As we can see, we can use array workarounds in PostgreSQL to achieve similar results. And from NpgsqlRest 3.4.0, we can now use this to return nested JSON arrays using custom types. Let's see how that works.
sql
sql
create function get_authors_and_books(
+ _author_id int
+)
+returns table(
+ author authors,
+ books books[]
+)
+language sql
+begin atomic;
+select
+ row(
+ a.author_id, first_name, last_name
+ ),
+ array_agg(
+ row(b.book_id, b.title, b.author_id)::books
+ )
+from
+ authors a
+ left join books b using (author_id)
+where
+ _author_id is null or author_id = _author_id
+group by
+ a.author_id, first_name, last_name;
+end;
+comment on function get_authors_and_books(int) is '
+HTTP GET
+@nested
+';
So we now have a proper hierarchical JSON structure with authors and their books nested within just by returning arrays of custom types from our database function. As always, these can be any table or user defined type and TypeScript types are generated accordingly for type-safe consumption.
And this is even simpler then, for example, it would be in Oracle, where we would need to define MULTISET types explicitly. According to AI research, OraOracle/Informix/SQL Standard syntax would look something like this:
sql
sql
SELECT author_id, author_name,
+ MULTISET(SELECT book_id, title FROM books
+ WHERE books.author_id = authors.id) AS books
+FROM authors;
1 2 3 4
This may be more declarative, but it certainly doesn't have the automatic REST API and TypeScript generation like NpgsqlRest provides.
There are some limitations to be aware of when using nested JSON with multiset:
Nesting is limited to one level deep per function.
For example, if we wanted to return authors, together with their books and with reviews for each book, we would ran into limitations:
First of all, PostgreSQL does not support aggregation in aggregation, so we cannot do array_agg(...) inside another array_agg(...) in a single query:
code
ERROR:
+aggregate function calls cannot be nested
+LINE 11: array_agg(
1 2 3
This limitation can be worked around by using subqueries, temp tables or CTEs, but it gets complicated quickly. Example is in source code on GitHub (see link above).
But even if we could do that, prior to NpgsqlRest 3.4.4, only one level of nesting was supported per function. Any additional levels of nesting were rendered as PostgreSQL tuple strings in JSON.
Deep Nesting Support (v3.4.4+)
Since NpgsqlRest 3.4.4, the ResolveNestedCompositeTypes option (enabled by default) resolves nested composite types to any depth, serializing inner composites as proper JSON objects/arrays instead of PostgreSQL tuple strings. The limitation below only applies when ResolveNestedCompositeTypes is set to false.
For example, with ResolveNestedCompositeTypes: false, a single object in the JSON array would look like this:
Aggegations in PostgreSQL are accumulated in working memory and by default PostgreSQL allocates 4MB per aggregation operation (see the work_mem parameter). Those allocations are per operation and even a single query can have multiple aggregations, let alone multiple concurrent queries. When memory limit is exceeded, PostgreSQL spills to disk to complete the operation, which can severely impact performance.
This is a consideriation when using aggregations excessively, especially with large datasets on a busy server. Always monitor memory usage and tune work_mem accordingly.
Using custom types and multiset patterns in PostgreSQL with NpgsqlRest allows us to build expressive and efficient REST APIs with hierarchical JSON responses but as we can see, there are some limitations to be aware of.
There is a good workaround taht I use in my projects. More like different pattern. Simply, run multiple queries, preferably in parallel, instead of a single complex query with multiple levels of nesting. This pattern gives us:
Better performance by avoiding complex aggregations and joins.
No working memory pressure on the database server.
Two simlpler funcntions instead of one complex query.
We still get full type safety with generated TypeScript types for both functions.
Speaking of which, that might be just the best part of using NpgsqlRest with PostgreSQL. The amount of code that I dont have to write myself is incredible. You can see it in the example source code on GitHub (see link above), but just to illustrate, here is the copy and paste here just for the interfaces part, the entire file is much longer:
That is a lot of code that I did not have to write myself. Plus, there is also the .http test file with all the calls, which is also generated automatically.
I built this project to save me time and effort, and it does exactly that. I hope you find it useful as well. If you do, give it a star on GitHub!
`,112)),h(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/12_custom_types","get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Routine Options",href:"/config/routine-options"},{text:"Code Generation",href:"/config/codegen"}]})])}const u=a(e,[["render",k]]);export{c as __pageData,u as default};
diff --git a/assets/blog_custom-types-multiset-rest-api.md.BEa032jW.lean.js b/assets/blog_custom-types-multiset-rest-api.md.BEa032jW.lean.js
new file mode 100644
index 000000000..f8b0a8817
--- /dev/null
+++ b/assets/blog_custom-types-multiset-rest-api.md.BEa032jW.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as l,o as t,a5 as p,G as h}from"./chunks/framework.CgT1UzWm.js";const c=JSON.parse('{"title":"Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs","titleTemplate":"NpgsqlRest","description":"Learn how to use PostgreSQL custom types and table types in REST APIs. Return nested JSON structures, use composite types as parameters, and build hierarchical responses with NpgsqlRest.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs","titleTemplate":"NpgsqlRest","description":"Learn how to use PostgreSQL custom types and table types in REST APIs. Return nested JSON structures, use composite types as parameters, and build hierarchical responses with NpgsqlRest.","badge":"human","head":[["meta",{"name":"keywords","content":"postgresql custom types, composite types rest api, nested json postgresql, table types api, npgsqlrest nested, postgresql array types, hierarchical json response, postgresql type system"}],["meta",{"property":"og:title","content":"Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs"}],["meta",{"property":"og:description","content":"Learn how to use PostgreSQL custom types and table types in REST APIs. Return nested JSON structures with NpgsqlRest."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs"}],["meta",{"name":"twitter:description","content":"Use PostgreSQL custom types to build hierarchical REST API responses with automatic TypeScript generation."}]]},"headers":[],"relativePath":"blog/custom-types-multiset-rest-api.md","filePath":"blog/custom-types-multiset-rest-api.md"}'),e={name:"blog/custom-types-multiset-rest-api.md"};function k(r,s,d,F,y,o){const i=n("BlogNav");return t(),l("div",null,[s[0]||(s[0]=p("",112)),h(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/12_custom_types","get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Routine Options",href:"/config/routine-options"},{text:"Code Generation",href:"/config/codegen"}]})])}const u=a(e,[["render",k]]);export{c as __pageData,u as default};
diff --git a/assets/blog_database-level-security-postgresql-authentication.md.CI9eBklt.js b/assets/blog_database-level-security-postgresql-authentication.md.CI9eBklt.js
new file mode 100644
index 000000000..48af8f67e
--- /dev/null
+++ b/assets/blog_database-level-security-postgresql-authentication.md.CI9eBklt.js
@@ -0,0 +1,326 @@
+import{_ as a,C as n,c as l,o as e,a5 as t,G as p}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse('{"title":"Database-Level Security: Building Secure Authentication with PostgreSQL","titleTemplate":"NpgsqlRest","description":"Implement Principle of Least Privilege at the database level. Build secure authentication with PostgreSQL SECURITY DEFINER, search path protection, and advanced password hashing.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Database-Level Security: Building Secure Authentication with PostgreSQL","titleTemplate":"NpgsqlRest","description":"Implement Principle of Least Privilege at the database level. Build secure authentication with PostgreSQL SECURITY DEFINER, search path protection, and advanced password hashing.","head":[["meta",{"name":"keywords","content":"postgresql security, database authentication, postgresql security definer, principle of least privilege postgresql, postgresql password hashing, secure api postgresql, npgsqlrest auth"}],["meta",{"property":"og:title","content":"Database-Level Security: Secure Authentication with PostgreSQL"}],["meta",{"property":"og:description","content":"Implement Principle of Least Privilege at the database level. Secure authentication with PostgreSQL."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Database-Level Security with PostgreSQL"}],["meta",{"name":"twitter:description","content":"Implement Principle of Least Privilege. Build secure auth with PostgreSQL."}]]},"headers":[],"relativePath":"blog/database-level-security-postgresql-authentication.md","filePath":"blog/database-level-security-postgresql-authentication.md"}'),h={name:"blog/database-level-security-postgresql-authentication.md"};function k(r,s,c,d,o,g){const i=n("BlogNav");return e(),l("div",null,[s[0]||(s[0]=t(`
Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest
January 2026 · SecurityPostgreSQLAuthenticationNpgsqlRest
Most web applications treat databases as dumb storage - a place to persist data that the application logic protects. This is backwards. Your database is the last line of defense, and it should be the strongest.
This post demonstrates how to build an authentication system that uses PostgreSQL as the security boundary: the Principle of Least Privilege enforced at the database level, plus a password hashing scheme that sidesteps bcrypt's 72-byte limit.
The Principle of Least Privilege states that any user, program, or process should have only the minimum privileges necessary to perform its function. In traditional web applications, the database connection often has full access to all tables - a disaster waiting to happen.
With NpgsqlRest, we implement PoLP at the database level:
mermaid
flowchart TB
+ APP["Application
+ (app_user role)"]
+
+ APP --> PUB
+
+ subgraph PUB["example_3_public schema — ONLY schema app_user can access"]
+ L["login()
+ SECURITY DEFINER"]
+ LO["logout()
+ SECURITY DEFINER"]
+ W["who_am_i()"]
+ end
+
+ L & LO --> PROT
+
+ subgraph PROT["example_3 schema — app_user has NO ACCESS here"]
+ UT["users table
+ (passwords)"]
+ HP["hash_password()
+ verify_password()"]
+ end
The whole design rests on one rule: the application role cannot access tables directly. It can only call functions in a public schema, and those functions use SECURITY DEFINER to access protected data.
The example_3 schema contains sensitive data and internal functions. This is defined in V1__example_3_schema.sql - a versioned migration. The V1__ prefix means this is version 1, and versioned migrations only run once (unlike repeatable R__ migrations that run on every change).
sql
sql
-- V1__example_3_schema.sql (versioned migration - runs only once)
+
+-- Create the protected schema
+drop schema if exists example_3 cascade;
+create schema example_3;
+
+-- Enable pgcrypto for password hashing
+create extension if not exists pgcrypto with schema example_3;
+
+-- Users table with password hashes
+create table example_3.users (
+ user_id int primary key generated always as identity,
+ username text not null,
+ email text not null,
+ password_hash text[] not null -- Array of hashes (explained below)
+);
Here's where PoLP becomes concrete. We create a role with minimal permissions:
sql
sql
-- Create application role with minimal privileges
+create role \${APP_USER} with
+ login
+ nosuperuser
+ nocreatedb
+ nocreaterole
+ noinherit
+ noreplication
+ connection limit -1
+ password '\${APP_PASSWORD}';
+
+-- Grant ONLY usage on the public schema
+-- This is the ONLY grant this role needs
+grant usage on schema example_3_public to \${APP_USER};
1 2 3 4 5 6 7 8 9 10 11 12 13 14
The \${APP_USER} and \${APP_PASSWORD} placeholders are environment variables that get replaced when running migrations. The pgmigrations tool supports this \${VAR} syntax for variable substitution.
Note on credentials: In this example, APP_USER and APP_PASSWORD are stored in the .env file alongside the superuser credentials used to run migrations. This is for demonstration purposes only. In production, these credentials should be stored separately - the superuser credentials belong to whoever administers the database and runs migrations (DevOps, DBA, etc.), while the application credentials should be managed through your secrets management system.
Note what's not granted:
No access to example_3 schema
No access to any tables
No ability to create objects
No superuser privileges
The application can only execute functions in example_3_public. Period.
Bcrypt is the gold standard for password hashing, but it has a critical limitation: it silently ignores everything after byte 72. This means these two passwords hash identically:
-- R__1_example_3_hash_password.sql
+
+--
+-- Bcrypt has a 72-byte input limit - any characters beyond that are silently ignored.
+-- This function overcomes that limitation by splitting passwords into 72-char segments,
+-- hashing each segment separately, and returning an array of hashes.
+-- This allows secure hashing of passwords with unlimited length.
+--
+create or replace function example_3.hash_password(
+ _input text
+)
+returns text[]
+parallel safe
+language plpgsql
+as
+$$
+declare
+ _segment text;
+ _result text[] = '{}';
+ _alg text = 'bf'; -- Blowfish (bcrypt)
+ _i int;
+ _max_len constant int = 72;
+begin
+ for _i in 0..ceil(length(_input) / _max_len) + 1 loop
+ _segment = substring(_input from _i * _max_len + 1 for _max_len);
+ if length(_segment) > 0 then
+ _result = array_append(_result, example_3.crypt(_segment, example_3.gen_salt(_alg)));
+ end if;
+ end loop;
+
+ return _result;
+end;
+$$;
Default behavior (SECURITY INVOKER): Functions run with the privileges of the user calling them
SECURITY DEFINER: Functions run with the privileges of the user who created them
Since migrations are run by a superuser (or at least a privileged role), functions marked SECURITY DEFINER will execute with those elevated privileges - even when called by the restricted application role.
This is the key mechanism that makes PoLP work:
The example_3_public schema contains only the functions that the application needs to call - nothing else
The application role has USAGE on example_3_public schema, so it can discover and call those functions
Those functions are SECURITY DEFINER, so they run as the superuser who created them
Inside the function, we can access example_3.users table - something the application role cannot do directly
SECURITY DEFINER functions have a well-known vulnerability: search path injection. When a function calls other functions or operators without schema-qualifying them, PostgreSQL uses the search_path to resolve them. An attacker can manipulate this path to substitute malicious functions that execute with elevated privileges.
For example, if a SECURITY DEFINER function uses the + operator without qualification, an attacker could:
Create a schema they control
Define a malicious + operator in that schema
Manipulate search_path to prioritize their schema
When the function runs as superuser, the malicious operator executes with superuser privileges
The fix is simple: always set search_path explicitly on SECURITY DEFINER functions:
sql
sql
set search_path = pg_catalog, pg_temp
1
This ensures only trusted system catalogs are searched. Even if a function doesn't call other functions, it's good practice to include this on all SECURITY DEFINER functions as defense in depth.
The login annotation marks this as an authentication endpoint. Here's how it works:
The function must return a named record (table) - returning void, simple values, or an empty result triggers 401 Unauthorized
The scheme column specifies which configured authentication scheme to use (in this case 'cookies', but it could be any scheme you've configured - Bearer tokens, JWT, etc.)
All other columns (user_id, username, email) become security claims stored in the authentication cookie
-- R__example_3_public_logout.sql
+
+create or replace function example_3_public.logout()
+returns text
+set search_path = pg_catalog, pg_temp
+language sql
+security definer
+begin atomic;
+select 'cookies'; -- Return the scheme to clear
+end;
+
+comment on function example_3_public.logout() is
+'HTTP POST
+@logout
+@authorize'; -- Requires authentication
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
The logout annotation tells NpgsqlRest to clear the authentication cookie.
The parameters _user_id, _username, and _email are filled in automatically by NpgsqlRest from the authenticated user's claims - the client never sends them.
Traditional SQL injection exploits often rely on the application having broad database permissions. With PoLP:
sql
sql
-- Attacker tries: ' OR '1'='1
+-- Even if injection succeeds, app_user can only call functions in example_3_public
+-- No direct table access means no data exfiltration
Password hashing and verification happen entirely in PostgreSQL. The application never sees raw passwords or hashes - it just passes them to functions.
Security should be built into the architecture, not bolted on. A restricted application role, a separate public schema, SECURITY DEFINER functions with a pinned search_path, and segmented bcrypt hashing inside the database add up to an application that stays secure by default - even when the layer above it is compromised.
Combined with NpgsqlRest's end-to-end type safety and superior performance, this approach delivers applications that are not only faster and more maintainable, but fundamentally more secure.
The database is your most trusted component - treat it that way.
`,98)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/3_security_and_auth","get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Cookie Authentication",href:"/config/auth#cookie-authentication"},{text:"Authentication Options",href:"/config/authentication-options"}]})])}const u=a(h,[["render",k]]);export{F as __pageData,u as default};
diff --git a/assets/blog_database-level-security-postgresql-authentication.md.CI9eBklt.lean.js b/assets/blog_database-level-security-postgresql-authentication.md.CI9eBklt.lean.js
new file mode 100644
index 000000000..945284114
--- /dev/null
+++ b/assets/blog_database-level-security-postgresql-authentication.md.CI9eBklt.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as l,o as e,a5 as t,G as p}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse('{"title":"Database-Level Security: Building Secure Authentication with PostgreSQL","titleTemplate":"NpgsqlRest","description":"Implement Principle of Least Privilege at the database level. Build secure authentication with PostgreSQL SECURITY DEFINER, search path protection, and advanced password hashing.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Database-Level Security: Building Secure Authentication with PostgreSQL","titleTemplate":"NpgsqlRest","description":"Implement Principle of Least Privilege at the database level. Build secure authentication with PostgreSQL SECURITY DEFINER, search path protection, and advanced password hashing.","head":[["meta",{"name":"keywords","content":"postgresql security, database authentication, postgresql security definer, principle of least privilege postgresql, postgresql password hashing, secure api postgresql, npgsqlrest auth"}],["meta",{"property":"og:title","content":"Database-Level Security: Secure Authentication with PostgreSQL"}],["meta",{"property":"og:description","content":"Implement Principle of Least Privilege at the database level. Secure authentication with PostgreSQL."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Database-Level Security with PostgreSQL"}],["meta",{"name":"twitter:description","content":"Implement Principle of Least Privilege. Build secure auth with PostgreSQL."}]]},"headers":[],"relativePath":"blog/database-level-security-postgresql-authentication.md","filePath":"blog/database-level-security-postgresql-authentication.md"}'),h={name:"blog/database-level-security-postgresql-authentication.md"};function k(r,s,c,d,o,g){const i=n("BlogNav");return e(),l("div",null,[s[0]||(s[0]=t("",98)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/3_security_and_auth","get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Cookie Authentication",href:"/config/auth#cookie-authentication"},{text:"Authentication Options",href:"/config/authentication-options"}]})])}const u=a(h,[["render",k]]);export{F as __pageData,u as default};
diff --git a/assets/blog_end-to-end-static-type-checking-postgresql-typescript.md.B_IRfXH-.js b/assets/blog_end-to-end-static-type-checking-postgresql-typescript.md.B_IRfXH-.js
new file mode 100644
index 000000000..1e25d6b9b
--- /dev/null
+++ b/assets/blog_end-to-end-static-type-checking-postgresql-typescript.md.B_IRfXH-.js
@@ -0,0 +1,497 @@
+import{_ as a,C as n,c as t,o as e,a5 as l,G as p}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse('{"title":"End-to-End Static Type Checking: PostgreSQL to TypeScript","titleTemplate":"NpgsqlRest","description":"Automatically generate TypeScript types from PostgreSQL functions. Catch database schema changes at compile time, not runtime. Full type safety from database to frontend.","frontmatter":{"layout":"doc","outline":[2,3],"title":"End-to-End Static Type Checking: PostgreSQL to TypeScript","titleTemplate":"NpgsqlRest","description":"Automatically generate TypeScript types from PostgreSQL functions. Catch database schema changes at compile time, not runtime. Full type safety from database to frontend.","head":[["meta",{"name":"keywords","content":"postgresql typescript types, auto generate typescript from sql, type-safe postgresql api, npgsqlrest codegen, postgresql to typescript, database schema typescript, sql function typescript"}],["meta",{"property":"og:title","content":"End-to-End Static Type Checking: PostgreSQL to TypeScript"}],["meta",{"property":"og:description","content":"Automatically generate TypeScript types from PostgreSQL functions. Catch database schema changes at compile time, not runtime."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"End-to-End Static Type Checking: PostgreSQL to TypeScript"}],["meta",{"name":"twitter:description","content":"Auto-generate TypeScript types from PostgreSQL. Catch schema changes at compile time."}]]},"headers":[],"relativePath":"blog/end-to-end-static-type-checking-postgresql-typescript.md","filePath":"blog/end-to-end-static-type-checking-postgresql-typescript.md"}'),h={name:"blog/end-to-end-static-type-checking-postgresql-typescript.md"};function k(r,s,d,c,o,g){const i=n("BlogNav");return e(),t("div",null,[s[0]||(s[0]=l(`
End-to-End Static Type Checking: PostgreSQL to TypeScript
TypeScript · Type Safety · Developer Experience · December 2025
With NpgsqlRest's automatic type generation, a database schema change breaks your TypeScript build before it ever reaches production. This post walks through a complete example of end-to-end static type checking, from PostgreSQL functions to TypeScript client code.
PostgreSQL functions let you encapsulate business logic in the database. When you keep logic there:
Centralized Logic: All application instances interact with the data consistently - especially valuable when multiple applications share the same database.
Improved Performance: By pushing logic down to the database layer, you reduce the need for data to travel back and forth between the database and application.
Atomic Operations: Functions can be executed as a single transaction, ensuring operations are atomic and consistent - particularly useful when making changes that involve multiple tables.
Ease of Maintenance: Fixing a bug or optimizing a query can be done directly in the database, with immediate effect across all instances - no application redeploy.
But perhaps the most underappreciated benefit is static type checking. PostgreSQL functions have explicit return types that the database enforces. This creates a natural contract that can be propagated all the way to your client code.
NpgsqlRest solves this by making PostgreSQL the single source of truth:
code
PostgreSQL Function → NpgsqlRest → Generated TypeScript API Client → Your Application
1
Any change to the PostgreSQL function signature automatically regenerates the TypeScript interfaces. If your application code references a property that no longer exists, the TypeScript compiler fails the build.
SQL Files Also Generate TypeScript
Starting with v3.12.0, SQL file endpoints also generate TypeScript clients automatically. However, SQL files don't provide the same level of database-enforced type checking that functions do — there's no returns table(...) contract that PostgreSQL validates at creation time. For maximum type safety, PostgreSQL functions remain the strongest approach and are the focus of this post. SQL files are better suited for simpler queries where the convenience of skipping CREATE FUNCTION outweighs the stricter type checking.
This function uses an explicit returns table(...) definition, specifying exactly which columns are returned. The function joins users and posts, filtering only active users.
When you define a function with returns table(...) or returns setof, PostgreSQL validates that your function body actually returns the declared types. If there's a mismatch, the function creation fails.
Consider this scenario - you have a function returning username text:
sql
sql
create or replace function example_2.get_posts()
+returns table(
+ username text,
+ content text,
+ created_at timestamp
+)
+language sql
+begin atomic;
+select u.username, p.content, p.created_at
+from example_2.posts p join example_2.users u using(user_id)
+where u.active = true;
+end;
1 2 3 4 5 6 7 8 9 10 11 12
Now imagine someone changes the username column in the users table to jsonb:
sql
sql
alter table example_2.users alter column username type jsonb using to_jsonb(username);
1
The next time you run your migration (which recreates the function), PostgreSQL will fail:
code
ERROR: return type mismatch in function declared to return record
+DETAIL: Final statement returns jsonb instead of text at column 1.
1 2
The database itself caught the type error. This happens at migration time, before any application code runs, before any TypeScript is compiled.
PostgreSQL function return types create an explicit contract:
Return Type Declaration
Contract
returns setof users
Must return all columns of users table, with matching types
returns table(username text, ...)
Must return exactly these columns with these types
returns int
Must return a single integer value
returns void
Must not return a value
This contract is enforced when:
The function is created or replaced
The function is called
If the underlying table structure changes in a way that breaks the contract, you discover it immediately when recreating the function - not when a user triggers the code path in production.
The pattern described here — SQL assertions with deferrable constraints and rollback isolation — is now a first-class feature: the SQL test runner (npgsqlrest --test) runs .sql test files against the real HTTP endpoints in-process, on each test's own transaction, with parallel isolated connections, watch mode, and endpoint-coverage reporting. Everything below still applies; the runner gives it a harness, a report, and CI integration.
Each function file includes an assert block that validates the function returns expected data. These assertions run during migration, providing immediate feedback:
sql
sql
do
+$$
+begin
+ assert (
+ select count(*) = 3
+ from example_2.get_users()
+ where (user_id, username, email, active) in (
+ (1, 'alice', 'alice@example.com', true),
+ (2, 'bob', 'bob@example.com', true),
+ (3, 'charlie', 'charlie@example.com', true)
+ )
+ ), 'get_users() does not contain expected data';
+end;
+$$;
1 2 3 4 5 6 7 8 9 10 11 12 13 14
If the assertion fails, the migration fails, and you know immediately that something is wrong. This creates a safety net ensuring:
The function executes without errors
The function returns the expected structure
Test data is present and correct
This is database-level unit testing that runs on every deployment.
Unit Testing PostgreSQL Functions: Beyond Fixed Data
The example above uses fixed test data that's inserted during migration. This approach is simple and effective, but what about testing with dynamic data or edge cases? Here are sturdier testing patterns.
Co-located Tests: Function and Test in the Same File
The most practical approach is to place tests directly in the same file as the function being tested. Since these files run on every build (the A__ prefix), your tests execute automatically with every migration.
Here's the complete pattern for A__example_2_get_users.sql:
sql
sql
-- A__example_2_get_users.sql
+
+create or replace function example_2.get_users()
+returns setof example_2.users
+language sql
+begin atomic;
+select user_id, username, email, active from example_2.users;
+end;
+
+comment on function example_2.get_users() is 'HTTP GET';
+
+-- Test: Verify function returns expected fixed data
+do
+$$
+begin
+ assert (
+ select count(*) = 3
+ from example_2.get_users()
+ where (user_id, username, email, active) in (
+ (1, 'alice', 'alice@example.com', true),
+ (2, 'bob', 'bob@example.com', true),
+ (3, 'charlie', 'charlie@example.com', true)
+ )
+ ), 'get_users() does not contain expected data';
+end;
+$$;
You can have multiple test blocks in the same file, each testing a different scenario:
sql
sql
-- A__example_2_get_posts.sql
+
+create or replace function example_2.get_posts()
+returns table(
+ username text,
+ content text,
+ created_at timestamp
+)
+language sql
+begin atomic;
+select u.username, p.content, p.created_at
+from example_2.posts p join example_2.users u using(user_id)
+where u.active = true;
+end;
+
+comment on function example_2.get_posts() is 'HTTP GET';
+
+-- Test 1: Verify function returns expected fixed data
+do
+$$
+begin
+ assert (
+ select count(*) = 5
+ from example_2.get_posts()
+ where (username, content, created_at) in (
+ ('alice', 'Hello world! This is my first post.', '2024-01-15 10:30:00'::timestamp),
+ ('alice', 'Learning PostgreSQL is fun!', '2024-01-16 14:20:00'::timestamp),
+ ('bob', 'Just joined this platform.', '2024-01-17 09:00:00'::timestamp),
+ ('charlie', 'Anyone here interested in databases?', '2024-01-18 11:45:00'::timestamp),
+ ('bob', 'Working on a new project today.', '2024-01-19 16:30:00'::timestamp)
+ )
+ ), 'get_posts() does not contain expected data';
+end;
+$$;
+
+-- Test 2: Verify inactive users' posts are excluded
+do
+$$
+declare
+ _count int;
+begin
+ -- Make charlie inactive
+ update example_2.users set active = false where username = 'charlie';
+
+ -- Count posts from charlie (should be 0 since he's now inactive)
+ select count(*) into _count
+ from example_2.get_posts()
+ where username = 'charlie';
+
+ assert _count = 0,
+ 'get_posts() should not return posts from inactive users';
+
+ rollback;
+end;
+$$;
+
+-- Test 3: New posts from active users appear in results
+do
+$$
+declare
+ _result record;
+begin
+ -- Insert a new post
+ insert into example_2.posts (user_id, content, created_at)
+ values (1, 'Brand new post!', now());
+
+ -- Verify it appears in results
+ select * into _result
+ from example_2.get_posts()
+ where content = 'Brand new post!';
+
+ assert _result.username = 'alice',
+ 'New post should appear with correct username';
+
+ rollback;
+end;
+$$;
-- Test: Function handles empty tables gracefully
+do
+$$
+declare
+ _count int;
+begin
+ -- Delete all data
+ delete from example_2.posts;
+ delete from example_2.users;
+
+ -- Test that function returns 0 rows (not an error)
+ select count(*) into _count from example_2.get_users();
+ assert _count = 0,
+ 'get_users() should return 0 rows when table is empty';
+
+ select count(*) into _count from example_2.get_posts();
+ assert _count = 0,
+ 'get_posts() should return 0 rows when table is empty';
+
+ rollback;
+end;
+$$;
user_id int references example_2.users(user_id) deferrable
1
The deferrable keyword is crucial for testing. By default, foreign key constraints are checked immediately when you insert a row. With deferrable constraints, checks can be deferred until the end of the transaction.
Since test transactions are rolled back anyway, deferrable constraints let you insert test data without first populating a dozen related tables. That removes most of the test setup work.
sql
sql
-- Test: Posts with deferred constraints
+do
+$$
+begin
+ -- Defer all constraint checks until transaction end
+ set constraints all deferred;
+
+ -- Insert post with non-existent user_id (constraint check deferred)
+ insert into example_2.posts (user_id, content, created_at)
+ values (999, 'Orphan post', now());
+
+ -- We can test our function here
+ -- The FK violation won't be checked because we'll rollback
+
+ rollback;
+end;
+$$;
This is simply not true for PostgreSQL. While testing stored procedures might be difficult in some database systems, PostgreSQL provides all the tools you need: anonymous blocks, assertions, and transaction control.
"Testing in a database is slow"
It's actually faster than most alternatives. When your test ends with rollback;, there's no cleanup needed - no truncating tables, no restoring backups. The rollback is nearly instantaneous. Compare this to spinning up Docker containers or re-seeding test databases.
"You can't do TDD with SQL"
You absolutely can. Write your test first in the function file:
sql
sql
-- A__example_2_create_user.sql
+
+-- Test first (this will fail until we implement create_user)
+do
+$$
+begin
+ perform example_2.create_user('newuser', 'new@example.com');
+
+ assert exists (
+ select 1 from example_2.users where username = 'newuser'
+ ), 'User should be created';
+
+ rollback;
+end;
+$$;
+
+-- Now implement the function to make the test pass
+create or replace function example_2.create_user(_username text, _email text)
+returns void
+language sql
+begin atomic;
+insert into example_2.users (username, email, active)
+values (_username, _email, true);
+end;
# 1. Run database migrations (recreates functions every time)
+bun run db:up
+
+# 2. Start NpgsqlRest (regenerates example2Api.ts from current functions)
+bun run dev
+
+# 3. Build TypeScript (catches any type mismatches)
+bun run build
1 2 3 4 5 6 7 8
If you change a column name in a PostgreSQL function:
db:up recreates the function with the new column
NpgsqlRest detects the schema change and regenerates example2Api.ts
bun run build fails because app.ts references the old column name
You update app.ts to use the new name
Build succeeds
The error is caught at build time, not runtime. No more mysterious undefined values in production.
Make PostgreSQL the single source of truth, regenerate types on every build, and schema mismatches get caught before they reach production.
The key ingredients:
PostgreSQL function return types that create explicit contracts enforced by the database
Always-run migrations (A__ prefix) that recreate functions and run tests on every build
Co-located tests in the same file as the function, using simple do $$ ... rollback; end; $$; blocks
Deferrable constraints that enable isolated, fast unit tests
NpgsqlRest's type generation that creates TypeScript interfaces from PostgreSQL signatures
TypeScript compilation that catches property mismatches
The result is a multi-layered type safety system:
code
PostgreSQL Schema
+ ↓ (enforced by DB)
+PostgreSQL Functions + Tests
+ ↓ (generated by NpgsqlRest)
+TypeScript Interfaces
+ ↓ (enforced by tsc)
+Application Code
1 2 3 4 5 6 7
Schema changes propagate through the entire stack, with the database and the compilers acting as your safety net.
And unit testing in PostgreSQL isn't slow or difficult. Anonymous blocks, transaction rollback, and deferrable constraints support the same TDD workflows you'd use in any other language - against your actual database logic, not a mock of it.
PostgreSQL functions (or SQL files for simpler queries)
Controller layer
—
API documentation
—
TypeScript types (manual)
TypeScript types (generated)
Integration tests
Co-located SQL tests
You eliminate entire layers. No ORM mappings to maintain. No repository pattern boilerplate. No controller classes. No manual API documentation. No hand-written TypeScript interfaces that drift out of sync with reality.
Full end-to-end type safety from PostgreSQL to TypeScript
The least amount of code - no boilerplate layers to maintain
A direct database-to-HTTP pipeline with no intermediate layers
Built-in testing that runs on every deployment
Automatic documentation through generated code
When you combine database-enforced types, automated type generation, compile-time checking, and co-located SQL tests, you get a development experience where "it works on my machine" actually means "it will work in production."
`,165)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/2_static_type_checking","get-started":[{text:"TypeScript Code Generation Walkthrough",href:"/blog/typescript-codegen-walkthrough"},{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Installation",href:"/guide/installation"},{text:"Code Generation Config",href:"/config/codegen"}]})])}const C=a(h,[["render",k]]);export{F as __pageData,C as default};
diff --git a/assets/blog_end-to-end-static-type-checking-postgresql-typescript.md.B_IRfXH-.lean.js b/assets/blog_end-to-end-static-type-checking-postgresql-typescript.md.B_IRfXH-.lean.js
new file mode 100644
index 000000000..05e28d219
--- /dev/null
+++ b/assets/blog_end-to-end-static-type-checking-postgresql-typescript.md.B_IRfXH-.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as t,o as e,a5 as l,G as p}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse('{"title":"End-to-End Static Type Checking: PostgreSQL to TypeScript","titleTemplate":"NpgsqlRest","description":"Automatically generate TypeScript types from PostgreSQL functions. Catch database schema changes at compile time, not runtime. Full type safety from database to frontend.","frontmatter":{"layout":"doc","outline":[2,3],"title":"End-to-End Static Type Checking: PostgreSQL to TypeScript","titleTemplate":"NpgsqlRest","description":"Automatically generate TypeScript types from PostgreSQL functions. Catch database schema changes at compile time, not runtime. Full type safety from database to frontend.","head":[["meta",{"name":"keywords","content":"postgresql typescript types, auto generate typescript from sql, type-safe postgresql api, npgsqlrest codegen, postgresql to typescript, database schema typescript, sql function typescript"}],["meta",{"property":"og:title","content":"End-to-End Static Type Checking: PostgreSQL to TypeScript"}],["meta",{"property":"og:description","content":"Automatically generate TypeScript types from PostgreSQL functions. Catch database schema changes at compile time, not runtime."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"End-to-End Static Type Checking: PostgreSQL to TypeScript"}],["meta",{"name":"twitter:description","content":"Auto-generate TypeScript types from PostgreSQL. Catch schema changes at compile time."}]]},"headers":[],"relativePath":"blog/end-to-end-static-type-checking-postgresql-typescript.md","filePath":"blog/end-to-end-static-type-checking-postgresql-typescript.md"}'),h={name:"blog/end-to-end-static-type-checking-postgresql-typescript.md"};function k(r,s,d,c,o,g){const i=n("BlogNav");return e(),t("div",null,[s[0]||(s[0]=l("",165)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/2_static_type_checking","get-started":[{text:"TypeScript Code Generation Walkthrough",href:"/blog/typescript-codegen-walkthrough"},{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Installation",href:"/guide/installation"},{text:"Code Generation Config",href:"/config/codegen"}]})])}const C=a(h,[["render",k]]);export{F as __pageData,C as default};
diff --git a/assets/blog_excel-export-table-format-postgresql-npgsqlrest.md.BuWwG6CQ.js b/assets/blog_excel-export-table-format-postgresql-npgsqlrest.md.BuWwG6CQ.js
new file mode 100644
index 000000000..10ce534d3
--- /dev/null
+++ b/assets/blog_excel-export-table-format-postgresql-npgsqlrest.md.BuWwG6CQ.js
@@ -0,0 +1,154 @@
+import{_ as a,C as n,c as t,o as e,a5 as l,G as p}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","titleTemplate":"NpgsqlRest","description":"Stream .xlsx Excel exports directly from PostgreSQL with constant memory usage. Zero allocations, native type mapping, and one SQL annotation. No more server-crashing export code.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","titleTemplate":"NpgsqlRest","description":"Stream .xlsx Excel exports directly from PostgreSQL with constant memory usage. Zero allocations, native type mapping, and one SQL annotation. No more server-crashing export code.","head":[["meta",{"name":"keywords","content":"postgresql excel export, xlsx streaming export, spreadcheetah postgresql, npgsqlrest excel, zero allocation excel, postgresql report download, table format rendering, postgresql stats endpoints"}],["meta",{"property":"og:title","content":"Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"}],["meta",{"property":"og:description","content":"Stream .xlsx Excel exports directly from PostgreSQL with constant memory usage. No more server-crashing export code."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"}],["meta",{"name":"twitter:description","content":"Stream .xlsx Excel exports from PostgreSQL with constant memory. Zero allocations, native types, one annotation."}]]},"headers":[],"relativePath":"blog/excel-export-table-format-postgresql-npgsqlrest.md","filePath":"blog/excel-export-table-format-postgresql-npgsqlrest.md"}'),h={name:"blog/excel-export-table-format-postgresql-npgsqlrest.md"};function r(k,s,o,d,c,g){const i=n("BlogNav");return e(),t("div",null,[s[0]||(s[0]=l(`
Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL
February 2026 · ExcelExportPostgreSQLPerformanceNpgsqlRest
After 20 years of maintaining codebases, I can confidently say: Excel export code is the worst part of any system. It eats all the memory. It crashes servers. It brings down production. I've seen teams isolate export services behind separate infrastructure just so a report download doesn't take the rest of the application with it.
NpgsqlRest 3.7.0 removes the problem at the source. One SQL annotation turns any PostgreSQL function into a streaming .xlsx download with constant memory usage, zero allocations per cell, and native Excel type mapping - all without writing a single line of application code.
The traditional approach to Excel exports goes something like this:
Execute a query and load the entire result set into memory
Create an in-memory workbook object (another copy of all the data)
Write cells one by one (allocating strings for each cell value)
Serialize the workbook to a byte array (yet another copy)
Send the byte array to the client
For a 1 million row report, you're looking at 3-4x the data size in memory simultaneously.
And that's the best case. In practice, export code often introduces N+1 query patterns that make things catastrophically worse. The export iterates over rows, and for each row it fires off additional queries to fetch related data - customer names, product details, category labels, audit info. A 100,000-row export becomes 100,001 database queries. The database connection pool fills up, response times spike across the entire application, and now your export isn't just crashing the export service - it's dragging down every other request in the system.
This is why export endpoints are the number one cause of OutOfMemoryException in enterprise systems. It's why teams build separate "report servers" and queue-based export systems. It's why a simple "Download to Excel" button requires an entire architecture discussion.
Rows flow directly from PostgreSQL to the browser. The full result set is never materialized in memory. There are no intermediate collections. No buffering the entire dataset.
All you need is one annotation:
sql
sql
comment on function get_report() is '
+HTTP GET
+@table_format = excel
+';
1 2 3 4
That's it. Your function's result set streams straight to the user's browser as an .xlsx download.
The implementation uses SpreadCheetah - a library designed specifically for forward-only spreadsheet generation with minimal allocations.
SpreadCheetah writes cells as value types (DataCell structs), avoiding heap allocations per cell. Combined with a pre-allocated cell array that gets reused for every row, memory pressure stays flat regardless of dataset size.
Integers, decimals, booleans, and DateTimes are written as native Excel types directly from the PostgreSQL reader - not stringified and re-parsed. Your numbers stay as numbers. Your dates stay as dates. Excel formulas work immediately without "Convert to Number" warnings.
Since Excel is compressed XML under the hood, some buffering is needed for the compression layer. But that buffering doesn't exceed ~80KB during export operations, regardless of whether you're exporting 100 rows or 10 million rows.
No reflection, no expression trees, no runtime code generation. Works with .NET's PublishAot and full trimming - important for the single-binary deployment that NpgsqlRest uses.
In a real application, this would be your reporting query - joins across tables, aggregations, window functions, whatever your report needs. The point is: the report logic lives in PostgreSQL, not in application code.
comment on function example_14.get_data(text,text,text) is '
+HTTP GET
+@authorize
+@table_format = {_format}
+@excel_file_name = {_excel_file_name}
+@excel_sheet = {_excel_sheet}
+@tsclient_url_only = true
+';
1 2 3 4 5 6 7 8
Annotation
Effect
@authorize
Require authentication
@table_format = {_format}
Dynamic format from _format parameter (html or excel)
@excel_file_name = {_excel_file_name}
Custom download filename from parameter
@excel_sheet = {_excel_sheet}
Custom worksheet name from parameter
@tsclient_url_only = true
Generate only URL constant in TypeScript (not a fetch function)
The {_format} placeholder resolves the table format from a function parameter, so the same endpoint serves both HTML table views and Excel downloads depending on what the client requests.
If you don't need dynamic format switching, you can hardcode the format:
sql
sql
-- Always Excel download
+comment on function monthly_report() is '
+HTTP GET
+@table_format = excel
+@excel_file_name = monthly_report.xlsx
+@excel_sheet = Report Data
+';
1 2 3 4 5 6 7
sql
sql
-- Always HTML table
+comment on function dashboard_data() is '
+HTTP GET
+@table_format = html
+';
For table format endpoints, the traditional fetch-based client doesn't make sense. You don't fetch() an Excel file - you navigate to it. That's what @tsclient_url_only = true is for.
NpgsqlRest generates only the URL constant and request interface:
Notice how the Excel filename includes a timestamp - each download gets a unique name. This is resolved on the server from the {_excel_file_name} placeholder.
Or for the simplest case, just a plain HTML link:
html
html
<a href="/api/example-14/get-data?format=html">View as HTML Table</a>
+<a href="/api/example-14/get-data?format=excel">Download Excel</a>
The HTML format renders results as a styled table suitable for browser viewing:
sql
sql
comment on function get_report() is '
+HTTP GET
+@table_format = html
+';
1 2 3 4
The HTML output is designed for copy-paste into Excel. Select the table in your browser, paste into Excel, and the data transfers cleanly with proper column alignment.
Version 3.7.0 also introduced PostgreSQL statistics endpoints - built-in HTTP endpoints for monitoring your database performance without writing any SQL:
This gives you four monitoring endpoints out of the box:
Endpoint
Source
What It Shows
/stats/routines
pg_stat_user_functions
Function call counts, execution times
/stats/tables
pg_stat_user_tables
Tuple counts, table sizes, scan counts, vacuum info
/stats/indexes
pg_stat_user_indexes
Index scan counts, index definitions
/stats/activity
pg_stat_activity
Active sessions, running queries, wait events
The default html output format renders as an HTML table you can view in the browser or copy-paste into Excel - the same HTML table format used by the table format rendering system.
# Clone the repository
+git clone https://github.com/NpgsqlRest/npgsqlrest-docs.git
+cd npgsqlrest-docs/examples
+
+# Install dependencies
+bun install
+
+# Navigate to the example
+cd 14_table_format
+
+# Apply database migrations
+bun run db:up
+
+# Start the server
+bun run dev
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Open http://localhost:8080, log in with alice / password123, and try both the HTML view and Excel download links.
Write the report as a PostgreSQL function, add @table_format = excel, and rows stream to the browser with native Excel types and a constant ~80KB buffer. No export library, no separate report server, no server crash at 3 AM because someone exported a large report.
One caveat: this produces raw tabular .xlsx - if you need charts, merged cells, or conditional formatting, you still want a workbook library. For plain data exports of any size, this is the simpler and safer option.
`,107)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/14_table_format",documentation:[{text:"Table Format Configuration",href:"/config/table-format"},{text:"Statistics Configuration",href:"/config/stats"},{text:"Annotations Reference",href:"/annotations/"}]})])}const F=a(h,[["render",r]]);export{u as __pageData,F as default};
diff --git a/assets/blog_excel-export-table-format-postgresql-npgsqlrest.md.BuWwG6CQ.lean.js b/assets/blog_excel-export-table-format-postgresql-npgsqlrest.md.BuWwG6CQ.lean.js
new file mode 100644
index 000000000..25cf669bc
--- /dev/null
+++ b/assets/blog_excel-export-table-format-postgresql-npgsqlrest.md.BuWwG6CQ.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as t,o as e,a5 as l,G as p}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","titleTemplate":"NpgsqlRest","description":"Stream .xlsx Excel exports directly from PostgreSQL with constant memory usage. Zero allocations, native type mapping, and one SQL annotation. No more server-crashing export code.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","titleTemplate":"NpgsqlRest","description":"Stream .xlsx Excel exports directly from PostgreSQL with constant memory usage. Zero allocations, native type mapping, and one SQL annotation. No more server-crashing export code.","head":[["meta",{"name":"keywords","content":"postgresql excel export, xlsx streaming export, spreadcheetah postgresql, npgsqlrest excel, zero allocation excel, postgresql report download, table format rendering, postgresql stats endpoints"}],["meta",{"property":"og:title","content":"Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"}],["meta",{"property":"og:description","content":"Stream .xlsx Excel exports directly from PostgreSQL with constant memory usage. No more server-crashing export code."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"}],["meta",{"name":"twitter:description","content":"Stream .xlsx Excel exports from PostgreSQL with constant memory. Zero allocations, native types, one annotation."}]]},"headers":[],"relativePath":"blog/excel-export-table-format-postgresql-npgsqlrest.md","filePath":"blog/excel-export-table-format-postgresql-npgsqlrest.md"}'),h={name:"blog/excel-export-table-format-postgresql-npgsqlrest.md"};function r(k,s,o,d,c,g){const i=n("BlogNav");return e(),t("div",null,[s[0]||(s[0]=l("",107)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/14_table_format",documentation:[{text:"Table Format Configuration",href:"/config/table-format"},{text:"Statistics Configuration",href:"/config/stats"},{text:"Annotations Reference",href:"/annotations/"}]})])}const F=a(h,[["render",r]]);export{u as __pageData,F as default};
diff --git a/assets/blog_external-api-calls-postgresql-http-types.md.C9zYiqiX.js b/assets/blog_external-api-calls-postgresql-http-types.md.C9zYiqiX.js
new file mode 100644
index 000000000..35051836e
--- /dev/null
+++ b/assets/blog_external-api-calls-postgresql-http-types.md.C9zYiqiX.js
@@ -0,0 +1,377 @@
+import{_ as a,C as n,c as l,o as t,a5 as e,G as p}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse('{"title":"Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Call external REST APIs directly from PostgreSQL functions using .http file syntax in type comments. No HTTP extensions, no middleware, just SQL.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Call external REST APIs directly from PostgreSQL functions using .http file syntax in type comments. No HTTP extensions, no middleware, just SQL.","head":[["meta",{"name":"keywords","content":"postgresql call external api, postgresql http request, sql call rest api, npgsqlrest http types, postgresql webhook, postgresql api integration, database api calls"}],["meta",{"property":"og:title","content":"Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"}],["meta",{"property":"og:description","content":"Call external REST APIs directly from PostgreSQL functions. No HTTP extensions, no middleware, just SQL."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Call External APIs from PostgreSQL: HTTP Types"}],["meta",{"name":"twitter:description","content":"Call external REST APIs directly from PostgreSQL. No extensions, no middleware, just SQL."}]]},"headers":[],"relativePath":"blog/external-api-calls-postgresql-http-types.md","filePath":"blog/external-api-calls-postgresql-http-types.md"}'),h={name:"blog/external-api-calls-postgresql-http-types.md"};function k(r,s,d,c,g,y){const i=n("BlogNav");return t(),l("div",null,[s[0]||(s[0]=e(`
Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest
HTTP · External APIs · Data Aggregation · January 2026
Calling an external REST API from a PostgreSQL function takes one type comment - no HTTP client libraries, no middleware services, no API gateway configuration, no PostgreSQL HTTP extensions to install. Just SQL.
NpgsqlRest's HTTP Types feature lets you define external API calls using the familiar .http file syntax right in your database. The HTTP request definition lives in a type comment, with function parameters automatically substituted into URLs, headers, and request bodies.
This tutorial builds a Financial Dashboard that aggregates data from two public APIs - currency exchange rates and cryptocurrency prices - combining them into a single response. All with about 50 lines of SQL.
Compiled and installed on every PostgreSQL instance
Distributed with your deployment - adding complexity to Docker images, managed databases, CI/CD pipelines
Maintained across versions - extension compatibility with PostgreSQL upgrades
Approved by DBAs - many organizations restrict which extensions can be installed
With managed database services (AWS RDS, Azure Database, Google Cloud SQL), you're often limited to a predefined list of extensions - and HTTP extensions may not be available.
With one addition that does the heavy lifting: placeholders. Any {parameter_name} in the URL, headers, or body is replaced with the corresponding function parameter value.
sql
sql
comment on type my_api is 'GET https://api.example.com/users/{_user_id}
+Authorization: Bearer {_token}
+Accept: application/json
+@timeout 10s';
1 2 3 4
When called with _user_id = 123 and _token = 'abc', NpgsqlRest makes:
code
GET https://api.example.com/users/123
+Authorization: Bearer abc
+Accept: application/json
First, create composite types to receive the API responses:
sql
sql
-- HTTP Type for Exchange Rate API
+create type example_9.exchange_rate_api as (
+ body jsonb,
+ status_code int,
+ success boolean,
+ error_message text
+);
+
+comment on type example_9.exchange_rate_api is 'GET https://open.er-api.com/v6/latest/{_base_currency}
+Accept: application/json
+@timeout 10s';
1 2 3 4 5 6 7 8 9 10 11
The comment defines:
GET request to the Exchange Rate API
{_base_currency} placeholder - substituted from function parameter
timeout 10s - request timeout
sql
sql
-- HTTP Type for CoinGecko API
+create type example_9.crypto_price_api as (
+ body jsonb,
+ status_code int,
+ success boolean,
+ error_message text
+);
+
+comment on type example_9.crypto_price_api is 'GET https://api.coingecko.com/api/v3/simple/price?ids={_crypto_ids_csv}&vs_currencies={_vs_currencies_csv}
+Accept: application/json
+@timeout 10s';
1 2 3 4 5 6 7 8 9 10 11
This API requires query parameters for cryptocurrency IDs and target currencies.
A single function can use multiple HTTP Types for sequential or parallel API calls:
sql
sql
create function fetch_with_enrichment(
+ _user_id text,
+ _user_api user_api_type, -- First API call
+ _preferences_api prefs_api_type -- Second API call
+)
+returns json
+language plpgsql
+as $$
+begin
+ -- Both APIs are called before this function executes
+ -- Results are available in _user_api and _preferences_api
+ return json_build_object(
+ 'user', (_user_api).body::json,
+ 'preferences', (_preferences_api).body::json
+ );
+end;
+$$;
External APIs can fail transiently — rate limiting (429), temporary server errors (503), network timeouts. The @retry_delay directive adds automatic retries:
sql
sql
-- Retry 3 times with increasing delays, only on 429 and 503:
+comment on type exchange_rate_api is '@retry_delay 1s, 2s, 5s on 429, 503
+GET https://open.er-api.com/v6/latest/{_base_currency}
+Accept: application/json
+@timeout 10s';
1 2 3 4 5
The delay list defines both the number of retries and the delay before each. Without the on filter, retries happen on any failure. See HTTP Client Options for full details.
Sensitive values like API tokens can be resolved server-side via SQL, keeping secrets out of client requests entirely:
sql
sql
comment on type paid_api is 'GET https://api.example.com/premium/{_query}
+Authorization: Bearer {_token}
+@timeout 10s';
+
+create function search_premium(
+ _query text,
+ _user_id int,
+ _req paid_api,
+ _token text default null
+) returns json ...
+
+comment on function search_premium(text, int, paid_api, text) is '
+_token = select api_token from user_tokens where user_id = {_user_id}
+';
1 2 3 4 5 6 7 8 9 10 11 12 13 14
The client calls GET /api/search-premium/?query=test&user_id=42. The server resolves _token from the database and substitutes it into the Authorization header — the token never leaves the server. See HTTP Client Options for full details.
-- Seconds (integer)
+comment on type api is '@timeout 30
+GET https://api.example.com/data';
+
+-- With suffix
+comment on type api is 'GET https://api.example.com/data
+@timeout 30s';
+
+-- TimeSpan format
+comment on type api is 'GET https://api.example.com/data
+@timeout 00:00:30';
HTTP Types reduce external API integration to a type comment: no client libraries, no PostgreSQL extensions, no service classes, no manual type definitions. The Financial Dashboard aggregates two external APIs in about 80 lines of SQL where the traditional approach needs 250+ lines across multiple files, plus dependencies, plus manual TypeScript types. They're the wrong tool for high-frequency polling or streaming - use background services or SSE for those - but for request-scoped API aggregation, the code you don't write has no bugs.
`,109)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/9_http_calls",documentation:[{text:"HTTP Type Annotation",href:"/annotations/http-type"},{text:"HTTP Client Options",href:"/config/http-client"}],"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Installation",href:"/guide/installation"},{text:"Configuration",href:"/guide/configuration"}]})])}const C=a(h,[["render",k]]);export{F as __pageData,C as default};
diff --git a/assets/blog_external-api-calls-postgresql-http-types.md.C9zYiqiX.lean.js b/assets/blog_external-api-calls-postgresql-http-types.md.C9zYiqiX.lean.js
new file mode 100644
index 000000000..76b7dbcc5
--- /dev/null
+++ b/assets/blog_external-api-calls-postgresql-http-types.md.C9zYiqiX.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as l,o as t,a5 as e,G as p}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse('{"title":"Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Call external REST APIs directly from PostgreSQL functions using .http file syntax in type comments. No HTTP extensions, no middleware, just SQL.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Call external REST APIs directly from PostgreSQL functions using .http file syntax in type comments. No HTTP extensions, no middleware, just SQL.","head":[["meta",{"name":"keywords","content":"postgresql call external api, postgresql http request, sql call rest api, npgsqlrest http types, postgresql webhook, postgresql api integration, database api calls"}],["meta",{"property":"og:title","content":"Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"}],["meta",{"property":"og:description","content":"Call external REST APIs directly from PostgreSQL functions. No HTTP extensions, no middleware, just SQL."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Call External APIs from PostgreSQL: HTTP Types"}],["meta",{"name":"twitter:description","content":"Call external REST APIs directly from PostgreSQL. No extensions, no middleware, just SQL."}]]},"headers":[],"relativePath":"blog/external-api-calls-postgresql-http-types.md","filePath":"blog/external-api-calls-postgresql-http-types.md"}'),h={name:"blog/external-api-calls-postgresql-http-types.md"};function k(r,s,d,c,g,y){const i=n("BlogNav");return t(),l("div",null,[s[0]||(s[0]=e("",109)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/9_http_calls",documentation:[{text:"HTTP Type Annotation",href:"/annotations/http-type"},{text:"HTTP Client Options",href:"/config/http-client"}],"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Installation",href:"/guide/installation"},{text:"Configuration",href:"/guide/configuration"}]})])}const C=a(h,[["render",k]]);export{F as __pageData,C as default};
diff --git a/assets/blog_index.md.CTEJ27sE.js b/assets/blog_index.md.CTEJ27sE.js
new file mode 100644
index 000000000..1b5d69bad
--- /dev/null
+++ b/assets/blog_index.md.CTEJ27sE.js
@@ -0,0 +1 @@
+import{_ as t,c as s,o as a,a5 as o}from"./chunks/framework.CgT1UzWm.js";const h=JSON.parse('{"title":"Blog","description":"","frontmatter":{"title":"Blog"},"headers":[],"relativePath":"blog/index.md","filePath":"blog/index.md"}'),n={name:"blog/index.md"};function r(i,e,l,p,g,c){return a(),s("div",null,e[0]||(e[0]=[o('
',3)]))}const u=t(n,[["render",r]]);export{h as __pageData,u as default};
diff --git a/assets/blog_index.md.CTEJ27sE.lean.js b/assets/blog_index.md.CTEJ27sE.lean.js
new file mode 100644
index 000000000..ec885ad08
--- /dev/null
+++ b/assets/blog_index.md.CTEJ27sE.lean.js
@@ -0,0 +1 @@
+import{_ as t,c as s,o as a,a5 as o}from"./chunks/framework.CgT1UzWm.js";const h=JSON.parse('{"title":"Blog","description":"","frontmatter":{"title":"Blog"},"headers":[],"relativePath":"blog/index.md","filePath":"blog/index.md"}'),n={name:"blog/index.md"};function r(i,e,l,p,g,c){return a(),s("div",null,e[0]||(e[0]=[o("",3)]))}const u=t(n,[["render",r]]);export{h as __pageData,u as default};
diff --git a/assets/blog_mcp-server-postgresql-ai-tools-npgsqlrest.md.DvISemRM.js b/assets/blog_mcp-server-postgresql-ai-tools-npgsqlrest.md.DvISemRM.js
new file mode 100644
index 000000000..c444568a7
--- /dev/null
+++ b/assets/blog_mcp-server-postgresql-ai-tools-npgsqlrest.md.DvISemRM.js
@@ -0,0 +1,43 @@
+import{_ as e,c as a,o as t,a5 as i}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"Turn PostgreSQL into MCP Tools an AI Agent Can Call","titleTemplate":"NpgsqlRest","description":"NpgsqlRest 3.17.0 adds Model Context Protocol support. Annotate a PostgreSQL function or .sql file with @mcp and it becomes a tool an AI agent can discover and call — one source, two interfaces (REST + MCP), no glue code.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Turn PostgreSQL into MCP Tools an AI Agent Can Call","titleTemplate":"NpgsqlRest","description":"NpgsqlRest 3.17.0 adds Model Context Protocol support. Annotate a PostgreSQL function or .sql file with @mcp and it becomes a tool an AI agent can discover and call — one source, two interfaces (REST + MCP), no glue code.","head":[["meta",{"name":"keywords","content":"mcp server postgresql, model context protocol postgresql, ai agent tools postgresql, npgsqlrest mcp, expose sql as mcp tools, postgresql ai tools, mcp tools from sql, claude tools postgresql, structured tool output mcp"}],["meta",{"property":"og:title","content":"Turn PostgreSQL into MCP Tools an AI Agent Can Call"}],["meta",{"property":"og:description","content":"NpgsqlRest 3.17.0 adds Model Context Protocol support. Annotate a function or .sql file with @mcp and it becomes a tool an AI agent can discover and call."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Turn PostgreSQL into MCP Tools an AI Agent Can Call"}],["meta",{"name":"twitter:description","content":"Annotate a PostgreSQL function or .sql file with @mcp and an AI agent can discover and call it. One source, two interfaces."}]]},"headers":[],"relativePath":"blog/mcp-server-postgresql-ai-tools-npgsqlrest.md","filePath":"blog/mcp-server-postgresql-ai-tools-npgsqlrest.md"}'),n={name:"blog/mcp-server-postgresql-ai-tools-npgsqlrest.md"};function l(o,s,r,p,c,h){return t(),a("div",null,s[0]||(s[0]=[i(`
Turn PostgreSQL into MCP Tools an AI Agent Can Call
MCP · AI Agents · Model Context Protocol · PostgreSQL · v3.17.0 · June 2026
You already write the operations your application needs as PostgreSQL functions or .sql files. NpgsqlRest turns them into a typed REST API for your frontend. As of 3.17.0, the same routines can also be MCP tools — so an AI agent can discover them and call them directly, with no separate tool layer to write and keep in sync.
One annotation does it:
sql
sql
/*
+HTTP GET
+@param $1 query text default null
+@param $2 maxPrice numeric default null
+@mcp Search the product catalog by name or category and/or a maximum price.
+*/
+select id, name, category, price, stock
+from products
+where ($1 is null or name ilike '%' || $1 || '%' or category ilike '%' || $1 || '%')
+ and ($2 is null or price <= $2)
+order by price;
1 2 3 4 5 6 7 8 9 10 11
HTTP GET makes it a REST endpoint; @mcp makes it a tool. The two are independent, so this file is one PostgreSQL routine exposed through two interfaces — a typed /api/search-products call for your UI, and a search_products tool for an agent — from a single source of truth.
This post walks through example 15, an "Acme Store" built entirely from .sql files, and ends with a real Claude agent driving the store autonomously.
The Model Context Protocol (spec 2025-11-25) is how an AI agent talks to external capabilities. The agent asks a server "what can you do?" (tools/list), gets back a list of tools — each with a JSON-Schema describing its arguments (inputSchema) — and then calls one (tools/call) with arguments it fills in itself. It's a thin JSON-RPC contract. NpgsqlRest implements the server side over a single Streamable-HTTP endpoint (/mcp), and core stays protocol-agnostic — the whole MCP layer lives in a separate NpgsqlRest.Mcp plugin.
Override the tool name (default: the routine name)
The argument schema is derived from the routine's parameters — @param $2 maxPrice numeric default null becomes an optional maxPrice: number in the tool's inputSchema, camel-cased, nullable-aware. The return columns become an outputSchema. You don't hand-write either.
tools/call runs the routine through the same pipeline as the HTTP endpoint and returns structuredContent — always a JSON object, shaped to the result:
a single scalar → { "value": 42 }
a record / a set collapsed with @single → the object itself
a set of rows → { "items": [ … ] }
Business failures (an over-order tripping a CHECK constraint) come back as isError: true in the result; structural problems (unknown tool, malformed request) are JSON-RPC errors. Agents can tell the difference.
Because the HTTP tag and @mcp are independent, a bare @mcp with no HTTP tag is an MCP-only tool — it exists for agents but has no public REST route at all. The declaration can be this small:
sql
sql
/*
+@mcp
+
+Low-stock report (3 or fewer in stock); staff/agent-only.
+*/
+select name, category, stock from products where stock <= 3 order by stock;
1 2 3 4 5 6
The @mcp line opts the routine in; the plain prose beneath it becomes the tool's description — the text the model reads in tools/list to decide when to reach for this tool (the keyword is also case-insensitive and the leading @ is optional, so mcp or MCP work too). That's the whole declaration. tools/list includes inventory_report, but GET /api/inventory-report returns 404. Opting a routine into MCP never silently widens your HTTP surface, and the generated TypeScript client and OpenAPI document correctly leave MCP-only routines out.
Example 15's web page drives the same .sql files two ways, side by side:
Left — a real storefront over REST. Search, filter, Buy, Cancel — built on the generated, typed TypeScript client (sqlApi.ts) that NpgsqlRest emits from the .sql files at startup. The UI calls searchProducts(...) and placeOrder(...) as typed functions and never hand-writes a URL.
Right — what an AI agent sees over MCP. A live MCP client running initialize → tools/list → tools/call, rendering a call-form per tool straight from its advertised inputSchema.
place_order.sql is a typed REST function on the left and an MCP tool on the right. One routine, two consumers, zero duplicated code.
A browser form is one thing; a model choosing tools on its own is the actual validation. The example ships a small, dependency-free agent (agent.ts) that hands the MCP tools to Claude and executes whatever it decides to call:
bash
bash
export ANTHROPIC_API_KEY=sk-ant-...
+bun run agent "find peripherals under \\$100, order one of the cheapest, then show me what's low on stock"
1 2
text
text
── connected to Acme Store v1.0.0 · 8 tools ──
+🧑 find peripherals under $100, order one of the cheapest, then show me what's low on stock
+
+🔧 search_products({"query":"Peripherals","maxPrice":100})
+ → {"items":[{"id":5,"name":"Ergonomic Mouse","category":"Peripherals","price":59.90,"stock":25}]}
+
+🔧 place_order({"productId":5,"quantity":1})
+ → {"orderId":1,"product":"Ergonomic Mouse","quantity":1,"total":59.90,"status":"placed"}
+
+🔧 inventory_report({})
+ → {"items":[{"name":"Wireless Charger Pad","stock":0},{"name":"1080p Webcam","stock":2}, …]}
+
+🤖 Done — I ordered 1 Ergonomic Mouse ($59.90, order #1). Low stock: the Wireless Charger Pad
+ is out of stock, and the 1080p Webcam (2) is running low.
+── done ──
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
The whole pipeline ran with a real model in the loop: your @mcp SQL files → inputSchema → Claude's tool selection → tools/call → PostgreSQL → result → Claude. The server's configured Instructions become the agent's system prompt, so you steer behavior from config, not code.
Tools run through the same pipeline as HTTP endpoints, so the routine's own @authorize check applies on tools/call — and you can gate a single privileged tool without forcing everyone else to authenticate. Example 15 makes only restock_product manager-only:
sql
sql
/*
+HTTP POST
+@param $1 productId int
+@param $2 newStock int
+@single
+@authorize manager
+@mcp Set a product's stock to an exact value. Manager-only — a privileged, mutating operation.
+*/
+update products set stock = $2 where id = $1
+returning id, name, category, stock;
1 2 3 4 5 6 7 8 9 10
With JWT enabled but RequiresAuthorization left off, the store stays anonymous to browse and the agent keeps working — only this one tool refuses:
no token → 401
a staff-role token → 403
a manager token → success
…and identically over REST (POST /api/restock-product), because it's the same routine. The challenge is enforced exactly as the MCP authorization model prescribes: NpgsqlRest acts as an OAuth 2.1 Resource Server (it validates tokens and serves Protected Resource Metadata so a client can discover your Authorization Server) — bring your own IdP (Keycloak, Auth0, Entra…) or use NpgsqlRest's own JWT login, as the example does.
No tool layer to maintain. The tool, its argument schema, and its result shape are all derived from the routine you already wrote. Change the SQL, the tool changes with it.
One source of truth. REST and MCP are two projections of the same routine — they can't drift apart.
Opt-in and safe by default. Nothing is a tool until you say @mcp; MCP-only tools never appear as REST routes or in generated clients.
AOT-safe. The JSON-RPC layer is hand-rolled over System.Text.Json.Nodes with no reflection — verified under dotnet publish -p:PublishAot=true.
The complete, runnable example — .sql tools, the dual-panel web page, the Claude agent, and the authorization demo — is example 15 on GitHub:
bash
bash
cd examples/15_mcp_server
+bun run db:up # schema + seed data
+bun run build # bundle the web client
+bun run dev # start the server
1 2 3 4
Then point MCP Inspector (npx @modelcontextprotocol/inspector, transport Streamable HTTP, URL http://127.0.0.1:8080/mcp) or Claude Desktop at the endpoint — or just run the agent.
`,44)]))}const u=e(n,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/blog_mcp-server-postgresql-ai-tools-npgsqlrest.md.DvISemRM.lean.js b/assets/blog_mcp-server-postgresql-ai-tools-npgsqlrest.md.DvISemRM.lean.js
new file mode 100644
index 000000000..887f8d0d4
--- /dev/null
+++ b/assets/blog_mcp-server-postgresql-ai-tools-npgsqlrest.md.DvISemRM.lean.js
@@ -0,0 +1 @@
+import{_ as e,c as a,o as t,a5 as i}from"./chunks/framework.CgT1UzWm.js";const k=JSON.parse('{"title":"Turn PostgreSQL into MCP Tools an AI Agent Can Call","titleTemplate":"NpgsqlRest","description":"NpgsqlRest 3.17.0 adds Model Context Protocol support. Annotate a PostgreSQL function or .sql file with @mcp and it becomes a tool an AI agent can discover and call — one source, two interfaces (REST + MCP), no glue code.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Turn PostgreSQL into MCP Tools an AI Agent Can Call","titleTemplate":"NpgsqlRest","description":"NpgsqlRest 3.17.0 adds Model Context Protocol support. Annotate a PostgreSQL function or .sql file with @mcp and it becomes a tool an AI agent can discover and call — one source, two interfaces (REST + MCP), no glue code.","head":[["meta",{"name":"keywords","content":"mcp server postgresql, model context protocol postgresql, ai agent tools postgresql, npgsqlrest mcp, expose sql as mcp tools, postgresql ai tools, mcp tools from sql, claude tools postgresql, structured tool output mcp"}],["meta",{"property":"og:title","content":"Turn PostgreSQL into MCP Tools an AI Agent Can Call"}],["meta",{"property":"og:description","content":"NpgsqlRest 3.17.0 adds Model Context Protocol support. Annotate a function or .sql file with @mcp and it becomes a tool an AI agent can discover and call."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Turn PostgreSQL into MCP Tools an AI Agent Can Call"}],["meta",{"name":"twitter:description","content":"Annotate a PostgreSQL function or .sql file with @mcp and an AI agent can discover and call it. One source, two interfaces."}]]},"headers":[],"relativePath":"blog/mcp-server-postgresql-ai-tools-npgsqlrest.md","filePath":"blog/mcp-server-postgresql-ai-tools-npgsqlrest.md"}'),n={name:"blog/mcp-server-postgresql-ai-tools-npgsqlrest.md"};function l(o,s,r,p,c,h){return t(),a("div",null,s[0]||(s[0]=[i("",44)]))}const u=e(n,[["render",l]]);export{k as __pageData,u as default};
diff --git a/assets/blog_multiple-auth-schemes-rbac-external-providers.md.PAYr3KYB.js b/assets/blog_multiple-auth-schemes-rbac-external-providers.md.PAYr3KYB.js
new file mode 100644
index 000000000..37d7d2f7c
--- /dev/null
+++ b/assets/blog_multiple-auth-schemes-rbac-external-providers.md.PAYr3KYB.js
@@ -0,0 +1,358 @@
+import{_ as a,C as n,c as l,o as t,a5 as e,G as p}from"./chunks/framework.CgT1UzWm.js";const y=JSON.parse('{"title":"Multiple Auth Schemes, RBAC, and External OAuth Providers","titleTemplate":"NpgsqlRest","description":"Implement multiple authentication schemes, role-based access control, Google/GitHub OAuth integration, and JWT tokens with PostgreSQL. Complete auth system guide.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Multiple Auth Schemes, RBAC, and External OAuth Providers","titleTemplate":"NpgsqlRest","description":"Implement multiple authentication schemes, role-based access control, Google/GitHub OAuth integration, and JWT tokens with PostgreSQL. Complete auth system guide.","head":[["meta",{"name":"keywords","content":"postgresql oauth, postgresql rbac, multiple auth schemes, google oauth postgresql, github oauth api, jwt postgresql, role based access control api, npgsqlrest authentication"}],["meta",{"property":"og:title","content":"Multiple Auth Schemes, RBAC, and External OAuth Providers"}],["meta",{"property":"og:description","content":"Implement multiple auth schemes, RBAC, and Google/GitHub OAuth with PostgreSQL."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Multiple Auth Schemes, RBAC & OAuth with PostgreSQL"}],["meta",{"name":"twitter:description","content":"Multiple auth schemes, RBAC, Google/GitHub OAuth integration with PostgreSQL."}]]},"headers":[],"relativePath":"blog/multiple-auth-schemes-rbac-external-providers.md","filePath":"blog/multiple-auth-schemes-rbac-external-providers.md"}'),h={name:"blog/multiple-auth-schemes-rbac-external-providers.md"};function k(r,s,d,o,c,g){const i=n("BlogNav");return t(),l("div",null,[s[0]||(s[0]=e(`
Multiple Authentication Schemes, Role-Based Access Control, and External Providers
January 2026 · SecurityAuthenticationOAuthNpgsqlRest
In the previous post, we built a secure authentication system using PostgreSQL's pgcrypto extension for password hashing. That approach works well, but NpgsqlRest can go further: a built-in password verification system, multiple authentication schemes, role-based access control, and integration with external OAuth providers.
This post walks through an authentication example that combines four pieces:
The pgcrypto approach from the previous post hashes passwords in SQL, on the database server. The built-in hasher moves that work into NpgsqlRest, and the differences add up:
Why process passwords on the application server? When your database and application servers are separate (as they should be in production), every CPU cycle on the database server counts. Password hashing is intentionally CPU-intensive - offloading it to the application server keeps your database responsive for queries.
Pluggable algorithms: The default is PBKDF2, but since NpgsqlRest runs on .NET, you can plug in any password hasher available in the .NET ecosystem - including Argon2, scrypt, or custom implementations. This requires a custom build but gives you flexibility as security standards evolve.
The default built-in hasher uses PBKDF2 (Password-Based Key Derivation Function 2) with:
The schema is straightforward - a users table with optional password hash:
sql
sql
-- V1__example_4_schema.sql
+
+create table example_4.users (
+ user_id int primary key generated always as identity,
+ username text not null,
+ email text not null,
+ roles text[] not null,
+ password_hash text null, -- null when using external auth only
+ last_login timestamp with time zone null,
+ last_login_provider text null
+);
1 2 3 4 5 6 7 8 9 10 11
Note that password_hash is nullable - users authenticating only via external providers (like Google) don't need a password.
insert into example_4.users (username, email, roles, password_hash) values
+-- alice is a normal user
+('alice', 'alice@example.com', array['user'],
+ 'RfpqB6nKcoT2lL/w4ItB24mvxg8R9rC906C0/+7DAI62PQayBWjqihU96XPzmzYu'),
+-- bob is an admin
+('bob', 'bob@example.com', array['user', 'admin'],
+ 'X+e/OsZkNL4j/9a7WIy/2bkQDk4rHHwlFwLXx7MNpclUUPdtQlI1JiDqyqMnJbgu'),
+-- carol has no roles
+('carol', 'carol@example.com', array[]::text[],
+ '3XBVW23Yn6j8b8sRQMoerOvSYlFosXuRrY0G/nkquuquDNdSnbn8bacvCQlCQKhs');
For user registration endpoints, NpgsqlRest can automatically hash password parameters before they reach your function. Configure PasswordParameterNameContains to specify which parameters should be hashed:
Any parameter containing "password" in its name will be automatically hashed using the same built-in hasher. Your registration function receives the hash directly - no hashing logic needed in SQL.
Both Cookies and Microsoft Bearer Tokens are encrypted by default using ASP.NET Core's Data Protection system. Unlike JWT (which is signed but readable), both cookies and Bearer tokens are fully encrypted - the client cannot inspect their contents.
The Microsoft Bearer Token is a proprietary format, while the cookie encryption uses standard Data Protection mechanisms. Both rely on the same key management infrastructure. For production deployments, you should store these keys in the database so they persist across application restarts:
create table example_4.auth_data_protection_keys (
+ name text not null primary key,
+ data text not null
+);
+
+create function example_4.get_data_protection_keys()
+returns setof text
+language sql
+begin atomic;
+select data from example_4.auth_data_protection_keys;
+end;
+
+create procedure example_4.store_data_protection_keys(
+ _name text,
+ _data text
+)
+language sql
+begin atomic;
+insert into example_4.auth_data_protection_keys (name, data)
+values (_name, _data)
+on conflict (name) do update set data = excluded.data;
+end;
Without database storage, keys are stored in memory and lost on restart - invalidating all existing cookies and tokens, forcing users to log in again. With database storage, encrypted authentication keeps working across application restarts.
For full details on authentication configuration, see:
-- R__example_4_password_verification_failed.sql
+
+create or replace procedure example_4.password_verification_failed(
+ _scheme text,
+ _user_id text,
+ _user_name text
+)
+language plpgsql
+set search_path = pg_catalog, pg_temp
+as
+$$
+begin
+ -- Log failed attempt, increment counters, implement lockout, etc.
+ raise warning 'Password verification failed for user % (ID: %) using scheme %',
+ _user_name, _user_id, _scheme;
+end;
+$$;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
These callbacks are the only way to know whether NpgsqlRest's built-in password verification succeeded or failed - use them for account lockout, audit logging, or failed-attempt counting.
The function uses the same conventions as the regular login annotation - return a named record with scheme and claim columns.
For full details on external authentication, see the External OAuth Authentication documentation. NpgsqlRest supports Google, GitHub, LinkedIn, Microsoft, Facebook, and custom OAuth providers.
The IncludeParseRequestParam: true option generates API functions that accept an optional parseRequest callback. This allows you to inject authorization headers for Bearer token or JWT authentication:
typescript
typescript
// Add Authorization header for token-based auth
+function parseRequest(request: RequestInit): RequestInit {
+ if (!authToken) return request;
+
+ const headers = new Headers(request.headers);
+ headers.set("Authorization", \`Bearer \${authToken}\`);
+ return { ...request, headers };
+}
+
+// Pass the callback to any API call
+const response = await whoAmI(parseRequest);
+const users = await getUsers(parseRequest);
1 2 3 4 5 6 7 8 9 10 11 12
For cookie authentication, no callback is needed - cookies are sent automatically by the browser. But for Bearer tokens or JWT, you need to add the Authorization header manually, and IncludeParseRequestParam makes this trivial.
Modern authentication and authorization is notoriously complex. A production-ready system typically requires:
Multiple authentication schemes (cookies for web, tokens for APIs, JWT for microservices)
Secure password storage with modern algorithms
Role-based access control with claim management
OAuth integration with external providers
Account lockout and audit logging
Token refresh mechanisms
Session management
Implementing all of this traditionally takes multiple libraries and deep security expertise - and getting it wrong means vulnerabilities.
With NpgsqlRest, all of this is configuration and a few SQL functions.
What this example actually required:
Component
Lines of Code
Schema + users table
~15 lines SQL
Login function
~15 lines SQL
Logout function
~8 lines SQL
Who Am I function
~15 lines SQL
Role-restricted endpoint
~10 lines SQL
External login function
~25 lines SQL
Verification callbacks
~20 lines SQL
Configuration
~50 lines JSON
Total
~160 lines
That's it. Under 200 lines for a complete authentication system with:
Three authentication schemes (cookies, Bearer tokens, JWT)
Built-in password verification with OWASP-compliant hashing
Role-based access control
Google OAuth integration
Verification callbacks for security features
Token refresh endpoints
User context in every request
Compare this to a typical Node.js/Express or Spring Boot implementation - you'd be looking at thousands of lines of code, multiple dependencies, and weeks of development time.
Copy the schema - Adapt the users table to your needs
Copy the configuration - Enable the schemes you need, add your OAuth credentials
Write your login function - Return the scheme and claims you want
Add role annotations - authorize admin on endpoints that need it
Done - You have production-ready authentication
The code you don't write has no bugs, and authentication is exactly where you want fewer of them.
Combined with database-level security (Principle of Least Privilege, SECURITY DEFINER, search path protection) and end-to-end type safety, you get a complete, secure, performant application stack that would take months to build from scratch.
April 2026 · v3.13.0CachingAuthRate LimitingMulti-Tenancy
NpgsqlRest 3.13.0 gives first-class declarative support to four production scenarios that previously required custom middleware, external services, or hacky workarounds:
Caching that adapts to query inputs — historical data cached for hours, "open-ended" data cached briefly, real-time queries bypassing the cache entirely.
Short-lived sensitive sessions alongside a normal long-lived session, e.g., for recovery-code or admin flows.
Per-user rate limits instead of global buckets shared by all users.
pgBouncer / RDS Proxy / Supabase Pooler compatibility with multi-tenant search_path driven by JWT claims.
All four patterns ship as configuration, not code. Walkthroughs below; full reference and migration notes in the v3.13.0 changelog.
1. Conditional Caching: Historical vs Current vs Live
A common analytics endpoint has parameters like from, to, and live. The right caching policy depends on which combination the client sends:
Both from and to are set → query covers a closed historical range; results are immutable. Cache for hours.
to is null → "open-ended" range covering up to now; results change as new rows arrive. Short TTL — say, 5 minutes, matching the upstream refresh cadence.
live = true → real-time mode, must always fetch fresh.
Before 3.13, this either meant three different endpoints or imperative cache logic in SQL. Now it's a single profile with When rules. Here's the full CacheOptions block backed by Redis (so cache state survives restarts and is shared across multiple NpgsqlRest instances behind a load balancer):
Type: "Redis" at the root makes Redis the default backend for endpoints that don't specify a profile.
RedisConfiguration — full StackExchange.Redis connection string. The {REDIS_PASSWORD} placeholder is resolved from environment variables; ssl=true is recommended for production.
MaxCacheableRows: 1000 caps which set-returning results get cached — anything larger is still returned, just not cached, so a runaway query doesn't blow up Redis.
UseHashedCacheKeys: true with HashKeyThreshold: 256 hashes long keys to a fixed SHA-256 string. Important for Redis when routines have many or large parameters — keeps memory and network overhead bounded.
InvalidateCacheSuffix: "invalidate" automatically generates a companion endpoint at /api/compute-timeseries/invalidate that clears the cache entry for the same parameters, with the same auth requirements.
Profiles share the root backend pool — both root and timeseries_compute use a single Redis connection, not two. The profile-name prefix on cache keys keeps entries isolated even when multiple profiles share a backend.
sql
sql
comment on function compute_timeseries(
+ from text,
+ to text default null,
+ live boolean default false
+) is 'HTTP GET
+@cache_profile timeseries_compute';
1 2 3 4 5 6
How rules evaluate (first match wins):
Request
Matches
Result
?from=2025-01-01&to=2025-12-31
none
profile default → cached 1 hour
?from=2025-01-01 (to omitted)
to=null
cached 5 minutes
?from=2025-01-01&live=true
live=true
bypass cache entirely
The Then field accepts the literal "skip" (bypass cache) or any PostgreSQL interval string (override TTL). Because Parameters is ["from", "to", "live"], both rule-matched paths and the default-TTL path get separate cache entries — live=true requests never poison the historical cache.
2. Short-Lived Sensitive Session Alongside the Normal Session
A user is signed in with a normal 14-day cookie. Now they want to view recovery codes or change their password. You don't want the recovery-code page accessible for 14 days from any device that ever signed in — you want a fresh, short-lived authentication that expires when the browser closes.
Before 3.13, this meant either re-prompting for the password and just trusting it, or building a separate "step-up" auth service. Now you register an additional cookie scheme:
Any field not overridden inherits from the root Auth section, so the override block stays small.
The recovery-code step has its own login function that returns 'short_session' in the scheme column:
sql
sql
create function recovery_step_up(_user_id int, _recovery_code text)
+returns table (scheme text, name_identifier text, name text)
+language sql security definer as $$
+ select 'short_session' as scheme, user_id::text, username
+ from users
+ where user_id = _user_id
+ and verify_recovery_code(recovery_code_hash, _recovery_code);
+$$;
1 2 3 4 5 6 7 8
The endpoint that displays the recovery codes requires this specific scheme:
sql
sql
comment on function show_recovery_codes() is 'HTTP GET
+@authorize short_session';
1 2
CookieMultiSessions: false makes the cookie session-only (no Max-Age), so closing the browser invalidates it. The 1-hour CookieValid server-side cap means even a left-open tab stops working after an hour. The user's normal 14-day session is unaffected.
Same pattern works for admin areas, payment flows, or any per-scope restriction. JWT and BearerToken types support the same overrides — see the per-type override fields table.
Pre-3.13, a rate limiter policy was a single global bucket. PermitLimit: 100, WindowSeconds: 60 meant 100 requests per minute across all users combined, which is rarely what you want — one heavy user could exhaust the quota for everyone else.
The new Partition block resolves a partition key per request and gives each key its own bucket:
comment on function user_dashboard() is 'HTTP GET
+@authorize
+@rate_limiter per_user';
1 2 3
Sources are walked top-to-bottom; the first one that returns a non-empty value wins:
Request
Resolved key
Bucket
Authenticated user 42
name_identifier=42
per-user bucket
Anonymous request from 203.0.113.5
IpAddress=203.0.113.5
per-IP bucket
Anonymous, no IP visible
Static=anonymous
shared "anonymous" bucket
BypassAuthenticated: true is also available — useful for "throttle anonymous only" patterns where signed-in users skip the limiter entirely.
Behavior is unchanged for policies without a Partition block. See Per-User Rate Limiting for source types and validation rules.
Breaking change
RateLimiterOptions:Policies is now an object keyed by policy name, no longer an array of objects with "Name" properties. Migration is mechanical — see the changelog.
4. Multi-Tenant search_path with pgBouncer (or RDS Proxy, or Supabase Pooler)
A multi-tenant deployment where each tenant's data lives in its own schema, and the JWT carries a tenant_id claim. Each request needs search_path set so the routine sees the right tenant's tables.
Without a connection pooler, set_config('search_path', tenant, false) works fine — the GUC sticks for the session and Npgsql's pool issues DISCARD ALL when the connection returns. With a transaction-mode pooler (pgBouncer transaction-pool, AWS RDS Proxy in transaction mode, Supabase Pooler), the same backend is reused for unrelated requests without session reset, so a search_path set in one request can leak into the next.
WrapInTransaction: true wraps every request in BEGIN ... COMMIT and switches all set_config calls to is_local=true (transaction-scoped). On COMMIT, the GUC is discarded — the next request on the same backend gets a clean slate.
BeforeRoutineCommands runs declared SQL after any context is set but before the main routine call, in the same NpgsqlBatch (no extra round-trip). Parameters are bound from HttpContext at request time — Source: "Claim" reads User.FindFirst("tenant_id"), and the value is passed as a SQL parameter (no string interpolation, no injection risk).
Per-request execution order:
BEGIN
set_config('search_path', $1, true) with $1 bound to the claim value
The routine call
COMMIT
Steps 1–3 share a single network round-trip. The routine sees the right search_path; nothing leaks between requests.
BeforeRoutineCommands also accepts raw strings (no parameters) and supports Source: "RequestHeader" and Source: "IpAddress" for non-claim cases. See Connection Pooler Compatibility for the full schema.
400 Bad Request responses now log at Warning level — previously silent in production. Database exceptions mapped to 400 (P0001, P0004) and validation rule failures both surface in logs by default.
Auth time fields use Postgres interval notation — CookieValid: "14 days", JwtExpire: "60 minutes", etc. The legacy integer fields (CookieValidDays, JwtExpireMinutes, …) are removed; startup fails with a migration message if they're still in your config. Finer-grained durations (seconds, minutes) are now possible. See the migration table.
Docker images now build on Ubuntu 26.04 LTS — extending the security-update window from 9 months (25.04 interim) to 5 years.
For the complete release notes including NuGet upgrades and minor fixes, see the v3.13.0 changelog.
`,53)),h(i,{"get-started":[{text:"Changelog v3.13.0",href:"/guide/changelog/v3.13.0"},{text:"Cache Profiles Configuration",href:"/config/cache-options#cache-profiles"},{text:"Authentication Schemes",href:"/config/auth#additional-authentication-schemes"},{text:"Rate Limiter Partition",href:"/config/rate-limiter#per-user-rate-limiting-partition"},{text:"Connection Pooler Compatibility",href:"/config/npgsqlrest#connection-pooler-compatibility"}]})])}const F=a(p,[["render",r]]);export{y as __pageData,F as default};
diff --git a/assets/blog_npgsqlrest-3.13-production-patterns.md.jTlztVH-.lean.js b/assets/blog_npgsqlrest-3.13-production-patterns.md.jTlztVH-.lean.js
new file mode 100644
index 000000000..014d9a9a2
--- /dev/null
+++ b/assets/blog_npgsqlrest-3.13-production-patterns.md.jTlztVH-.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as e,c as n,o as t,a5 as l,G as h}from"./chunks/framework.CgT1UzWm.js";const y=JSON.parse('{"title":"NpgsqlRest 3.13.0: Cache Profiles, Auth Schemes, Per-User Rate Limits, and pgBouncer Compatibility","titleTemplate":"NpgsqlRest","description":"NpgsqlRest 3.13.0 release notes with real-world examples: conditional caching with When rules, short-lived sensitive sessions, per-user rate limiting, and multi-tenant search_path with pgBouncer.","frontmatter":{"layout":"doc","outline":[2,3],"title":"NpgsqlRest 3.13.0: Cache Profiles, Auth Schemes, Per-User Rate Limits, and pgBouncer Compatibility","titleTemplate":"NpgsqlRest","description":"NpgsqlRest 3.13.0 release notes with real-world examples: conditional caching with When rules, short-lived sensitive sessions, per-user rate limiting, and multi-tenant search_path with pgBouncer.","head":[["meta",{"name":"keywords","content":"npgsqlrest 3.13, cache profiles, auth schemes, rate limiter partition, pgbouncer multi-tenant, before routine commands, wrap in transaction, postgresql connection pooler"}],["meta",{"property":"og:title","content":"NpgsqlRest 3.13.0: Cache Profiles, Auth Schemes, Per-User Rate Limits, and pgBouncer Compatibility"}],["meta",{"property":"og:description","content":"NpgsqlRest 3.13.0 — conditional caching, short-lived sessions, per-user rate limiting, and pgBouncer transaction-mode compatibility."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"NpgsqlRest 3.13.0: Production Patterns"}],["meta",{"name":"twitter:description","content":"Cache profiles, auth schemes, partitioned rate limiting, and pgBouncer multi-tenant support in NpgsqlRest 3.13.0."}]]},"headers":[],"relativePath":"blog/npgsqlrest-3.13-production-patterns.md","filePath":"blog/npgsqlrest-3.13-production-patterns.md"}'),p={name:"blog/npgsqlrest-3.13-production-patterns.md"};function r(o,s,k,d,c,u){const i=e("BlogNav");return t(),n("div",null,[s[0]||(s[0]=l("",53)),h(i,{"get-started":[{text:"Changelog v3.13.0",href:"/guide/changelog/v3.13.0"},{text:"Cache Profiles Configuration",href:"/config/cache-options#cache-profiles"},{text:"Authentication Schemes",href:"/config/auth#additional-authentication-schemes"},{text:"Rate Limiter Partition",href:"/config/rate-limiter#per-user-rate-limiting-partition"},{text:"Connection Pooler Compatibility",href:"/config/npgsqlrest#connection-pooler-compatibility"}]})])}const F=a(p,[["render",r]]);export{y as __pageData,F as default};
diff --git a/assets/blog_npgsqlrest-3.19-sql-test-runner-watch-mode.md.CeVn9yDN.js b/assets/blog_npgsqlrest-3.19-sql-test-runner-watch-mode.md.CeVn9yDN.js
new file mode 100644
index 000000000..2e017c63a
--- /dev/null
+++ b/assets/blog_npgsqlrest-3.19-sql-test-runner-watch-mode.md.CeVn9yDN.js
@@ -0,0 +1,79 @@
+import{_ as e,c as a,o as i,a5 as t}from"./chunks/framework.CgT1UzWm.js";const n="/watch.gif",g=JSON.parse('{"title":"Tests Are SQL Files Too","titleTemplate":"NpgsqlRest","description":"The story behind NpgsqlRest 3.19.0: the SQL test runner, watch mode, and why database testing was never actually impossible — you were just using the wrong database.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Tests Are SQL Files Too","titleTemplate":"NpgsqlRest","description":"The story behind NpgsqlRest 3.19.0: the SQL test runner, watch mode, and why database testing was never actually impossible — you were just using the wrong database.","badge":"none","head":[["meta",{"name":"keywords","content":"npgsqlrest postgresql sql testing test runner watch mode deferrable constraints database unit testing tdd"}],["meta",{"property":"og:title","content":"Tests Are SQL Files Too"}],["meta",{"property":"og:description","content":"The story behind NpgsqlRest 3.19.0: the SQL test runner, watch mode, and why database testing was never actually impossible — you were just using the wrong database."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Tests Are SQL Files Too"}],["meta",{"name":"twitter:description","content":"The story behind NpgsqlRest 3.19.0: the SQL test runner, watch mode, and why database testing was never impossible — you were just using the wrong database."}]]},"headers":[],"relativePath":"blog/npgsqlrest-3.19-sql-test-runner-watch-mode.md","filePath":"blog/npgsqlrest-3.19-sql-test-runner-watch-mode.md"}'),l={name:"blog/npgsqlrest-3.19-sql-test-runner-watch-mode.md"};function r(p,s,h,o,d,c){return i(),a("div",null,s[0]||(s[0]=[t(`
Features in this last version 3.19.0 got me excited in a way I haven't been since 3.12.0 and I wanted to write about it personally. So let's do a quick recap:
Version 3.12.0 introduced the idea that a SQL file can be a REST endpoint. That was a big deal, and it changed how I write APIs.
Major shift is that I don't have to deploy anything or run a migration to add a new endpoint. Just write a simple SQL file, like a script and that is it, NpgsqlRest happily creates the endpoint for you from that file. Nothing deployed, nothing migrated. You probably already have a bunch of SQL scripts sitting around. You just need to add a comment with the HTTP method and path, and NpgsqlRest will serve it as an endpoint:
sql
sql
/*
+HTTP GET
+@param $1 from_date
+@param $2 to_date
+@authorize admin
+*/
+select id, title, created_at
+from reports
+where created_at between $1 and $2;
/*
+HTTP GET
+@authorize admin
+*/
+select id, title, created_at
+from reports
+where created_at between :from_date and :to_date;
1 2 3 4 5 6 7
Small but sweet improvement.
2) Watch Mode
Initially developed for the test runner, it was expanded during the development for all modes, including SQL file endpoints as well as function/procedure endpoints.
It is particularly useful for SQL file endpoints, SQL files from the beginning included native parser validation against real database schema on startup which serves as a type checker for your SQL files. Now with watch mode, you can get that validation on every save, just as you type. This is big in terms of development experience.
3) Native Test Runner
And finally, the big one: native test runner. This implementation shares the same approach as SQL file endpoints, meaning you can write a test in a SQL file, and HTTP blocks in comments will be executed against the real endpoint, in-process, inside the test's own transaction. The fixture rolls back. Nothing is left behind. The full walkthrough is in the Testing Guide.
-- optional setup to ensure isolation
+begin;
+
+-- ARRANGE: insert a fixture user into the database
+
+insert into users (email)
+values ('fixture@example.com');
+
+-- ACT: call the real endpoint, in-process, inside the test's own transaction and simulate an authenticated request with a claim user_id=1
+
+/*
+GET /api/get-users
+# @claim user_id=1
+*/
+
+-- ASSERT: assert on the response
+
+select status = 200, 'authenticated caller gets 200'
+from _response;
+
+select body::jsonb @> '[{"email": "fixture@example.com"}]', 'fixture is listed'
+from _response;
+
+-- cleanup: rollback the transaction to clean up the fixture and keep isolation for the next test
+rollback;
That's the real endpoint — routing, authorization, parameter binding, JSON serialization — invoked in-process, inside the test's own transaction. The fixture rolls back. Nothing is left behind. The full walkthrough is in the Testing Guide.
And here is something worth saying up front: you don't need NpgsqlRest endpoints to use this. The HTTP blocks are optional. Boolean-SELECT assertions and DO-block asserts against your functions, views, and schema work on their own — so even if you never expose a single REST endpoint, you now have a fast, isolated, zero-framework unit test runner for plain PostgreSQL scripts. Point it at a directory of .sql tests and go.
There is a widespread belief in this industry that testing against a real database is somewhere between painful and impossible. That belief is why we have in-memory database fakes that never work, endless mocks, and entire testing philosophies built around not touching the database — which is a strange way to test software whose primary job is to talk to a database.
And here is the thing: the belief is not entirely wrong. But it may be database-specific where some databases make it harder than others. PostgreSQL is one of the databases that makes it easy.
For example, testing against SQL Server without containers is hard. Even with containers, it is still hard.
No deferrable constraints — every foreign key is checked immediately, always, so a test fixture must satisfy the entire dependency graph before it can insert one interesting row. Creating a throwaway database per test run is a heavyweight operation. The standard answer was tSQLt — a framework you install into the database, with CLR dependencies and its own way of faking tables. People tried it, got burned, and concluded that database testing doesn't work.
Then they carried that conclusion over to PostgreSQL, where it was never true.
PostgreSQL has transactional DDL. It has deferrable constraints. It has cheap database creation and template databases. It has assert in every DO block. The primitives for elegant database testing have been sitting there for decades — they just needed a harness.
Long before 3.19, I tested my functions with a pattern so simple it barely deserves the name: the function and its assertions live in the same file, and the assertions run right below the definition.
sql
sql
-- recreate the entire function every time
+-- this is the first line of tests, sql functions are checked against schema on replace
+create or replace function get_posts()
+returns table (...)
+language sql as
+$$
+select ...
+$$;
+
+-- anonymous function (DO block) asserts against the function's output, and fails loudly if it doesn't match expectations
+do
+$$
+begin
+ -- ARRANGE and ACT
+ create temp table _result on commit drop as
+ select * from get_posts();
+
+ -- ASSERT: assert on the result set
+ assert (select count(*) = 5 from _result where ...), 'get_posts() does not return expected data';
+ assert (select name from _result where id = ...) = 'expected_name', 'get_posts() returns wrong name for id ...';
+
+ -- do the optional cleanup if data was mutated
+ -- rollback;
+end
+$$;
Open the file in the editor, hit execute, and the whole thing runs on one connection: drop, create, assert. If the assert fails, the script fails, loudly. Fix, execute again. RED — GREEN, right there in the editor.
And here is the part people don't believe until they try it: this loop is faster than traditional TDD. There is no build step. There is no test framework to boot, no runner to discover tests, no DI container to spin up. The unit of execution is one SQL script on one already-open connection — the round trip is measured in tens of milliseconds. Executing on a save-keystroke is faster than any dotnet test or pytest will ever warm up. I have shipped entire projects this way, and I will absolutely keep using this pattern — 3.19 doesn't replace it.
It is hard to explain how powerful this is until you try it.
The pattern has one requirement that is also its ceiling: you need a callable unit. A function or a procedure — something select-able that the DO block can assert against.
Which means:
SQL file endpoints can't be tested this way. There is no function to call — the file is the endpoint. Since 3.12, more and more of my endpoints are plain SQL files, and they were invisible to my own testing pattern.
The HTTP layer can't be tested at all. The function returning correct rows tells you nothing about what the endpoint does: is @authorize actually enforced? Does the anonymous request get its 401? Do the claims map into parameters? Is the JSON shaped the way the client expects — camelCased, nested, @single-unwrapped? All of that lives above the function, and the DO block can't see it.
Testing the function but not the endpoint is testing the engine but not the car.
The fix, in hindsight, was obvious — it is the same move 3.12 made for endpoints. If SQL files can be endpoints, then SQL files can test endpoints.
And the syntax was already waiting: NpgsqlRest has embedded HTTP semantics in SQL comments from day one, so putting an HTTP request in a comment is the most natural thing in the world:
The runner invokes the real endpoint pipeline in-process — no server, no network — and captures the response into a temp table on the test's connection. And because this is PostgreSQL, with arguably the best JSON support of any relational database, asserting on that response is just... SQL:
sql
sql
select status = 200, 'login succeeds' from _response;
+select body::jsonb ->> 'email' = 'ada@example.com', 'the right user comes back' from _response;
+select body::jsonb -> 'roles' @> '["admin"]', 'role is present' from _response;
1 2 3
@>, ->>, jsonb_path_query — the assertion language for JSON responses was already built into the database. No fluent assertion library will ever compete with that.
The critical design decision — and the one that took the most engineering — is connection affinity: the endpoint call runs on the test's own connection, inside the test's own transaction. Insert a fixture, don't commit it, call the endpoint — the endpoint sees your uncommitted fixture. Assert, roll back, and it never existed. No .http file replay, no test HTTP client, no docker-compose test stack can reproduce that, because the state you tested against never existed outside your transaction.
Two problems have haunted database testing forever, and this is where PostgreSQL gets to show off.
Isolation. Every test file runs on its own non-pooled connection, in parallel — a fresh physical session, no temp tables or GUCs leaking between tests. Transactions handle the rest. And when transaction isolation isn't enough — sequences are non-transactional, nextval() survives rollback — you go one level up: Setup steps create a throwaway database (create database app_test_{rnd5} — a random token stable for the run), or even per-test clones from a template database, which PostgreSQL creates in well under a second. Perfect isolation is a config block, not a framework.
Fixtures. The reason fixtures are miserable everywhere else: to insert one row you need its foreign keys, and their foreign keys, and suddenly your test spends thirty lines building a company and a country and a currency to test one post. PostgreSQL's answer is deferrable constraints:
sql
sql
begin;
+set constraints all deferred;
+
+-- one post by a user that is never inserted — legal, because the FK check
+-- runs at COMMIT, and this transaction never commits
+insert into posts (id, user_id, content) values (1, 999, 'fixture post');
1 2 3 4 5 6
Deferred checks run at COMMIT. A test that ends in rollback never commits. Therefore the checks never run. Insert exactly the rows the test is about, in any order, referencing rows that don't exist — and let the endpoint's LEFT JOINs treat the missing references as what they are: nulls. (Try that on SQL Server. You can't — deferrable constraints don't exist there. This is what I mean by "the belief was database-specific.")
And because DDL is transactional too, a shared include (\\ir fixtures/relax_users.sql) can even drop NOT NULL from columns your test doesn't care about — and the rollback restores the schema. The Testing Guide covers both tricks.
Here is where it stops being a testing feature and becomes a development environment.
console
console
$ npgsqlrest ./config.json --test --watch
1
Save a test — it re-runs alone, in milliseconds. Save an endpoint file — the endpoints rebuild in-process and everything re-runs, with a delta report: break a file and you see - GET /api/get-users (endpoint dropped — check its SQL file for errors) plus the failing tests; fix it and the next save brings it back. The RED–GREEN loop I described earlier, except now it covers the whole HTTP surface.
And without --test:
console
console
$ npgsqlrest ./config.json --watch
1
...it watches the running server. Every save re-parses and re-validates your SQL against the real schema — the native PostgreSQL parser checks every statement the moment you write it, which means your queries are validated against the live database as you type. A typo'd column name is an error on screen one second after you save, not a runtime surprise. Configuration files are watched. Even the database itself is watched — the discovery query is polled, so create or replace a function in psql and the endpoint is live about two seconds later, annotations included. The TypeScript client regenerates on every cycle, so the frontend's types follow your SQL as you type it.
This is the part I did not fully anticipate: watch mode is not a testing accessory. It changed how I write endpoints. The database schema became my type checker, running continuously.
And if you happen to enjoy AI-assisted development, this unlocks what has quietly become my favorite way of working: AI TDD.
You write a failing test assertion. Or — better — you instruct the AI agent to write it for you, and you just review it like a manager. Then you give your favorite AI coding agent one instruction: don't stop until all tests are green (or you run out of tokens, whichever comes first).
The reason this works so well here is everything this post has been about: the tests are fast (milliseconds, in-process, no build), isolated (transactions, throwaway databases — the agent cannot corrupt anything), and complete (the real endpoint, real auth, real JSON — not a mock the agent can game). The agent gets a tight, truthful feedback loop, and tight truthful feedback loops are the one thing agents actually need. Watch mode even runs the loop for it.
Write the assertion, state the goal, go get a coffee. That's my favorite method.
The Testing Guide — the complete walkthrough: assertions, HTTP blocks, fixtures, test databases, template clones, migrations, Docker, CI.
Watch Mode — both flavors, configuration, database polling.
Examples 19, 20, and 21 — from the basics to a fresh database per run to perfect per-test isolation.
The full changelog — including named parameters (:name) in SQL files, endpoint coverage with CI gating, and the response debug mirror.
Looking back, 3.12 and 3.19 are the same idea, asked twice. 3.12 asked: what if the SQL file is the endpoint? 3.19 asks: what if the SQL file is the test? Both times the answer was already in PostgreSQL — transactional DDL, deferrable constraints, template databases, assert in every DO block. The primitives were there all along; the tooling just had to get out of the way.
That was the idea from day one: your SQL is the API. As of 3.19, it is the test suite too.
Happy testing.
',79)]))}const u=e(l,[["render",r]]);export{g as __pageData,u as default};
diff --git a/assets/blog_npgsqlrest-3.19-sql-test-runner-watch-mode.md.CeVn9yDN.lean.js b/assets/blog_npgsqlrest-3.19-sql-test-runner-watch-mode.md.CeVn9yDN.lean.js
new file mode 100644
index 000000000..5bfea8cac
--- /dev/null
+++ b/assets/blog_npgsqlrest-3.19-sql-test-runner-watch-mode.md.CeVn9yDN.lean.js
@@ -0,0 +1 @@
+import{_ as e,c as a,o as i,a5 as t}from"./chunks/framework.CgT1UzWm.js";const n="/watch.gif",g=JSON.parse('{"title":"Tests Are SQL Files Too","titleTemplate":"NpgsqlRest","description":"The story behind NpgsqlRest 3.19.0: the SQL test runner, watch mode, and why database testing was never actually impossible — you were just using the wrong database.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Tests Are SQL Files Too","titleTemplate":"NpgsqlRest","description":"The story behind NpgsqlRest 3.19.0: the SQL test runner, watch mode, and why database testing was never actually impossible — you were just using the wrong database.","badge":"none","head":[["meta",{"name":"keywords","content":"npgsqlrest postgresql sql testing test runner watch mode deferrable constraints database unit testing tdd"}],["meta",{"property":"og:title","content":"Tests Are SQL Files Too"}],["meta",{"property":"og:description","content":"The story behind NpgsqlRest 3.19.0: the SQL test runner, watch mode, and why database testing was never actually impossible — you were just using the wrong database."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Tests Are SQL Files Too"}],["meta",{"name":"twitter:description","content":"The story behind NpgsqlRest 3.19.0: the SQL test runner, watch mode, and why database testing was never impossible — you were just using the wrong database."}]]},"headers":[],"relativePath":"blog/npgsqlrest-3.19-sql-test-runner-watch-mode.md","filePath":"blog/npgsqlrest-3.19-sql-test-runner-watch-mode.md"}'),l={name:"blog/npgsqlrest-3.19-sql-test-runner-watch-mode.md"};function r(p,s,h,o,d,c){return i(),a("div",null,s[0]||(s[0]=[t("",79)]))}const u=e(l,[["render",r]]);export{g as __pageData,u as default};
diff --git a/assets/blog_npgsqlrest-vs-postgrest-supabase-comparison.md.00RFbAF5.js b/assets/blog_npgsqlrest-vs-postgrest-supabase-comparison.md.00RFbAF5.js
new file mode 100644
index 000000000..8d88f960f
--- /dev/null
+++ b/assets/blog_npgsqlrest-vs-postgrest-supabase-comparison.md.00RFbAF5.js
@@ -0,0 +1,163 @@
+import{_ as s,C as i,c as a,o as n,a5 as r,G as l}from"./chunks/framework.CgT1UzWm.js";const y=JSON.parse('{"title":"NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","titleTemplate":"NpgsqlRest","description":"Side-by-side comparison of NpgsqlRest, PostgREST, and Supabase. Performance benchmarks, features, authentication, file handling, and deployment options compared.","frontmatter":{"layout":"doc","outline":[2,3],"title":"NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","titleTemplate":"NpgsqlRest","description":"Side-by-side comparison of NpgsqlRest, PostgREST, and Supabase. Performance benchmarks, features, authentication, file handling, and deployment options compared.","head":[["meta",{"name":"keywords","content":"npgsqlrest vs postgrest, npgsqlrest vs supabase, postgresql rest api comparison, postgrest alternative, supabase alternative, postgresql api performance, rest api framework comparison"}],["meta",{"property":"og:title","content":"NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"}],["meta",{"property":"og:description","content":"Side-by-side comparison of NpgsqlRest, PostgREST, and Supabase. Performance benchmarks, features, and deployment options compared."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"}],["meta",{"name":"twitter:description","content":"Side-by-side comparison of NpgsqlRest, PostgREST, and Supabase for PostgreSQL REST APIs."}]]},"headers":[],"relativePath":"blog/npgsqlrest-vs-postgrest-supabase-comparison.md","filePath":"blog/npgsqlrest-vs-postgrest-supabase-comparison.md"}'),o={name:"blog/npgsqlrest-vs-postgrest-supabase-comparison.md"};function d(p,t,c,h,g,k){const e=i("BlogNav");return n(),a("div",null,[t[0]||(t[0]=r(`
NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison
Comparison · PostgREST · Supabase · January 2026
Three tools can expose a PostgreSQL database as a REST API without a hand-written backend: NpgsqlRest, PostgREST, and Supabase. They differ in architecture, performance, and how much of the surrounding platform (auth, files, caching, deployment) they cover. This comparison works through each area in turn.
¹ Benchmarked on a single PostgreSQL function returning a simple result set. See the full benchmark methodology for details. Performance will vary with query complexity and workload type.
flowchart LR
+ A[Client] <--> B["NpgsqlRest
+ (30MB AOT)
+ Single executable"]
+ B <--> C
+ subgraph C [PostgreSQL]
+ D["Comment Annotations
+ (API config)"]
+ end
1 2 3 4 5 6 7 8 9
NpgsqlRest is a complete platform in a single, self-contained executable that connects directly to PostgreSQL and serves REST APIs. Starting with v3.12.0, the primary way to create endpoints is SQL files — write a .sql file, add a comment annotation, and it becomes a REST endpoint. No database deployment needed, no functions to create. For more complex logic, PostgreSQL functions and procedures are still fully supported and give you true static type checking end-to-end.
API configuration lives in SQL comments — the same annotation syntax works in both SQL files and database object comments. Custom paths, caching, rate limiting, authentication, and more, all version-controlled with your code.
Beyond API generation, NpgsqlRest includes everything needed for full-stack development:
SQL file endpoints — drop a .sql file in a folder, get a REST endpoint. Single or multi-command batch scripts with named result sets
Static file serving with authorization and template parsing (replace placeholders with user claims)
File uploads with image validation, CSV/Excel ingestion
No additional infrastructure required. Download, configure connection string, run. It deploys on any cloud server instance—AWS EC2, DigitalOcean, Hetzner—or your own hardware.
flowchart LR
+ A[Client] <--> B
+ subgraph B [Supabase]
+ direction TB
+ subgraph row1 [" "]
+ direction LR
+ C[PostgREST]
+ D[GoTrue]
+ E[Realtime]
+ end
+ subgraph row2 [" "]
+ direction LR
+ F[Storage]
+ G[Kong]
+ H[Studio]
+ end
+ I[(PostgreSQL)]
+ end
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
Supabase is a platform composed of multiple services. PostgREST handles REST API generation, GoTrue manages authentication, Kong is the API gateway, and further services handle storage, realtime, and the admin dashboard. Self-hosting means orchestrating all of these.
Key difference: Both NpgsqlRest and Supabase are platforms, but NpgsqlRest packages everything into a single binary (~30MB) while Supabase requires 7+ separate services. Supabase offers a managed cloud service with a visual dashboard; NpgsqlRest gives you full control with simpler self-hosting on any cloud provider.
With larger payloads where database I/O dominates, the performance gap narrows significantly. Swoole PHP leads in data-heavy scenarios, while NpgsqlRest remains competitive with PostgREST.
⚠️ = Complex self-hosting (7+ services); Supabase local dev reloads via the CLI, not the platform itself
NpgsqlRest as a complete platform: Unlike PostgREST (API-only), NpgsqlRest covers the rest of the stack:
Static file serving with path-based authorization—serve your frontend directly from NpgsqlRest
Template parsing replaces {claimType} placeholders in HTML files with authenticated user claims (name, email, role, etc.) before serving—build personalized pages without JavaScript
HTTP test file generation creates .http files for VS Code REST Client and Visual Studio, enabling rapid API testing during development
Built-in SQL test runner (--test, since 3.19) — write endpoint tests as plain .sql files: the real endpoint pipeline is invoked in-process on the test's own transaction, so fixtures roll back cleanly; includes throwaway test databases, JUnit XML, and endpoint-coverage gating for CI. PostgREST has no testing story of its own (pgTAP tests the database, not the HTTP layer)
Watch mode (--watch, since 3.19) — the dev server restarts on SQL file, configuration, and even database routine changes, regenerating the TypeScript client every cycle
Deployment on any cloud server (AWS EC2, DigitalOcean, Hetzner, Azure VM, GCP Compute) or on-premises—copy the binary and run
Supabase offers different platform strengths: managed cloud hosting, a visual Studio dashboard for database management, and real-time WebSocket subscriptions. Choose Supabase if you prefer managed infrastructure and a visual interface; choose NpgsqlRest if you want full control with simpler self-hosting.
SQL file endpoints are unique to NpgsqlRest. Neither PostgREST nor Supabase can turn a .sql file on disk into a REST endpoint. Both require you to create database objects first (functions, views, or tables) before anything is exposed as an API. With NpgsqlRest, you write a SQL file, annotate it with a comment, and the endpoint exists — no database deployment step, no CREATE FUNCTION. Multi-command files execute as a batch and return a JSON object with named result sets.
NpgsqlRest deliberately does not auto-generate CRUD endpoints over tables and views — endpoints come from explicit SQL files or PostgreSQL routines. PostgREST and Supabase allow clients to compose queries against tables:
Resource embedding automatically joins related tables based on foreign keys
28+ filtering operators including like, ilike, in, fts (full-text search), range operators
Aggregate functions with automatic GROUP BY
NpgsqlRest takes a different approach: write the SQL yourself — either as a SQL file or a PostgreSQL function — and expose exactly the query you intend. These same capabilities (joins, full-text search, aggregates, filtering, pagination) are all available because you're writing actual SQL:
The full SQL surface — CTEs, window functions, recursive queries, full-text search, JSON operators, lateral joins — anything you can write in SQL
SQL files or functions — SQL files for straightforward queries, functions when you need PL/pgSQL logic or static type checking
Security by design — you expose exactly what you intend, not an entire table with filters
Predictable performance — no surprise queries that scan entire tables or create N+1 problems
Author's note: Earlier versions of NpgsqlRest shipped a CrudSource plugin that auto-generated CRUD endpoints over tables and views. I removed it from the standalone client in v3.14.0 — exposing raw tables directly is a questionable engineering practice. SQL files and functions provide a proper API contract, encapsulate business logic, and give you full control over what data is exposed and how. The plugin still ships as a NuGet package for embedded library use, but it is no longer wired into the default client. — Vedran Bilopavlović, NpgsqlRest author
Choose PostgREST if you want clients to compose their own queries against tables. Choose NpgsqlRest if you prefer well-defined server-side endpoints with explicit query logic.
✅ = Full support ⚠️ = Partial support or workarounds needed ❌ = Not supported
All three frameworks support PostgreSQL composite types and can return nested JSON structures, including arrays of composite types (multiset pattern). Key differences:
NpgsqlRest offers two modes: By default, composite type fields are merged/flattened into the parent object for simpler responses. Use the @nested annotation to preserve the hierarchical structure. PostgREST/Supabase always nest composite types.
Parameter unnesting: NpgsqlRest automatically expands composite type parameters into individual named fields (e.g., authorFirstName, authorLastName), so clients send flat fields. PostgREST/Supabase require passing composite parameters as nested JSON objects.
TypeScript generation: NpgsqlRest generates proper TypeScript interfaces for all nested structures automatically. Supabase generates types but may require manual casting for complex RPC return types. PostgREST has no built-in TypeScript generation (third-party tools like kanel can help).
Deep nesting: All three frameworks now handle arbitrary nesting depths. NpgsqlRest 3.4.4+ resolves nested composite types to any depth by default (configurable via ResolveNestedCompositeTypes). The only remaining limitation is 2D arrays of composite types at the return type level, which remain as tuple strings.
Encrypted Bearer token (Microsoft Data Protection)
✅
❌
❌
Encrypted Cookie
✅
❌
✅
HTTP Basic authentication
✅
❌
❌
Authentication Sources
OAuth providers (Google, GitHub, etc.)
✅
❌
✅
Password authentication (custom)
✅
❌
✅
Passkey/WebAuthn (biometrics)
✅
❌
⚠️
Password Hashing
PostgreSQL native (pgcrypto)
✅
❌
❌
Built-in PBKDF2
✅
❌
✅
Other Features
Custom login/logout functions
✅
❌
✅
Multiple auth schemes simultaneously
✅
❌
✅
Named additional auth schemes (different TTL/scope per scheme)
✅
❌
❌
Role-based access control
✅
✅
✅
Claims to PostgreSQL context
✅
✅
✅
Claims to PostgreSQL parameters
✅
❌
❌
Auth time fields in interval format ("14 days", "5 minutes")
✅
❌
❌
⚠️ = Requires third-party integration
Token schemes: NpgsqlRest supports three distinct token formats:
Standard JWT Bearer: Industry-standard JSON Web Tokens
Microsoft Data Protection Bearer: Encrypted bearer tokens using ASP.NET Core Data Protection—a Microsoft proprietary format that encrypts the entire token payload
Encrypted Cookies: Session cookies encrypted with Data Protection, ideal for traditional web applications
Authentication sources: Users can authenticate via:
Password authentication: Either using PostgreSQL's native password hashing (via pgcrypto) or NpgsqlRest's built-in PBKDF2 implementation
Passkey/WebAuthn: Passwordless authentication using device biometrics (fingerprint, Face ID) or security keys—client device dependent
Passkey/WebAuthn support: NpgsqlRest includes built-in passkey authentication for passwordless login using device biometrics or PINs. NpgsqlRest handles the WebAuthn protocol (CBOR parsing, signature verification) while your PostgreSQL functions control user management and credential storage. PostgREST has no passkey support. Supabase does not offer native passkey support—users must integrate third-party services like Corbado or Descope to add passkeys to their Supabase applications.
NpgsqlRest also offers claims-to-parameters mapping - user claims (user ID, roles, custom claims) are automatically injected as function parameters by configurable name matching, with type safety enforced by PostgreSQL. PostgREST and Supabase only support accessing claims via current_setting() or auth.jwt() context functions, requiring manual casting within your SQL code.
PostgREST only supports JWT - you need an external auth server like GoTrue (which is what Supabase uses).
Architectural difference: PostgREST and Supabase rely on Row Level Security (RLS) as their primary authorization mechanism — you write DDL policies on tables that filter rows based on the authenticated user's JWT claims. These policies must be created on the server via migrations and are evaluated on every query. NpgsqlRest takes a different approach: authorization is declared via comment annotations (@authorize, @allow_anonymous, @basic_auth, etc.) directly on each endpoint — no RLS needed, no DDL, and each endpoint is individually configurable. For a deeper look at NpgsqlRest's authentication approach, see Database-Level Security: PostgreSQL Authentication and Multiple Auth Schemes, RBAC & External Providers.
Named additional auth schemes (NpgsqlRest 3.13.0): NpgsqlRest can register multiple named authentication schemes alongside the main one — e.g., a normal 14-day cookie session for general use plus a 1-hour single-session cookie for sensitive operations (recovery codes, admin areas, payment flows). Each scheme has its own Type (Cookies, BearerToken, or Jwt), expiration, and (for JWT) signing secret. Login functions select the scheme by returning its name in the scheme column. PostgREST supports only a single JWT scheme with one secret. Supabase Auth uses a single GoTrue session model with one cookie configuration — Supabase docs explicitly note that shortening the cookie's Max-Age "results in a degraded user experience," so step-up authentication for sensitive operations must be implemented at the application layer.
Image uploads with format validation (JPEG, PNG, GIF, WebP, etc.)
CSV/Excel ingestion with row-by-row processing through PostgreSQL functions
PostgreSQL Large Objects for storing files directly in the database
Combined handlers (multiple storage backends in a single transaction)
Streaming Excel (.xlsx) exports with zero allocations and constant memory (~80KB), powered by SpreadCheetah. One annotation (@table_format = excel) turns any function into a downloadable spreadsheet with native Excel types. PostgREST and Supabase only support CSV export—for Excel, you need external libraries or third-party services.
PostgREST has no file upload support. Supabase requires a separate Storage service.
Application-level column encryption: NpgsqlRest provides transparent encrypt/decrypt annotations powered by ASP.NET Data Protection. Parameter values are encrypted before being sent to PostgreSQL, and result columns are decrypted before returning to the client — the database stores ciphertext while the API consumer sees plaintext. Useful for PII (SSN, medical records) without requiring pgcrypto or client-side encryption. PostgREST has no built-in encryption. Supabase provides Vault for managing secrets but not annotation-level column encryption.
Security headers: NpgsqlRest includes built-in middleware for HTTP security headers (X-Content-Type-Options, X-Frame-Options, Referrer-Policy, Content-Security-Policy, Permissions-Policy, COOP, COEP, CORP). PostgREST and Supabase require reverse proxy configuration or application-level implementation.
Forwarded headers: NpgsqlRest has built-in middleware for processing X-Forwarded-For/Proto/Host headers with configurable trusted proxies and networks. PostgREST can read these headers via SQL but has no configuration for trusted proxy validation. Supabase handles this at their API gateway level.
Health check endpoints: NpgsqlRest provides /health, /health/ready (with PostgreSQL connectivity check), and /health/live endpoints for Kubernetes/Docker orchestration. PostgREST has /live and /ready via its Admin Server. Supabase has service-specific health checks but no unified application health endpoint.
PostgreSQL statistics: NpgsqlRest exposes /stats/routines, /stats/tables, /stats/indexes, and /stats/activity for monitoring PostgreSQL performance. PostgREST has no built-in stats endpoints (requires custom views). Supabase provides a Metrics API with ~200 PostgreSQL metrics (cloud only, not self-hosted).
⚠️ Supabase has rate limiting at the managed cloud edge layer, but it is not configurable per-endpoint or as a policy.
NpgsqlRest ships performance features the other two delegate to external infrastructure:
Three caching modes: Memory, Redis, and Hybrid with stampede protection
Named cache profiles with When rules — different TTLs based on input shape, conditional cache bypass, per-endpoint policy selection via @cache_profile annotation
Partitioned rate limiting — per-user, per-IP, or per-header buckets via Partition block, with BypassAuthenticated for "throttle anonymous only" patterns
Automatic retry with exponential backoff for transient failures
Connection retry with configurable delay sequences and PostgreSQL error code matching (e.g., connection lost, too many connections, server starting up)
Multi-host failover with read replica support
Caching architectural difference: PostgREST has no built-in response caching (active issue #4460 proposing a SIEVE-based in-memory cache), so caching must be handled by an upstream reverse proxy or CDN. Supabase has CDN caching for storage assets only — API response caching requires manual implementation (Next.js cache helpers, revalidation webhooks, or external Redis). NpgsqlRest is the only one with first-class response caching including conditional rules: a single endpoint can serve historical queries cached for 1 hour, "until-now" queries cached for 5 minutes, and live=true queries that bypass the cache entirely — all declared in JSON config, no SQL changes.
Rate limiting architectural difference: PostgREST has no built-in rate limiting (issue #785 — the official position is that rate limiting belongs at the gateway level, not in PostgREST). Supabase has edge-level rate limiting in their managed cloud, but it is not configurable per-endpoint or as a partitioned policy. NpgsqlRest's Partition block resolves a key per request from claims/IP/headers, so each authenticated user gets their own bucket — without writing custom middleware or fronting the service with Nginx/Kong.
Parameterized pre-routine SQL with claim/header/IP binding
✅
❌
❌
No extra round-trip for pre-routine commands
✅
✅
✅
Multi-tenant search_path from JWT claim (declarative)
✅
⚠️
⚠️
⚠️ Possible via a custom function called by db-pre-request, but not declarative — requires writing a SQL function that reads current_setting('request.jwt.claims', true)::json and calls set_config() manually.
All three platforms support transaction-mode connection poolers (PgBouncer transaction-pool, AWS RDS Proxy in transaction mode, Supabase's Supavisor) — but the ergonomics differ.
PostgREST has db-pre-request, a configuration option that names a single SQL function to call after authentication and before the main query. The function can read JWT claims via current_setting('request.jwt.claims', true)::json and apply settings like search_path. This is functionally similar to NpgsqlRest's hook, but is a single function call with no parameter binding — you write SQL that reads context strings, parses JSON, and calls set_config() itself. PostgREST also wraps every request in a transaction with role/jwt-claims set per-transaction by default, so pooler compatibility is built in without an opt-in flag.
Supabase uses PostgREST internally, so it inherits db-pre-request. Supavisor handles transaction-mode pooling.
NpgsqlRest 3.13.0 introduces two cooperating options:
WrapInTransaction: true wraps every request in BEGIN ... COMMIT and switches set_config calls to transaction-local (is_local=true). Required for PgBouncer transaction-pool, AWS RDS Proxy in transaction mode, and Supabase Pooler. Default is false (existing behavior preserved).
BeforeRoutineCommands — a list of SQL commands (raw strings or objects with Sql + Parameters) executed in the same NpgsqlBatch as context setup, with no extra round-trip. Parameter values are bound at request time from HttpContext: each parameter has a Source (Claim, RequestHeader, or IpAddress) and an optional Name, with values passed as parameterized SQL inputs (no string interpolation, no injection risk).
The practical difference: NpgsqlRest's multi-tenant search_path is 4 lines of JSON config:
The PostgREST equivalent requires creating a SQL function that reads request.jwt.claims, parses the JSON, extracts tenant_id, and calls set_config() — plus the db-pre-request = '<function_name>' config entry. Functionally equivalent, but the NpgsqlRest version is declarative with type-safe parameter binding rather than string-parsing JWT claims in SQL.
NpgsqlRest uses Server-Sent Events for real-time streaming, which is simpler than WebSockets and works through standard HTTP. PostgreSQL's RAISE INFO/NOTICE/WARNING statements stream directly to connected clients - no message brokers or LISTEN/NOTIFY infrastructure needed. See the Real-Time Chat example.
External Service Integration and Custom Code Execution
A critical question for any PostgreSQL REST framework: how do you execute custom logic that isn't in the database? — calling external APIs, rendering PDFs, sending emails, running ML inference, or integrating with third-party services.
The three take very different approaches:
Capability
NpgsqlRest
PostgREST
Supabase
Proxy / External Service Calls
Forward request to upstream (passthrough)
✅
❌
❌
Transform upstream response in PG
✅
❌
❌
Forward PG result to upstream (proxy_out)
✅
❌
❌
Declarative proxy via SQL annotations
✅
❌
❌
Proxy response caching
✅
❌
❌
Custom Code Runtimes
Edge Functions (Deno/TypeScript)
❌
❌
✅
Serverless function runtime
❌
❌
✅
HTTP Client Types (app-layer HTTP calls)
Typed HTTP calls via composite types
✅
❌
❌
Parallel execution of multiple HTTP calls
✅
❌
❌
Placeholder substitution (URL, headers, body)
✅
❌
❌
All HTTP methods (GET/POST/PUT/PATCH/DELETE)
✅
❌
❌
Per-type timeout and retry with backoff
✅
❌
❌
Retry on specific status codes (429, 503, etc.)
✅
❌
❌
Server-side resolved parameters (secrets)
✅
❌
❌
Database-level HTTP extensions
pg_net (async, JSON POST only, 200 req/s)
❌
❌
✅
http extension (sync, blocks DB connection)
❌
⚠️
✅
Event-Driven
Database Webhooks (trigger → HTTP)
❌
❌
✅
Pre-request hook
❌
✅
✅
⚠️ = Available via third-party PostgreSQL extension (not a PostgREST feature)
NpgsqlRest has three proxy modes, all configured via SQL comment annotations on PostgreSQL functions, with no additional infrastructure:
1. Passthrough proxy — forward the client request to an upstream service, return the upstream response directly. The PostgreSQL function is never executed (no database connection opened):
sql
sql
create function get_weather_forecast()
+returns void language sql as 'select';
+
+comment on function get_weather_forecast() is 'HTTP GET
+@proxy https://weather-api.example.com';
1 2 3 4 5
2. Transform proxy — forward the request to upstream, then pass the upstream response into the PostgreSQL function for processing. The function receives the upstream status code, body, headers, content type, success flag, and error message as parameters:
sql
sql
create function enrich_user_data(
+ _user_id int,
+ _proxy_status_code int default null,
+ _proxy_body text default null,
+ _proxy_success boolean default null
+)
+returns json language plpgsql as $$
+begin
+ if not _proxy_success then
+ return json_build_object('error', 'upstream failed');
+ end if;
+ -- Combine upstream data with local data
+ return json_build_object(
+ 'external', _proxy_body::json,
+ 'local', (select row_to_json(u) from users u where u.id = _user_id)
+ );
+end; $$;
+
+comment on function enrich_user_data(int, int, text, boolean) is 'HTTP GET
+@proxy https://external-api.example.com';
3. Proxy out (post-execution proxy) — execute the PostgreSQL function first, then forward its result as the request body to an upstream service. The upstream response is returned to the client. Ideal for scenarios where PostgreSQL prepares a payload and an external service does heavy processing (PDF rendering, ML inference, image processing):
sql
sql
create function generate_invoice(order_id int)
+returns json language plpgsql as $$
+begin
+ return (select json_build_object(
+ 'customer', c.name, 'items', json_agg(row_to_json(i))
+ ) from orders o
+ join customers c on c.id = o.customer_id
+ join order_items i on i.order_id = o.id
+ where o.id = order_id
+ group by c.name);
+end; $$;
+
+comment on function generate_invoice(int) is 'HTTP GET
+@proxy_out POST https://pdf-renderer.internal/render';
1 2 3 4 5 6 7 8 9 10 11 12 13 14
All three modes support: custom upstream host per endpoint, HTTP method override, authenticated user claim/context forwarding to upstream, upload content forwarding, configurable timeouts, and response caching. Proxy configuration shares the same ProxyOptions section and integrates with NpgsqlRest's existing caching, rate limiting, and authentication systems.
4. HTTP Client Types — a completely different mechanism from the proxy modes. You define a PostgreSQL composite type whose comment contains an HTTP request definition (method, URL, headers, body), and NpgsqlRest makes the HTTP call automatically when a function parameter uses that type. The response fields (body, status_code, headers, content_type, success, error_message) are populated and passed to the PostgreSQL function as a regular parameter:
sql
sql
-- Define an HTTP client type via comment on a composite type
+create type openai_api as (body json, status_code int, success boolean, error_message text);
+comment on type openai_api is 'POST https://api.openai.com/v1/chat/completions
+Authorization: Bearer {_api_key}
+Content-Type: application/json
+
+{"model": "gpt-4", "messages": [{"role": "user", "content": "{_prompt}"}]}';
+
+-- Use it in a function — NpgsqlRest makes the HTTP call, PG processes the result
+create function ask_ai(_prompt text, _api_key text, _response openai_api)
+returns json language plpgsql as $$
+begin
+ if not (_response).success then
+ return json_build_object('error', (_response).error_message);
+ end if;
+ return (_response).body;
+end; $$;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Key capabilities of HTTP Client Types:
Parallel execution — multiple HTTP type parameters in one function execute concurrently via Task.WhenAll, enabling API aggregation from multiple services in a single endpoint
Placeholder substitution — {param_name} placeholders in URLs, headers, and body are resolved from function parameters, enabling dynamic URLs and authenticated requests
Configurable retry — @retry_delay 1s, 2s, 5s on 429, 503 retries on specific status codes with delays
Per-type timeouts — timeout 10s per HTTP type definition
Server-side resolved parameters — combine with resolved parameter expressions to securely inject API keys from the database without exposing them to the client
This is fundamentally different from Supabase's pg_net (async-only, JSON POST only, 200 req/s limit, no placeholder substitution, responses in a queue table) and the http extension (blocks the database connection). NpgsqlRest's HTTP Client Types run in the application layer, execute in parallel, support all methods, have built-in retry logic, and integrate directly into the function's parameter pipeline.
PostgREST is intentionally narrow in scope — it maps PostgreSQL to a REST API and nothing else. It has no built-in proxy, no webhook support, no custom code runtime, and no outbound HTTP capability.
The only hook is db-pre-request: a configurable pre-request function that runs inside the database transaction before the main query. It can inspect headers and JWT claims, and can block requests by raising exceptions — but it cannot make external HTTP calls or modify the response.
PostgREST users who need external service integration must add separate infrastructure:
Hybrid API pattern: A custom API server (Node.js, Python, Go) sits alongside PostgREST — CRUD requests are proxied to PostgREST, business logic endpoints are handled by the custom server
Nginx + Lua middleware: The postgrest-starter-kit uses OpenResty to add custom logic at the reverse proxy layer
LISTEN/NOTIFY + external workers: Database triggers fire NOTIFY events; separate worker processes listen and perform side effects (send emails, call APIs)
PostgreSQL extensions: pgsql-http (synchronous) or pg_net (asynchronous) can be installed into PostgreSQL to make HTTP calls from SQL — but these are PostgreSQL extensions, not PostgREST features, and come with their own limitations
Supabase addresses custom code execution through Edge Functions — serverless TypeScript/JavaScript functions running on a Deno-based runtime in V8 isolates, deployed as a separate service alongside PostgREST.
Each Edge Function gets its own HTTP endpoint (https://<project>.supabase.co/functions/v1/<name>) and must be written in TypeScript, deployed via CLI or dashboard, and managed independently from your PostgreSQL schema:
Edge Functions have notable constraints: 2-second CPU time limit per request, 256 MB memory, 20 MB bundle size, and cold starts. They are available in self-hosted Supabase but run as a single instance (no multi-region distribution).
Supabase also offers Database Webhooks — PostgreSQL triggers that use the pg_net extension to send HTTP requests on INSERT/UPDATE/DELETE events. These are fire-and-forget (async, responses stored in a queue table for 6 hours) with a 200 requests/second limit and JSON POST only (no PUT/PATCH).
For direct HTTP calls from PostgreSQL, Supabase provides the pg_net extension (async, non-blocking, JSON POST only) and the http extension (synchronous, blocks the database connection). Neither can control what gets returned to the original HTTP client — they are purely outbound.
The fundamental difference is where orchestration lives:
Aspect
NpgsqlRest
PostgREST
Supabase
Where logic is defined
SQL files + comments on PG functions/types
N/A
TypeScript in separate runtime
Additional services required
None
Custom API server or middleware
Edge Runtime (Deno container)
Database involvement
PG function controls the entire flow
PG has no role in external calls
PG can trigger webhooks only
Response control
PG function decides what client receives
N/A
Edge Function decides
Parallel external calls
Built-in (HTTP Client Types)
N/A
Manual Promise.all() in TS
Deployment complexity
Zero — same binary
Requires additional infrastructure
Requires separate Deno service
Caching of external calls
Built-in (@cached annotation)
N/A
Must implement manually
Secret management
Server-side resolved parameters
N/A
supabase secrets set CLI
Retry logic
Built-in (@retry_delay annotation)
N/A
Must implement manually
NpgsqlRest keeps external service orchestration inside PostgreSQL with declarative annotations — no additional runtimes, no separate deployment pipelines, no TypeScript code to maintain. Supabase requires a separate Deno runtime and imperative TypeScript code. PostgREST requires users to build their own solution entirely.
NpgsqlRest's error handling is policy-based and configurable end to end — a clear gap over PostgREST and Supabase, which hardcode their mappings.
Named error code policies: Define multiple named policies that map PostgreSQL error codes to specific HTTP status codes, titles, and details. For example, map 23505 (unique violation) to HTTP 409 Conflict, or 23503 (foreign key violation) to HTTP 400 with a custom message—all in configuration, not in SQL:
json
json
{
+ "ErrorCodePolicies": [
+ {
+ "Name": "strict_errors",
+ "ErrorCodes": {
+ "23505": {"StatusCode": 409, "Title": "Conflict", "Details": "A record with this key already exists."},
+ "23503": {"StatusCode": 400, "Title": "Invalid Reference", "Details": "Referenced record does not exist."},
+ "42501": {"StatusCode": 403, "Title": "Insufficient Privilege"}
+ }
+ }
+ ]
+}
1 2 3 4 5 6 7 8 9 10 11 12
Per-endpoint error policies: Each endpoint can use a different error policy via the @error_code_policy annotation:
sql
sql
comment on function risky_operation() is '
+HTTP POST
+@error_code_policy strict_errors';
1 2 3
Configurable timeout error mapping: Custom HTTP response for command timeouts with configurable status code, title, and details—not a generic 500.
RFC 7807 Problem Details: Error responses follow the RFC 7807 standard ("Problem Details for HTTP APIs"), including a type URI reference to RFC documentation, title, status, and detail fields. This is the IETF-recommended format for API error responses, enabling interoperability with standard API tooling and middleware.
TraceId correlation: Error responses include a traceId field for direct correlation between what the client receives and server-side logs—essential for debugging in production.
PostgREST uses a hardcoded mapping table (e.g., 23505 → 409, 42501 → 401/403). The only workaround is the PT### SQLSTATE mechanism—RAISE sqlstate 'PT404' forces HTTP 404—which couples your SQL to HTTP semantics. Error responses use a custom JSON format (code, message, details, hint), not RFC 7807. No per-endpoint configuration, no named policies, no configurable timeout handling, no trace IDs.
Supabase inherits PostgREST's error handling wholesale since it embeds PostgREST as its REST layer. The client SDKs wrap errors into {data, error} objects but add no additional error mapping configurability.
-- Define endpoint with custom path and authentication
+create function api.get_user(p_id int)
+returns setof user_info
+language sql
+begin atomic;
+select id, name, email, role from users where id = p_id;
+end;
+
+comment on function api.get_user(int) is '
+HTTP GET /users/{p_id}
+@authorize admin, user
+@cached
+@cache_expires_in 300
+@rate_limiter_policy standard
+';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Everything is configured through SQL comments directly on your functions, procedures, or .sql files. This keeps API configuration close to the implementation and version-controlled with your schema.
Every endpoint can be individually configured with its own caching policy, rate limiting, authentication requirements, timeout, and retry strategy—declared in SQL comments, either in your SQL files or on database objects. PostgREST and Supabase apply configuration globally or require external tools for per-endpoint customization.
-- PostgREST relies on Row Level Security
+create policy "Users can view own data"
+ on users for select
+ using (auth.uid() = id);
1 2 3 4
PostgREST uses a combination of configuration files and PostgreSQL Row Level Security policies. Custom paths and advanced routing require an API gateway like Kong.
Supabase uses a web dashboard for most configuration, RLS for authorization, and Edge Functions (Deno-based TypeScript runtime) for custom logic that cannot live in the database. Edge Functions run as a separate service, deployed independently via CLI, with their own endpoint URLs, secrets management, and resource limits. More moving parts, in exchange for a visual interface and a managed cloud option.
# Clone the Docker setup
+git clone https://github.com/supabase/supabase
+cd supabase/docker
+cp .env.example .env
+docker compose up -d
1 2 3 4 5
Supabase self-hosting requires Docker Compose with 7+ containers: PostgreSQL, PostgREST, GoTrue, Realtime, Storage, Kong, Studio, and more — correspondingly harder to maintain and scale.
Functions work identically — both expose PostgreSQL functions as endpoints
Replace direct table/view access with SQL files or functions — NpgsqlRest does not auto-generate CRUD endpoints over tables. Endpoints that relied on PostgREST's ?eq./?order. style query composition need to be expressed as SQL files (often the simplest path) or as PostgreSQL functions
Move simple RPC functions to SQL files — many /rpc/ endpoints can become plain .sql files, no CREATE FUNCTION needed
Add SQL comments for configuration — replace external config with inline annotations
Replace RLS with function-level auth — or keep RLS and add @authorize annotations
Gain features — caching, rate limiting, file uploads, multi-command batch scripts
Keep your PostgreSQL schema - It's still just PostgreSQL
Replace direct table/view access with SQL files or functions — same caveat as the PostgREST migration: Supabase's auto-generated table API has no direct counterpart, so write the queries as SQL files or routines
Replace Storage with NpgsqlRest uploads - File system or Large Objects
Replace Realtime with SSE - Simpler protocol, works through standard HTTP
Replace Edge Functions with SQL files or proxy annotations — simple Edge Functions become SQL files. Those that call external APIs become functions with @proxy, @proxy_out, or HTTP Client Type annotations. No separate Deno runtime needed
Replace pg_net/http extensions with HTTP Client Types - Typed, synchronous HTTP calls with retry logic and server-side secret resolution, integrated into the function execution pipeline
NpgsqlRest is a complete self-hosted platform where the fastest way to create an endpoint is to write a SQL file. No CREATE FUNCTION, no database deployment — just a .sql file with a comment annotation. For complex logic, PostgreSQL functions are fully supported with true end-to-end type checking. Beyond API generation, it serves static files with template parsing, generates TypeScript clients, and includes built-in authentication — all in a single ~30MB binary, with per-endpoint caching, rate limiting, timeout, and auth rules version-controlled in SQL comments.
PostgREST shines for flexible client-side queries with its GraphQL-like resource embedding, 28+ filtering operators, aggregates, and pagination. It's the right choice when your API consumers need to compose their own queries against tables and views. PostgREST is API-only—you'll need additional services for auth, static files, and file uploads.
Supabase is ideal when you want managed cloud hosting with a visual dashboard—especially for teams that prefer not to manage infrastructure. While both NpgsqlRest and Supabase are platforms, Supabase requires 7+ services for self-hosting whereas NpgsqlRest is a single binary.
`,195)),l(e,{"get-started":[{text:"Installation Guide",href:"/guide/installation"},{text:"Quick Start",href:"/guide/quick-start"},{text:"Authentication Configuration",href:"/config/auth"},{text:"File Upload Configuration",href:"/config/uploads"}]})])}const m=s(o,[["render",d]]);export{y as __pageData,m as default};
diff --git a/assets/blog_npgsqlrest-vs-postgrest-supabase-comparison.md.00RFbAF5.lean.js b/assets/blog_npgsqlrest-vs-postgrest-supabase-comparison.md.00RFbAF5.lean.js
new file mode 100644
index 000000000..aa11bb983
--- /dev/null
+++ b/assets/blog_npgsqlrest-vs-postgrest-supabase-comparison.md.00RFbAF5.lean.js
@@ -0,0 +1 @@
+import{_ as s,C as i,c as a,o as n,a5 as r,G as l}from"./chunks/framework.CgT1UzWm.js";const y=JSON.parse('{"title":"NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","titleTemplate":"NpgsqlRest","description":"Side-by-side comparison of NpgsqlRest, PostgREST, and Supabase. Performance benchmarks, features, authentication, file handling, and deployment options compared.","frontmatter":{"layout":"doc","outline":[2,3],"title":"NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","titleTemplate":"NpgsqlRest","description":"Side-by-side comparison of NpgsqlRest, PostgREST, and Supabase. Performance benchmarks, features, authentication, file handling, and deployment options compared.","head":[["meta",{"name":"keywords","content":"npgsqlrest vs postgrest, npgsqlrest vs supabase, postgresql rest api comparison, postgrest alternative, supabase alternative, postgresql api performance, rest api framework comparison"}],["meta",{"property":"og:title","content":"NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"}],["meta",{"property":"og:description","content":"Side-by-side comparison of NpgsqlRest, PostgREST, and Supabase. Performance benchmarks, features, and deployment options compared."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"}],["meta",{"name":"twitter:description","content":"Side-by-side comparison of NpgsqlRest, PostgREST, and Supabase for PostgreSQL REST APIs."}]]},"headers":[],"relativePath":"blog/npgsqlrest-vs-postgrest-supabase-comparison.md","filePath":"blog/npgsqlrest-vs-postgrest-supabase-comparison.md"}'),o={name:"blog/npgsqlrest-vs-postgrest-supabase-comparison.md"};function d(p,t,c,h,g,k){const e=i("BlogNav");return n(),a("div",null,[t[0]||(t[0]=r("",195)),l(e,{"get-started":[{text:"Installation Guide",href:"/guide/installation"},{text:"Quick Start",href:"/guide/quick-start"},{text:"Authentication Configuration",href:"/config/auth"},{text:"File Upload Configuration",href:"/config/uploads"}]})])}const m=s(o,[["render",d]]);export{y as __pageData,m as default};
diff --git a/assets/blog_optimization-labels-101.md.0ZBmELgS.js b/assets/blog_optimization-labels-101.md.0ZBmELgS.js
new file mode 100644
index 000000000..16da88e79
--- /dev/null
+++ b/assets/blog_optimization-labels-101.md.0ZBmELgS.js
@@ -0,0 +1,4 @@
+import{_ as a,C as n,c as o,o as s,a5 as i,G as l}from"./chunks/framework.CgT1UzWm.js";const g=JSON.parse('{"title":"NpgsqlRest Story Told Without AI","titleTemplate":"NpgsqlRest","description":"PostgreSQL Optimization Labels 101","frontmatter":{"layout":"doc","outline":[2,3],"title":"NpgsqlRest Story Told Without AI","titleTemplate":"NpgsqlRest","description":"PostgreSQL Optimization Labels 101","badge":"human","head":[["meta",{"name":"keywords","content":"postgresql optimization volatile stable immutable"}],["meta",{"property":"og:title","content":"NpgsqlRest Story told without AI"}],["meta",{"property":"og:description","content":"PostgreSQL Optimization Labels 101"}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"PostgreSQL Optimization Labels 101"}]]},"headers":[],"relativePath":"blog/optimization-labels-101.md","filePath":"blog/optimization-labels-101.md"}'),r={name:"blog/optimization-labels-101.md"};function c(p,e,d,h,u,m){const t=n("BlogNav");return s(),o("div",null,[e[0]||(e[0]=i(`
When creating a PostgreSQL function or procedure, you can declare many different labels that affect different aspects of your function. Some of them are optimization-oriented. Here is my 101 breakdown, because I keep forgetting them, and the best way to learn for me is to write.
VOLATILE (the default) — might change the database and return different results for the same parameters. PostgreSQL cannot optimize these at all, and this is the default behavior.
STABLE — can't change the database and will return the same results for the same parameters within the same query. Therefore, when called more than once in the same query, PostgreSQL will still execute this function only once, and hence the optimization.
IMMUTABLE — can't change the database and will always return the same results for the same parameters. Like a mathematical function, always the same. Most aggressive optimization will probably be called once per unique set of parameters and then cached. These types of functions can be used in indexing, where others cannot.
Important
If a function marked IMMUTABLE calls a STABLE function, it will revert to STABLE. If STABLE calls VOLATILE, it will revert to VOLATILE automatically, regardless of what is set during creation — so check the metadata.
Sometimes the query planner will opportunistically decide that some operation will run in parallel. This won't happen on a small set, only when the planner estimates a performance benefit. In that case you may see something like this in the planner:
PARALLEL UNSAFE (the default) — forces planner to ditch parallel execution. These functions change databases and perform transactions.
PARALLEL RESTRICTED — restricts parallelism to the parallel group leader process. These functions can do temp tables, call cursors, and prepared statements.
PARALLEL SAFE — safe to run in parallel mode without restriction, enabling the planner to do parallelism when it chooses to do so.
The planner needs to know how much operations cost in terms of execution performance, and functions are indeed operations. PostgreSQL uses its own arbitrary measurement unit.
With a lower cost (typically 1–10), the planner will not care about optimization when calling this function, and it will call it any time it damn well pleases.
With a higher cost (1000+), the planner will try to optimize calls for this function.
TIP
Tackling this setting should be done if the query is indeed slow.
The number of rows returned is another piece of information for the planner that can be used to optimize calls and plan execution better. Therefore, this can only be used in functions that return sets (SETOF or TABLE).
A planner cannot possibly know the number of rows returned, and it will assume that it is 1000. But you can, and if you do, you can set this parameter.
The practical implications of this optimization label depend on which joining strategy the planner chooses, based on the row estimate:
Nested loop — a sort of database internal N+1, suitable strategy for small datasets
Hashed join — when the planner decides it will make hashes first, and then use them to compare joining keys, much more efficient for larger sets than nested join
In any case, this parameter only makes sense if you tend to join a function that returns sets.
CALLED ON NULL INPUT / RETURNS NULL ON NULL INPUT / STRICT
If you have a function that is supposed to return NULL if one of the parameters is NULL, you can just say so by labeling it RETURNS NULL ON NULL INPUT or shorter STRICT. This tells the engine to avoid calling the function in that case — simply replace it with a NULL value.
Default is CALLED ON NULL INPUT, which is normal behavior, and it doesn't need to be stated explicitly.
This concludes my short series on PostgreSQL optimization labels (some might call them hints).
`,28)),l(t,{"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Upload Annotations",href:"/annotations/upload"},{text:"Upload Configuration",href:"/config/uploads"},{text:"Code Generation",href:"/config/codegen"}]})])}const b=a(r,[["render",c]]);export{g as __pageData,b as default};
diff --git a/assets/blog_optimization-labels-101.md.0ZBmELgS.lean.js b/assets/blog_optimization-labels-101.md.0ZBmELgS.lean.js
new file mode 100644
index 000000000..5ad92d788
--- /dev/null
+++ b/assets/blog_optimization-labels-101.md.0ZBmELgS.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as o,o as s,a5 as i,G as l}from"./chunks/framework.CgT1UzWm.js";const g=JSON.parse('{"title":"NpgsqlRest Story Told Without AI","titleTemplate":"NpgsqlRest","description":"PostgreSQL Optimization Labels 101","frontmatter":{"layout":"doc","outline":[2,3],"title":"NpgsqlRest Story Told Without AI","titleTemplate":"NpgsqlRest","description":"PostgreSQL Optimization Labels 101","badge":"human","head":[["meta",{"name":"keywords","content":"postgresql optimization volatile stable immutable"}],["meta",{"property":"og:title","content":"NpgsqlRest Story told without AI"}],["meta",{"property":"og:description","content":"PostgreSQL Optimization Labels 101"}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"PostgreSQL Optimization Labels 101"}]]},"headers":[],"relativePath":"blog/optimization-labels-101.md","filePath":"blog/optimization-labels-101.md"}'),r={name:"blog/optimization-labels-101.md"};function c(p,e,d,h,u,m){const t=n("BlogNav");return s(),o("div",null,[e[0]||(e[0]=i("",28)),l(t,{"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Upload Annotations",href:"/annotations/upload"},{text:"Upload Configuration",href:"/config/uploads"},{text:"Code Generation",href:"/config/codegen"}]})])}const b=a(r,[["render",c]]);export{g as __pageData,b as default};
diff --git a/assets/blog_passkey-sql-auth.md.BRkr8TRo.js b/assets/blog_passkey-sql-auth.md.BRkr8TRo.js
new file mode 100644
index 000000000..f1e65c6e0
--- /dev/null
+++ b/assets/blog_passkey-sql-auth.md.BRkr8TRo.js
@@ -0,0 +1,611 @@
+import{_ as a,C as n,c as e,o as l,a5 as t,G as p}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Learn how to implement passwordless WebAuthn passkey authentication entirely in PostgreSQL using NpgsqlRest. Full SQL-based passkey registration, login, and credential management.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Learn how to implement passwordless WebAuthn passkey authentication entirely in PostgreSQL using NpgsqlRest. Full SQL-based passkey registration, login, and credential management.","head":[["meta",{"name":"keywords","content":"webauthn passkey postgresql, passwordless authentication sql, passkey implementation postgres, npgsqlrest webauthn, sql authentication passkey, fido2 postgresql"}],["meta",{"property":"og:title","content":"Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"}],["meta",{"property":"og:description","content":"Learn how to implement passwordless WebAuthn passkey authentication entirely in PostgreSQL using NpgsqlRest."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"}],["meta",{"name":"twitter:description","content":"Passwordless WebAuthn passkey authentication implemented entirely in PostgreSQL with NpgsqlRest."}]]},"headers":[],"relativePath":"blog/passkey-sql-auth.md","filePath":"blog/passkey-sql-auth.md"}'),h={name:"blog/passkey-sql-auth.md"};function r(k,s,d,c,o,F){const i=n("BlogNav");return l(),e("div",null,[s[0]||(s[0]=t(`
Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest
WebAuthn · Authentication · January 2026
WebAuthn passkeys replace the weakest part of most systems - the password - with public-key cryptography tied to biometric or PIN verification on the user's device. There is no shared secret to phish, reuse across sites, or leak in a database breach.
NpgsqlRest now supports built-in passkey authentication that lets you implement passwordless login with your authentication logic written entirely in PostgreSQL functions. No external authentication libraries, no third-party services—just your database, a few SQL functions, and a client-side script to call the browser's WebAuthn API (see the passkey.ts example you can use as a starting point).
A common misconception about passkeys is that they store biometric data. They don't. Here's what actually happens:
During registration, the user's device generates a public/private key pair. The private key never leaves the device and is protected by biometrics or a PIN
Your database stores only the public key, a credential ID, and metadata like the signature counter
During login, the device signs a challenge with the private key, and your server verifies it with the stored public key
No fingerprints, no facial recognition data, no personal biometric information ever touches your server. You're storing cryptographic keys, not sensitive personal data.
Browser: A client script that calls the browser's WebAuthn API and communicates with NpgsqlRest endpoints. See the passkey.ts example for a complete TypeScript implementation.
NpgsqlRest: Provides the HTTP endpoints and handles CBOR parsing/verification.
PostgreSQL: Your SQL functions control the entire authentication flow—challenge creation, user management, credential storage.
The division of labor: NpgsqlRest does the cryptographic work (parsing CBOR attestation objects, verifying signatures with EC and RSA keys) while your SQL functions define the business logic.
NpgsqlRest supports three distinct passkey flows. Each endpoint internally executes a configured SQL command (typically a PostgreSQL function) that you define.
The standalone registration flow (EnableRegister: false by default) allows anyone to create an account with just a passkey. In most production systems, you'll want additional verification before creating accounts—email confirmation, admin approval, invitation codes, or CAPTCHA validation.
For this reason, the recommended approach is:
Create user accounts through your existing registration flow (with whatever verification you need)
Let users add passkeys to their verified accounts using the Add Passkey flow
The standalone registration endpoints are available when you need them (set EnableRegister: true), and the complete example demonstrates both approaches.
If you take one recommendation from this post: keep EnableRegister off, let users add passkeys to accounts created through your existing verified registration flow, and put a rate limiter on the endpoints. The rest—challenge storage, claims, audit logging—is ordinary SQL, version-controlled next to your schema.
`,192)),p(i,{"get-started":[{text:"Passkey Configuration Reference",href:"/config/passkey-auth"},{text:"Complete Passkey Example",href:"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/13_passkey"},{text:"Quick Start Guide",href:"/guide/quick-start"}]})])}const C=a(h,[["render",r]]);export{u as __pageData,C as default};
diff --git a/assets/blog_passkey-sql-auth.md.BRkr8TRo.lean.js b/assets/blog_passkey-sql-auth.md.BRkr8TRo.lean.js
new file mode 100644
index 000000000..6af6e04af
--- /dev/null
+++ b/assets/blog_passkey-sql-auth.md.BRkr8TRo.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as e,o as l,a5 as t,G as p}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Learn how to implement passwordless WebAuthn passkey authentication entirely in PostgreSQL using NpgsqlRest. Full SQL-based passkey registration, login, and credential management.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Learn how to implement passwordless WebAuthn passkey authentication entirely in PostgreSQL using NpgsqlRest. Full SQL-based passkey registration, login, and credential management.","head":[["meta",{"name":"keywords","content":"webauthn passkey postgresql, passwordless authentication sql, passkey implementation postgres, npgsqlrest webauthn, sql authentication passkey, fido2 postgresql"}],["meta",{"property":"og:title","content":"Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"}],["meta",{"property":"og:description","content":"Learn how to implement passwordless WebAuthn passkey authentication entirely in PostgreSQL using NpgsqlRest."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"}],["meta",{"name":"twitter:description","content":"Passwordless WebAuthn passkey authentication implemented entirely in PostgreSQL with NpgsqlRest."}]]},"headers":[],"relativePath":"blog/passkey-sql-auth.md","filePath":"blog/passkey-sql-auth.md"}'),h={name:"blog/passkey-sql-auth.md"};function r(k,s,d,c,o,F){const i=n("BlogNav");return l(),e("div",null,[s[0]||(s[0]=t("",192)),p(i,{"get-started":[{text:"Passkey Configuration Reference",href:"/config/passkey-auth"},{text:"Complete Passkey Example",href:"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/13_passkey"},{text:"Quick Start Guide",href:"/guide/quick-start"}]})])}const C=a(h,[["render",r]]);export{u as __pageData,C as default};
diff --git a/assets/blog_performance-scalability-high-availability-npgsqlrest.md.73MKg7Tu.js b/assets/blog_performance-scalability-high-availability-npgsqlrest.md.73MKg7Tu.js
new file mode 100644
index 000000000..907d0984d
--- /dev/null
+++ b/assets/blog_performance-scalability-high-availability-npgsqlrest.md.73MKg7Tu.js
@@ -0,0 +1,496 @@
+import{_ as a,C as n,c as e,o as t,a5 as l,G as p}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"Performance, Scalability, and High Availability with NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Production-ready API configuration: response caching, retry logic, rate limiting, PostgreSQL multi-host failover, and load balancing. Complete guide with examples.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Performance, Scalability, and High Availability with NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Production-ready API configuration: response caching, retry logic, rate limiting, PostgreSQL multi-host failover, and load balancing. Complete guide with examples.","head":[["meta",{"name":"keywords","content":"postgresql api caching, api rate limiting, postgresql high availability, postgresql load balancing, npgsql failover, api retry logic, postgresql connection pooling, production api"}],["meta",{"property":"og:title","content":"Performance, Scalability, and High Availability with NpgsqlRest"}],["meta",{"property":"og:description","content":"Production-ready API config: caching, retry logic, rate limiting, PostgreSQL multi-host failover."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Performance & High Availability with NpgsqlRest"}],["meta",{"name":"twitter:description","content":"Production-ready API: caching, rate limiting, PostgreSQL failover and load balancing."}]]},"headers":[],"relativePath":"blog/performance-scalability-high-availability-npgsqlrest.md","filePath":"blog/performance-scalability-high-availability-npgsqlrest.md"}'),h={name:"blog/performance-scalability-high-availability-npgsqlrest.md"};function k(r,s,d,o,c,g){const i=n("BlogNav");return t(),e("div",null,[s[0]||(s[0]=l(`
Performance, Scalability, and High Availability with NpgsqlRest
Performance · Scalability · High Availability · January 2026
A functionally correct API is the easy part. Production adds the rest: caching to reduce load, retry logic to handle transient failures, rate limiting to protect your infrastructure, and high availability configuration to survive a server going down.
NpgsqlRest has built-in support for all of these. This guide walks through each feature with practical examples.
Functions or SQL files — same annotations, different placement
Every annotation in this post works identically with PostgreSQL functions (via comment on function ... is '...') and with SQL files (via -- @annotation header comments in a .sql file). Same semantics, same defaults, same ordering rules — only the comment placement differs. Examples below use both forms; pick whichever fits your codebase.
The same endpoint as a function and as a SQL file:
sql
sql
-- As a function
+create function get_settings() returns json language sql
+begin atomic; select settings from app_config where id = 1; end;
+
+comment on function get_settings() is 'HTTP GET
+@cached
+@cache_expires_in 1 hour';
1 2 3 4 5 6 7
sql
sql
-- As a SQL file: sql/get-settings.sql
+-- HTTP GET
+-- @cached
+-- @cache_expires_in 1 hour
+select settings from app_config where id = 1;
1 2 3 4 5
Both produce GET /api/get-settings with a one-hour cached response. SQL files need the SqlFileSource plugin enabled in config ("NpgsqlRest": { "SqlFileSource": { "Enabled": true, "FilePattern": "sql/**/*.sql" } }) — see SQL File Source for the full reference.
Caching is your first line of defense against unnecessary database load. NpgsqlRest supports two complementary caching layers: HTTP caching (browser/CDN level) and server-side caching (application level).
The fastest request is the one that never reaches your server. HTTP caching via Cache-Control headers lets browsers and CDNs serve responses without touching your infrastructure at all.
When a browser or CDN has a cached response that hasn't expired, your server receives zero requests. This is fundamentally different from server-side caching—with HTTP caching, there's no network round-trip, no connection pool usage, nothing.
NpgsqlRest can set any HTTP response header directly from comment annotations using the Header-Name: value format:
sql
sql
create function get_product_catalog()
+returns json
+language sql
+begin atomic;
+select json_agg(p) from products p where active;
+end;
+
+comment on function get_product_catalog() is
+'HTTP GET
+Cache-Control: public, max-age=3600';
1 2 3 4 5 6 7 8 9 10
Or as a SQL file:
sql
sql
-- sql/get-product-catalog.sql
+-- HTTP GET
+-- Cache-Control: public, max-age=3600
+select json_agg(p) from products p where active;
1 2 3 4
This tells browsers and CDNs to cache the response for 1 hour (3600 seconds). You can combine multiple headers:
sql
sql
comment on function get_static_config() is
+'HTTP GET
+Cache-Control: public, max-age=86400
+ETag: "v1.0"
+Vary: Accept-Encoding';
1 2 3 4 5
Common Cache-Control directives:
Directive
Meaning
public
Can be cached by browsers and CDNs
private
Only browser can cache, not CDNs
max-age=N
Cache for N seconds
no-cache
Must revalidate before using cached copy
no-store
Never cache
For authenticated endpoints, use private to prevent CDNs from serving one user's data to another:
sql
sql
comment on function get_user_dashboard() is
+'HTTP GET
+@authorize
+Cache-Control: private, max-age=300';
The challenge with aggressive HTTP caching is invalidation. How do you force clients to fetch fresh data when the underlying data changes?
The standard technique is cache busting via URL parameters. Add a version or timestamp parameter that changes when data is updated:
code
GET /api/products?v=1
+GET /api/products?v=2 # After data update - treated as new URL
1 2
The parameter doesn't need to do anything server-side—it simply makes the URL unique, causing browsers and CDNs to treat it as a completely different resource. Your function can ignore it entirely:
sql
sql
create function get_products(_v text default null)
+returns json
+language sql
+begin atomic;
+ select json_agg(p) from products p;
+end;
+
+comment on function get_products(text) is
+'HTTP GET
+Cache-Control: public, max-age=31536000';
1 2 3 4 5 6 7 8 9 10
The _v parameter exists only to differentiate cache keys. When you update your products, change v=1 to v=2 in your client code, and every user gets fresh data. With this pattern, you can set very long cache times (the example uses 1 year) because you control invalidation through URL changes.
This technique pays off most when combined with CDNs like Cloudflare or CloudFront, which cache at edge locations globally.
When HTTP caching isn't sufficient—perhaps you need more control over invalidation, or you're dealing with authenticated endpoints that can't be cached by CDNs—NpgsqlRest provides built-in server-side caching.
create function get_app_settings()
+returns json
+language sql
+begin atomic;
+select settings from app_config where id = 1;
+end;
+
+comment on function get_app_settings() is
+'HTTP GET
+@cached';
1 2 3 4 5 6 7 8 9 10
Or as a SQL file:
sql
sql
-- sql/get-app-settings.sql
+-- HTTP GET
+-- @cached
+select settings from app_config where id = 1;
1 2 3 4
When a cached endpoint is hit and the cache is warm, no database connection is opened. This is critical for high-traffic endpoints—you're not just saving database CPU cycles, you're preserving your connection pool for requests that actually need it.
For endpoints with parameters, specify which parameters form the cache key:
sql
sql
create function get_user_profile(_user_id int)
+returns json
+language sql
+begin atomic;
+select row_to_json(u) from users u where id = _user_id;
+end;
+
+comment on function get_user_profile(int) is
+'HTTP GET
+@cached _user_id';
1 2 3 4 5 6 7 8 9 10
Or as a SQL file — note that positional parameters need @param to get a readable name:
sql
sql
-- sql/get-user-profile.sql
+-- HTTP GET
+-- @param $1 user_id int
+-- @cached user_id
+select row_to_json(u) from users u where id = $1;
1 2 3 4 5
Different _user_id values create separate cache entries. Requests for user 1 and user 2 are cached independently.
For multiple parameters:
sql
sql
comment on function get_report(int, text) is
+'HTTP GET
+@cached _year, _department';
L1 (local) cache: Fast in-memory access for frequently used data
L2 (Redis) cache: Shared storage across instances
Stampede protection: Prevents multiple concurrent requests from hitting the database when cache expires
Without stampede protection, when a popular cached entry expires, every concurrent request tries to refresh it simultaneously—potentially overwhelming your database. Hybrid cache ensures only one request fetches fresh data while others wait.
You can use Hybrid cache without Redis for stampede protection alone:
GET /api/get-user/?id=123 -> Returns cached user data
+GET /api/get-user/invalidate?id=123 -> Clears cache entry
+GET /api/get-user/?id=123 -> Fresh data from database
1 2 3
The invalidation endpoint:
Uses the same authentication as the original endpoint
Accepts the same parameters (to match the cache key)
Returns {"invalidated": true} or {"invalidated": false}
Use it to invalidate cache right after data modifications instead of waiting for expiration.
Server-side caching works for functions returning multiple rows:
sql
sql
create function get_all_users()
+returns table(id int, name text)
+language sql
+begin atomic;
+select id, name from users;
+end;
+
+comment on function get_all_users() is
+'HTTP GET
+@cached
+@cache_expires_in 5 minutes';
1 2 3 4 5 6 7 8 9 10 11
Protect against caching excessively large result sets:
A single root cache type isn't always enough. You might want fast per-user data in Memory, shared session data in Redis, and historical analytics with a long TTL on a third backend — all in one application. Cache profiles let you register multiple named caching policies, each with its own backend, default expiration, key shape, and conditional rules, and let endpoints opt into them with the @cache_profile annotation.
-- Per-user 1-minute cache via the fast Memory profile
+comment on function get_my_dashboard(_user_id int) is
+'HTTP GET
+@authorize
+@cache_profile fast_memory';
+
+-- 1-hour distributed cache via Redis
+comment on function get_global_metrics() is
+'HTTP GET
+@cache_profile shared_redis';
+
+-- Long cache for historical queries; short cache for "until-now";
+-- bypass entirely when ?live=true
+comment on function compute_timeseries(_from text, _to text default null, _live boolean default false) is
+'HTTP GET
+@cache_profile timeseries';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
The same timeseries profile applied to a SQL file — the profile's When rules don't care whether the endpoint is a function or a file, they just inspect the resolved parameter values at request time:
sql
sql
-- sql/compute-timeseries.sql
+-- HTTP GET
+-- @param $1 from text
+-- @param $2 to text default null
+-- @param $3 live boolean default false
+-- @cache_profile timeseries
+select * from timeseries_data($1, $2)
+where ($3 = false or now() - interval '1 minute' < $2::timestamp);
1 2 3 4 5 6 7 8
Three things to know:
When rules are evaluated against request parameters at request time, first match wins. Each rule's Then is either "skip" (bypass cache entirely) or a PostgreSQL interval (override the TTL when writing). This is what makes profiles more expressive than the root cache.
Backend pooling — all profiles of the same Type share one backend instance. If no profile uses Redis and the root Type isn't Redis, no Redis connection is opened, even if RedisConfiguration is set.
Validation at startup — @cache_profile referencing an unknown name fails startup with a single exception listing every unresolved name and the endpoints that referenced each. No silent fall-throughs.
Endpoints without @cache_profile continue to use the root cache, so profiles are purely additive. See Cache Profiles for the full reference.
-- Critical payment processing - aggressive retries
+comment on function process_payment() is
+'HTTP POST
+@retry_strategy aggressive';
+
+-- Fast lookup - minimal retries to fail fast
+comment on function quick_lookup() is
+'HTTP GET
+@retry_strategy minimal';
Rate limiting protects your API from abuse and keeps one client from starving the rest. NpgsqlRest integrates ASP.NET Core's rate limiting middleware with four policy types.
RateLimiterOptions:Policies is now an object keyed by policy name, not an array of objects with a "Name" field. Earlier versions of this post showed the array form — if you copied from there, migrate to the keyed-object form below. Old configs fail at startup with a clear InvalidOperationException.
The window is divided into 6 segments (10 seconds each). As time passes, old segments expire gradually rather than all at once—preventing burst traffic at window boundaries.
The bucket holds up to 100 tokens. Every 10 seconds, 10 tokens are added. A burst of 100 requests is allowed, but sustained rate is limited to 1 request per second (10 tokens per 10 seconds).
Ideal for APIs where occasional bursts are acceptable but you want to prevent sustained abuse.
Out of the box, every request under a given policy shares a single global bucket — 100 requests per minute means 100 across all users, combined. That's rarely what you want for authenticated APIs, where one heavy user can starve everyone else.
A Partition block makes each request resolve its own bucket based on something from HttpContext: a claim, the client IP, a header, or a static fallback. The first source that resolves to a non-empty value wins.
per_user gives each authenticated user their own 100-per-minute bucket, falls back to per-IP for anonymous requests, and lumps anything else into a shared anonymous bucket. throttle_anon_only waves signed-in users through entirely (BypassAuthenticated: true) and applies a stricter 10-per-minute limit per IP for everyone else — a common pattern for protecting unauthenticated endpoints from scraping.
Policies without a Partition block still use a single global bucket, so partitioning only kicks in where you ask for it.
-- Public API: strict rate limiting
+comment on function public_search() is
+'HTTP GET
+@rate_limiter_policy fixed';
+
+-- Authenticated users: more generous limits
+comment on function user_dashboard() is
+'HTTP GET
+@authorize
+@rate_limiter_policy sliding';
+
+-- Expensive operations: concurrency limited
+comment on function export_data() is
+'HTTP POST
+@authorize
+@rate_limiter_policy concurrency';
Under high load, the .NET thread pool becomes a critical factor in API performance. By default, the thread pool starts with a small number of threads and grows slowly—adding only one thread every 500 milliseconds when all threads are busy. For high-throughput APIs handling thousands of concurrent requests, this gradual growth creates latency spikes during traffic bursts.
When your API receives a burst of requests, here's what happens:
The thread pool has its minimum number of threads (typically equal to CPU cores)
All threads become busy handling requests
New requests arrive but no threads are available
The thread pool waits 500ms before creating a new thread
This repeats for each additional thread needed
If you have 8 CPU cores and suddenly receive 100 concurrent requests, it could take 46 seconds ((100-8) × 0.5s) for the thread pool to grow large enough—during which time requests queue and latency degrades.
With MinWorkerThreads set to 100, the thread pool immediately has 100 threads available. New requests don't wait for thread injection—they execute immediately on pre-allocated threads.
Don't blindly increase thread counts. The defaults work well when:
Your requests are truly async (NpgsqlRest uses async Npgsql by default)
You're not blocking threads with synchronous waits
Your concurrency matches your CPU cores
Over-provisioning threads wastes memory and can hurt performance through excessive context switching. Always benchmark with realistic load before and after changes.
For production deployments, single-server databases are a single point of failure. NpgsqlRest uses Npgsql's multi-host connection support for failover and load balancing across PostgreSQL clusters.
Npgsql detects server role by querying pg_is_in_recovery(), which adds a small overhead to each connection. You can avoid this overhead by using separate named connections and specifying the connection directly in function annotations (covered below in Read Replica Routing).
With Load Balance Hosts=true, Npgsql rotates through the host list round-robin style—each new connection starts at a different position, distributing load evenly.
A common pattern: write to primary, read from replicas. Instead of relying on Target Session Attributes (which queries pg_is_in_recovery() on each connection), you can define separate named connections pointing directly to your servers:
comment on function get_analytics_data() is
+'HTTP GET
+@connection ReadReplica';
+
+comment on function heavy_report() is
+'HTTP GET
+@connection_name ReadReplica';
1 2 3 4 5 6 7
Or as SQL files — @connection works the same way regardless of endpoint source:
sql
sql
-- sql/get-analytics-data.sql
+-- HTTP GET
+-- @connection ReadReplica
+select * from analytics_summary;
1 2 3 4
The connection annotation references the connection string name. The endpoint uses that connection instead of the default.
This approach is more efficient than multi-host connections with Target Session Attributes because:
No pg_is_in_recovery() query on each connection
Direct connection to the intended server
You control exactly which endpoints use which servers
When using multiple connections, ensure all databases share the same schema. NpgsqlRest builds endpoints from database metadata at startup—the function signatures must match across all connections.
This is naturally true for primary-replica setups (replicas are copies of the primary) but requires attention if using separate databases.
Here's how these features work together for a production API — mixing functions and SQL files in the same codebase, since both speak the same annotation language:
sql
sql
-- Function — frequently accessed, rarely changes, aggressive caching
+create function get_product_catalog()
+returns json
+language sql
+begin atomic;
+select json_agg(p) from products p where active;
+end;
+
+comment on function get_product_catalog() is
+'HTTP GET
+@cached
+@cache_expires_in 1h
+@connection ReadReplica';
1 2 3 4 5 6 7 8 9 10 11 12 13
sql
sql
-- SQL file — user-specific, moderate caching
+-- sql/get-user-orders.sql
+-- HTTP GET
+-- @param $1 user_id int
+-- @authorize
+-- @cached user_id
+-- @cache_expires_in 5m
+-- @connection ReadReplica
+select json_agg(o) from orders o where user_id = $1;
1 2 3 4 5 6 7 8 9
sql
sql
-- Function — critical write operation needs plpgsql, retries, rate limiting
+create function process_order(_order json)
+returns json
+language plpgsql security definer
+as $$
+begin
+ -- Order processing logic
+ return '{"success": true}'::json;
+end;
+$$;
+
+comment on function process_order(json) is
+'HTTP POST
+@authorize
+@retry_strategy aggressive
+@rate_limiter_policy order_limit';
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
sql
sql
-- SQL file — expensive report, concurrency limited, long cache
+-- sql/generate-sales-report.sql
+-- HTTP GET
+-- @param $1 start_date date
+-- @param $2 end_date date
+-- @authorize roles admin,analyst
+-- @cached start_date, end_date
+-- @cache_expires_in 1d
+-- @rate_limiter_policy concurrency
+-- @connection ReadReplica
+select json_build_object(
+ 'period', json_build_object('start', $1, 'end', $2),
+ 'data', (select json_agg(r) from sales_summary r where date between $1 and $2)
+);
These features work together: cache misses that hit the database benefit from retry logic. Rate limiting prevents cache stampedes before they happen. Load balancing distributes the requests that make it past the cache.
The result is an API that's not just fast under normal conditions, but resilient under adverse ones.
Manual implementation: 1,750 - 3,300 lines of code across services, middleware, and configuration
NpgsqlRest: ~50 lines of JSON configuration + a few single-line annotations
Time saved: 2-4 weeks of development, testing, and debugging
Beyond line count, consider what you're not dealing with:
No unit tests for caching logic (NpgsqlRest handles it)
No integration tests for retry behavior
No debugging race conditions in cache invalidation
No maintaining compatibility across library upgrades
No security audits of custom retry/caching code
The declarative approach means you describe what you want, not how to implement it. The infrastructure is implemented once, in NpgsqlRest, and reused by every endpoint.
All performance features in this post — caching, retry strategies, rate limiting, timeouts — also work with SQL file endpoints.
`,254)),p(i,{"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Cache Options",href:"/config/cache-options"},{text:"Connection Settings",href:"/config/connection"},{text:"Rate Limiter",href:"/config/rate-limiter"}]})])}const F=a(h,[["render",k]]);export{u as __pageData,F as default};
diff --git a/assets/blog_performance-scalability-high-availability-npgsqlrest.md.73MKg7Tu.lean.js b/assets/blog_performance-scalability-high-availability-npgsqlrest.md.73MKg7Tu.lean.js
new file mode 100644
index 000000000..ab7d4e4d8
--- /dev/null
+++ b/assets/blog_performance-scalability-high-availability-npgsqlrest.md.73MKg7Tu.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as e,o as t,a5 as l,G as p}from"./chunks/framework.CgT1UzWm.js";const u=JSON.parse('{"title":"Performance, Scalability, and High Availability with NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Production-ready API configuration: response caching, retry logic, rate limiting, PostgreSQL multi-host failover, and load balancing. Complete guide with examples.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Performance, Scalability, and High Availability with NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Production-ready API configuration: response caching, retry logic, rate limiting, PostgreSQL multi-host failover, and load balancing. Complete guide with examples.","head":[["meta",{"name":"keywords","content":"postgresql api caching, api rate limiting, postgresql high availability, postgresql load balancing, npgsql failover, api retry logic, postgresql connection pooling, production api"}],["meta",{"property":"og:title","content":"Performance, Scalability, and High Availability with NpgsqlRest"}],["meta",{"property":"og:description","content":"Production-ready API config: caching, retry logic, rate limiting, PostgreSQL multi-host failover."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Performance & High Availability with NpgsqlRest"}],["meta",{"name":"twitter:description","content":"Production-ready API: caching, rate limiting, PostgreSQL failover and load balancing."}]]},"headers":[],"relativePath":"blog/performance-scalability-high-availability-npgsqlrest.md","filePath":"blog/performance-scalability-high-availability-npgsqlrest.md"}'),h={name:"blog/performance-scalability-high-availability-npgsqlrest.md"};function k(r,s,d,o,c,g){const i=n("BlogNav");return t(),e("div",null,[s[0]||(s[0]=l("",254)),p(i,{"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Cache Options",href:"/config/cache-options"},{text:"Connection Settings",href:"/config/connection"},{text:"Rate Limiter",href:"/config/rate-limiter"}]})])}const F=a(h,[["render",k]]);export{u as __pageData,F as default};
diff --git a/assets/blog_postgresql-bi-server-excel-csv-basic-auth.md.C9mEJphA.js b/assets/blog_postgresql-bi-server-excel-csv-basic-auth.md.C9mEJphA.js
new file mode 100644
index 000000000..c78ad25f5
--- /dev/null
+++ b/assets/blog_postgresql-bi-server-excel-csv-basic-auth.md.C9mEJphA.js
@@ -0,0 +1,272 @@
+import{_ as a,C as n,c as e,o as t,a5 as l,G as p}from"./chunks/framework.CgT1UzWm.js";const y=JSON.parse('{"title":"Turn PostgreSQL into a BI Server: CSV Exports & Excel Integration","titleTemplate":"NpgsqlRest","description":"Serve CSV reports directly from PostgreSQL to Excel with Basic Auth. Build a complete BI data delivery system without application code.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Turn PostgreSQL into a BI Server: CSV Exports & Excel Integration","titleTemplate":"NpgsqlRest","description":"Serve CSV reports directly from PostgreSQL to Excel with Basic Auth. Build a complete BI data delivery system without application code.","head":[["meta",{"name":"keywords","content":"postgresql bi server, postgresql excel integration, csv export postgresql, power query postgresql, basic auth postgresql api, npgsqlrest csv, postgresql reporting"}],["meta",{"property":"og:title","content":"Turn PostgreSQL into a BI Server: CSV Exports & Excel Integration"}],["meta",{"property":"og:description","content":"Serve CSV reports from PostgreSQL to Excel with Basic Auth. Build BI data delivery without code."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"PostgreSQL as a BI Server: Excel & CSV Integration"}],["meta",{"name":"twitter:description","content":"Serve CSV reports from PostgreSQL directly to Excel with authentication."}]]},"headers":[],"relativePath":"blog/postgresql-bi-server-excel-csv-basic-auth.md","filePath":"blog/postgresql-bi-server-excel-csv-basic-auth.md"}'),h={name:"blog/postgresql-bi-server-excel-csv-basic-auth.md"};function r(k,s,c,d,o,u){const i=n("BlogNav");return t(),e("div",null,[s[0]||(s[0]=l(`
Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration
January 2026 · PostgreSQLBIExcelCSVNpgsqlRest
A PostgreSQL function with a CSV annotation is a report endpoint that Excel can consume directly over Basic Auth - with no application code in between.
This post builds that into a working BI data delivery setup with NpgsqlRest: secured CSV endpoints, an audit trail, SSL, and Power Query on the consuming end. Change the function, and every connected Excel workbook picks up the change on its next refresh.
flowchart TB
+ EX["Excel / Power BI
+ (Power Query with Basic Auth)"]
+
+ EX -- "HTTPS + Basic Auth" --> NR["NpgsqlRest
+ (CSV endpoint layer)"]
+
+ NR --> PG
+
+ subgraph PG["PostgreSQL"]
+ SR["sales_report()
+ Basic Auth + Audit
+ SECURITY DEFINER"]
+ SRP["sales_report_public()
+ Public Access
+ SECURITY DEFINER"]
+ SR --> ST["sales table
+ (protected data)"]
+ end
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Your reporting logic lives in PostgreSQL functions, not application code. Business analysts connect Excel directly to these endpoints, and you control everything from one central place - the database.
Defense in Depth: The Principle of Least Privilege
Even if a Basic Auth password is compromised, the damage is limited:
mermaid
flowchart TB
+ AR["Application Role (app_user)
+ Can ONLY access public schema"]
+
+ AR -- "Can only call functions" --> PUB
+
+ subgraph PUB["example_5_public schema (exposed)"]
+ SR["sales_report() — SECURITY DEFINER
+ Can access protected data, but ONLY this specific data"]
+ end
+
+ PUB -- "SECURITY DEFINER elevates" --> PROT
+
+ subgraph PROT["example_5 schema (protected — NO direct access)"]
+ ST["sales table — app_user CANNOT access directly"]
+ end
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Why this matters:
No direct table access - The application role (app_user) cannot query tables directly. Even with a stolen password, an attacker can only call the exposed functions.
Controlled data exposure - Each SECURITY DEFINER function exposes exactly what it's designed to expose - nothing more. The sales_report() function returns sales data; it cannot be tricked into returning user passwords or other sensitive data.
Search path protection - The set search_path = pg_catalog, pg_temp prevents search path injection attacks that could otherwise exploit SECURITY DEFINER functions.
Audit trail built-in - The _user_name parameter records who accessed the data, providing accountability even for legitimate access.
This is defense in depth: SSL protects credentials in transit, Basic Auth controls who can access endpoints, and PoLP limits what authenticated users can actually do. A compromised password gives access to the sales report - not the entire database.
NpgsqlRest supports composite type expansion. When a function returns a table that includes a composite type alongside other columns, NpgsqlRest automatically expands the type's fields and merges them with the additional columns into a flat structure.
This is DRY at the database level: define the record shape once and reuse it across endpoints, so consumers see consistent structures everywhere.
create type example_5_public.sales_report_record as (
+ exported_by text,
+ order_id int,
+ customer_name text,
+ product text,
+ quantity int,
+ unit_price numeric(10,2),
+ total numeric(10,2),
+ order_date date
+);
1 2 3 4 5 6 7 8 9 10
Then compose new return types by combining this type with additional columns:
sql
sql
create function example_5_public.sales_report_public()
+returns table (
+ record example_5_public.sales_report_record, -- reuse the type
+ message text -- add context-specific column
+)
+language sql
+set search_path = pg_catalog, pg_temp
+security definer
+begin atomic;
+select
+ (report.*)::example_5_public.sales_report_record,
+ 'WARNING: This is a public endpoint without authentication.' as message
+from example_5_public.sales_report('public_user') report;
+end;
1 2 3 4 5 6 7 8 9 10 11 12 13 14
NpgsqlRest automatically expands this into a flat CSV structure:
csv
csv
"exported_by","order_id","customer_name","product","quantity","unit_price","total","order_date","message"
+"public_user",1,"Acme Corp","Widget Pro",50,29.99,1499.50,"2024-01-15","WARNING: This is a public endpoint..."
1 2
The composite type's 8 fields are expanded inline, followed by the message column - all as a single flat row.
The database types map directly to application types.
3. Function Chaining and Layered Access
Composite types enable building layered APIs where higher-level functions wrap lower-level ones:
sql
sql
-- Base function: secured, audited
+create function sales_report(_user_name text)
+returns setof sales_report_record ...
+
+-- Public wrapper: calls base function, adds warning
+create function sales_report_public()
+returns table (record sales_report_record, message text)
+as $$ select *, 'Public access' from sales_report('public_user') $$;
+
+-- Admin wrapper: calls base function, adds admin metadata
+create function sales_report_admin(_user_name text)
+returns table (record sales_report_record, access_level text, can_edit boolean)
+as $$ select *, 'admin', true from sales_report(_user_name) $$;
1 2 3 4 5 6 7 8 9 10 11 12 13
Each layer adds its own context without duplicating the core data structure.
4. Evolutionary Schema Design
As your application grows, you can evolve types without breaking existing consumers:
sql
sql
-- Week 1: Basic type
+create type order_summary as (id int, total numeric);
+
+-- Week 4: Add field - existing functions still work
+alter type order_summary add attribute status text;
1 2 3 4 5
5. Cross-Module Consistency
In larger applications with multiple schemas, composite types ensure consistency across different modules:
sql
sql
-- Shared type in a common schema
+create schema shared_types;
+create type shared_types.customer_info as (
+ customer_id int,
+ customer_name text,
+ email text,
+ tier text
+);
+
+-- Module A: Orders uses the shared type
+create function orders.get_order_details(_order_id int)
+returns table (
+ customer shared_types.customer_info, -- reused type
+ order_id int,
+ order_total numeric,
+ order_date date
+);
+
+-- Module B: Support tickets uses the same type
+create function support.get_ticket_details(_ticket_id int)
+returns table (
+ customer shared_types.customer_info, -- same type, consistent structure
+ ticket_id int,
+ issue text,
+ status text
+);
Both modules produce consistent customer information structures. When customer fields change (e.g., adding phone), update the type once and both modules inherit the change.
When you run this query, Excel prompts for Basic Auth credentials. Enter your username and password, and the data flows directly into your spreadsheet.
-- Add a new column to the report
+create or replace function example_5_public.sales_report(...)
+returns table (
+ -- existing columns...
+ profit_margin numeric(5,2) -- NEW!
+)
1 2 3 4 5 6
Every Excel workbook that connects to this endpoint will see the new column on the next refresh. You control the data structure from one place - the database - and every consumer automatically gets the update.
This is the opposite of traditional BI systems where:
This approach works well for many scenarios, but you may still need traditional ETL when:
High query load - Heavy reporting queries shouldn't compete with OLTP workloads on production databases
Cross-database joins - Data from multiple source systems needs consolidation
Historical snapshots - You need point-in-time data that changes over time
Complex transformations - Business logic requires extensive data cleansing or aggregation
For these cases, consider replicating data to a dedicated reporting database (using PostgreSQL logical replication, for example) and pointing NpgsqlRest at that replica. You get the same simple CSV endpoints without impacting production.
Consider what you'd typically need for a BI system:
Traditional BI
This Approach
PostgreSQL (or paid database)
PostgreSQL (free)
ETL tool licenses
Often not needed*
Data warehouse licenses
Often not needed*
BI tool licenses (Tableau, etc.)
Not needed
Development time for integration
Minutes
Ongoing maintenance
Schema changes only
*For simple reporting from a single database, ETL and data warehouses add unnecessary complexity. For high-load production systems or cross-database reporting, consider a read replica.
With PostgreSQL (free) and NpgsqlRest (free), you have a complete BI data delivery system in minutes. Users get their data in Excel - the tool they already know - and can create any charts or analysis they want.
PostgreSQL functions define the reports, annotations turn them into authenticated CSV endpoints, and Excel consumes them directly - structure changes reach every workbook on the next refresh. The caveats above still apply: point heavy reporting at a replica, and treat Basic Auth as internal-network-only, always behind SSL.
Within those bounds, no BI licenses, no ETL pipelines, no data warehouse - just PostgreSQL functions serving CSV to Excel. That's what "database as the application" means in practice.
`,131)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/5_csv_basic_auth",documentation:[{text:"Basic Auth Configuration",href:"/config/basic-auth-config"},{text:"CSV Annotations",href:"/annotations/raw"},{text:"Authentication Options",href:"/config/authentication-options"}]})])}const F=a(h,[["render",r]]);export{y as __pageData,F as default};
diff --git a/assets/blog_postgresql-bi-server-excel-csv-basic-auth.md.C9mEJphA.lean.js b/assets/blog_postgresql-bi-server-excel-csv-basic-auth.md.C9mEJphA.lean.js
new file mode 100644
index 000000000..d211958f0
--- /dev/null
+++ b/assets/blog_postgresql-bi-server-excel-csv-basic-auth.md.C9mEJphA.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as e,o as t,a5 as l,G as p}from"./chunks/framework.CgT1UzWm.js";const y=JSON.parse('{"title":"Turn PostgreSQL into a BI Server: CSV Exports & Excel Integration","titleTemplate":"NpgsqlRest","description":"Serve CSV reports directly from PostgreSQL to Excel with Basic Auth. Build a complete BI data delivery system without application code.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Turn PostgreSQL into a BI Server: CSV Exports & Excel Integration","titleTemplate":"NpgsqlRest","description":"Serve CSV reports directly from PostgreSQL to Excel with Basic Auth. Build a complete BI data delivery system without application code.","head":[["meta",{"name":"keywords","content":"postgresql bi server, postgresql excel integration, csv export postgresql, power query postgresql, basic auth postgresql api, npgsqlrest csv, postgresql reporting"}],["meta",{"property":"og:title","content":"Turn PostgreSQL into a BI Server: CSV Exports & Excel Integration"}],["meta",{"property":"og:description","content":"Serve CSV reports from PostgreSQL to Excel with Basic Auth. Build BI data delivery without code."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"PostgreSQL as a BI Server: Excel & CSV Integration"}],["meta",{"name":"twitter:description","content":"Serve CSV reports from PostgreSQL directly to Excel with authentication."}]]},"headers":[],"relativePath":"blog/postgresql-bi-server-excel-csv-basic-auth.md","filePath":"blog/postgresql-bi-server-excel-csv-basic-auth.md"}'),h={name:"blog/postgresql-bi-server-excel-csv-basic-auth.md"};function r(k,s,c,d,o,u){const i=n("BlogNav");return t(),e("div",null,[s[0]||(s[0]=l("",131)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/5_csv_basic_auth",documentation:[{text:"Basic Auth Configuration",href:"/config/basic-auth-config"},{text:"CSV Annotations",href:"/annotations/raw"},{text:"Authentication Options",href:"/config/authentication-options"}]})])}const F=a(h,[["render",r]]);export{y as __pageData,F as default};
diff --git a/assets/blog_postgresql-rest-api-benchmark-2024.md.DwEQmIoA.js b/assets/blog_postgresql-rest-api-benchmark-2024.md.DwEQmIoA.js
new file mode 100644
index 000000000..ec4918c0d
--- /dev/null
+++ b/assets/blog_postgresql-rest-api-benchmark-2024.md.DwEQmIoA.js
@@ -0,0 +1 @@
+import{v as s,aj as o,c as l,o as n,j as t,a as r}from"./chunks/framework.CgT1UzWm.js";const i=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"blog/postgresql-rest-api-benchmark-2024.md","filePath":"blog/postgresql-rest-api-benchmark-2024.md"}'),p={name:"blog/postgresql-rest-api-benchmark-2024.md"},m=Object.assign(p,{setup(c){return s(()=>{o().go("/blog/postgresql-rest-api-benchmark-2026")}),(a,e)=>(n(),l("div",null,e[0]||(e[0]=[t("p",null,[r("Redirecting to "),t("a",{href:"/blog/postgresql-rest-api-benchmark-2026.html"},"PostgreSQL REST API Benchmark 2026"),r("...")],-1)])))}});export{i as __pageData,m as default};
diff --git a/assets/blog_postgresql-rest-api-benchmark-2024.md.DwEQmIoA.lean.js b/assets/blog_postgresql-rest-api-benchmark-2024.md.DwEQmIoA.lean.js
new file mode 100644
index 000000000..ec4918c0d
--- /dev/null
+++ b/assets/blog_postgresql-rest-api-benchmark-2024.md.DwEQmIoA.lean.js
@@ -0,0 +1 @@
+import{v as s,aj as o,c as l,o as n,j as t,a as r}from"./chunks/framework.CgT1UzWm.js";const i=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"blog/postgresql-rest-api-benchmark-2024.md","filePath":"blog/postgresql-rest-api-benchmark-2024.md"}'),p={name:"blog/postgresql-rest-api-benchmark-2024.md"},m=Object.assign(p,{setup(c){return s(()=>{o().go("/blog/postgresql-rest-api-benchmark-2026")}),(a,e)=>(n(),l("div",null,e[0]||(e[0]=[t("p",null,[r("Redirecting to "),t("a",{href:"/blog/postgresql-rest-api-benchmark-2026.html"},"PostgreSQL REST API Benchmark 2026"),r("...")],-1)])))}});export{i as __pageData,m as default};
diff --git a/assets/blog_postgresql-rest-api-benchmark-2025.md.Tbw6Blag.js b/assets/blog_postgresql-rest-api-benchmark-2025.md.Tbw6Blag.js
new file mode 100644
index 000000000..91595774d
--- /dev/null
+++ b/assets/blog_postgresql-rest-api-benchmark-2025.md.Tbw6Blag.js
@@ -0,0 +1 @@
+import{v as s,aj as o,c as l,o as n,j as t,a as r}from"./chunks/framework.CgT1UzWm.js";const i=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"blog/postgresql-rest-api-benchmark-2025.md","filePath":"blog/postgresql-rest-api-benchmark-2025.md"}'),p={name:"blog/postgresql-rest-api-benchmark-2025.md"},m=Object.assign(p,{setup(c){return s(()=>{o().go("/blog/postgresql-rest-api-benchmark-2026")}),(a,e)=>(n(),l("div",null,e[0]||(e[0]=[t("p",null,[r("Redirecting to "),t("a",{href:"/blog/postgresql-rest-api-benchmark-2026.html"},"PostgreSQL REST API Benchmark 2026"),r("...")],-1)])))}});export{i as __pageData,m as default};
diff --git a/assets/blog_postgresql-rest-api-benchmark-2025.md.Tbw6Blag.lean.js b/assets/blog_postgresql-rest-api-benchmark-2025.md.Tbw6Blag.lean.js
new file mode 100644
index 000000000..91595774d
--- /dev/null
+++ b/assets/blog_postgresql-rest-api-benchmark-2025.md.Tbw6Blag.lean.js
@@ -0,0 +1 @@
+import{v as s,aj as o,c as l,o as n,j as t,a as r}from"./chunks/framework.CgT1UzWm.js";const i=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"blog/postgresql-rest-api-benchmark-2025.md","filePath":"blog/postgresql-rest-api-benchmark-2025.md"}'),p={name:"blog/postgresql-rest-api-benchmark-2025.md"},m=Object.assign(p,{setup(c){return s(()=>{o().go("/blog/postgresql-rest-api-benchmark-2026")}),(a,e)=>(n(),l("div",null,e[0]||(e[0]=[t("p",null,[r("Redirecting to "),t("a",{href:"/blog/postgresql-rest-api-benchmark-2026.html"},"PostgreSQL REST API Benchmark 2026"),r("...")],-1)])))}});export{i as __pageData,m as default};
diff --git a/assets/blog_postgresql-rest-api-benchmark-2026.md.CJcg5B7z.js b/assets/blog_postgresql-rest-api-benchmark-2026.md.CJcg5B7z.js
new file mode 100644
index 000000000..7b83ee386
--- /dev/null
+++ b/assets/blog_postgresql-rest-api-benchmark-2026.md.CJcg5B7z.js
@@ -0,0 +1 @@
+import{_ as r,C as s,c as a,o as l,a5 as d,G as n}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","titleTemplate":"NpgsqlRest","description":"Performance comparison of 14 REST API frameworks serving PostgreSQL data. NpgsqlRest, PostgREST, Swoole PHP, Go, Rust, Express, FastAPI, Spring Boot and more tested under load.","frontmatter":{"layout":"doc","outline":[2,3],"title":"PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","titleTemplate":"NpgsqlRest","description":"Performance comparison of 14 REST API frameworks serving PostgreSQL data. NpgsqlRest, PostgREST, Swoole PHP, Go, Rust, Express, FastAPI, Spring Boot and more tested under load.","head":[["meta",{"name":"keywords","content":"postgresql rest api benchmark, api performance comparison, npgsqlrest vs postgrest, fastapi vs express postgresql, spring boot postgresql performance, swoole php benchmark, rest api framework comparison 2026"}],["meta",{"property":"og:title","content":"PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"}],["meta",{"property":"og:description","content":"Performance comparison of 14 REST API frameworks serving PostgreSQL data. See how NpgsqlRest, PostgREST, Swoole PHP, and others perform under load."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"}],["meta",{"name":"twitter:description","content":"Performance comparison of 14 REST API frameworks serving PostgreSQL data under various load conditions."}]]},"headers":[],"relativePath":"blog/postgresql-rest-api-benchmark-2026.md","filePath":"blog/postgresql-rest-api-benchmark-2026.md"}'),i={name:"blog/postgresql-rest-api-benchmark-2026.md"};function o(g,t,h,p,_,c){const e=s("BlogNav");return l(),a("div",null,[t[0]||(t[0]=d('
PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared
Benchmark · Performance · January 2026
INFO
I wanted to repeat the benchmark from last year for several big reasons:
First and foremost I wanted to make tests realistic and fair as much as possible. Last year tests were done in a hurry and to be honest, something was fisy with those results.
Lately, there were some big internal changes in NpgsqlRest, many micro-optimizations and improvements that affected performance.
I waanted to add more scenarios, and test different aspects (such as system resource usage which are now included).
Some other frameworks also had major updates, so I wanted to see how they compare now.
Other than that, during the developement and explaration of the test project, I found some issues. For example:
Pause between tests was way too short. Increaed from 5 to 30 seconds to allow TCP TIME_WAIT sockets to clear, JIT warmup, Garbage Collection, etc.
Logging setup was uneven across frameworks, causing some to log to console/file during tests, impacting performance. Now all logging is disabled.
Other then that, I wanted to make the benchmarks as transparent, fair, realistic and accurate as possible. Everyone can check the source code used for tests, and run run themself if desired with their own setup. Also, anyone can suggest improvements or make PRs with new frameworks, optimizations or new test scenarios, and I would very much welcome that. As development of NpgsqlRest continues, I plan to repeat this benchmark from time to time to keep track of performance changes.
What follows is the detailed AI-generated analysis and report of the benchmark results. But you can also skip to summary results table or to conclusion sections directly.
Enjoy!
Following our 2025 benchmark, this year's run uses the latest framework versions and adds higher concurrency levels (up to 200 VUs), pure HTTP overhead tests (Minimal Baseline), and POST body parsing benchmarks.
All frameworks executed the same PostgreSQL functions. This isolates the framework overhead from database performance - every framework runs identical queries against the same PostgreSQL instance. All functions use generate_series() for constant, predictable database response times with no table I/O.
A major shift from 2025: Swoole PHP 6.0 now leads in most scenarios involving larger payloads. At 100 VU with 100 records, Swoole achieves 469.58 req/s - outperforming all competitors. With 500 records, Swoole maintains its lead at 106.88 req/s.
At 100 concurrent users with minimal payload (1 record), NpgsqlRest JIT achieves 4,588 req/s, maintaining its lead in low-latency scenarios. The gap between JIT and AOT versions has narrowed significantly in v3.4.7.
One caveat when interpreting these results: not all frameworks return identical JSON responses. The differences lie in how each handles PostgreSQL's JSON, JSONB, and array types.
Framework
json
jsonb
int[]
text[]
NpgsqlRest (JIT/AOT)
✅
✅
✅
✅
.NET EF Core / Dapper
✅
✅
✅
✅
Rust
✅
✅
✅
✅
Fastify
✅
✅
✅
✅
Django
✅
❌
✅
✅
Go
❌
❌
✅
✅
FastAPI
❌
❌
✅
✅
PostgREST
⚠️
⚠️
✅
✅
Bun
⚠️
⚠️
✅
✅
Spring Boot
⚠️
⚠️
✅
✅
Swoole PHP
❌
❌
❌
❌
✅ = Properly parsed as native JSON/array ❌ = Returns raw PostgreSQL text format (string) ⚠️ = Unusual format (wrapped in metadata or array)
Swoole PHP's impressive numbers come with a caveat: JSON/JSONB and array fields require additional client-side parsing.
Where each framework fits, based on the 2026 numbers:
For low-latency, high-concurrency APIs: NpgsqlRest JIT remains the top choice at 4,588 req/s
For data-heavy workloads: Swoole PHP now leads with superior large-payload handling
For pure HTTP performance: Go is unmatched at 20,000+ req/s
For balanced workloads: Bun, Go, and Fastify offer excellent all-around performance
The "database as API" approach continues to hold the top tier: NpgsqlRest requires zero application code - just configuration - while delivering top-tier performance and correct PostgreSQL type handling.
Performance isn't everything — development time, maintainability, and code complexity matter too. How much code each framework needs to implement the same API endpoints:
Framework
Lines of Code
PostgREST
14 (config only)
NpgsqlRest
21 (config only)
Fastify
100
.NET EF
116
Bun
133
FastAPI
136
Spring Boot
139
.NET Dapper
140
Django
203
Swoole PHP
216
Rust
291
Go
347
Go may deliver 20,000+ req/s in pure HTTP tests, but that comes at the cost of writing 347 lines of boilerplate code for basic CRUD operations. Every line of code is a potential bug, a maintenance burden, and development time spent.
NpgsqlRest and PostgREST take a different approach: define your API in the database, configure once, and let the framework handle the rest. You get top-tier performance (4,500+ req/s) with just 14-21 lines of configuration - no serialization code, no routing logic, no connection pool management.
',145)),n(e,{"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Installation",href:"/guide/installation"},{text:"Configuration Guide",href:"/guide/configuration"}]})])}const b=r(i,[["render",o]]);export{m as __pageData,b as default};
diff --git a/assets/blog_postgresql-rest-api-benchmark-2026.md.CJcg5B7z.lean.js b/assets/blog_postgresql-rest-api-benchmark-2026.md.CJcg5B7z.lean.js
new file mode 100644
index 000000000..c05852952
--- /dev/null
+++ b/assets/blog_postgresql-rest-api-benchmark-2026.md.CJcg5B7z.lean.js
@@ -0,0 +1 @@
+import{_ as r,C as s,c as a,o as l,a5 as d,G as n}from"./chunks/framework.CgT1UzWm.js";const m=JSON.parse('{"title":"PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","titleTemplate":"NpgsqlRest","description":"Performance comparison of 14 REST API frameworks serving PostgreSQL data. NpgsqlRest, PostgREST, Swoole PHP, Go, Rust, Express, FastAPI, Spring Boot and more tested under load.","frontmatter":{"layout":"doc","outline":[2,3],"title":"PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","titleTemplate":"NpgsqlRest","description":"Performance comparison of 14 REST API frameworks serving PostgreSQL data. NpgsqlRest, PostgREST, Swoole PHP, Go, Rust, Express, FastAPI, Spring Boot and more tested under load.","head":[["meta",{"name":"keywords","content":"postgresql rest api benchmark, api performance comparison, npgsqlrest vs postgrest, fastapi vs express postgresql, spring boot postgresql performance, swoole php benchmark, rest api framework comparison 2026"}],["meta",{"property":"og:title","content":"PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"}],["meta",{"property":"og:description","content":"Performance comparison of 14 REST API frameworks serving PostgreSQL data. See how NpgsqlRest, PostgREST, Swoole PHP, and others perform under load."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"}],["meta",{"name":"twitter:description","content":"Performance comparison of 14 REST API frameworks serving PostgreSQL data under various load conditions."}]]},"headers":[],"relativePath":"blog/postgresql-rest-api-benchmark-2026.md","filePath":"blog/postgresql-rest-api-benchmark-2026.md"}'),i={name:"blog/postgresql-rest-api-benchmark-2026.md"};function o(g,t,h,p,_,c){const e=s("BlogNav");return l(),a("div",null,[t[0]||(t[0]=d("",145)),n(e,{"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Installation",href:"/guide/installation"},{text:"Configuration Guide",href:"/guide/configuration"}]})])}const b=r(i,[["render",o]]);export{m as __pageData,b as default};
diff --git a/assets/blog_real-time-chat-postgresql-sse-npgsqlrest.md.Fd5M97qI.js b/assets/blog_real-time-chat-postgresql-sse-npgsqlrest.md.Fd5M97qI.js
new file mode 100644
index 000000000..61ecf01ef
--- /dev/null
+++ b/assets/blog_real-time-chat-postgresql-sse-npgsqlrest.md.Fd5M97qI.js
@@ -0,0 +1,299 @@
+import{_ as a,C as n,c as e,o as t,a5 as l,G as h}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse('{"title":"Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","titleTemplate":"NpgsqlRest","description":"Build real-time chat with PostgreSQL LISTEN/NOTIFY and Server-Sent Events. No WebSocket servers, no message brokers - just SQL procedures and TypeScript.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","titleTemplate":"NpgsqlRest","description":"Build real-time chat with PostgreSQL LISTEN/NOTIFY and Server-Sent Events. No WebSocket servers, no message brokers - just SQL procedures and TypeScript.","head":[["meta",{"name":"keywords","content":"postgresql real-time chat, server-sent events postgresql, sse postgresql, postgresql listen notify, real-time notifications postgresql, npgsqlrest sse, postgresql websocket alternative"}],["meta",{"property":"og:title","content":"Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"}],["meta",{"property":"og:description","content":"Build real-time chat with PostgreSQL LISTEN/NOTIFY and SSE. No WebSocket servers, no message brokers."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Real-Time Chat with PostgreSQL and Server-Sent Events"}],["meta",{"name":"twitter:description","content":"Build real-time chat with PostgreSQL LISTEN/NOTIFY and SSE. No WebSocket servers needed."}]]},"headers":[],"relativePath":"blog/real-time-chat-postgresql-sse-npgsqlrest.md","filePath":"blog/real-time-chat-postgresql-sse-npgsqlrest.md"}'),p={name:"blog/real-time-chat-postgresql-sse-npgsqlrest.md"};function k(r,s,d,c,o,g){const i=n("BlogNav");return t(),e("div",null,[s[0]||(s[0]=l(`
Build a Real-Time Chat App with PostgreSQL and Server-Sent Events
January 2026 · SSEReal-TimePostgreSQLChatNpgsqlRest
Adding chat to an application usually means adding a WebSocket server, a message broker, pub/sub plumbing, and hundreds of lines of code spread across multiple services.
What if you could build a fully functional, secure real-time chat with just a single SQL procedure and a few lines of TypeScript?
This tutorial shows how NpgsqlRest's Server-Sent Events (SSE) support turns PostgreSQL RAISE statements into real-time events.
Backend API - REST endpoints for message history, user management
Database Integration - Separate persistence layer for messages
That's eight moving parts, each one a failure point, a deployment concern, and development time.
The NpgsqlRest Approach: PostgreSQL IS Your Real-Time Server
NpgsqlRest inverts this. Instead of adding infrastructure, it uses what you already have:
PostgreSQL RAISE statements become SSE events - No message broker needed
Cookie authentication works automatically - Same auth for REST and SSE
Scoped event distribution - Control who receives events with annotations
Single deployment - No separate WebSocket server
Auto-generated TypeScript client - Including EventSource factory functions
The mechanism is mundane: PostgreSQL already supports sending messages during query execution via RAISE. NpgsqlRest captures these messages and streams them to connected clients via Server-Sent Events.
flowchart TB
+ A["Alice's Browser"] & B["Bob's Browser"]
+ A -- "EventSource('/api/send-message/info?TEST_CHANNEL')" --> N
+ B -- "SSE Connection" --> N
+
+ N["NpgsqlRest
+ Maintains SSE connections for authorized clients
+ Filters events by scope (authorize, matching, all)"]
+
+ N -- "RAISE INFO JSON payload" --> P
+
+ P["PostgreSQL
+ PROCEDURE send_message() executes RAISE INFO
+ NpgsqlRest captures the notice and broadcasts"]
1 2 3 4 5 6 7 8 9 10 11 12 13 14
When an @sse-annotated PostgreSQL function or procedure executes RAISE INFO, RAISE NOTICE, or RAISE WARNING, NpgsqlRest captures the matching messages and streams them to connected SSE clients based on the configured scope. Procedures without @sse can RAISE all they want — those notices are never broadcast.
Internally, every @sse-annotated procedure publishes into a single process-wide broadcaster, and every connected EventSource reads from that same stream — the URL it opened is just an entry point. Filtering happens per event (scope, hint, optional execution ID), not per URL. This becomes important once you have more than one source of events; see Cross-procedure pattern in the SSE annotation reference.
-- Users table with secure password hashing
+create table example_8.users (
+ user_id int primary key generated always as identity,
+ username text not null unique,
+ password_hash text not null
+);
+
+-- Insert test users (alice/password123, bob/password456)
+insert into example_8.users (username, password_hash) values
+ ('alice', crypt('password123', gen_salt('bf'))),
+ ('bob', crypt('password456', gen_salt('bf')));
+
+-- Messages table for chat history
+create table example_8.messages (
+ message_id int primary key generated always as identity,
+ user_id int not null references example_8.users(user_id),
+ username text not null,
+ message_text text not null,
+ created_at timestamptz not null default now()
+);
-- Only admins receive these events
+comment on procedure admin_notification() is '
+@sse
+@sse_scope authorize admin';
+
+-- Specific users receive events
+comment on procedure user_alert() is '
+@sse
+@sse_scope authorize alice, bob';
-- This event goes to admins only
+raise notice 'Admin alert: server load high' using hint = 'authorize admin';
+
+-- This event goes to everyone
+raise notice 'System maintenance in 5 minutes' using hint = 'all';
+
+-- This uses the default scope from annotation
+raise notice 'Regular update...';
A common question: why use RAISE INFO instead of PostgreSQL's built-in LISTEN/NOTIFY for real-time events?
LISTEN/NOTIFY has a critical scalability problem. When you execute NOTIFY during a transaction, PostgreSQL acquires a global lock on the entire database during the commit phase. This serializes all commits across your system.
Global mutex contention - All transactions queue behind the notification lock
Throughput collapse - Query throughput drops dramatically under load
Paradoxical behavior - CPU, disk I/O, and network actually decrease during high load because processes are waiting for the lock
Hundreds of blocked processes - Sessions pile up waiting for the global lock
Their load testing showed that removing NOTIFY allowed full CPU utilization and rapid recovery from load spikes, while NOTIFY caused the database to grind to a halt.
NpgsqlRest's SSE implementation uses RAISE INFO/NOTICE/WARNING instead of NOTIFY:
Aspect
LISTEN/NOTIFY
RAISE + SSE
Locking
Global database lock on commit
No additional locking
Scalability
Serializes all commits
Scales with connections
Delivery
Requires dedicated listener connection
HTTP streaming (standard)
Persistence
Fire-and-forget (can lose messages)
Immediate streaming
Connection model
Long-lived DB connections
Standard HTTP connections
Client implementation
Custom pg_notify client
Standard EventSource API
RAISE statements are connection-local - they emit notices to the current connection's notice handler without any global coordination. NpgsqlRest captures these notices during query execution and streams them to SSE clients. No locks, no contention, no scalability ceiling.
This is why NpgsqlRest uses RAISE instead of NOTIFY for real-time events.
Advanced: Execution-ID correlation as soft channels
The X-NpgsqlRest-ID header was designed for request correlation — letting the client receive only the events fired during its own POST. When both the connection's query string and the request's header carry the same ID, NpgsqlRest filters out events whose IDs don't match.
You can lean on that mechanism to build channel-like behavior, as long as every emitter sets the header and every listener sets the query string:
typescript
typescript
// Listeners — each connection only receives events tagged with its own ID
+const generalChat = createSendMessageEventSource("general");
+const teamChat = createSendMessageEventSource("team-123");
+const notifications = createSendMessageEventSource("notifications");
+
+// Sender — pass the same ID; the generated client puts it in X-NpgsqlRest-ID
+await sendMessage({ messageText: "Hello team!" }, undefined, "team-123");
1 2 3 4 5 6 7
Caveat
This is a soft filter. If the listener has no execution ID, or the emitter doesn't set the header, the filter is bypassed and the listener will see the event regardless. For truly isolated streams you need scope/hint filtering (per-user, per-role, etc.) rather than execution IDs alone.
NpgsqlRest's SSE support turns PostgreSQL's notice system into real-time messaging: RAISE INFO emits the events, annotations control who receives them, and the same cookie auth covers both your REST API and the event stream. For chat, notifications, and live dashboards, that means one deployment and zero extra infrastructure. Reserve WebSockets for the cases that genuinely need them - bidirectional high-frequency traffic or binary data - and use SSE for everything else.
`,98)),h(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/8_simple_chat_client","get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"SSE Annotation",href:"/annotations/sse"},{text:"SSE Scope",href:"/annotations/sse-events-scope"},{text:"SSE Level",href:"/annotations/sse-events-level"},{text:"Code Generation",href:"/config/codegen"}]})])}const C=a(p,[["render",k]]);export{F as __pageData,C as default};
diff --git a/assets/blog_real-time-chat-postgresql-sse-npgsqlrest.md.Fd5M97qI.lean.js b/assets/blog_real-time-chat-postgresql-sse-npgsqlrest.md.Fd5M97qI.lean.js
new file mode 100644
index 000000000..dec6225df
--- /dev/null
+++ b/assets/blog_real-time-chat-postgresql-sse-npgsqlrest.md.Fd5M97qI.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as e,o as t,a5 as l,G as h}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse('{"title":"Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","titleTemplate":"NpgsqlRest","description":"Build real-time chat with PostgreSQL LISTEN/NOTIFY and Server-Sent Events. No WebSocket servers, no message brokers - just SQL procedures and TypeScript.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","titleTemplate":"NpgsqlRest","description":"Build real-time chat with PostgreSQL LISTEN/NOTIFY and Server-Sent Events. No WebSocket servers, no message brokers - just SQL procedures and TypeScript.","head":[["meta",{"name":"keywords","content":"postgresql real-time chat, server-sent events postgresql, sse postgresql, postgresql listen notify, real-time notifications postgresql, npgsqlrest sse, postgresql websocket alternative"}],["meta",{"property":"og:title","content":"Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"}],["meta",{"property":"og:description","content":"Build real-time chat with PostgreSQL LISTEN/NOTIFY and SSE. No WebSocket servers, no message brokers."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Real-Time Chat with PostgreSQL and Server-Sent Events"}],["meta",{"name":"twitter:description","content":"Build real-time chat with PostgreSQL LISTEN/NOTIFY and SSE. No WebSocket servers needed."}]]},"headers":[],"relativePath":"blog/real-time-chat-postgresql-sse-npgsqlrest.md","filePath":"blog/real-time-chat-postgresql-sse-npgsqlrest.md"}'),p={name:"blog/real-time-chat-postgresql-sse-npgsqlrest.md"};function k(r,s,d,c,o,g){const i=n("BlogNav");return t(),e("div",null,[s[0]||(s[0]=l("",98)),h(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/8_simple_chat_client","get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"SSE Annotation",href:"/annotations/sse"},{text:"SSE Scope",href:"/annotations/sse-events-scope"},{text:"SSE Level",href:"/annotations/sse-events-level"},{text:"Code Generation",href:"/config/codegen"}]})])}const C=a(p,[["render",k]]);export{F as __pageData,C as default};
diff --git a/assets/blog_reverse-proxy-postgresql-ai-service-npgsqlrest.md.BtaYnMBE.js b/assets/blog_reverse-proxy-postgresql-ai-service-npgsqlrest.md.BtaYnMBE.js
new file mode 100644
index 000000000..84f65232c
--- /dev/null
+++ b/assets/blog_reverse-proxy-postgresql-ai-service-npgsqlrest.md.BtaYnMBE.js
@@ -0,0 +1,444 @@
+import{_ as a,C as n,c as l,o as e,a5 as t,G as p}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Proxy external services through PostgreSQL functions. Cache AI responses, aggregate microservices data, avoid connection pool exhaustion. No middleware required.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Proxy external services through PostgreSQL functions. Cache AI responses, aggregate microservices data, avoid connection pool exhaustion. No middleware required.","head":[["meta",{"name":"keywords","content":"postgresql reverse proxy, api gateway postgresql, cache ai responses postgresql, microservices aggregation, npgsqlrest proxy, postgresql external api, connection pool optimization"}],["meta",{"property":"og:title","content":"Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"}],["meta",{"property":"og:description","content":"Proxy external services through PostgreSQL functions. Cache AI responses, aggregate microservices data without middleware."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Reverse Proxy in PostgreSQL: Gateway to External Services"}],["meta",{"name":"twitter:description","content":"Proxy external services through PostgreSQL. Cache AI responses, aggregate microservices data."}]]},"headers":[],"relativePath":"blog/reverse-proxy-postgresql-ai-service-npgsqlrest.md","filePath":"blog/reverse-proxy-postgresql-ai-service-npgsqlrest.md"}'),h={name:"blog/reverse-proxy-postgresql-ai-service-npgsqlrest.md"};function k(r,s,d,c,y,F){const i=n("BlogNav");return e(),l("div",null,[s[0]||(s[0]=t(`
Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest
Proxy · API Gateway · Microservices · Caching · January 2026
Not all API endpoints need a database connection. Health checks, static responses, proxied requests to microservices - these operations consume connection pool slots without ever touching PostgreSQL.
NpgsqlRest's Reverse Proxy feature addresses this: define endpoints in SQL that forward requests to upstream services, transform the responses in PostgreSQL when needed, and skip the database connection entirely when you don't - same annotation-driven workflow throughout. That covers everything from pass-through health checks to caching layers in front of expensive AI service calls.
This tutorial builds an AI Text Analysis Service that combines a local AI processing server with PostgreSQL-backed caching and enrichment - without spending connection pool slots where they aren't needed.
When a proxy endpoint function has no proxy response parameters, NpgsqlRest:
Forwards the request directly to the upstream service
Returns the upstream response to the client
Never opens a database connection
sql
sql
-- This function body is NEVER executed
+-- The proxy annotation handles everything
+create function ai_health()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function ai_health is '
+HTTP GET /ai/health
+@proxy';
1 2 3 4 5 6 7 8 9 10 11 12
When a client calls /ai/health, NpgsqlRest forwards to the configured upstream host, receives the response, and returns it - no PostgreSQL involved.
When a proxy endpoint function has proxy response parameters (_proxy_body, _proxy_status_code, etc.), NpgsqlRest:
Forwards the request to the upstream service
Passes the response to your PostgreSQL function
Your function can cache, transform, enrich, or validate the response
Returns your function's result to the client
sql
sql
create function ai_summarize(
+ _text text,
+ _max_length int default 150,
+ -- Proxy response parameters - these trigger transform mode
+ _proxy_status_code int default null,
+ _proxy_body text default null,
+ _proxy_success boolean default null,
+ _proxy_error_message text default null
+)
+returns json
+language plpgsql
+as $$
+declare
+ _result json;
+begin
+ -- Check cache first
+ select cached_response into _result
+ from analysis_cache
+ where text_hash = md5(_text);
+
+ if _result is not null then
+ return _result; -- Cache hit - no upstream call was made
+ end if;
+
+ -- Upstream response is in _proxy_body
+ if not _proxy_success then
+ return json_build_object('error', _proxy_error_message);
+ end if;
+
+ -- Cache and return
+ insert into analysis_cache (text_hash, cached_response)
+ values (md5(_text), _proxy_body::json);
+
+ return _proxy_body::json;
+end;
+$$;
+
+comment on function ai_summarize is '
+HTTP POST /ai/summarize
+@authorize
+@proxy POST';
For health checks, we don't need PostgreSQL at all:
sql
sql
create function example_10.ai_health()
+returns void
+language sql
+begin atomic;
+select;
+end;
+
+comment on function example_10.ai_health is '
+HTTP GET /ai/health
+@proxy';
1 2 3 4 5 6 7 8 9 10
The trigger: the function returns void and has no proxy parameters. NpgsqlRest detects this and uses passthrough mode - no database connection is opened.
When the load balancer pings /ai/health every 5 seconds, it gets the upstream response directly without touching the connection pool.
-- Users service
+create function users_api()
+returns void
+language sql
+begin atomic;
+select;
+end;
+comment on function users_api is '
+HTTP GET /api/users
+@proxy https://users-service.internal:8080';
+
+-- Orders service
+create function orders_api()
+returns void
+language sql
+begin atomic;
+select;
+end;
+comment on function orders_api is '
+HTTP GET /api/orders
+@proxy https://orders-service.internal:8080';
create function secure_api_call(
+ _proxy_body text default null
+)
+returns json language plpgsql as $$
+begin
+ return _proxy_body::json;
+end;
+$$;
+
+comment on function secure_api_call is '
+HTTP GET /secure-data
+@authorize
+@user_context
+@proxy https://internal-api.example.com/data';
1 2 3 4 5 6 7 8 9 10 11 12 13 14
With user_context, NpgsqlRest forwards user claims as HTTP headers to the upstream service.
The Reverse Proxy feature extends NpgsqlRest beyond a database-to-API bridge into a full API gateway - preserving the annotation-driven, SQL-first workflow while adding routing, transformation, and caching on top.
`,96)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/10_proxy_ai_service",documentation:[{text:"Proxy Annotation",href:"/annotations/proxy"},{text:"Proxy Configuration",href:"/config/proxy"},{text:"Docker Bun Image",href:"/guide/installation#bun-runtime-image"}],"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Installation",href:"/guide/installation"},{text:"Configuration",href:"/guide/configuration"}]})])}const C=a(h,[["render",k]]);export{o as __pageData,C as default};
diff --git a/assets/blog_reverse-proxy-postgresql-ai-service-npgsqlrest.md.BtaYnMBE.lean.js b/assets/blog_reverse-proxy-postgresql-ai-service-npgsqlrest.md.BtaYnMBE.lean.js
new file mode 100644
index 000000000..6af4a0c81
--- /dev/null
+++ b/assets/blog_reverse-proxy-postgresql-ai-service-npgsqlrest.md.BtaYnMBE.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as l,o as e,a5 as t,G as p}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Proxy external services through PostgreSQL functions. Cache AI responses, aggregate microservices data, avoid connection pool exhaustion. No middleware required.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","titleTemplate":"NpgsqlRest","description":"Proxy external services through PostgreSQL functions. Cache AI responses, aggregate microservices data, avoid connection pool exhaustion. No middleware required.","head":[["meta",{"name":"keywords","content":"postgresql reverse proxy, api gateway postgresql, cache ai responses postgresql, microservices aggregation, npgsqlrest proxy, postgresql external api, connection pool optimization"}],["meta",{"property":"og:title","content":"Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"}],["meta",{"property":"og:description","content":"Proxy external services through PostgreSQL functions. Cache AI responses, aggregate microservices data without middleware."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Reverse Proxy in PostgreSQL: Gateway to External Services"}],["meta",{"name":"twitter:description","content":"Proxy external services through PostgreSQL. Cache AI responses, aggregate microservices data."}]]},"headers":[],"relativePath":"blog/reverse-proxy-postgresql-ai-service-npgsqlrest.md","filePath":"blog/reverse-proxy-postgresql-ai-service-npgsqlrest.md"}'),h={name:"blog/reverse-proxy-postgresql-ai-service-npgsqlrest.md"};function k(r,s,d,c,y,F){const i=n("BlogNav");return e(),l("div",null,[s[0]||(s[0]=t("",96)),p(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/10_proxy_ai_service",documentation:[{text:"Proxy Annotation",href:"/annotations/proxy"},{text:"Proxy Configuration",href:"/config/proxy"},{text:"Docker Bun Image",href:"/guide/installation#bun-runtime-image"}],"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Installation",href:"/guide/installation"},{text:"Configuration",href:"/guide/configuration"}]})])}const C=a(h,[["render",k]]);export{o as __pageData,C as default};
diff --git a/assets/blog_secure-image-uploads-postgresql-typescript.md.BCA4okme.js b/assets/blog_secure-image-uploads-postgresql-typescript.md.BCA4okme.js
new file mode 100644
index 000000000..32eed367c
--- /dev/null
+++ b/assets/blog_secure-image-uploads-postgresql-typescript.md.BCA4okme.js
@@ -0,0 +1,295 @@
+import{_ as a,C as n,c as l,o as t,a5 as h,G as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"Secure Image Uploads with PostgreSQL: File System and Large Objects","titleTemplate":"NpgsqlRest","description":"Build a complete image upload system with PostgreSQL. Store files on disk or in Large Objects, with automatic TypeScript client and progress tracking.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Secure Image Uploads with PostgreSQL: File System and Large Objects","titleTemplate":"NpgsqlRest","description":"Build a complete image upload system with PostgreSQL. Store files on disk or in Large Objects, with automatic TypeScript client and progress tracking.","head":[["meta",{"name":"keywords","content":"postgresql image upload, file upload postgresql, postgresql large objects, secure file upload api, npgsqlrest uploads, postgresql blob storage, typescript file upload"}],["meta",{"property":"og:title","content":"Secure Image Uploads with PostgreSQL: File System and Large Objects"}],["meta",{"property":"og:description","content":"Build a complete image upload system with PostgreSQL. Store files on disk or in Large Objects."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Secure Image Uploads with PostgreSQL"}],["meta",{"name":"twitter:description","content":"Build image uploads with PostgreSQL. File system or Large Objects storage."}]]},"headers":[],"relativePath":"blog/secure-image-uploads-postgresql-typescript.md","filePath":"blog/secure-image-uploads-postgresql-typescript.md"}'),p={name:"blog/secure-image-uploads-postgresql-typescript.md"};function k(r,s,d,g,y,F){const i=n("BlogNav");return t(),l("div",null,[s[0]||(s[0]=h(`
Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript
January 2026 · UploadsPostgreSQLTypeScriptNpgsqlRest
Image uploads in NpgsqlRest come down to one SQL function and one annotation: the annotation picks the storage - file system, PostgreSQL Large Objects, or both - and the function records the metadata. The TypeScript client, progress tracking included, is generated for you.
Create a table to track uploads and a response type for type-safe TypeScript generation:
sql
sql
-- Unified uploads table
+create table example_6.uploads (
+ id int primary key generated always as identity,
+ user_id int not null,
+ file_name text not null,
+ content_type text not null,
+ file_size bigint not null,
+ oid bigint, -- Large Object identifier (when using LO handler)
+ file_path text, -- File path (when using FS handler)
+ uploaded_at timestamptz not null default now()
+);
+
+-- Response type for generated TypeScript interfaces
+create type example_6.upload_response as (
+ success boolean,
+ status text,
+ file_name text,
+ content_type text,
+ file_size bigint,
+ oid bigint,
+ file_path text
+);
The annotation in the function comment controls which handler processes uploads:
sql
sql
-- File System storage
+comment on function example_6.upload_to_file_system(text, json) is '
+HTTP POST
+@upload for file_system
+@param _meta is upload metadata
+@check_image = true
+@path = ./uploads
+@unique_name = true';
+
+-- Large Object storage
+comment on function example_6.upload_to_large_object(text, json) is '
+HTTP POST
+@upload for large_object
+@param _meta is upload metadata
+@check_image = true';
+
+-- Combined (both handlers)
+comment on function example_6.upload_to_combined(text, json) is '
+HTTP POST
+@upload for large_object, file_system
+@param _meta is upload metadata
+@check_image = true
+@path = ./uploads
+@unique_name = true';
Meanwhile, NpgsqlRest handles the backend automatically based on your SQL function and annotations, and generates this TypeScript client for your frontend:
Typed interfaces, FormData handling, progress callbacks, error handling - all generated from your SQL function signature.
Line count comparison for a complete upload feature:
Component
Traditional
NpgsqlRest
Backend endpoint
30-50
0
Entity/Model class
15-25
0
Repository
10-20
0
DTO classes
10-20
0
Database migration
10-15
10-15
SQL function
0
20
Annotation
0
5
TypeScript types
15-30 (manual)
0 (generated)
Frontend upload
30-50
10 (generated)
Total
~120-210
~35-50
That's 70-80% less code - and the NpgsqlRest code is mostly just your SQL function doing exactly what you want, with TypeScript client generated automatically.
`,84)),e(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/6_image_uploads","get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Upload Annotations",href:"/annotations/upload"},{text:"Upload Configuration",href:"/config/uploads"},{text:"Code Generation",href:"/config/codegen"},{text:"Response Headers",href:"/annotations/response-headers"},{text:"Raw Output",href:"/annotations/raw"}]})])}const C=a(p,[["render",k]]);export{o as __pageData,C as default};
diff --git a/assets/blog_secure-image-uploads-postgresql-typescript.md.BCA4okme.lean.js b/assets/blog_secure-image-uploads-postgresql-typescript.md.BCA4okme.lean.js
new file mode 100644
index 000000000..e52bac391
--- /dev/null
+++ b/assets/blog_secure-image-uploads-postgresql-typescript.md.BCA4okme.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as l,o as t,a5 as h,G as e}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"Secure Image Uploads with PostgreSQL: File System and Large Objects","titleTemplate":"NpgsqlRest","description":"Build a complete image upload system with PostgreSQL. Store files on disk or in Large Objects, with automatic TypeScript client and progress tracking.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Secure Image Uploads with PostgreSQL: File System and Large Objects","titleTemplate":"NpgsqlRest","description":"Build a complete image upload system with PostgreSQL. Store files on disk or in Large Objects, with automatic TypeScript client and progress tracking.","head":[["meta",{"name":"keywords","content":"postgresql image upload, file upload postgresql, postgresql large objects, secure file upload api, npgsqlrest uploads, postgresql blob storage, typescript file upload"}],["meta",{"property":"og:title","content":"Secure Image Uploads with PostgreSQL: File System and Large Objects"}],["meta",{"property":"og:description","content":"Build a complete image upload system with PostgreSQL. Store files on disk or in Large Objects."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Secure Image Uploads with PostgreSQL"}],["meta",{"name":"twitter:description","content":"Build image uploads with PostgreSQL. File system or Large Objects storage."}]]},"headers":[],"relativePath":"blog/secure-image-uploads-postgresql-typescript.md","filePath":"blog/secure-image-uploads-postgresql-typescript.md"}'),p={name:"blog/secure-image-uploads-postgresql-typescript.md"};function k(r,s,d,g,y,F){const i=n("BlogNav");return t(),l("div",null,[s[0]||(s[0]=h("",84)),e(i,{"source-code":"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/6_image_uploads","get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Upload Annotations",href:"/annotations/upload"},{text:"Upload Configuration",href:"/config/uploads"},{text:"Code Generation",href:"/config/codegen"},{text:"Response Headers",href:"/annotations/response-headers"},{text:"Raw Output",href:"/annotations/raw"}]})])}const C=a(p,[["render",k]]);export{o as __pageData,C as default};
diff --git a/assets/blog_sql-file-source-rest-api-from-plain-sql.md.czCJfcgj.js b/assets/blog_sql-file-source-rest-api-from-plain-sql.md.czCJfcgj.js
new file mode 100644
index 000000000..0be0fec4e
--- /dev/null
+++ b/assets/blog_sql-file-source-rest-api-from-plain-sql.md.czCJfcgj.js
@@ -0,0 +1,216 @@
+import{_ as i,c as a,o as n,a5 as l}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"SQL File Source: REST Endpoints from Plain .sql Files","titleTemplate":"NpgsqlRest","description":"NpgsqlRest 3.12.0 introduces SQL File Source — build REST APIs from plain .sql files. See real examples: auth, real-time chat, CSV exports, external API calls, and file uploads.","frontmatter":{"layout":"doc","outline":[2,3],"title":"SQL File Source: REST Endpoints from Plain .sql Files","titleTemplate":"NpgsqlRest","description":"NpgsqlRest 3.12.0 introduces SQL File Source — build REST APIs from plain .sql files. See real examples: auth, real-time chat, CSV exports, external API calls, and file uploads.","head":[["meta",{"name":"keywords","content":"npgsqlrest sql file source, sql to rest api, postgresql sql file endpoint, plain sql rest api, sql file api generator, npgsqlrest 3.12, multi-command sql endpoint"}],["meta",{"property":"og:title","content":"SQL File Source: REST Endpoints from Plain .sql Files"}],["meta",{"property":"og:description","content":"NpgsqlRest 3.12.0 introduces SQL File Source. See real examples: auth, chat, CSV exports, API calls, uploads."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"SQL File Source: REST Endpoints from Plain .sql Files"}],["meta",{"name":"twitter:description","content":"NpgsqlRest 3.12.0 introduces SQL File Source — REST APIs from plain .sql files."}]]},"headers":[],"relativePath":"blog/sql-file-source-rest-api-from-plain-sql.md","filePath":"blog/sql-file-source-rest-api-from-plain-sql.md"}'),e={name:"blog/sql-file-source-rest-api-from-plain-sql.md"};function t(p,s,h,k,r,d){return n(),a("div",null,s[0]||(s[0]=[l(`
SQL File Source: REST Endpoints from Plain .sql Files
March 2026 · SQL Filesv3.12.0PostgreSQLNpgsqlRest
NpgsqlRest 3.12.0 introduces SQL File Source. This is a REST endpoint:
sql
sql
-- HTTP GET
+-- @param $1 active
+select user_id, username, email, active from users where active = $1;
1 2 3
Drop this file as sql/get-users.sql, and GET /api/get-users?active=true is live. TypeScript client generated. Static type checking against your database schema at startup. No DDL, no migration, no CREATE FUNCTION.
For comparison, here's the same endpoint as a PostgreSQL function — the way it worked before:
sql
sql
create or replace function get_users(_active boolean)
+returns table (user_id int, username text, email text, active boolean)
+language sql
+begin atomic;
+ select user_id, username, email, active from users where active = _active;
+end;
+
+comment on function get_users(boolean) is 'HTTP GET';
1 2 3 4 5 6 7 8
Eight lines of DDL wrapping a 1-line query. Requires a migration. Lives in the database, not your file system. Changing the return columns means DROP and CREATE (or CREATE OR REPLACE with matching signatures).
The SQL file version: 3 lines. Edit the file, restart the server. All existing NpgsqlRest features — auth, caching, SSE, uploads, proxy, exports — work unchanged.
For the full technical reference, see the SQL File Endpoints Guide. This post shows the feature in practice.
From the same example — a single file, two statements, one HTTP request:
sql
sql
-- HTTP GET
+
+-- @result first
+select * from (
+ values ('Hello, World!'),
+ ('This is my first SQL endpoint.'),
+ ('Enjoy coding in SQL!')
+) as t(text);
+
+-- @result second
+-- @single
+select current_query() as query_text, current_user as user, current_timestamp as timestamp;
1 2 3 4 5 6 7 8 9 10 11 12
Returns a JSON object with named result keys:
json
json
{
+ "first": ["Hello, World!", "This is my first SQL endpoint.", "Enjoy coding in SQL!"],
+ "second": {"queryText": "...", "user": "postgres", "timestamp": "..."}
+}
1 2 3 4
@result names the keys. @single returns one row as an object instead of an array. Single-column results become flat arrays automatically. All executed in a single database round-trip via NpgsqlBatch.
/*
+HTTP POST
+@login
+@allow_anonymous
+@param $1 username
+@param $2 password
+*/
+select
+ 'cookies' as scheme,
+ u.user_id::text as user_id,
+ u.username,
+ u.email
+from example_3.users u
+where
+ u.username = $1
+ and example_3.verify_password($2, u.password_hash);
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
sql/who-am-i.sql:
sql
sql
/*
+HTTP GET
+@authorize
+@user_parameters
+@param $1 _user_id default null
+@param $2 _username default null
+@param $3 _email default null
+*/
+select $1 as user_id, $2 as username, $3 as email;
1 2 3 4 5 6 7 8 9
sql/logout.sql:
sql
sql
-- HTTP POST
+-- @logout
+-- @authorize
+select 'cookies'
1 2 3 4
The annotations (@login, @logout, @authorize, @user_parameters) work exactly the same as in function endpoints. The default null on who-am-i.sql parameters ensures they're always bindable — @user_parameters fills them from the authenticated user's claims.
@raw outputs plain text instead of JSON. @separator , and @columns produce a proper CSV with headers. The custom Content-Type and Content-Disposition headers make the browser download it as a file. @basic_auth means Excel's "Get Data from Web" can connect directly — turning this into a live data feed.
@define_param creates HTTP parameters that feed into annotation placeholders without appearing in the SQL. GET /api/get-data?format=excel&excelFileName=report.xlsx&excelSheet=Data streams a native .xlsx file. Change format to html_table for HTML, or omit it for JSON. Same SQL, different output.
/*
+HTTP GET
+@nested
+@param $1 authorId int default null
+*/
+select
+ row(a.author_id, first_name, last_name)::example_12.authors as author,
+ count(b.*) as books
+from example_12.authors a
+left join example_12.books b using (author_id)
+where
+ $1 is null or author_id = $1
+group by
+ a.author_id, first_name, last_name;
1 2 3 4 5 6 7 8 9 10 11 12 13 14
@nested wraps composite type columns as nested JSON objects instead of flattening them inline:
Parameters $5 and $6 are HTTP custom types — NpgsqlRest makes the external API calls in parallel (Task.WhenAll) and passes the responses as composite values. The DO block processes both responses and builds a combined dashboard result. @returns declares the return type because the temp table doesn't exist at startup. @skip hides the temp table setup from the response.
This is the most advanced SQL file pattern: temp table bridge, @returns, @skip, @single, @result, HTTP custom types, and transaction wrapping — all in one file.
Every feature shown above — authentication, SSE, CSV export, Excel streaming, file uploads, HTTP custom types, proxy, composite types, caching — existed before SQL File Source. They were designed for function endpoints. SQL File Source makes them available to plain SQL files with zero changes.
If you're already using NpgsqlRest with functions, you can migrate endpoints one by one. If you're new, you can start with SQL files and add functions when you need procedural logic, testing, or optimization hints.
SQL files win on simplicity and flexibility. Here's the short version:
SQL files advantages:
No migrations. Files live on disk — no CREATE FUNCTION DDL, no migration tooling. The parser validates against your schema at startup.
No COMMENT ON boilerplate. A -- HTTP comment is all it takes. Functions require a separate COMMENT ON FUNCTION statement.
No return type mapping. Functions require a RETURNS TABLE(...) clause with columns matched by position — tedious and error-prone. SQL files infer column names and types directly from the query result.
Multiple result sets. PostgreSQL functions cannot return multiple result sets. SQL files can: multiple statements in one file, each returning its own result, combined into a single JSON response with @result and @single. Doing this with functions means serializing to JSON manually — losing type safety (TypeScript gets any).
Routine advantages:
Named parameters. Functions get _user_id int natively. SQL files use positional $1 with @param comments.
Testability. Functions are callable units — select * from get_user(123) works in any SQL client. SQL files require HTTP-level testing.
Complex procedural logic.DO blocks in SQL files work but have hard limitations: no parameters (requires set_config or temp table workarounds) and no return values. Functions handle this natively with PL/pgSQL.
The rule of thumb: start with SQL files. Move to functions when you need unit-testable procedural logic or when DO block workarounds become too clumsy.
SQL files kept growing up: named parameters (where email = :email — the placeholder is the API parameter, since 3.19) replace the positional $1 + @param dance shown above; the SQL test runner (--test) runs plain .sql tests against these endpoints in-process; and watch mode (--watch) restarts the server on file, config, and database changes with the TypeScript client regenerated every cycle.
git clone https://github.com/NpgsqlRest/npgsqlrest-docs.git
+cd npgsqlrest-docs/examples && bun install
+cd 1_my_first_function_sql_file
+bun run db:up && bun run dev
+# Visit http://127.0.0.1:8080
`,71)]))}const g=i(e,[["render",t]]);export{o as __pageData,g as default};
diff --git a/assets/blog_sql-file-source-rest-api-from-plain-sql.md.czCJfcgj.lean.js b/assets/blog_sql-file-source-rest-api-from-plain-sql.md.czCJfcgj.lean.js
new file mode 100644
index 000000000..00c2d2aaf
--- /dev/null
+++ b/assets/blog_sql-file-source-rest-api-from-plain-sql.md.czCJfcgj.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as n,a5 as l}from"./chunks/framework.CgT1UzWm.js";const o=JSON.parse('{"title":"SQL File Source: REST Endpoints from Plain .sql Files","titleTemplate":"NpgsqlRest","description":"NpgsqlRest 3.12.0 introduces SQL File Source — build REST APIs from plain .sql files. See real examples: auth, real-time chat, CSV exports, external API calls, and file uploads.","frontmatter":{"layout":"doc","outline":[2,3],"title":"SQL File Source: REST Endpoints from Plain .sql Files","titleTemplate":"NpgsqlRest","description":"NpgsqlRest 3.12.0 introduces SQL File Source — build REST APIs from plain .sql files. See real examples: auth, real-time chat, CSV exports, external API calls, and file uploads.","head":[["meta",{"name":"keywords","content":"npgsqlrest sql file source, sql to rest api, postgresql sql file endpoint, plain sql rest api, sql file api generator, npgsqlrest 3.12, multi-command sql endpoint"}],["meta",{"property":"og:title","content":"SQL File Source: REST Endpoints from Plain .sql Files"}],["meta",{"property":"og:description","content":"NpgsqlRest 3.12.0 introduces SQL File Source. See real examples: auth, chat, CSV exports, API calls, uploads."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"SQL File Source: REST Endpoints from Plain .sql Files"}],["meta",{"name":"twitter:description","content":"NpgsqlRest 3.12.0 introduces SQL File Source — REST APIs from plain .sql files."}]]},"headers":[],"relativePath":"blog/sql-file-source-rest-api-from-plain-sql.md","filePath":"blog/sql-file-source-rest-api-from-plain-sql.md"}'),e={name:"blog/sql-file-source-rest-api-from-plain-sql.md"};function t(p,s,h,k,r,d){return n(),a("div",null,s[0]||(s[0]=[l("",71)]))}const g=i(e,[["render",t]]);export{o as __pageData,g as default};
diff --git a/assets/blog_sql-rest-api.md.Dv5ncwRQ.js b/assets/blog_sql-rest-api.md.Dv5ncwRQ.js
new file mode 100644
index 000000000..4d5c93891
--- /dev/null
+++ b/assets/blog_sql-rest-api.md.Dv5ncwRQ.js
@@ -0,0 +1,354 @@
+import{_ as a,C as n,c as e,o as t,a5 as l,G as p}from"./chunks/framework.CgT1UzWm.js";const h="/clean.png",r="/proto.jpeg",F=JSON.parse('{"title":"SQL REST API","titleTemplate":"NpgsqlRest","description":"The story behind NpgsqlRest 3.12.0 — SQL file endpoints, the philosophy of database-first development, AI tools, and why I think Clean Architecture got it wrong.","frontmatter":{"layout":"doc","outline":[2,4],"title":"SQL REST API","titleTemplate":"NpgsqlRest","description":"The story behind NpgsqlRest 3.12.0 — SQL file endpoints, the philosophy of database-first development, AI tools, and why I think Clean Architecture got it wrong.","badge":"human","head":[["meta",{"name":"keywords","content":"npgsqlrest postgresql sql rest api sql files database-first clean architecture ddd ai tools"}],["meta",{"property":"og:title","content":"SQL REST API"}],["meta",{"property":"og:description","content":"The story behind NpgsqlRest 3.12.0 — SQL file endpoints, the philosophy of database-first development, AI tools, and why I think Clean Architecture got it wrong."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"SQL REST API"}],["meta",{"name":"twitter:description","content":"The story behind NpgsqlRest 3.12.0 — SQL file endpoints, database-first philosophy, AI tools, and why Clean Architecture got it wrong."}]]},"headers":[],"relativePath":"blog/sql-rest-api.md","filePath":"blog/sql-rest-api.md"}'),o={name:"blog/sql-rest-api.md"};function k(d,s,c,g,u,y){const i=n("BlogNav");return t(),e("div",null,[s[0]||(s[0]=l(`
April 2026 · NpgsqlRestPostgreSQLStorySQL Filesv3.12.0
Version 3.12.0 was such a massive and important release that I really, really really wanted to take some time to write personally about it. Ok, so this time and in this blog post - no AI, no nothing. Let's do this...
Close the Claude Code, turn it off, shut it down. Claude Code you shut up you now. Fine.
Start typing "This" ...
This blog post is unique because it is written entirely without the assistance of any AI tools. In an era where AI-generated content is becoming increasingly prevalent, I wanted to take a moment to share my personal journey with NpgsqlRest and how it has impacted my development workflow.
Damn it, shut up Copilot you. How do I turn this thing off? Ask Claude Code how to do it, turn it on again. And now he sees me writing a new blog post, damn it, who told you, is that you Copilot again? What's going on here?
Oh I see, there is actually a mute button, let's start finally...
But seriously, no. NpgsqlRest is NOT a replacement for PostgrREST/Supabase simply because we don't share the same philosophy and the same approach. Let me explain...
Besides the fact that NpgsqlRest doesn't use or need RLS to implement auth and authorization, which is a huge difference in itself, and the fact that we can configure each endpoint individually, the biggest difference between NpgsqlRest and PostgrREST/Supabase is in the way they generate REST API endpoints.
PostgrREST/Supabase uses direct Table/View access as primary source of generated REST API endpoints. And to do that, it offers a rich set of query filters and operators (e.g., eq, gt, like, in, order, limit, select) to cover a wide range of use cases. I believe this is the wrong approach for many reasons. And, as I have worked on more than one ambitious low-code project over decades, I have seen this approach fail, well, almost every time.
First of all, most real-world endpoints aren't CRUDs on a single table at all. We have data models, we have various joins of various complexity depending on the use case and model itself, is it normalized, denormalized, various aggregations, conditional logic, etc. - the kind of stuff that SQL was made for.
But instead of letting you write your own SQL declarations, this approach forces you to express your logic through query filters and operators - essentially, configuration completely bypassing the expressiveness of SQL. It is basically swapping power and expressiveness of SQL for a lousy configuration. At that point you are not doing SQL, you are doing configuration. No thanks. I mean, what if your use case is not supported by the configuration and to be perfectly honest - it usually isn't.
Given those facts, my approach was always from the start - let the user write their own SQL and have endpoints generated from that unchanged in any shape or form, just as they are. And when I say user I mean me, because it was always a tool for me, myself and I.
Both tools, however, do support generated REST API endpoints from PostgreSQL functions and procedures (short: routines). But the difference is that in PostgrREST/Supabase, routines are just an alternative to direct Table/View access, while in NpgsqlRest, they are the primary source of generated REST API endpoints. In addition, with NpgsqlRest you can pick and choose exactly which functions and procedures you want to generate endpoints from, and you can configure each endpoint individually, with PostgrREST/Supabase, all functions in the exposed schema are automatically available as endpoints — you control access at the schema level with grants, not per individual function.
I also have designed NpgsqlRest to be extendable with system of plugins. A set of plugins to generate code from endpoint source (e.g., TypeScript/JavaScript modules and types, HTTP files for testing, OpenAPI spec, etc.) and then another set of plugins to act as endpoint source.
Default source has always been so-called Routine Source for Functions and Procedures. There used to be a CRUD Source for direct Table/View access too. Basically, I was nagged. Like, look, PostgrREST has direct Table/View access, boo-hoo, why don't you have it? So I added it. Then I removed it from the standalone client in 3.14.0. It was an abomination that shouldn't have existed. It broke any sane design principle from separation of concerns to encapsulation and abstraction, and served no real purpose except to achieve quick results with big issues down the road.
In any case, I have used functions and procedures as primary source for auto generated REST API endpoints for more than two years now, and it was a great success. I have completed successfully couple of challenging projects using this tool and I am more than happy. Velocity and productivity were through the roof, and I was able to focus on my UI/UX masterpiece instead of dealing with all the boilerplate and infrastructure.
I even built a simple and lightweight migration tool to help me with managing migration scripts that works similarly to Flyway community (with repeatable and versioned scripts, etc.) but much more lightweight and simpler and with few additional features that I needed for my projects (test runner comes to mind). But even with that, I still had to deal with the fact that I need to create a function on the server for every endpoint and that meant running DDL scripts in repeatable scripts.
Little did I know that there is a much simpler way. If you have running PostgreSQL connection, you can actually use native PostgreSQL parser to parse any SQL command to generate metadata and that can also be used to generate REST API endpoints. And that is exactly what we did with SQL script files as REST API endpoints feature in NpgsqlRest 3.12.0.
The idea is simple: a directory with SQL script files/scripts, and then NpgsqlRest will use that on startup to parse all configured files with the native PostgreSQL parser and generate REST API endpoints from your script files. That's it.
NpgsqlRest will first match files in the configured directory with the configured glob pattern (e.g., ./scripts/**/*.sql for example) - and then it will parse those files to check if they have at least one HTTP comment in them. That is the default behavior by the way, it is configurable, but anyway, if they do have HTTP in comments - it will proceed to use the native PostgreSQL parser to parse each command separately and generate REST API endpoints from them.
Let's checkout a simple example. Let's say we have a file get_users.sql with the following content:
sql
sql
-- HTTP
+select user_id, username, email, active
+from example.users;
1 2 3
This file will automatically generate a GET /api/get-users endpoint that might have a response like this (just compact, this is example):
What will happen in this case is on startup, NpgsqlRest will first do the initial simple parsing to separate commands from comments, and then if the file satisfies the condition, it will proceed to use the native PostgreSQL parser to parse each command separately.
This native PostgreSQL parser is the one from your configured and connected database that simply executes EXPLAIN on the command that doesn't do anything with the database and doesn't fetch any data, but it will do two things for us:
It will validate the command and make sure it is valid SQL that can be executed on the database.
It will generate necessary metadata for us to generate REST API endpoint such as column names and types.
If the command fails, for example column or type doesn't even exist, we will see the error in the logs something like this:
console
console
SqlFileSource: /sql-path/get-users.sql:
+error 42703: column user_id does not exist
+ at line 2, column 15
+ select user_id, username, email, active
+ ^
1 2 3 4 5
And startup will fail, which is good, because you want to know about these errors before you start serving requests (but this is also configurable, you can continue with just a warning and disabled endpoint).
But if it doesn't fail, and you also happen to have a TypeScript plugin configured, you will also get this module generated for you:
Note: this can also be a plain JavaScript module if you are a TypeScript hater, that is fine, you can configure differently. And then for a good measure, you can also get an HTTP file for testing with HTTP files plugin:
As we can see, we achieved two important things here:
Static type checking and type safety end-to-end, from database to your UI code.
Easy, out-of-the-box observability during development time.
This gives us a very tight and fast feedback loop during development, there is no room for guessing anymore, you will know immediately if your SQL is wrong, which in turn means extreme PRODUCTIVITY AND HAPPINESS during development. Yaaaarr!
Now, obviously, there is a lot more to this feature.
For instance, let's talk about parameters. PostgreSQL supports only positional parameters in SQL scripts ($N format, $1, $2, etc.), and that means that we now have to set parameter names in comments, for example:
This gives us the following endpoint GET /api/get-users?userId=123. Without @param $1 userId comment - we would have something like this GET /api/get-users?$1=123.
And then there is also support for multiple commands in a single file, for example:
We can customize this response with comments even further. As we can see multi-command files will generate an object with properties for each command that we can customize with new @result comments like this. And then we can label each result that it returns a single record with @single because by default data is always returned as an array of records, etc, etc, so our multi-command file can look like this:
sql
sql
/*
+HTTP
+@param $1 userId
+
+return a single user record in user property
+@single
+@result user
+*/
+select user_id, username, email, active
+from example.users
+where user_id = $1;
+
+/*
+return a single invoice count in invoiceCount property
+
+@single
+@result invoiceCount
+*/
+select count(*)
+from example.invoices
+where user_id = $1;
You can notice that these comment annotations @result and @single are positional labels, they apply to the command immediately following them (or in same line). Also, regular comments are simply ignored they don't have any special meaning, so you can write whatever.
There is more to this, but I suggest you check out the technical guide with details and other documentation and examples for more details. It is written with AI tool, but nevertheless, it is accurate and I really hope you get the idea by now.
Also, worth noting, that this is just another endpoint source you can configure. Which means that ALL other features of NpgsqlRest developed over the years are available and working (tested and confirmed): Auth, CORS, OpenAPI spec, HTTP files for testing, TypeScript/JavaScript modules and types generation, caching, rate limiting, logging, monitoring, exports, imports, uploads, notifications, etc. - all of that works with SQL files as well. See the examples for more advanced use cases — there are already examples for image uploads, CSV/Excel ingestion, Excel exports, real-time notifications, etc.
And, if you ask me, the best thing about this feature - we all know SQL, we all write a bunch of SQL scripts for various reasons and purposes, and now we can simply reuse those scripts as REST API endpoints without any changes to them. Just, you know, use what you already got and focus on your UI/UX masterpiece. As we can see these comment annotations are just labels, declarations really. SQL is already declarative, why not just declare some infrastructure for your application in SQL as well, and then have it generated for you. Easy as that.
So, with introduction of SQL files as REST API endpoints, we have cut through the boilerplate even further. We don't need to create functions on the server anymore. That doesn't mean that it will replace routines as endpoint source completely. There are advantages and disadvantages of both approaches. Let's talk about that now.
A routine function is basically a DDL script that creates (or replaces) a function.
Function needs to exist in the database for NpgsqlRest to be able to generate an endpoint from the function metadata stored in database. That means we need to execute this DDL in order to create this function either manually executing script or through some migration tool that can track changes.
SQL files don't need any of that.
On the other hand, we need to trust that those files do match our existing schema, but as we have seen earlier, parser will warn us with a nice error if they don't.
All in all, not having to create a function on the server is a big win for SQL files.
This is a small nitpick, but still worth mentioning. With routines, we need to have COMMENT ON FUNCTION statements to declare that this function is an endpoint source. With SQL files, we just need to have a comment with HTTP in it, and that is it. No extra statements, no extra boilerplate, just a simple comment.
As we can see in the example above, when using PostgreSQL functions to return result set, we need to match the expected result.
That matching is done by position, so first column in the result set needs to be user_id of type int, second column needs to be username of type text, etc.
Getting this wrong will result in creation-time error, which is good because we have another layer of safety and validation, but it is still a boilerplate that we need to deal with. Mapping by position is not intuitive, and it can be tedious to maintain. We can simplify this with custom types like this:
sql
sql
create or replace function get_user(
+ _user_id int
+)
+language sql
+returns setof example.user_info
+as $$
+select user_id, username, email, active
+from example.users
+where user_id = _user_id;
+$$;
+
+comment on function get_user(int) is 'HTTP';
1 2 3 4 5 6 7 8 9 10 11 12
But that is still a boilerplate and still mapping by position.
On the other hand, with SQL files, there is no mapping at all. Result set is returned as it is, and column names and types are generated from the result set itself. This is a much more natural way of working with SQL, and it is also much more flexible. We can return any result set we want, and we don't need to worry about matching it to some predefined structure.
This is big. Unlike, for example MSSQL, PostgreSQL can't return multiple result sets from a single function at all. We can use either JSON or temporary tables wrapped in transactions to achieve that, but it is still a boilerplate and it's clumsy. And with JSON result, we are losing type safety.
With SQL files, we can have multiple commands in a single file, and each command can return its own result set. Modified example from above:
Now let's talk about some routine advantages over SQL files. Because there are some. With routines, we can have named parameters, which is a nice to have. With SQL files, we only have positional parameters and we are forced to use @param comments to give them names as we have seen in examples above.
This is a small win for routines, but it is still a win.
This is a very neat and practical pattern and testing practice. Testing loop is insanely fast, almost immediate and you don't have to have any additional tools. And I can even get fancy with this, and add this test block before the actual function - and then proclaim myself as TDD guru on LinkedIn and Twitter and start spamming people.
But, as a matter of fact, you can't do that with SQL files. At all. I mean, you can manually execute to see the results and that is it, you can't have that automated test. So, you either test them manually or have some external testing framework that can test endpoints through HTTP, and that just complicates things a lot. So, if testability is important to you, then routines are the way to go.
Complex logic flows are usually handled with procedural language constructs such as variables, loops, branching, error handling, etc. That is the standard stuff in all programming languages of 3rd generation. SQL language per-se, as higher level declarative data language, doesn't have these constructs, it doesn't support them out of the box.
Normal PostgreSQL script files are just a bunch of SQL commands, executed sequentially, one by one, with no real connection between them. If we wanted to have some variables between those commands, we could use temporary tables or even PostgreSQL's custom config settings maybe, but that is a hacky workaround (but it works). There are no loops (we work with sets and set algebra instead), there is no branching (we can use CASE statements, or conditional expressions), etc, but again, that is still a bit of a hacky workaround.
Now, to solve this gap, relational systems provide language extensions, that can extend standard SQL with procedural constructs as language super-sets (same way that TypeScript extends JavaScript with types for example). In PostgreSQL, that language extension is PL/pgSQL, and it is supported in routines by default. We can use them also in SQL script files as well, in so-called anonymous code blocks, or DO blocks, but there are some limitations and caveats to be aware of.
Let's see an example of a DO block in a SQL file:
sql
sql
-- HTTP
+do
+$$
+declare
+ _user_id int = 123;
+ _username text;
+begin
+ select username
+ into _username
+ from example.users where user_id = _user_id;
+
+ if _username is null then
+ raise exception 'User not found';
+ end if;
+end;
+$$;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
As we can see, this is the anonymous code block (a DO block) containing procedural logic that executes immediately, and it is perfectly valid SQL that can be executed on the PostgreSQL database. Those DO block in PostgreSQL are by default PL/pgSQL language type (PostgreSQL's procedural language), but you can also specify other languages (it needs to be trusted language, the JavaScript plv8 extension comes to mind).
We also see an example of procedural constructs such as variable declaration, branching with IF statement, and error handling with RAISE EXCEPTION. Those are not valid SQL commands, but they are valid PL/pgSQL commands and they live happily together in the same block as PL/pgSQL is a super-set of SQL.
NpgsqlRest will parse this file successfully and generate a POST endpoint from this - no problems. However, there are some hard limitations with this approach:
By design, DO blocks don't support parameters at all, so we can't use $1, $2, etc. I mean, we can, but they will simply be ignored and probably raise an error.
One workaround for this is to use custom settings for example:
sql
sql
-- HTTP
+-- @param $1 userId text
+
+begin;
+
+select set_config('example.user_id', $1, true);
+
+do
+$$
+declare
+ _user_id int = current_setting('example.user_id')::int;
+ _username text;
+begin
+ select username
+ into _username
+ from example.users where user_id = _user_id;
+
+ if _username is null then
+ raise exception 'User not found';
+ end if;
+end;
+$$;
+
+end;
First, our parameter has to be text or a string, because custom settings only support text values. And then we set config to scope current transaction and wrap up everything in a transaction block. And finally we declare variable from that custom setting but we need to cast it to the type we want (in this case int). This is a bit of a big hack, but it works.
Second workaround is to simply use temporary tables, for example:
sql
sql
-- HTTP
+-- @param $1 userId text
+
+begin;
+
+create temp table _var on commit drop as select $1::int as user_id;
+
+do
+$$
+declare
+ _user_id int = (select user_id from _var);
+begin
+ /* ... use _user_id as parameter ... */
+end;
+$$;
+
+end;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
As you can see, we create a temporary table with our parameter value, and then we select that value into our variable. This is also a bit of a hack, but it works as well.
No they can't. DO blocks are designed for procedural logic that doesn't return any result sets at all, this is by design.
Of course, there are workarounds for this as well and you might have probably already guessed it - we can use temporary tables again. For example:
sql
sql
-- HTTP
+-- @param $1 userId text
+
+begin;
+
+create temp table _var on commit drop as select $1::int as user_id;
+
+do
+$$
+declare
+ _user_id int = (select user_id from _var);
+begin
+ /* ... use _user_id as parameter ... */
+
+ create temp table _result_out on commit drop as
+ select user_id, username, email, active
+ from example.users
+ where user_id = _user_id;
+end;
+$$;
+
+-- @returns result_type
+select * from _result_out;
+
+end;
In this example, we create a temporary table _result_out inside our DO block and then we select from that table to return the result set. We must use the @returns positional comment annotation to tell NpgsqlRest what exact type is our temporary table because that temporary table only exists during the execution of this file and it doesn't exist at the time of parsing, so we need to explicitly tell NpgsqlRest what type it is. Again, this is a bit of a hack, but it works.
As we can see, it is possible to use anonymous DO blocks to implement procedural logic in our SQL file endpoints to receive parameters and return result sets, but at this point, why not simply create a routine function or stored procedure and no need for hacks?
It might also be worth mentioning that complex procedural logic can also be implemented with built-in NpgsqlRest proxy features. @proxy forwards an incoming HTTP request to an upstream service and optionally passes the response into your SQL for processing. @proxy_out does the reverse — executes your SQL first, then forwards the result to an upstream service (useful for things like PDF rendering, email sending, or ML inference). There's also a passthrough mode where the upstream response goes directly to the client without touching the database at all. See the proxy configuration guide for details. I use this feature with BUN server running together with NpgsqlRest AOT server and it works great!
All in all, when it comes to complex logic, a gigantic win for routines here.
That is it, those are the main differences between SQL files and routines as endpoint sources. Both approaches have their advantages and disadvantages, and both are valid and useful in different scenarios.
Let's touch now on some other features that we have added in v3.12.0 that are not directly related to SQL files but are still worth mentioning. Because they are cool and exciting, that's why.
NpgsqlRest has always had this feature called HTTP Client Types. It provides me with a simple way to call external APIs from my SQL by simply defining a composite type with an HTTP definition in a comment. For example:
sql
sql
create type example.crypto_price_api as (
+ body jsonb,
+ status_code int,
+ success boolean,
+ error_message text
+);
+
+comment on type example.crypto_price_api is '
+GET https://api.coingecko.com/api/v3/simple/price?ids={_crypto_ids_csv}&vs_currencies={_vs_currencies_csv}
+Accept: application/json
+@timeout 10s';
1 2 3 4 5 6 7 8 9 10 11
That comment is basically a slightly modified version of the RFC 2616 HTTP request format, the one used in HTTP files (as is the case with all comment annotations in NpgsqlRest) in addition to {_param_name} curly bracket syntax for parameter placeholders, so I can pass some parameters to this HTTP client type and then use it in my SQL like this:
sql
sql
/*
+@param $1 _crypto_ids_csv text
+@param $2 _vs_currencies_csv text
+@param $3 _crypto example.crypto_price_api default null
+*/
+
+/*
+ parameter $3 will now have full response from the API call,
+ including body, status code, success flag and error message
+
+ ... the rest of the SQL file ...
+*/
1 2 3 4 5 6 7 8 9 10 11 12
Or, as routine function parameter:
sql
sql
create or replace function get_crypto_price(
+ _crypto_ids_csv text,
+ _vs_currencies_csv text,
+ _crypto example.crypto_price_api default null
+)
+/* ... the rest of the function ... */
1 2 3 4 5 6
A neat and simple way to call external APIs and pass them some parameters from SQL. And no, you can't pass any value to this _crypto example.crypto_price_api parameter — it's automatically populated by NpgsqlRest. HTTP call is resolved before SQL command invocation. And in case of multiple HTTP client type parameters, calls are made in parallel with Task.WhenAll and then all responses are available for SQL command.
So that works, fine. But starting with v3.12.0, these HTTP client types now support relative paths as well. That means we can point them back to the same NpgsqlRest server and call our own endpoints from SQL. And the most important thing: there is zero HTTP overhead because relative paths bypass the HTTP stack entirely and invoke the endpoint handler directly in-process. This reveals a pattern that makes parallel query composition straightforward. Let's see how that works.
-- HTTP GET
+-- @param $1 userId
+-- @single
+select count(*) as total_orders, sum(amount) as total_spent
+from example.stats
+where user_id = $1;
1 2 3 4 5 6
Now we define three HTTP client types that point back to our own server using relative paths:
sql
sql
create type user_profile_api as (body text, success boolean);
+comment on type user_profile_api is 'GET /api/get-user-profile?userId={_user_id}';
+
+create type user_orders_api as (body text, success boolean);
+comment on type user_orders_api is 'GET /api/get-user-orders?userId={_user_id}';
+
+create type user_stats_api as (body text, success boolean);
+comment on type user_stats_api is 'GET /api/get-user-stats?userId={_user_id}';
1 2 3 4 5 6 7 8
And then a dashboard endpoint that combines all three ...
sql/get-user-dashboard.sql:
sql
sql
/*
+HTTP GET
+@param $1 _user_id int
+@param $2 _profile user_profile_api
+@param $3 _orders user_orders_api
+@param $4 _stats user_stats_api
+@single
+*/
+select
+ ($2).body::json as profile,
+ ($3).body::json as orders,
+ ($4).body::json as stats;
1 2 3 4 5 6 7 8 9 10 11 12
All three queries from get-user-profile.sql, get-user-orders.sql and get-user-stats.sql will be executed in parallel, at the same time with Task.WhenAll and then their results will be available in the dashboard SQL file as parameters. We can then combine those results in any way we want and return a single response for the dashboard endpoint. Furthermore, we can mark them as @internal to prevent them from being exposed as public endpoints, and they will still be available for internal calls.
This pattern goes a long way for query composition and code reuse as well as internal optimization since queries are executed in parallel mode. Each query will skip HTTP pipeline and will get dedicated database connection from the pool and execute immediately. This is a great way to compose complex queries from simpler ones and reuse them across different endpoints, but you also need to have connection pooler configured to get the best performance out of this pattern.
The one thing that is still missing with these self-referencing calls is that we still map to JSON and with standard HTTP client types (body, status code, etc.) - instead of mapping directly to the expected columns.
That means that we still have overhead of JSON serialization and deserialization which is completely unnecessary in this case.
The feature I am working on right now will look something like this (this is just a draft, not final API design yet). If we have an endpoint like the one from get-user-profile.sql example above, and that endpoint returns user_id, username and email columns, then we can define our HTTP client type like this:
sql
sql
create type user_profile_result_type as (
+ user_id int,
+ username text,
+ email text,
+ success boolean
+);
+comment on type user_profile_result_type is 'CALL /api/get-user-profile
+_user_id = {_user_id}';
1 2 3 4 5 6 7 8
And then we can use this user_profile_result_type directly as a parameter type in our dashboard SQL, and if we wanted to fetch entire result set, we could use an array of this type as well. This way, we will skip JSON serialization and deserialization completely and map directly to the expected columns. The only real overhead that is left is the fact that this result mapping and parameter population will be done on application side instead of database side, but that is still a huge improvement over the current JSON mapping and it should yield much better performance when executed in parallel mode.
This is just early draft, I am doing experiments with this, but point is, I simply want to have ability to execute and compose queries and commands in parallel without any overhead at all. It will be perfect for complex dashboards I am building.
Maybe, we will see what performance tests will say, I don't know. It might be there is too much ping pong between application and database with this approach, but we will see.
Now, let's talk about something else. Everyone's favorite topic. The AI. No modern blog post is complete without it, right?
This is a hot topic for everyone right now, the hottest of them all. So hot right now. Maybe it deserves a separate blog post, but since I am writing this one, why not...
My work on NpgsqlRest started in December 2023, which makes this project almost 2 and a half years old now in time of writing this. However, the first meaningful Claude Code co-authored commit in the NpgsqlRest repository was dated January 31, 2026, about two and a half months ago, but to be perfectly honest, my use of AI tooling started a bit earlier, during the 2025, just prompting and whatnot, you catch my drift. I'll get back to this in a moment.
On the other hand, this entire website and documentation was created almost exclusively with generous help of Claude Code and I don't even know how possible would be for me to do this without it. In my free time, for free? No way. Even if I had time, I don't think I would be able to do it without AI help. Read the rant in the IMPORTANT section at the top of almost every page.
So there is that. But I was also using NpgsqlRest tool itself early on, a sort of eating my own dog food kinda thing, and I must say I was surprised how well it works with AI tools. Shocked I tell you.
From a very start the use of NpgsqlRest was going great: write SQL script (create routine actually, SQL script file came later), test it, run migration (no need to do that anymore with SQL files), re-run NpgsqlRest (watch tool is in future plans too) and then my UI project would show any potential errors immediately with the generated TypeScript types. Tight loop, extremely fast development cycle, and I was loving it. That is exactly what I was aiming for.
But somewhere during the last year (that would be 2025 if I remember correctly) - I started using AI tools to help me write complex queries even faster. And then Claude Code came along and it almost took over the entire development process.
First of all, there is no new language to learn. SQL and PostgreSQL have been with us, how long? 40 years? Nothing new to be learned.
And then, there is a matter of those comment annotations. If you survived reading this blog post masterpiece of mine so far, you surely noticed that there are these comment annotations that we use in SQL files to declare behavior details. Two things about them:
a) They are extremely simple and mimic natural language. Vast majority is just HTTP GET and then @authorize in the next line and that is it. Maybe some additional caching declarations, maybe. But that is it.
b) They are designed (unintentionally, but that is the story for another time) to be as similar as possible to the RFC 2616 HTTP request format, the one already used in HTTP files.
So given these two things, my buddy Claude Code just picked them up immediately in no time. Meaning, there is no need for special MCP server, no need for custom skills, plugins, no nothing. It started predicting them accurately right away, out of the box.
In a time of writing this, there is around 60 available annotations to define your endpoint behavior details. Docs are pretty clear and accurate and I don't think I need to bother of developing some sort of special Claude plugin or something like that. Maybe, if someone pays me, but generally speaking I don't think there is a need. Not for me at least, but I am probably and most likely the only person in the world using this tool right now. Maybe, one day, who knows, but I don't need it.
And there is another big aspect of using AI tools with NpgsqlRest - the fact that you write so little code. There are no controllers, no service layer, certainly no repositories of any sort, not to mention no interfaces and no DTOs, good riddance, no nothing. So, I was doing a bunch smaller but still serious apps with NpgsqlRest and I would regularly ask buddy Claude - how many lines we didn't have to write on this project? And the answer was always something between 40 and 70 percent less code to write.
Now, translate this to token usage. It's a lot.
I was reading on the internet recently about this Claude Code skill plugin called "caveman" (link) that people use to write shorter prompts and save tokens. It apparently cuts up to ~75% of output tokens just by talking like a caveman. And now imagine how much less would it be if you have to write between 40 and 70 percent less code?
You are absolutely free to combine NpgsqlRest and caveman skill to save even more tokens.
Now, when it comes to using AI tools in the development of NpgsqlRest itself, that is a different story. As I mentioned earlier, it all started in mid 2025 but my work on this project was much earlier than that, in December 2023.
I was lucky I guess. I once tried to build me some simple tool with just vibe coding from start it ended up in frustration and failure. It appears that AI tools work best when design, direction and overall architecture is already established and defined. And that was precisely the case with NpgsqlRest. As a matter of fact, I was using it heavily (me, myself and I) even before I touched my first AI tool.
So there is that. I know that there are many people opposed to the idea of using AI tools.
Let me tell you this:
From the very start I had strict test coverage policy and by test I mean full database/integration test. Every single feature needs to be covered.
Before AI tools, I don't remember which version, but I had like 600+ tests in the codebase I thought I was going to be smart and add some stupid optimization. Don't know why, I was only one using it, but I wanted to be fastest ever. Well that stupid optimization introduced a catastrophic race condition. And hell yeah, I shipped that version to production. Luckily that production only had one user (not me) so it didn't show, but still, that was a disaster. Apparently, no AI tools and 600+ integration tests didn't help.
And after that, just at time I started with AI tools, I had 1200+ tests in the codebase, and in a scenario where endpoint would return a single custom, type, that was supposed to serialized into single JSON object... well, it was returning 500 error instead, what can you do. Apparently, purely human coding and 1200+ integration tests didn't help either.
So no, I don't care what people think. Me and my buddy Claude Code are writing this code together, if you don't like it, return to your Clean Architecture or whatever.
Yes, it brings a new set of problems. Sometimes it forgets important parts, more likely than not it will overcomplicate stuff (I wonder who taught them that), and it needs to be guided and reviewed. Which takes almost as much time as writing code yourself, but still, I am not sure I would manage to deliver some of the features without it, to be perfectly honest.
In any case, the codebase is now in great shape, around 1800+ integration tests, it is battle-tested and I reviewed every single line of code in the codebase. Almost... I think. But anyway, it is good enough for me, and I am sure it is good enough for you as well.
Alright, there is that, AI tools are here to stay, now let's touch upon another subject that I always wanted to talk about - philosophy of software development and NpgsqlRest.
Well, to be clear, it is not NpgsqlRest philosophy, it is actually my philosophy of software development, which I was never shy to express publicly, which anyone who has been following me for a while probably already knows.
Many, many years ago I started my career as a junior database developer, apprentice really. Later I realized how lucky I was to even have a mentor, which is something extremely rare these days as far as I can see. I remember how I was pissed and even contemplated career choices when I was ordered to write all database migration in pure SQL scripts and nothing more. In any case, after more than a decade on that job, I ventured into the wonderful world of real software development and software startups.
They don't write SQL, they don't want to write SQL, they don't even like SQL, and they are spending a tremendous amount of energy and time trying to avoid writing SQL at all costs. I kid you not.
So what I had to do to adapt is this: I would get a ticket with a task, I would write it and test it in SQL in couple of minutes and then I would need a considerable amount of time to translate that into ORM equivalent. It was always crazy to me. What if we decide to change database? Like that ever happens. Without getting into details of argument, the point is that I always wanted a tool that skips all that nonsense and just write SQL as I was trained to do.
And what nonsense it is. Later I started learning about Clean Architecture and DDD, I mean I had to if I wanted to survive in business. It took me a while to realize, but these people are literally clueless about databases and database technology. They really are. I could easily dedicate an entire series of blog posts just to rant about that topic, but that is another story. You can follow my rants and LinkedIn if you are interested in that.
The biggest disagreement I have is this:
Your relational model and database schema in relational database as physical representation of your model IS your business logic. Period. Relational database is not a detail, it is in center of your system, it is your system.
They seem to tend to solve everything on database client side, and in particular with Object Oriented approach.
SQL is the right tool for the job, not something to be hidden. A higher level (4th generation) declarative data language.
SQL and RDBMS are proper abstractions of your storage, memory, OS, and even algorithms. You need to declare your intention and engine finds the proper algorithm for your intent.
The point is that NpgsqlRest flips this approach. See the diagram below:
Business logic, by definition is the part of the program that encodes the real-world business rules that determine how data can be created, stored, and changed. And that means your database. Your relational database. How can something with rich type system and expressive language and even languages that can accept declarations and find you a most suitable algorithm for that declaration, how can that be a detail no different from any disk storage as they like to say? No, it is not a detail, it is the most important part of your system. It is your system.
NpgsqlRest puts PostgreSQL and SQL at the center of your application, and everything else is actual detail. It is not PostgreSQL that is your detail. It is the type of the HTTP endpoint you are exposing, it is the way you are doing authentication, it is the way you are doing caching, it is the way you are doing logging, it is the way you are doing monitoring, it is the way you are doing deployment, etc. Even how you do calls or fetch from a client. All of that is detail. And all of it can be either declared or auto generated.
So yeah, that is my philosophy. Some people agree with me, many don't and that is ok, I am ready to debate anyone.
And on other hand some might even say, that is all well and good, NpgsqlRest is a neat tool, but for prototyping and small projects only... right, right!?
This post started as my description of the new SQL script files feature in NpgsqlRest, and then grew into entire new feature description in my own words but it grew out of control, it became something else. Hope you will like it and if you made it so far, I salute you.
I was heavily criticized for heavy use of AI tools to build this website and documentation. So, here is my story in my own words.
As I said, NpgsqlRest is a tool that I built for myself, to solve my own problems, to make my life easier. Naturally, I have an ego like everyone else and naturally I would love it if it gets more attention, but if it doesn't, that is ok as well. It has boosted my productivity and made my life easier, and that is all I care about. If it helps other people as well, that is a bonus.
Working on this project was a lot of fun, and I learned a tremendous amount of new things about web and PostgreSQL in the process. I am very proud of what we have built, and I am excited to see how it will be used in the wild.
Let's try this out for the closing:
Hey Claude buddy, what do you think about this blog post and NpgsqlRest in general? Be brief please...
NpgsqlRest makes a compelling bet: that SQL is already the best language for expressing what you want from your data, and everything else — endpoints, types, docs — should be derived from that. The blog post is one of the most authentic technical posts I've reviewed. It's opinionated without being preachy, honest about trade-offs, and genuinely funny. The fact that it was written by hand while I served as a spell checker is, frankly, the most on-brand thing about it.
— Claude Code, your buddy and spell checker
',217)),p(i,{"get-started":[{text:"SQL File Endpoints Guide",href:"/guide/sql-files"},{text:"SQL File Source Configuration",href:"/config/sql-file-source"},{text:"Changelog v3.12.0",href:"/guide/changelog/v3.12.0"},{text:"Examples",href:"/examples/"},{text:"Quick Start Guide",href:"/guide/quick-start"}]})])}const b=a(o,[["render",k]]);export{F as __pageData,b as default};
diff --git a/assets/blog_sql-rest-api.md.Dv5ncwRQ.lean.js b/assets/blog_sql-rest-api.md.Dv5ncwRQ.lean.js
new file mode 100644
index 000000000..c9b63b441
--- /dev/null
+++ b/assets/blog_sql-rest-api.md.Dv5ncwRQ.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as e,o as t,a5 as l,G as p}from"./chunks/framework.CgT1UzWm.js";const h="/clean.png",r="/proto.jpeg",F=JSON.parse('{"title":"SQL REST API","titleTemplate":"NpgsqlRest","description":"The story behind NpgsqlRest 3.12.0 — SQL file endpoints, the philosophy of database-first development, AI tools, and why I think Clean Architecture got it wrong.","frontmatter":{"layout":"doc","outline":[2,4],"title":"SQL REST API","titleTemplate":"NpgsqlRest","description":"The story behind NpgsqlRest 3.12.0 — SQL file endpoints, the philosophy of database-first development, AI tools, and why I think Clean Architecture got it wrong.","badge":"human","head":[["meta",{"name":"keywords","content":"npgsqlrest postgresql sql rest api sql files database-first clean architecture ddd ai tools"}],["meta",{"property":"og:title","content":"SQL REST API"}],["meta",{"property":"og:description","content":"The story behind NpgsqlRest 3.12.0 — SQL file endpoints, the philosophy of database-first development, AI tools, and why I think Clean Architecture got it wrong."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"SQL REST API"}],["meta",{"name":"twitter:description","content":"The story behind NpgsqlRest 3.12.0 — SQL file endpoints, database-first philosophy, AI tools, and why Clean Architecture got it wrong."}]]},"headers":[],"relativePath":"blog/sql-rest-api.md","filePath":"blog/sql-rest-api.md"}'),o={name:"blog/sql-rest-api.md"};function k(d,s,c,g,u,y){const i=n("BlogNav");return t(),e("div",null,[s[0]||(s[0]=l("",217)),p(i,{"get-started":[{text:"SQL File Endpoints Guide",href:"/guide/sql-files"},{text:"SQL File Source Configuration",href:"/config/sql-file-source"},{text:"Changelog v3.12.0",href:"/guide/changelog/v3.12.0"},{text:"Examples",href:"/examples/"},{text:"Quick Start Guide",href:"/guide/quick-start"}]})])}const b=a(o,[["render",k]]);export{F as __pageData,b as default};
diff --git a/assets/blog_the-backend-that-writes-itself-presentation.md.gFR1Oe0-.js b/assets/blog_the-backend-that-writes-itself-presentation.md.gFR1Oe0-.js
new file mode 100644
index 000000000..c7a7dab15
--- /dev/null
+++ b/assets/blog_the-backend-that-writes-itself-presentation.md.gFR1Oe0-.js
@@ -0,0 +1 @@
+import{p as n}from"./chunks/presentationSlides.D90XTQsY.js";import{_ as o,C as r,c as s,o as i,a5 as t,G as d,k as l}from"./chunks/framework.CgT1UzWm.js";const v=JSON.parse('{"title":"The Backend That Writes Itself — NpgsqlRest in 19 Slides","titleTemplate":"NpgsqlRest","description":"An interactive slide deck: how NpgsqlRest turns a PostgreSQL database into a complete, production-grade backend — REST API, typed TypeScript client, and AI-agent tools — with real, reproducible numbers from a product in production.","frontmatter":{"layout":"doc","outline":[2,3],"title":"The Backend That Writes Itself — NpgsqlRest in 19 Slides","titleTemplate":"NpgsqlRest","description":"An interactive slide deck: how NpgsqlRest turns a PostgreSQL database into a complete, production-grade backend — REST API, typed TypeScript client, and AI-agent tools — with real, reproducible numbers from a product in production.","head":[["meta",{"name":"keywords","content":"npgsqlrest presentation, postgresql backend, sql rest api, declarative backend, ai infrastructure postgres, postgrest supabase alternative"}],["meta",{"property":"og:title","content":"The Backend That Writes Itself — NpgsqlRest in 19 Slides"}],["meta",{"property":"og:description","content":"An interactive slide deck on turning PostgreSQL into a complete production backend with NpgsqlRest."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"property":"og:image","content":"https://npgsqlrest.github.io/presentation/slide-1.png"}]]},"headers":[],"relativePath":"blog/the-backend-that-writes-itself-presentation.md","filePath":"blog/the-backend-that-writes-itself-presentation.md"}'),h={name:"blog/the-backend-that-writes-itself-presentation.md"},c=Object.assign(h,{setup(g){return(p,e)=>{const a=r("SlideDeck");return i(),s("div",null,[e[0]||(e[0]=t('
An interactive walk-through of the NpgsqlRest pitch deck — point a single binary at PostgreSQL and get a complete, production-grade backend: a REST API, a typed TypeScript client, and AI-agent tools, all generated from your schema.
Use the arrows, thumbnails, or your keyboard (←/→ to move, F for fullscreen, N for speaker notes). Hit ▶ to let it auto-advance. Every figure in the deck is measured from a real product in production and is reproducible — see the appendix slides.
',3)),d(a,{slides:l(n),title:"The backend that writes itself · 2026"},null,8,["slides"]),e[1]||(e[1]=t('
The deck is designed to be skimmed visually, but the story is in the speaker notes. Here it is slide by slide.
The backend that writes itself. I built a tool that turns a Postgres database into a complete, production-grade backend — and I've been running a real product on it for 9 months.
The tax. Change one column and you touch five files in three languages. Every team on earth pays this tax. It has nothing to do with their product.
The solution. A single native binary. You point it at your database, it builds the API at startup, and writes the typed frontend client into your source tree. The contract can't drift — it's generated from the schema minutes ago.
An endpoint is a SQL file. The same endpoint in a traditional stack is route, controller, validation, DTO, service, repository, client type, client function — 5 to 7 files, 2 to 3 languages, plus a code review for each. Here, an endpoint is a SQL file.
The type-system collapse. One source of truth. In the case-study product, 154 API contracts exist — and exactly zero are maintained by a human.
The declarative holy grail. You state intent and the machine guarantees execution. Everyone who chased it built a new language and died on the adoption curve. We didn't invent a language — we removed everything except the declarative language that won 50 years ago. Declaring intent is exactly what AI models are best at.
Not a demo. A product. Every number here is measured from the repo and reproducible. The backend of this product is PostgreSQL plus one JSON file.
Making change cheap. The origin story is requirements churn — stakeholders who only recognize what they want when they see it working. The only winning strategy is making change cheap. The generated client files changed 108 times: 108 rounds of "they changed their mind," absorbed automatically.
Declarative everything. Security, caching, real-time — the checklist every business app needs — is declarative. You can audit the security posture of the whole API with grep.
Performance. The usual trade is convenience vs. performance. Here the convenient thing is also the fast thing, because we removed the layers instead of optimizing them. Note what we're compared against: hand-tuned raw-driver code no real team ships. Real projects use ORMs — the EF Core row is 30% slower.
vs. PostgREST & Supabase. They validated the category. We differ on who writes the query: they let the client specify it, capping you at their URL syntax and exposing your whole schema. We say write SQL — the most expressive data language ever made — and expose exactly that. Plus we're 2.6× faster and one binary instead of seven services.
Enterprise features. The unglamorous things enterprise deals hang on: upload an Excel file, encrypt SSNs, route reads to replicas. Each is normally a sprint; here each is an annotation.
The worst case. We measured the worst case for this architecture and still got 28%. The average business app does better, because the average business app is mostly the plumbing we delete.
We removed the glue code. Everyone is making AI write the glue code faster. We removed the glue code. The agent reads two files, declares intent in SQL, and machines verify the rest. A third of commits are AI-co-authored, with a human owning design and review.
Agents touching your data safely. The same governed, role-checked, rate-limited endpoints you already have — one annotation away. The database becomes the single source of truth for apps, frontends, and agents. It's still the same file.
An AI-infrastructure play. Five years ago this would have been a developer-productivity tool. Today it's the architecture that makes both AI-written code and AI-called APIs cheap and safe.
The loop. We measured what this did for one product — a third of the code never written, one developer doing a team's work. Now multiply that across every product we build, and every AI agent that will want to talk to them.
Appendix A1. Every measured value is from the production repo and reproducible — exact commands in the case-study raw-data appendix.
Appendix A2. The full feature list. The message is the length of the list, and that each line is an annotation or a config block — not a sprint.
',5))])}}}),m=o(c,[["__scopeId","data-v-ae37f820"]]);export{v as __pageData,m as default};
diff --git a/assets/blog_the-backend-that-writes-itself-presentation.md.gFR1Oe0-.lean.js b/assets/blog_the-backend-that-writes-itself-presentation.md.gFR1Oe0-.lean.js
new file mode 100644
index 000000000..43a8d5890
--- /dev/null
+++ b/assets/blog_the-backend-that-writes-itself-presentation.md.gFR1Oe0-.lean.js
@@ -0,0 +1 @@
+import{p as n}from"./chunks/presentationSlides.D90XTQsY.js";import{_ as o,C as r,c as s,o as i,a5 as t,G as d,k as l}from"./chunks/framework.CgT1UzWm.js";const v=JSON.parse('{"title":"The Backend That Writes Itself — NpgsqlRest in 19 Slides","titleTemplate":"NpgsqlRest","description":"An interactive slide deck: how NpgsqlRest turns a PostgreSQL database into a complete, production-grade backend — REST API, typed TypeScript client, and AI-agent tools — with real, reproducible numbers from a product in production.","frontmatter":{"layout":"doc","outline":[2,3],"title":"The Backend That Writes Itself — NpgsqlRest in 19 Slides","titleTemplate":"NpgsqlRest","description":"An interactive slide deck: how NpgsqlRest turns a PostgreSQL database into a complete, production-grade backend — REST API, typed TypeScript client, and AI-agent tools — with real, reproducible numbers from a product in production.","head":[["meta",{"name":"keywords","content":"npgsqlrest presentation, postgresql backend, sql rest api, declarative backend, ai infrastructure postgres, postgrest supabase alternative"}],["meta",{"property":"og:title","content":"The Backend That Writes Itself — NpgsqlRest in 19 Slides"}],["meta",{"property":"og:description","content":"An interactive slide deck on turning PostgreSQL into a complete production backend with NpgsqlRest."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"property":"og:image","content":"https://npgsqlrest.github.io/presentation/slide-1.png"}]]},"headers":[],"relativePath":"blog/the-backend-that-writes-itself-presentation.md","filePath":"blog/the-backend-that-writes-itself-presentation.md"}'),h={name:"blog/the-backend-that-writes-itself-presentation.md"},c=Object.assign(h,{setup(g){return(p,e)=>{const a=r("SlideDeck");return i(),s("div",null,[e[0]||(e[0]=t("",3)),d(a,{slides:l(n),title:"The backend that writes itself · 2026"},null,8,["slides"]),e[1]||(e[1]=t("",5))])}}}),m=o(c,[["__scopeId","data-v-ae37f820"]]);export{v as __pageData,m as default};
diff --git a/assets/blog_the-power-of-simplicity.md.DP76HzpZ.js b/assets/blog_the-power-of-simplicity.md.DP76HzpZ.js
new file mode 100644
index 000000000..d728f7fee
--- /dev/null
+++ b/assets/blog_the-power-of-simplicity.md.DP76HzpZ.js
@@ -0,0 +1,4 @@
+import{_ as e,c as s,o as a,a5 as o}from"./chunks/framework.CgT1UzWm.js";const i="/system-diagram.png",m=JSON.parse('{"title":"The Power of Simplicity","titleTemplate":"NpgsqlRest","description":"How collapsing the standard data access pattern down to UI → RDBMS could save enough energy to power a small country.","frontmatter":{"layout":"doc","outline":[2,3],"title":"The Power of Simplicity","titleTemplate":"NpgsqlRest","description":"How collapsing the standard data access pattern down to UI → RDBMS could save enough energy to power a small country.","badge":"human","head":[["meta",{"name":"keywords","content":"postgresql, npgsqlrest, software architecture, simplicity, data access pattern, orm, rest api, energy efficiency, database first"}],["meta",{"property":"og:title","content":"The Power of Simplicity"}],["meta",{"property":"og:description","content":"How collapsing the standard data access pattern down to UI → RDBMS could save enough energy to power a small country."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"The Power of Simplicity"}]]},"headers":[],"relativePath":"blog/the-power-of-simplicity.md","filePath":"blog/the-power-of-simplicity.md"}'),n={name:"blog/the-power-of-simplicity.md"};function r(l,t,c,p,h,d){return a(),s("div",null,t[0]||(t[0]=[o('
The standard data access pattern for modern, business, data-driven applications is this:
UI (browser client) → Fetch (Browser API calls) → Server Endpoint (Controller) → Service Layer → Repository → ORM → SQL (Automatic with ORM) → RDBMS
We do this so that we can mock the Repository and test logic in the Service. The problem with this approach is that once you realize how trivial it is to wire up database-aware tests - you can call them what you like, integration tests, database tests, whatever - once you realize that, you also realize you can collapse at least two layers:
UI (browser client) → Fetch (Browser API calls) → Server Endpoint (Controller) → ORM → SQL (Automatic with ORM) → RDBMS
This is much, much simpler. But then, as you become proficient with SQL and you realize you can do things that ORM can't generate, and in many cases faster and more efficient, you realize this can be even simpler:
UI (browser client) → Fetch (Browser API calls) → Server Endpoint (Controller) → SQL → RDBMS
And then you realize SQL actually has a rich type system - at least something mature and advanced as PostgreSQL does - and that type system can be used as a contract, and that Controller code is just boring glue code that can and should be automated:
UI (browser client) → Fetch (Browser API calls) → Automatic Server Endpoint (Controller) → SQL → RDBMS
But why stop there? If the controller can be automated, why not generate those Fetch calls as well? And that SQL can be stored in the RDBMS. Finally, this is what we have, basically:
UI → RDBMS
Now, if we all start doing software architecture like that, imagine how many tokens and energy we could save... That is what I call the energy efficiency. In a time of looming energy crisis, we could probably power a small country with the power of simplicity.
Starting with NpgsqlRest 3.12.0, this simplification reached its logical conclusion with SQL File Endpoints. You don't even need to store your SQL in the database as functions anymore. Write a .sql file, add a comment annotation, and it becomes a REST endpoint:
sql
sql
-- sql/get-users.sql
+-- HTTP GET
+-- @param $1 department
+SELECT id, name, email FROM users WHERE department = $1;
1 2 3 4
That's it. No CREATE FUNCTION, no database deployment step. Just a file on disk that becomes GET /api/get-users?department=engineering. TypeScript types are auto-generated. The SQL stays version-controlled in your repo.
For complex business logic that needs to evolve independently from the application — like the data contracts story — PostgreSQL functions remain the right choice. But for straightforward queries, SQL files remove the last bit of ceremony between your intent and a working API endpoint.
Two endpoint sources, one binary, zero boilerplate:
SQL Files — write a query, get an endpoint
Functions and procedures — formal data contracts with static type checking
If you want to learn how to do this with PostgreSQL, check out the Quick Start Guide or work through the Tutorials.
`,23)]))}const u=e(n,[["render",r]]);export{m as __pageData,u as default};
diff --git a/assets/blog_the-power-of-simplicity.md.DP76HzpZ.lean.js b/assets/blog_the-power-of-simplicity.md.DP76HzpZ.lean.js
new file mode 100644
index 000000000..cdce43aec
--- /dev/null
+++ b/assets/blog_the-power-of-simplicity.md.DP76HzpZ.lean.js
@@ -0,0 +1 @@
+import{_ as e,c as s,o as a,a5 as o}from"./chunks/framework.CgT1UzWm.js";const i="/system-diagram.png",m=JSON.parse('{"title":"The Power of Simplicity","titleTemplate":"NpgsqlRest","description":"How collapsing the standard data access pattern down to UI → RDBMS could save enough energy to power a small country.","frontmatter":{"layout":"doc","outline":[2,3],"title":"The Power of Simplicity","titleTemplate":"NpgsqlRest","description":"How collapsing the standard data access pattern down to UI → RDBMS could save enough energy to power a small country.","badge":"human","head":[["meta",{"name":"keywords","content":"postgresql, npgsqlrest, software architecture, simplicity, data access pattern, orm, rest api, energy efficiency, database first"}],["meta",{"property":"og:title","content":"The Power of Simplicity"}],["meta",{"property":"og:description","content":"How collapsing the standard data access pattern down to UI → RDBMS could save enough energy to power a small country."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"The Power of Simplicity"}]]},"headers":[],"relativePath":"blog/the-power-of-simplicity.md","filePath":"blog/the-power-of-simplicity.md"}'),n={name:"blog/the-power-of-simplicity.md"};function r(l,t,c,p,h,d){return a(),s("div",null,t[0]||(t[0]=[o("",23)]))}const u=e(n,[["render",r]]);export{m as __pageData,u as default};
diff --git a/assets/blog_typescript-codegen-walkthrough.md.DU5mkobw.js b/assets/blog_typescript-codegen-walkthrough.md.DU5mkobw.js
new file mode 100644
index 000000000..22e2c26b5
--- /dev/null
+++ b/assets/blog_typescript-codegen-walkthrough.md.DU5mkobw.js
@@ -0,0 +1,263 @@
+import{_ as a,C as n,c as t,o as e,a5 as l,G as h}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse(`{"title":"From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest's Code Generator","titleTemplate":"NpgsqlRest","description":"Generate typed fetch modules and TypeScript interfaces directly from PostgreSQL functions. End-to-end type safety, per-endpoint control with @tsclient annotations, and real-world module organization.","frontmatter":{"layout":"doc","outline":[2,3],"title":"From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest's Code Generator","titleTemplate":"NpgsqlRest","description":"Generate typed fetch modules and TypeScript interfaces directly from PostgreSQL functions. End-to-end type safety, per-endpoint control with @tsclient annotations, and real-world module organization.","head":[["meta",{"name":"keywords","content":"npgsqlrest typescript codegen, postgresql to typescript, type-safe api client, generate fetch from sql, tsclient annotation, end-to-end type safety, npgsqlrest typescript module"}],["meta",{"property":"og:title","content":"From SQL to Type-Safe TypeScript: NpgsqlRest's Code Generator"}],["meta",{"property":"og:description","content":"Auto-generate fetch modules and TypeScript interfaces from PostgreSQL functions. End-to-end type safety with declarative @tsclient annotations."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"TypeScript Code Generation Walkthrough"}],["meta",{"name":"twitter:description","content":"Auto-generate type-safe fetch clients from PostgreSQL functions with NpgsqlRest."}]]},"headers":[],"relativePath":"blog/typescript-codegen-walkthrough.md","filePath":"blog/typescript-codegen-walkthrough.md"}`),p={name:"blog/typescript-codegen-walkthrough.md"};function k(r,s,d,o,c,g){const i=n("BlogNav");return e(),t("div",null,[s[0]||(s[0]=l(`
From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest's Code Generator
April 2026 · TypeScriptCode GenerationType SafetyNpgsqlRest
NpgsqlRest is two things at once.
The first is what it does the moment you start it: connect to PostgreSQL, look at your routines and SQL files, and start serving each one as an HTTP endpoint. There's no controller code involved — the routes are wired up dynamically from the database catalog and live only in memory. The entire HTTP infrastructure is configured declaratively, per endpoint, through SQL comment annotations: @authorize, @cache_profile, @rate_limiter, @validate, and dozens more. SQL is declarative; the infrastructure that exposes it should be too. Nothing gets written to disk — endpoints exist for as long as the process runs.
The second thing is genuine code generation. If you opt in, NpgsqlRest writes a .ts file to your project at startup containing typed fetch() wrappers and TypeScript interfaces — one per endpoint. That file is real source code: you can read it, your IDE indexes it, your bundler compiles it. It's the only artifact NpgsqlRest produces on disk, and it exists purely to give your frontend compile-time type safety against the live HTTP API.
Change a SQL function, restart the server, and your frontend either compiles against the new shape or refuses to build. No drift, no DTO classes to maintain.
This post covers the TypeScript client generator: what it produces and how to control it per-endpoint with @tsclient annotations.
Source: your PostgreSQL routines and SQL files, plus comment annotations.
In-memory output (dynamic, runtime):
HTTP endpoint that binds request parameters from the URL or body
Response serialized as JSON
Declared auth, caching, rate limiting, and validation applied per request
On-disk output (static, build-time):
TypeScript .ts file with a fetch() wrapper per endpoint
Typed request and response interfaces
Consistent error handling shape
Both sides read the same source. The .ts file is regular source code: version it in git, or .gitignore it and regenerate on every CI build.
Since 3.19: regenerate on save
Run the dev server with --watch and the client regenerates on every change — save a .sql file, or even create or replace a function in psql (the database itself is watched), and the TypeScript types update while you're still in the SQL. Combined with tsc --watch on the frontend, type drift surfaces in seconds.
-- HTTP GET
+select user_id, username, email, active from example_2.users;
1 2
sql/get-posts.sql:
sql
sql
-- HTTP GET
+select u.username, p.content, p.created_at
+from example_2.posts p join example_2.users u using(user_id)
+where u.active = true
1 2 3 4
Two lines and a query each. The -- HTTP GET comment is the only annotation needed — NpgsqlRest reads it on startup, parses the query against the live database to extract column names and types, and registers the endpoint.
Configuration to enable both endpoint discovery and client generation:
Two-line SQL files become full TypeScript clients. No CREATE FUNCTION, no migration to apply, no schema scaffolding. The .sql file is the endpoint definition.
Snake case → camel case. PostgreSQL's user_id, created_at become TypeScript's userId, createdAt.
Nullability is preserved. Every column not declared NOT NULL shows up as T | null.
Every response is wrapped in ApiResult<T> ({ status, response, error }). Callers must handle errors explicitly — you cannot accidentally use users without checking status first.
The frontend imports the generated functions and uses them directly:
typescript
typescript
import { getPosts, getUsers } from "./sqlApi.ts";
+
+async function loadUsers() {
+ const { status, response: users, error } = await getUsers();
+
+ if (status !== 200) {
+ app.innerHTML = \`<p>Error: \${error?.title}</p>\`;
+ return;
+ }
+
+ // Static type checking happens here!
+ // If IGetUsersResponse changes (e.g., "username" renamed to "name"),
+ // TypeScript will fail the build with: Property 'username' does not exist
+ for (const user of users) {
+ console.log(user.userId, user.username, user.email);
+ }
+}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
If you rename users.username to users.name in the database, the next server restart re-parses get-users.sql against the new schema and rewrites sqlApi.ts with the new field name. Your console.log(user.username) line — and every other line that touches that field — fails the TypeScript build immediately. The bug is caught before the code runs, not after a user sees a blank field.
There is a second, less-obvious payoff here: the generated client is the cross-stack refactoring tool you've never had. The TypeScript function getUsers is a real symbol — your IDE indexes it like any other. "Find All References" on getUsers across your frontend project lists every component that calls the endpoint, no matter how deep it sits in the call tree. Renaming a SQL function and regenerating the client doesn't just catch the drift at compile time; it gives you the call graph to fix it deliberately, in advance.
In a conventional ASP.NET Core or FastAPI stack, an interface change made on the database side has to be hand-traced through controllers, DTOs, and API client code, and each layer is another chance for the rename to be applied incompletely. Here the call graph is a single hop — generated function to consumer — and the IDE walks it for you.
Uploads: When the Generated Wrapper Isn't Just fetch()
Not every endpoint maps cleanly to a single fetch() call. File uploads with progress reporting need XMLHttpRequest (which exposes upload.onprogress, while fetch does not), FormData, and an extra parameter for the progress callback. The generator handles this automatically when you mark an endpoint with @upload. From examples/6_image_uploads_sql_file/sql/upload-to-large-object.sql:
sql
sql
/*
+HTTP POST
+@upload for large_object
+@param $1 _user_id text = null
+@param $2 _meta json = null
+@check_image = true
+*/
+with inserted as (
+ insert into example_6.uploads (user_id, file_name, content_type, file_size, oid)
+ select $1::int, m->>'fileName', m->>'contentType',
+ (m->>'size')::bigint, (m->>'oid')::bigint
+ from json_array_elements($2) as m
+ where (m->>'success')::boolean = true
+ returning file_name, content_type, file_size, oid
+)
+select (...)::example_6.upload_response from json_array_elements($2) as m;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
The endpoint receives uploaded files, stores each as a PostgreSQL Large Object, and inserts a metadata row. @upload for large_object selects the upload backend; @check_image = true verifies that uploaded bytes are actually a valid image format before storage.
The generator emits a wrapper that takes a FileList, an optional progress callback, and returns the same typed ApiResult<T>:
You write one SQL file with an @upload annotation. You get an XMLHttpRequest-based wrapper with progress callbacks, multi-file FormData construction, typed response, and consistent error handling — all without touching client-side upload boilerplate yourself.
Some endpoints don't need a TypeScript client. Some need a different module. Some need only the URL but not the fetch wrapper. The @tsclient family of annotations covers all three.
@tsclient = false skips client generation for endpoints that wouldn't be useful as fetch wrappers — typically binary downloads served directly to <img src> or browser navigation:
sql
sql
/*
+HTTP GET
+@raw
+@tsclient = false
+@param $1 id int
+@define_param mimeType
+content_type: {mimeType}
+*/
+select data from images where id = $1;
1 2 3 4 5 6 7 8 9
@raw returns the raw bytea bytes (no JSON wrapping), content_type: {mimeType} sets the response header from the mimeType query parameter, and @tsclient = false keeps this endpoint out of the generated TypeScript file. The endpoint is fully callable — your frontend just does <img src="/api/get-image?id=42&mimeType=image/png"> instead of going through a fetch() wrapper that would only ever produce a Blob.
For production workloads, storing image bytes directly in a bytea column is rarely the best choice — PostgreSQL Large Objects (lo_create, lo_get) keep the binary data out of the row's TOAST table and can be streamed efficiently. See the full implementation in examples/6_image_uploads_sql_file/sql/get-image.sql, which uses select lo_get($1) against an oid parameter.
@tsclient_url_only = true is for endpoints consumed via <a href>, <form action>, or browser navigation rather than fetch() — Excel exports, CSV downloads, file responses. From examples/14_table_format_sql_file/sql/get-data.sql:
sql
sql
/*
+HTTP GET
+@authorize
+@define_param format text
+@define_param excelFileName text
+@define_param excelSheet text
+@table_format = {format}
+@excel_file_name = {excelFileName}
+@excel_sheet = {excelSheet}
+@tsclient_url_only = true
+*/
+select * from sales_report;
1 2 3 4 5 6 7 8 9 10 11 12
The generator emits the URL builder and request type, but skips the fetch function:
Now your frontend can build the URL and assign it to an <a href> or window.location to trigger a download — no fetch wrapper that would consume the response in JavaScript.
By default, output files are grouped by source (one .ts file per PostgreSQL schema, or one for all SQL files). @tsclient_module overrides this to group endpoints by feature instead:
sql/admin/get-users.sql:
sql
sql
-- HTTP GET
+-- @tsclient_module = admin
+select user_id, username, email from users;
1 2 3
sql/admin/get-roles.sql:
sql
sql
-- HTTP GET
+-- @tsclient_module = admin
+select role_id, name from roles;
1 2 3
Both endpoints land in adminApi.ts even though they live in separate files (or in different PostgreSQL schemas if you're using functions). Useful when your backend organization doesn't match your frontend organization (feature-per-page).
A real-world example from a production deployment of NpgsqlRest (covered in detail in the zero-backend-code case study): functions in the application's primary PostgreSQL schema are split across roughly a dozen generated modules — one per feature area in the frontend — each tagged with the corresponding @tsclient_module annotation. The frontend imports from "./<feature>Api.ts", matching its component structure. The total generated TypeScript surface in that project is around 5,700 lines, regenerated on every dev-mode server restart, maintained by zero humans.
One *Api.ts (functions) and one *ApiTypes.d.ts (interfaces) file per logical module
baseUrl and parseQuery come from your own $lib/urls.ts — the generated files just import them, so your environment-variable-driven base URL stays in one place
URL constants (computeUrl(), loginUrl(), etc.) exported alongside the fetch functions, useful for <a> tags and library integrations
EventSource factory functions for any @sse endpoint — type-safe SSE without boilerplate
Function names match SQL routine names rather than URL paths, so grep-across-stack works
A typical generated function for an @sse endpoint looks like this:
The onMessage callback streams RAISE INFO / RAISE NOTICE events from the running PostgreSQL function. The fetch returns the full result set when the function completes. Both happen against a single endpoint — generated automatically from the function's @sse annotation.
Production has no need to write .ts files — by then, the frontend is a compiled bundle. The generated files exist in your repository (or are produced during CI) and are the input to the frontend build, not its output.
bun run dev — boots the NpgsqlRest server. It reads the prod config first, then layers the development config on top (NpgsqlRest accepts multiple config files). Codegen is enabled, so on every restart it rewrites ./src/app/api/*Api.ts and ./src/app/api/*ApiTypes.d.ts.
bun run watch (in another terminal) — Rollup runs in watch mode. The moment NpgsqlRest rewrites a generated file, Rollup picks up the change and recompiles your frontend. Type errors appear in your terminal and IDE within seconds.
The day-to-day loop when you need to evolve an endpoint is short:
Update and test the SQL. Either edit the SQL file directly and run it manually against your dev database, or CREATE OR REPLACE the function and let your existing test suite cover it. PostgreSQL functions can be tested with plain assert statements inside DO blocks — no extra framework needed:
sql
sql
do $$
+declare _r record;
+begin
+ insert into example.users (user_id, username) values (1, 'alice');
+
+ select * into _r from get_user(1);
+ assert _r.username = 'alice', 'username should match';
+ assert _r.user_id is not null, 'user_id should not be null';
+
+ rollback;
+end;
+$$;
1 2 3 4 5 6 7 8 9 10 11 12
No migration step required. Once the function exists on the server with the new signature, you're done with the database side.
Restart NpgsqlRest in dev mode. That's it. The server re-introspects the catalog, regenerates the *Api.ts and *ApiTypes.d.ts files, and starts serving the new shape.
Watch the terminal. Because the generated files just changed and your frontend toolchain is in watch mode, any line in your UI that no longer matches the new types fails type-checking immediately — no need to click around the app to find what broke.
Fix the frontend. Hand the type errors to your favorite LLM along with the relevant component file and let it patch the calls. The errors are precise (Property 'username' does not exist on type 'IGetUserResponse'), so even a small model handles them well.
You never run a manual codegen command. You never run tsc against a hand-maintained DTO file. Database is the source, TypeScript enforces the shape, your build is the gate.
The production Docker image needs the runtime endpoints but not the codegen step. It uses the official NpgsqlRest base image:
dockerfile
dockerfile
FROM oven/bun:1.3.3-alpine AS base
+WORKDIR /app
+COPY . ./
+RUN bun install --production
+RUN bun run build # Frontend compiled here, including generated .ts files
+
+FROM vbilopav/npgsqlrest:v3.13.0 AS app
+WORKDIR /app
+COPY --from=base /app/dist ./dist
+COPY ./config/appsettings.json ./
+EXPOSE 8080
+ENTRYPOINT [ "npgsqlrest", "./appsettings.json" ]
1 2 3 4 5 6 7 8 9 10 11 12
The production image:
Builds the frontend in a Bun stage — Rollup compiles the already-checked-in (or CI-generated) .ts files into a static bundle.
Copies the bundle and the production appsettings.json (codegen disabled) into the NpgsqlRest base image.
Boots NpgsqlRest with prod config only. Endpoints are generated dynamically at startup as always; no files are written to disk.
Deploy to Kubernetes via Helm. Codegen never runs in the production cluster — it's a build-time concern, fully separated from the runtime concerns of serving requests.
The author of the project this configuration comes from — profiled in the zero-backend-code case study, which puts the LOC numbers next to an equivalent ASP.NET Core build — describes the experience like this:
"I am free to focus on my database that it works correctly."
That's the loop NpgsqlRest is designed to enable. The database is the artifact you actually care about. The HTTP layer is generated. The TypeScript client is generated. Both come from the same source. When the database is right, everything downstream is right too — and the build catches it the moment it isn't.
Write a PostgreSQL function (or SQL file) with a comment annotation describing the endpoint.
Restart NpgsqlRest. Two things happen on the same startup:
The HTTP endpoint is registered in memory and starts serving requests (dynamic, runtime).
The corresponding TypeScript wrapper is written to a .ts file on disk (static, one-shot).
Import the generated function in your frontend code. Your build pipeline (Vite, Next.js, tsc, esbuild) compiles it like any other source file.
Change the database schema. Restart. The next run rewrites the .ts file. Your frontend's next compile either matches the new shape (build passes) or doesn't (build fails with a precise error).
There is no DTO file to maintain, no OpenAPI spec to keep in sync, no runtime validation library configured at three layers. The database is the source of truth, the endpoint generator translates it to HTTP at runtime, and the client generator translates it to TypeScript at build time. Both translations come from the same catalog read.
`,105)),h(i,{"get-started":[{text:"Code Generation Configuration",href:"/config/codegen"},{text:"@tsclient Annotation Reference",href:"/annotations/tsclient"},{text:"Static Type Checking Example (SQL files)",href:"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/2_static_type_checking_sql_file"},{text:"End-to-End Type Checking Blog",href:"/blog/end-to-end-static-type-checking-postgresql-typescript"},{text:"Quick Start Guide",href:"/guide/quick-start"}]})])}const u=a(p,[["render",k]]);export{F as __pageData,u as default};
diff --git a/assets/blog_typescript-codegen-walkthrough.md.DU5mkobw.lean.js b/assets/blog_typescript-codegen-walkthrough.md.DU5mkobw.lean.js
new file mode 100644
index 000000000..785ebac5e
--- /dev/null
+++ b/assets/blog_typescript-codegen-walkthrough.md.DU5mkobw.lean.js
@@ -0,0 +1 @@
+import{_ as a,C as n,c as t,o as e,a5 as l,G as h}from"./chunks/framework.CgT1UzWm.js";const F=JSON.parse(`{"title":"From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest's Code Generator","titleTemplate":"NpgsqlRest","description":"Generate typed fetch modules and TypeScript interfaces directly from PostgreSQL functions. End-to-end type safety, per-endpoint control with @tsclient annotations, and real-world module organization.","frontmatter":{"layout":"doc","outline":[2,3],"title":"From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest's Code Generator","titleTemplate":"NpgsqlRest","description":"Generate typed fetch modules and TypeScript interfaces directly from PostgreSQL functions. End-to-end type safety, per-endpoint control with @tsclient annotations, and real-world module organization.","head":[["meta",{"name":"keywords","content":"npgsqlrest typescript codegen, postgresql to typescript, type-safe api client, generate fetch from sql, tsclient annotation, end-to-end type safety, npgsqlrest typescript module"}],["meta",{"property":"og:title","content":"From SQL to Type-Safe TypeScript: NpgsqlRest's Code Generator"}],["meta",{"property":"og:description","content":"Auto-generate fetch modules and TypeScript interfaces from PostgreSQL functions. End-to-end type safety with declarative @tsclient annotations."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"TypeScript Code Generation Walkthrough"}],["meta",{"name":"twitter:description","content":"Auto-generate type-safe fetch clients from PostgreSQL functions with NpgsqlRest."}]]},"headers":[],"relativePath":"blog/typescript-codegen-walkthrough.md","filePath":"blog/typescript-codegen-walkthrough.md"}`),p={name:"blog/typescript-codegen-walkthrough.md"};function k(r,s,d,o,c,g){const i=n("BlogNav");return e(),t("div",null,[s[0]||(s[0]=l("",105)),h(i,{"get-started":[{text:"Code Generation Configuration",href:"/config/codegen"},{text:"@tsclient Annotation Reference",href:"/annotations/tsclient"},{text:"Static Type Checking Example (SQL files)",href:"https://github.com/NpgsqlRest/npgsqlrest-docs/tree/main/examples/2_static_type_checking_sql_file"},{text:"End-to-End Type Checking Blog",href:"/blog/end-to-end-static-type-checking-postgresql-typescript"},{text:"Quick Start Guide",href:"/guide/quick-start"}]})])}const u=a(p,[["render",k]]);export{F as __pageData,u as default};
diff --git a/assets/blog_web-scraping-postgresql-http-types-xml.md.CCovU_63.js b/assets/blog_web-scraping-postgresql-http-types-xml.md.CCovU_63.js
new file mode 100644
index 000000000..6b31f1297
--- /dev/null
+++ b/assets/blog_web-scraping-postgresql-http-types-xml.md.CCovU_63.js
@@ -0,0 +1,131 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse(`{"title":"Web Scraping with PostgreSQL: HTTP Types + XML Functions","titleTemplate":"NpgsqlRest","description":"Scrape a web page entirely in SQL: fetch the HTML with an HTTP Custom Type, parse it with PostgreSQL's built-in XPath functions, and serve the result as JSON. No Python, no scraping service.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Web Scraping with PostgreSQL: HTTP Types + XML Functions","titleTemplate":"NpgsqlRest","description":"Scrape a web page entirely in SQL: fetch the HTML with an HTTP Custom Type, parse it with PostgreSQL's built-in XPath functions, and serve the result as JSON. No Python, no scraping service.","head":[["meta",{"name":"keywords","content":"postgresql web scraping, sql web scraper, postgresql xpath, postgresql xml functions, scrape html sql, npgsqlrest http types, postgresql parse html"}],["meta",{"property":"og:title","content":"Web Scraping with PostgreSQL: HTTP Types + XML Functions"}],["meta",{"property":"og:description","content":"Fetch a page with an HTTP Custom Type, parse the HTML with PostgreSQL XPath, serve JSON. A web scraper with no application code."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Web Scraping with PostgreSQL"}],["meta",{"name":"twitter:description","content":"Fetch a page, parse the HTML with XPath, serve JSON — all in SQL."}]]},"headers":[],"relativePath":"blog/web-scraping-postgresql-http-types-xml.md","filePath":"blog/web-scraping-postgresql-http-types-xml.md"}`),t={name:"blog/web-scraping-postgresql-http-types-xml.md"};function l(p,s,h,r,k,c){return n(),a("div",null,s[0]||(s[0]=[e(`
Web Scraping with PostgreSQL: HTTP Types + XML Functions
HTTP · Web Scraping · XML / XPath · June 2026
A web scraper is two things: something that fetches a page, and something that parses the HTML it gets back. The usual stack reaches for Python plus requests plus BeautifulSoup, or a hosted scraping API.
PostgreSQL already has both halves. NpgsqlRest's HTTP Custom Types do the fetch — the request lives in a type comment and is performed automatically before your function runs. And PostgreSQL's built-in xpath() / xmlparse() functions do the parse. Put them together and a scraper endpoint is just a SQL function — no application code, no extra services.
An HTTP Custom Type is a composite type whose comment defines an HTTP request. When a function takes the type as a parameter, NpgsqlRest makes the call and fills in the fields before the function body executes. body is text, not jsonb, because we're getting raw HTML back:
sql
sql
create type example_17.books_api as (
+ body text,
+ status_code int,
+ success boolean,
+ error_message text
+);
+
+comment on type example_17.books_api is 'GET https://books.toscrape.com/
+Accept: text/html
+@timeout 30s';
create function example_17.average_book_price(
+ _response example_17.books_api default null
+)
+returns table (
+ avg_price numeric
+)
+language plpgsql
+as
+$$
+declare
+ _articles text[];
+ _cleaned text;
+ _doc xml;
+begin
+ -- Bail out if the external request failed.
+ if not (_response).success then
+ raise exception 'Failed to fetch books page: %',
+ coalesce((_response).error_message, 'HTTP status ' || (_response).status_code);
+ end if;
+
+ -- 1. Isolate each book from the HTML. Each book is an <article>.
+ select array_agg(m[1])
+ into _articles
+ from regexp_matches(
+ (_response).body,
+ '<article class="product_pod">.*?</article>',
+ 'gs'
+ ) m;
+
+ if _articles is null then
+ raise exception 'No books found in the response';
+ end if;
+
+ -- 2. Clean the HTML into well-formed XML: drop the void <img> elements.
+ _cleaned := array_to_string(_articles, '');
+ _cleaned := regexp_replace(_cleaned, '<img[^>]*>', '', 'g');
+
+ _doc := xmlparse(document '<books>' || _cleaned || '</books>');
+
+ -- 3. Read every price with XPath and average them.
+ -- The price is the text of <p class="price_color">, e.g. "£51.77".
+ return query
+ select round(avg(substring(p::text from '([0-9]+(?:\\.[0-9]+)?)')::numeric), 2)
+ from unnest(xpath('//p[@class="price_color"]/text()', _doc)) as p;
+end;
+$$;
+
+comment on function example_17.average_book_price(example_17.books_api) is 'HTTP GET /average-book-price
+@allow_anonymous
+@single';
The @single annotation makes the endpoint return one JSON object instead of an array — { "avgPrice": 35.07 } — and that's the whole backend. GET /average-book-price fetches the page, parses it, and answers.
PostgreSQL's xmlparse(document ...) wants well-formed XML, and real HTML isn't — <img>, <meta>, and bare boolean attributes have no XML equivalent. The two-step approach sidesteps that: a permissive regex carves out just the repeating blocks we care about, then a couple of regexp_replace calls strip the tags that would break the parser. Once the fragment is clean, xpath() does the precise, structured reading — far more robust than trying to pull every field out with regex alone.
Same recipe, one step further — instead of averaging a single column, it reads three fields per product and ranks them. The card is isolated, the void tags and a bare itemscope attribute are normalized, and then XPath pulls title, price, and rating:
sql
sql
with raw as (
+ select
+ (xpath('.//a[@class="title"]/@title', node))[1]::text as p_title,
+ replace(substring(
+ (xpath('.//h4[contains(@class,"price")]//span[@itemprop="price"]/text()', node))[1]::text
+ from '(\\$[0-9]+(?:\\.[0-9]+)?)'), '$', '')::numeric as p_price,
+ (xpath('.//p[@data-rating]/@data-rating', node))[1]::text::numeric as p_rating
+ from unnest(xpath('/products/div', _doc)) as node
+),
+bounds as (
+ select min(p_price) as min_price, max(p_price) as max_price from raw
+)
+select
+ r.p_title,
+ r.p_price,
+ r.p_rating,
+ round(
+ 0.7 * (1 - case when b.max_price = b.min_price then 0
+ else (r.p_price - b.min_price) / (b.max_price - b.min_price) end)
+ + 0.3 * (r.p_rating / 5),
+ 6)
+from raw r cross join bounds b
+order by 4 desc
+limit 1;
The score is 0.7 * (1 - normalizedPrice) + 0.3 * (rating / 5) — cheaper (70%) and higher-rated (30%) wins. The point isn't the formula; it's that once the data is in relational form, ranking, weighting, and aggregating are just SQL. No mapping HTML into objects in another language first.
Scraped pages change slowly, but a naive endpoint hits the upstream on every request. As of NpgsqlRest 3.18.0, the @cache directive caches the outbound response and reuses it for matching requests within a TTL:
sql
sql
comment on type example_17.books_api is '@cache 5m
+GET https://books.toscrape.com/
+Accept: text/html
+@timeout 30s';
1 2 3 4
Now a burst of traffic to /average-book-price collapses to one upstream fetch every 5 minutes (with stampede protection coalescing concurrent requests into a single call), instead of one fetch per visitor. Caching is opt-in, GET-only, and stores only successful responses — exactly the right default for scraping.
A different split: fetch in SQL, parse in a service
Parsing in SQL is the point of this post, but it isn't the only shape. Sometimes the parser already exists — a service that turns HTML into the numbers you need — and you only want PostgreSQL to do the fetch. NpgsqlRest can do exactly that: let the HTTP Custom Type fetch the page, then @proxy the scraped HTML straight to that upstream service. The function body stays empty — it's a passthrough.
The catch is where the HTML goes. Automatic (server-filled) parameters are forwarded to the proxy, but an entire HTML page is far too large for the query string — it produces a request line the upstream rejects (HTTP 414/431). The fix is to route that one field into the proxy request body with @body_parameter_name, and use a body-carrying method (POST):
sql
sql
create type example_18.books_api as (
+ body text,
+ status_code int,
+ success boolean,
+ error_message text
+);
+
+comment on type example_18.books_api is 'GET https://books.toscrape.com/
+Accept: text/html
+@timeout 30s';
+
+create function example_18.average_book_price(
+ _response example_18.books_api default null
+)
+returns table (
+ avg_price numeric
+)
+language plpgsql
+as
+$$
+begin
+-- empty, proxy passthrough: no DB called at all
+end;
+$$;
+
+comment on function example_18.average_book_price(example_18.books_api) is '
+HTTP POST /average-book-price
+@body_parameter_name _response_body
+@allow_anonymous
+@single
+@proxy
+';
@body_parameter_name _response_body targets the expanded body field of the HTTP Custom Type — the scraped HTML — and sends it as the raw POST body to the upstream. The small fields (status_code, success, …) ride along on the query string. The upstream then does the parsing it already knows how to do and answers with the average:
ts
ts
// upstream/server.ts — receives the scraped HTML in the POST body
+const html = await req.text();
+const prices = [...html.matchAll(/class="price_color">\\s*£([\\d.]+)/g)]
+ .map(m => Number(m[1]))
+ .filter(n => !Number.isNaN(n));
+const avgPrice = prices.length
+ ? prices.reduce((a, b) => a + b, 0) / prices.length
+ : null;
+return Response.json({ avgPrice });
1 2 3 4 5 6 7 8 9
Two NpgsqlRest 3.18.2 options make this clean: ProxyOptions.MaxForwardedQueryParamLength is the guard that would have skipped the oversized body from the query string in the first place, and OmitAutomaticParameters drops the server-filled fields from the generated client so the call is a bare averageBookPrice() with no arguments.
This approach shines on server-rendered, reasonably structured HTML — product listings, catalogs, tables, RSS-like pages. It's a few lines of SQL and it deploys with the rest of your database.
It is not a headless browser. Pages that build their content with client-side JavaScript return an empty shell to an HTTP fetch — there's no DOM to render and nothing for XPath to read. For those you still need a real browser engine. But for the large class of pages that ship their data in the HTML, PostgreSQL plus an HTTP Custom Type is all the scraper you need.
cd examples/17_scrap_demo_2
+bun run db:up
+bun run dev
+# open http://127.0.0.1:8080
1 2 3 4
The proxy variant (example 18) runs the same way, plus its upstream service in a second terminal:
bash
bash
cd examples/18_scrap_proxy_demo
+bun run db:up
+bun run upstream # starts the parsing service on :3001
+bun run dev # in another terminal
+# open http://127.0.0.1:8080
`,46)]))}const g=i(t,[["render",l]]);export{d as __pageData,g as default};
diff --git a/assets/blog_web-scraping-postgresql-http-types-xml.md.CCovU_63.lean.js b/assets/blog_web-scraping-postgresql-http-types-xml.md.CCovU_63.lean.js
new file mode 100644
index 000000000..64a92e679
--- /dev/null
+++ b/assets/blog_web-scraping-postgresql-http-types-xml.md.CCovU_63.lean.js
@@ -0,0 +1 @@
+import{_ as i,c as a,o as n,a5 as e}from"./chunks/framework.CgT1UzWm.js";const d=JSON.parse(`{"title":"Web Scraping with PostgreSQL: HTTP Types + XML Functions","titleTemplate":"NpgsqlRest","description":"Scrape a web page entirely in SQL: fetch the HTML with an HTTP Custom Type, parse it with PostgreSQL's built-in XPath functions, and serve the result as JSON. No Python, no scraping service.","frontmatter":{"layout":"doc","outline":[2,3],"title":"Web Scraping with PostgreSQL: HTTP Types + XML Functions","titleTemplate":"NpgsqlRest","description":"Scrape a web page entirely in SQL: fetch the HTML with an HTTP Custom Type, parse it with PostgreSQL's built-in XPath functions, and serve the result as JSON. No Python, no scraping service.","head":[["meta",{"name":"keywords","content":"postgresql web scraping, sql web scraper, postgresql xpath, postgresql xml functions, scrape html sql, npgsqlrest http types, postgresql parse html"}],["meta",{"property":"og:title","content":"Web Scraping with PostgreSQL: HTTP Types + XML Functions"}],["meta",{"property":"og:description","content":"Fetch a page with an HTTP Custom Type, parse the HTML with PostgreSQL XPath, serve JSON. A web scraper with no application code."}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"Web Scraping with PostgreSQL"}],["meta",{"name":"twitter:description","content":"Fetch a page, parse the HTML with XPath, serve JSON — all in SQL."}]]},"headers":[],"relativePath":"blog/web-scraping-postgresql-http-types-xml.md","filePath":"blog/web-scraping-postgresql-http-types-xml.md"}`),t={name:"blog/web-scraping-postgresql-http-types-xml.md"};function l(p,s,h,r,k,c){return n(),a("div",null,s[0]||(s[0]=[e("",46)]))}const g=i(t,[["render",l]]);export{d as __pageData,g as default};
diff --git a/assets/blog_what-have-stored-procedures-ever-done-for-us.md.DbQNwRp9.js b/assets/blog_what-have-stored-procedures-ever-done-for-us.md.DbQNwRp9.js
new file mode 100644
index 000000000..df42d9682
--- /dev/null
+++ b/assets/blog_what-have-stored-procedures-ever-done-for-us.md.DbQNwRp9.js
@@ -0,0 +1,12 @@
+import{_ as t,C as a,c as i,o as n,a5 as o,G as r}from"./chunks/framework.CgT1UzWm.js";const p="/sp1.jpeg",l="/polp/code1.png",d="/polp/code2.png",h="/polp/code3.png",c="/polp/code5.png",u="/polp/code4.png",k="/sp2.jpeg",m="/sp5.jpeg",C=JSON.parse('{"title":"What Have PostgreSQL Functions Ever Done for Us?","titleTemplate":"NpgsqlRest","description":"Apart from security, performance, maintainability, testability, and zero boilerplate code, what have PostgreSQL stored procedures and functions ever really done for us?","frontmatter":{"layout":"doc","outline":[2,3],"title":"What Have PostgreSQL Functions Ever Done for Us?","titleTemplate":"NpgsqlRest","description":"Apart from security, performance, maintainability, testability, and zero boilerplate code, what have PostgreSQL stored procedures and functions ever really done for us?","head":[["meta",{"name":"keywords","content":"postgresql stored procedures, postgresql functions, npgsqlrest, database api, sql injection prevention, database security, api development, stored procedure benefits, data contracts"}],["meta",{"property":"og:title","content":"What Have PostgreSQL Functions Ever Done for Us?"}],["meta",{"property":"og:description","content":"Apart from security, performance, maintainability, testability, and zero boilerplate code, what have PostgreSQL stored procedures and functions ever really done for us?"}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"What Have PostgreSQL Functions Ever Done for Us?"}]]},"headers":[],"relativePath":"blog/what-have-stored-procedures-ever-done-for-us.md","filePath":"blog/what-have-stored-procedures-ever-done-for-us.md"}'),y={name:"blog/what-have-stored-procedures-ever-done-for-us.md"};function g(f,e,b,v,F,D){const s=a("BlogNav");return n(),i("div",null,[e[0]||(e[0]=o('
What Have PostgreSQL Functions Ever Done for Us?
January 2026 · PostgreSQLArchitectureOpinion
Hey, DDD developers. What's stopping you from crafting beautiful, efficient domain models with these? With these obsolete, dusty old PostgreSQL functions and stored procedures?
What are we, stuck in the 90s or something?
Besides — what have user-defined functions and stored procedures ever really done for us?
Let me actually answer that. Not with hand-waving, but with a tiny bookstore I can fit on your screen.
Here's the schema. Three tables: books, orders, a little price history. Standard stuff.
These tables? Private parts. Nobody outside the database touches them directly. Ever. Instead, every command and query the application is allowed to run lives in a function, in its own schema:
That app_user can login. That's pretty much it. nosuperuser, nocreatedb, nocreaterole, noinherit. It gets usage on the bookstore_api schema and nothing else. No tables. No data schema. Just the functions I decide to expose.
To borrow some OOP vocabulary: those functions are my data contracts. Parameters are the input contract, the result set is the output contract. The tables behind them can do whatever they want. The contract doesn't budge unless the application does too.
And if you strap NpgsqlRest on top, every one of those functions becomes a REST endpoint automatically — no controllers, no DTOs, no mappers. Your SQL is the API.
OK. But besides being a tidy mental model — what have they ever done for us?
create or replace on every build re-validates the whole signature: every column name, every type, every table it touches. Rename a column in books, change price from numeric to int, drop something — and the build screams. No type or name change slips through unnoticed.
And as a bonus: strap NpgsqlRest on top and those same types propagate straight into your frontend as generated TypeScript. You're type-protected on every front, from the table to the React component.
OK — besides Type Safety — what have user-defined functions and stored procedures ever done for us?
The tables and types are invisible to the application. It can't see them. It can't SELECT * FROM bookstore.books. All it knows is list_books(_search).
Which means I can do whatever I want behind the curtain — split a table, denormalize it, archive half of it to cold storage, add a price_history audit on every update like in update_price here:
The application never finds out. The contract didn't move an inch.
OK — besides Type Safety and Real Encapsulation — what have user-defined functions and stored procedures ever done for us?
Same deal. You split, denormalize, archive, rewrite the guts of a function — and not only does the API not move, you do it with zero downtime. create or replace function is atomic. No deploy. No container restart. No rolling anything. The next call just runs the new body.
OK — besides Type Safety, Real Encapsulation, and Zero Downtime — what have user-defined functions and stored procedures ever done for us?
Check the stock, validate it, decrement it, insert the order — all of it in one single round trip to the database and back. From the application's point of view it's one call. The unnecessary network chatter — the read, then the read, then the write, then the other write — is reduced to zero.
OK — besides Type Safety, Real Encapsulation, Zero Downtime, and Performance — what have user-defined functions and stored procedures ever done for us?
Same place_order again. Fewer round trips means less time spent on the wire, which means latency drops, which means the window where two orders can fight over the last copy of Ficciones shrinks dramatically. Add the select ... for update and that window basically closes. Try doing that cleanly across four separate ORM calls.
OK — besides Type Safety, Real Encapsulation, Zero Downtime, Performance, and Race Conditions Minimized — what have user-defined functions and stored procedures ever done for us?
Your ORM is still connecting with a God connection — a role that can do anything and everything to every table. We don't. We use the principle of least privilege, the same way the army does. They call it "need-to-know." If you're captured, you can't give up what you were never told.
That's exactly what app_user is. It can call functions in one schema. It cannot read a table, cannot drop one, cannot escalate. So even if those credentials leak — out of the codebase, out of the infra, out of some forgotten .env in a public repo — the attacker gets to call the same endpoints your frontend already calls. They don't get to dump your data. The God connection credentials never went anywhere a thief could reach.
Alright, alright — besides Type Safety, Real Encapsulation, Zero Downtime, Performance, Race Conditions Minimized, and Security — what have user-defined functions and stored procedures ever done for us?
Look at the bottom of every one of those screenshots. See that do block?
sql
sql
do
+$$
+begin
+ insert into bookstore.books (title, author, price) values
+ ('Ficciones', 'Jorge Luis Borges', 12.99),
+ ('The Aleph', 'Jorge Luis Borges', 14.50);
+ assert (select count(*) from bookstore_api.list_books()) = 2;
+ assert (select count(*) from bookstore_api.list_books(_search => 'borges')) = 2;
+ raise notice 'list_books: ok';
+ rollback;
+end;
+$$;
1 2 3 4 5 6 7 8 9 10 11 12
Seed. Assert. Rollback. It lives at the end of the same SQL file as the function. I re-run the file in psql — the function gets create or replace'd, the test runs, I get list_books: ok, and the transaction rolls back so the database is exactly as it was.
Milliseconds. No build. No test runner. No mocked database. No spinning up half of Docker to find out my WHERE clause was wrong.
Oh God, oh man — besides Type Safety, Real Encapsulation, Zero Downtime, Performance, Race Conditions Minimized, Security, and a Short Test Loop — what have user-defined functions and stored procedures ever done for us?
If you actually want to learn these ancient, obsolete, stuck-in-the-90s techniques — type-safe contracts, real encapsulation, least-privilege security, a test loop measured in milliseconds — I'll be running free workshops (and consulting) for NpgsqlRest users after this summer.
Drop a comment if you're interested.
And if you'd rather just start: your SQL is already the API, you just haven't pointed NpgsqlRest at it yet.
',57)),r(s,{"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Benchmark Results",href:"/blog/postgresql-rest-api-benchmark-2026"},{text:"Security Guide",href:"/guide/security"},{text:"Function Annotations",href:"/annotations/"}]})])}const A=t(y,[["render",g]]);export{C as __pageData,A as default};
diff --git a/assets/blog_what-have-stored-procedures-ever-done-for-us.md.DbQNwRp9.lean.js b/assets/blog_what-have-stored-procedures-ever-done-for-us.md.DbQNwRp9.lean.js
new file mode 100644
index 000000000..3b1bd84ec
--- /dev/null
+++ b/assets/blog_what-have-stored-procedures-ever-done-for-us.md.DbQNwRp9.lean.js
@@ -0,0 +1 @@
+import{_ as t,C as a,c as i,o as n,a5 as o,G as r}from"./chunks/framework.CgT1UzWm.js";const p="/sp1.jpeg",l="/polp/code1.png",d="/polp/code2.png",h="/polp/code3.png",c="/polp/code5.png",u="/polp/code4.png",k="/sp2.jpeg",m="/sp5.jpeg",C=JSON.parse('{"title":"What Have PostgreSQL Functions Ever Done for Us?","titleTemplate":"NpgsqlRest","description":"Apart from security, performance, maintainability, testability, and zero boilerplate code, what have PostgreSQL stored procedures and functions ever really done for us?","frontmatter":{"layout":"doc","outline":[2,3],"title":"What Have PostgreSQL Functions Ever Done for Us?","titleTemplate":"NpgsqlRest","description":"Apart from security, performance, maintainability, testability, and zero boilerplate code, what have PostgreSQL stored procedures and functions ever really done for us?","head":[["meta",{"name":"keywords","content":"postgresql stored procedures, postgresql functions, npgsqlrest, database api, sql injection prevention, database security, api development, stored procedure benefits, data contracts"}],["meta",{"property":"og:title","content":"What Have PostgreSQL Functions Ever Done for Us?"}],["meta",{"property":"og:description","content":"Apart from security, performance, maintainability, testability, and zero boilerplate code, what have PostgreSQL stored procedures and functions ever really done for us?"}],["meta",{"property":"og:type","content":"article"}],["meta",{"name":"twitter:card","content":"summary_large_image"}],["meta",{"name":"twitter:title","content":"What Have PostgreSQL Functions Ever Done for Us?"}]]},"headers":[],"relativePath":"blog/what-have-stored-procedures-ever-done-for-us.md","filePath":"blog/what-have-stored-procedures-ever-done-for-us.md"}'),y={name:"blog/what-have-stored-procedures-ever-done-for-us.md"};function g(f,e,b,v,F,D){const s=a("BlogNav");return n(),i("div",null,[e[0]||(e[0]=o("",57)),r(s,{"get-started":[{text:"Quick Start Guide",href:"/guide/quick-start"},{text:"Benchmark Results",href:"/blog/postgresql-rest-api-benchmark-2026"},{text:"Security Guide",href:"/guide/security"},{text:"Function Annotations",href:"/annotations/"}]})])}const A=t(y,[["render",g]]);export{C as __pageData,A as default};
diff --git a/assets/chunks/@localSearchIndexroot.CFuD74JD.js b/assets/chunks/@localSearchIndexroot.CFuD74JD.js
new file mode 100644
index 000000000..ceee093a9
--- /dev/null
+++ b/assets/chunks/@localSearchIndexroot.CFuD74JD.js
@@ -0,0 +1 @@
+const e='{"documentCount":2883,"nextId":2883,"documentIds":{"0":"/about.html#about-this-website","1":"/about.html#how-these-docs-are-made","2":"/about.html#about-the-author","3":"/about.html#feedback","4":"/annotations/allow-anonymous.html#allow-anonymous","5":"/annotations/allow-anonymous.html#syntax","6":"/annotations/allow-anonymous.html#examples","7":"/annotations/allow-anonymous.html#public-endpoint","8":"/annotations/allow-anonymous.html#short-form","9":"/annotations/allow-anonymous.html#public-read-protected-write-pattern","10":"/annotations/allow-anonymous.html#behavior","11":"/annotations/allow-anonymous.html#related","12":"/annotations/allow-anonymous.html#related-annotations","13":"/annotations/authorize.html#authorize","14":"/annotations/authorize.html#syntax","15":"/annotations/authorize.html#examples","16":"/annotations/authorize.html#require-any-authenticated-user","17":"/annotations/authorize.html#alternative-keywords","18":"/annotations/authorize.html#require-specific-role","19":"/annotations/authorize.html#authorize-by-user-name","20":"/annotations/authorize.html#authorize-by-user-id","21":"/annotations/authorize.html#multiple-roles","22":"/annotations/authorize.html#mix-of-roles-and-user-identifiers","23":"/annotations/authorize.html#authorize-before-http","24":"/annotations/authorize.html#authorize-on-separate-line","25":"/annotations/authorize.html#behavior","26":"/annotations/authorize.html#related","27":"/annotations/authorize.html#related-annotations","28":"/annotations/authorize.html#see-also","29":"/annotations/basic-auth-command.html#basic-auth-command","30":"/annotations/basic-auth-command.html#syntax","31":"/annotations/basic-auth-command.html#command-parameters","32":"/annotations/basic-auth-command.html#return-value","33":"/annotations/basic-auth-command.html#special-columns","34":"/annotations/basic-auth-command.html#authentication-success","35":"/annotations/basic-auth-command.html#authentication-failure","36":"/annotations/basic-auth-command.html#examples","37":"/annotations/basic-auth-command.html#basic-challenge-command","38":"/annotations/basic-auth-command.html#challenge-command-with-pre-validated-password","39":"/annotations/basic-auth-command.html#challenge-command-that-denies-access","40":"/annotations/basic-auth-command.html#challenge-command-without-annotation-credentials","41":"/annotations/basic-auth-command.html#behavior","42":"/annotations/basic-auth-command.html#related","43":"/annotations/basic-auth-command.html#related-annotations","44":"/annotations/basic-auth-realm.html#basic-auth-realm","45":"/annotations/basic-auth-realm.html#syntax","46":"/annotations/basic-auth-realm.html#default-value","47":"/annotations/basic-auth-realm.html#examples","48":"/annotations/basic-auth-realm.html#set-realm-name","49":"/annotations/basic-auth-realm.html#alternative-keyword","50":"/annotations/basic-auth-realm.html#with-challenge-command","51":"/annotations/basic-auth-realm.html#behavior","52":"/annotations/basic-auth-realm.html#realm-resolution-order","53":"/annotations/basic-auth-realm.html#related","54":"/annotations/basic-auth-realm.html#related-annotations","55":"/annotations/basic-auth.html#basic-auth","56":"/annotations/basic-auth.html#syntax","57":"/annotations/basic-auth.html#generating-password-hashes","58":"/annotations/basic-auth.html#generating-authorization-headers","59":"/annotations/basic-auth.html#examples","60":"/annotations/basic-auth.html#basic-auth-without-credentials-requires-challenge-command","61":"/annotations/basic-auth.html#basic-auth-with-credentials","62":"/annotations/basic-auth.html#multiple-users","63":"/annotations/basic-auth.html#behavior","64":"/annotations/basic-auth.html#ssl-requirements","65":"/annotations/basic-auth.html#related","66":"/annotations/basic-auth.html#related-annotations","67":"/annotations/basic-auth.html#see-also","68":"/annotations/body-parameter-name.html#body-parameter-name","69":"/annotations/body-parameter-name.html#syntax","70":"/annotations/body-parameter-name.html#examples","71":"/annotations/body-parameter-name.html#custom-body-parameter","72":"/annotations/body-parameter-name.html#json-body-parameter","73":"/annotations/body-parameter-name.html#behavior","74":"/annotations/body-parameter-name.html#matching-rules","75":"/annotations/body-parameter-name.html#redirecting-an-http-custom-type-field-into-a-proxy-body","76":"/annotations/body-parameter-name.html#related","77":"/annotations/body-parameter-name.html#related-annotations","78":"/annotations/buffer-rows.html#buffer-rows","79":"/annotations/buffer-rows.html#syntax","80":"/annotations/buffer-rows.html#default-value","81":"/annotations/buffer-rows.html#special-values","82":"/annotations/buffer-rows.html#examples","83":"/annotations/buffer-rows.html#disable-buffering","84":"/annotations/buffer-rows.html#buffer-entire-response","85":"/annotations/buffer-rows.html#large-buffer-for-throughput","86":"/annotations/buffer-rows.html#small-buffer-for-memory-efficiency","87":"/annotations/buffer-rows.html#behavior","88":"/annotations/buffer-rows.html#performance-considerations","89":"/annotations/buffer-rows.html#related","90":"/annotations/buffer-rows.html#related-annotations","91":"/annotations/cache-expires-in.html#cache-expires-in","92":"/annotations/cache-expires-in.html#syntax","93":"/annotations/cache-expires-in.html#examples","94":"/annotations/cache-expires-in.html#short-cache-10-seconds","95":"/annotations/cache-expires-in.html#medium-cache-5-minutes","96":"/annotations/cache-expires-in.html#long-cache-1-hour","97":"/annotations/cache-expires-in.html#daily-cache","98":"/annotations/cache-expires-in.html#related","99":"/annotations/cache-expires-in.html#related-annotations","100":"/annotations/cache-expires-in.html#see-also","101":"/annotations/cache-profile.html#cache-profile","102":"/annotations/cache-profile.html#syntax","103":"/annotations/cache-profile.html#examples","104":"/annotations/cache-profile.html#basic-usage","105":"/annotations/cache-profile.html#combined-with-cached-cache-expires","106":"/annotations/cache-profile.html#multi-tenant-search-path-pattern","107":"/annotations/cache-profile.html#tiered-ttl-by-user-role","108":"/annotations/cache-profile.html#behavior","109":"/annotations/cache-profile.html#validation","110":"/annotations/cache-profile.html#related","111":"/annotations/cache-profile.html#see-also","112":"/annotations/cached.html#cached","113":"/annotations/cached.html#syntax","114":"/annotations/cached.html#examples","115":"/annotations/cached.html#simple-caching","116":"/annotations/cached.html#cache-key-by-parameter","117":"/annotations/cached.html#multiple-cache-key-parameters","118":"/annotations/cached.html#with-cache-expiration","119":"/annotations/cached.html#caching-set-returning-functions","120":"/annotations/cached.html#behavior","121":"/annotations/cached.html#cache-configuration","122":"/annotations/cached.html#related","123":"/annotations/cached.html#related-annotations","124":"/annotations/cached.html#see-also","125":"/annotations/column-names.html#column-names","126":"/annotations/column-names.html#syntax","127":"/annotations/column-names.html#examples","128":"/annotations/column-names.html#csv-with-headers","129":"/annotations/column-names.html#tsv-with-headers","130":"/annotations/column-names.html#related","131":"/annotations/column-names.html#related-annotations","132":"/annotations/command-timeout.html#command-timeout","133":"/annotations/command-timeout.html#syntax","134":"/annotations/command-timeout.html#default-value","135":"/annotations/command-timeout.html#examples","136":"/annotations/command-timeout.html#short-timeout","137":"/annotations/command-timeout.html#long-running-query","138":"/annotations/command-timeout.html#using-seconds-format","139":"/annotations/command-timeout.html#behavior","140":"/annotations/command-timeout.html#timeout-response","141":"/annotations/command-timeout.html#related","142":"/annotations/command-timeout.html#related-annotations","143":"/annotations/command-timeout.html#see-also","144":"/annotations/connection.html#connection","145":"/annotations/connection.html#syntax","146":"/annotations/connection.html#examples","147":"/annotations/connection.html#use-named-connection","148":"/annotations/connection.html#reporting-database","149":"/annotations/connection.html#read-replica","150":"/annotations/connection.html#behavior","151":"/annotations/connection.html#related","152":"/annotations/connection.html#related-annotations","153":"/annotations/connection.html#see-also","154":"/annotations/custom-parameters.html#custom-parameters","155":"/annotations/custom-parameters.html#syntax","156":"/annotations/custom-parameters.html#dynamic-parameter-values","157":"/annotations/custom-parameters.html#example","158":"/annotations/custom-parameters.html#built-in-parameters","159":"/annotations/custom-parameters.html#general","160":"/annotations/custom-parameters.html#upload","161":"/annotations/custom-parameters.html#table-format","162":"/annotations/custom-parameters.html#server-sent-events","163":"/annotations/custom-parameters.html#typescript-client","164":"/annotations/custom-parameters.html#related","165":"/annotations/define-param.html#define-param","166":"/annotations/define-param.html#syntax","167":"/annotations/define-param.html#custom-parameter-placeholders","168":"/annotations/define-param.html#claim-mapping","169":"/annotations/define-param.html#default-type","170":"/annotations/define-param.html#related","171":"/annotations/disabled.html#disabled","172":"/annotations/disabled.html#keywords","173":"/annotations/disabled.html#syntax","174":"/annotations/disabled.html#example","175":"/annotations/disabled.html#tag-conditional-form","176":"/annotations/disabled.html#related","177":"/annotations/enabled.html#enabled","178":"/annotations/enabled.html#keywords","179":"/annotations/enabled.html#syntax","180":"/annotations/enabled.html#example-disable-by-default-enable-for-immutable-only","181":"/annotations/enabled.html#related","182":"/annotations/encrypt-decrypt.html#encrypt-decrypt","183":"/annotations/encrypt-decrypt.html#encrypt-parameters","184":"/annotations/encrypt-decrypt.html#syntax","185":"/annotations/encrypt-decrypt.html#decrypt-result-columns","186":"/annotations/encrypt-decrypt.html#syntax-1","187":"/annotations/encrypt-decrypt.html#full-roundtrip-example","188":"/annotations/encrypt-decrypt.html#behavior","189":"/annotations/encrypt-decrypt.html#related","190":"/annotations/encrypt-decrypt.html#related-annotations","191":"/annotations/encrypt-decrypt.html#see-also","192":"/annotations/error-code-policy.html#error-code-policy","193":"/annotations/error-code-policy.html#syntax","194":"/annotations/error-code-policy.html#examples","195":"/annotations/error-code-policy.html#named-policy","196":"/annotations/error-code-policy.html#short-form","197":"/annotations/error-code-policy.html#behavior","198":"/annotations/error-code-policy.html#related","199":"/annotations/error-code-policy.html#related-annotations","200":"/annotations/error-code-policy.html#see-also","201":"/annotations/http-type.html#http-custom-types","202":"/annotations/http-type.html#overview","203":"/annotations/http-type.html#syntax","204":"/annotations/http-type.html#supported-methods","205":"/annotations/http-type.html#examples","206":"/annotations/http-type.html#basic-get-request","207":"/annotations/http-type.html#get-with-headers-and-placeholders","208":"/annotations/http-type.html#post-with-request-body","209":"/annotations/http-type.html#multiple-api-calls","210":"/annotations/http-type.html#response-fields","211":"/annotations/http-type.html#timeout-directives","212":"/annotations/http-type.html#placeholder-substitution","213":"/annotations/http-type.html#retry-logic","214":"/annotations/http-type.html#response-caching","215":"/annotations/http-type.html#resolved-parameter-expressions","216":"/annotations/http-type.html#behavior","217":"/annotations/http-type.html#related","218":"/annotations/http-type.html#related-annotations","219":"/annotations/http-type.html#see-also","220":"/annotations/#annotations-reference","221":"/annotations/#how-to-use-this-reference","222":"/annotations/#annotation-categories","223":"/annotations/#http-routing","224":"/annotations/#authorization","225":"/annotations/#basic-authentication","226":"/annotations/#request-configuration","227":"/annotations/#response-configuration","228":"/annotations/#table-format-output","229":"/annotations/#raw-output-mode","230":"/annotations/#caching","231":"/annotations/#performance","232":"/annotations/#format-references","233":"/annotations/#server-sent-events","234":"/annotations/#upload","235":"/annotations/#policies","236":"/annotations/#context-security","237":"/annotations/#parameter-annotations","238":"/annotations/#sql-file-annotations","239":"/annotations/#test-file-annotations","240":"/annotations/#custom","241":"/annotations/http.html#http","242":"/annotations/http.html#keywords","243":"/annotations/http.html#syntax","244":"/annotations/http.html#commentsmode-requirement","245":"/annotations/http.html#default-behavior","246":"/annotations/http.html#examples","247":"/annotations/http.html#basic-endpoint","248":"/annotations/http.html#explicit-http-method","249":"/annotations/http.html#custom-path","250":"/annotations/http.html#method-and-custom-path","251":"/annotations/http.html#multi-line-with-documentation","252":"/annotations/http.html#unrecognized-method-becomes-path","253":"/annotations/http.html#path-parameters","254":"/annotations/http.html#single-path-parameter","255":"/annotations/http.html#multiple-path-parameters","256":"/annotations/http.html#path-parameters-with-query-string","257":"/annotations/http.html#path-parameters-with-json-body","258":"/annotations/http.html#path-parameter-key-features","259":"/annotations/http.html#related","260":"/annotations/http.html#related-annotations","261":"/annotations/internal.html#internal","262":"/annotations/internal.html#syntax","263":"/annotations/internal.html#example-internal-helper-with-proxy","264":"/annotations/internal.html#example-internal-helper-with-http-client-types","265":"/annotations/internal.html#sql-file-endpoints","266":"/annotations/internal.html#related","267":"/annotations/interval-format.html#interval-format-reference","268":"/annotations/interval-format.html#syntax","269":"/annotations/interval-format.html#supported-units","270":"/annotations/interval-format.html#examples","271":"/annotations/interval-format.html#short-form-recommended","272":"/annotations/interval-format.html#long-form","273":"/annotations/interval-format.html#with-space","274":"/annotations/interval-format.html#decimal-values","275":"/annotations/interval-format.html#no-unit-defaults-to-seconds","276":"/annotations/interval-format.html#usage-in-annotations","277":"/annotations/interval-format.html#timeout-command-timeout","278":"/annotations/interval-format.html#cache-expires-in","279":"/annotations/interval-format.html#configuration-values","280":"/annotations/interval-format.html#invalid-formats","281":"/annotations/interval-format.html#related","282":"/annotations/logout.html#logout","283":"/annotations/logout.html#syntax","284":"/annotations/logout.html#logout-endpoint-behavior","285":"/annotations/logout.html#void-functions","286":"/annotations/logout.html#functions-with-return-values","287":"/annotations/logout.html#examples","288":"/annotations/logout.html#basic-logout-void","289":"/annotations/logout.html#logout-from-specific-scheme","290":"/annotations/logout.html#logout-from-multiple-schemes","291":"/annotations/logout.html#conditional-scheme-logout","292":"/annotations/logout.html#logout-with-cleanup","293":"/annotations/logout.html#related","294":"/annotations/logout.html#related-annotations","295":"/annotations/logout.html#see-also","296":"/annotations/login.html#login","297":"/annotations/login.html#how-a-login-endpoint-works","298":"/annotations/login.html#minimal-example","299":"/annotations/login.html#the-return-record","300":"/annotations/login.html#special-columns","301":"/annotations/login.html#status-column","302":"/annotations/login.html#scheme-column","303":"/annotations/login.html#body-column","304":"/annotations/login.html#claims-how-columns-become-the-user","305":"/annotations/login.html#identity-claims","306":"/annotations/login.html#using-claims-in-your-other-endpoints","307":"/annotations/login.html#password-verification","308":"/annotations/login.html#option-a-—-verify-in-sql-no-hash-column","309":"/annotations/login.html#option-b-—-built-in-hasher-return-a-hash-column","310":"/annotations/login.html#verification-callbacks","311":"/annotations/login.html#more-examples","312":"/annotations/login.html#multiple-schemes-from-one-login","313":"/annotations/login.html#explicit-status-code-and-message","314":"/annotations/login.html#role-protected-endpoint-after-login","315":"/annotations/login.html#related","316":"/annotations/login.html#related-annotations","317":"/annotations/mcp.html#mcp","318":"/annotations/mcp.html#syntax","319":"/annotations/mcp.html#description-precedence","320":"/annotations/mcp.html#mcp-only-tools-no-http-route","321":"/annotations/mcp.html#examples","322":"/annotations/mcp.html#expose-a-routine-as-a-tool-http-and-mcp","323":"/annotations/mcp.html#description-from-comment-prose","324":"/annotations/mcp.html#explicit-description-with-a-private-note-that-stays-out-of-it","325":"/annotations/mcp.html#override-the-tool-name","326":"/annotations/mcp.html#recognized-keywords","327":"/annotations/mcp.html#related","328":"/annotations/nested.html#nested","329":"/annotations/nested.html#syntax","330":"/annotations/nested.html#default-behavior-vs-nested","331":"/annotations/nested.html#examples","332":"/annotations/nested.html#basic-usage","333":"/annotations/nested.html#multiple-composite-columns","334":"/annotations/nested.html#deep-nested-composite-types","335":"/annotations/nested.html#arrays-of-composite-types","336":"/annotations/nested.html#global-configuration","337":"/annotations/nested.html#behavior","338":"/annotations/nested.html#related","339":"/annotations/new-line.html#new-line","340":"/annotations/new-line.html#syntax","341":"/annotations/new-line.html#examples","342":"/annotations/new-line.html#unix-line-endings","343":"/annotations/new-line.html#windows-line-endings","344":"/annotations/new-line.html#custom-row-separator","345":"/annotations/new-line.html#related","346":"/annotations/new-line.html#related-annotations","347":"/annotations/openapi.html#openapi","348":"/annotations/openapi.html#syntax","349":"/annotations/openapi.html#how-it-composes-with-config-level-filters","350":"/annotations/openapi.html#examples","351":"/annotations/openapi.html#hide-an-internal-maintenance-routine","352":"/annotations/openapi.html#group-routines-under-a-custom-tag","353":"/annotations/openapi.html#multiple-tags","354":"/annotations/openapi.html#hide-alongside-a-config-filter","355":"/annotations/openapi.html#recognized-keywords","356":"/annotations/openapi.html#related","357":"/annotations/parameter-hash.html#parameter-hash","358":"/annotations/parameter-hash.html#syntax","359":"/annotations/parameter-hash.html#examples","360":"/annotations/parameter-hash.html#simple-user-registration","361":"/annotations/parameter-hash.html#user-registration-with-response","362":"/annotations/parameter-hash.html#behavior","363":"/annotations/parameter-hash.html#built-in-password-hasher","364":"/annotations/parameter-hash.html#complete-registration-and-login-flow","365":"/annotations/parameter-hash.html#registration-function","366":"/annotations/parameter-hash.html#login-function","367":"/annotations/parameter-hash.html#related","368":"/annotations/parameter-hash.html#related-annotations","369":"/annotations/param.html#param","370":"/annotations/param.html#syntax","371":"/annotations/param.html#examples","372":"/annotations/param.html#rename-positional-parameters-sql-files","373":"/annotations/param.html#rename-with-type-override","374":"/annotations/param.html#rename-function-parameters","375":"/annotations/param.html#is-style-syntax","376":"/annotations/param.html#claim-mapping-with-renamed-parameters","377":"/annotations/param.html#default-values-sql-file-parameters","378":"/annotations/param.html#syntax-1","379":"/annotations/param.html#value-parsing-rules-sql-conventions","380":"/annotations/param.html#example","381":"/annotations/param.html#effects-on-generated-output","382":"/annotations/param.html#rename-validation","383":"/annotations/param.html#composite-type-parameters-sql-files","384":"/annotations/param.html#behavior","385":"/annotations/param.html#related","386":"/annotations/parameter-substitution.html#parameter-value-substitution","387":"/annotations/parameter-substitution.html#where-it-works","388":"/annotations/parameter-substitution.html#how-a-placeholder-is-resolved","389":"/annotations/parameter-substitution.html#brace-handling","390":"/annotations/parameter-substitution.html#environment-variables","391":"/annotations/parameter-substitution.html#examples","392":"/annotations/parameter-substitution.html#dynamic-file-download","393":"/annotations/parameter-substitution.html#upload-destination-from-a-parameter","394":"/annotations/parameter-substitution.html#outbound-http-call-shaped-by-parameters","395":"/annotations/parameter-substitution.html#not-to-be-confused-with","396":"/annotations/parameter-substitution.html#related","397":"/annotations/path.html#path","398":"/annotations/path.html#keywords","399":"/annotations/path.html#syntax","400":"/annotations/path.html#examples","401":"/annotations/path.html#custom-path","402":"/annotations/path.html#path-with-http-method","403":"/annotations/path.html#versioned-api","404":"/annotations/path.html#path-parameters","405":"/annotations/path.html#basic-path-parameter","406":"/annotations/path.html#nested-path-parameters","407":"/annotations/path.html#parameter-name-matching","408":"/annotations/path.html#optional-path-parameters","409":"/annotations/path.html#behavior","410":"/annotations/path.html#related","411":"/annotations/path.html#related-annotations","412":"/annotations/proxy-out.html#proxy-out","413":"/annotations/proxy-out.html#syntax","414":"/annotations/proxy-out.html#description","415":"/annotations/proxy-out.html#basic-usage","416":"/annotations/proxy-out.html#proxy-annotations","417":"/annotations/proxy-out.html#basic-proxy-out-with-default-host","418":"/annotations/proxy-out.html#proxy-out-with-custom-host","419":"/annotations/proxy-out.html#proxy-out-with-http-method-override","420":"/annotations/proxy-out.html#combined-method-and-host","421":"/annotations/proxy-out.html#self-referencing-proxy-out-relative-path","422":"/annotations/proxy-out.html#url-resolution","423":"/annotations/proxy-out.html#path-and-query-string-forwarding","424":"/annotations/proxy-out.html#error-handling","425":"/annotations/proxy-out.html#examples","426":"/annotations/proxy-out.html#pdf-rendering-pipeline","427":"/annotations/proxy-out.html#ml-inference","428":"/annotations/proxy-out.html#email-sending","429":"/annotations/proxy-out.html#typescript-client","430":"/annotations/proxy-out.html#configuration","431":"/annotations/proxy-out.html#related","432":"/annotations/proxy-out.html#see-also","433":"/annotations/proxy.html#proxy","434":"/annotations/proxy.html#syntax","435":"/annotations/proxy.html#description","436":"/annotations/proxy.html#how-the-target-url-is-built","437":"/annotations/proxy.html#basic-usage","438":"/annotations/proxy.html#passthrough-mode","439":"/annotations/proxy.html#transform-mode","440":"/annotations/proxy.html#proxy-annotations","441":"/annotations/proxy.html#basic-proxy-with-default-host","442":"/annotations/proxy.html#proxy-with-custom-host","443":"/annotations/proxy.html#proxy-with-custom-http-method","444":"/annotations/proxy.html#combined-method-and-host","445":"/annotations/proxy.html#self-referencing-proxy-relative-path","446":"/annotations/proxy.html#url-resolution","447":"/annotations/proxy.html#response-parameters","448":"/annotations/proxy.html#how-parameters-are-mapped","449":"/annotations/proxy.html#custom-parameter-names","450":"/annotations/proxy.html#examples","451":"/annotations/proxy.html#api-gateway-pattern","452":"/annotations/proxy.html#data-enrichment","453":"/annotations/proxy.html#authenticated-proxy-with-user-context","454":"/annotations/proxy.html#proxy-with-user-parameters","455":"/annotations/proxy.html#configuration","456":"/annotations/proxy.html#related","457":"/annotations/proxy.html#see-also","458":"/annotations/query-string-null-handling.html#query-string-null-handling","459":"/annotations/query-string-null-handling.html#syntax","460":"/annotations/query-string-null-handling.html#values","461":"/annotations/query-string-null-handling.html#behavior-explained","462":"/annotations/query-string-null-handling.html#ignore-mode-default","463":"/annotations/query-string-null-handling.html#emptystring-mode","464":"/annotations/query-string-null-handling.html#nullliteral-mode","465":"/annotations/query-string-null-handling.html#examples","466":"/annotations/query-string-null-handling.html#using-empty-string-for-null","467":"/annotations/query-string-null-handling.html#using-null-string-for-null","468":"/annotations/query-string-null-handling.html#default-behavior-no-special-handling","469":"/annotations/query-string-null-handling.html#path-parameters","470":"/annotations/query-string-null-handling.html#configuration-default","471":"/annotations/query-string-null-handling.html#related","472":"/annotations/query-string-null-handling.html#related-annotations","473":"/annotations/rate-limiter-policy.html#rate-limiter-policy","474":"/annotations/rate-limiter-policy.html#syntax","475":"/annotations/rate-limiter-policy.html#examples","476":"/annotations/rate-limiter-policy.html#fixed-window-policy","477":"/annotations/rate-limiter-policy.html#token-bucket-policy","478":"/annotations/rate-limiter-policy.html#combined-with-authorization","479":"/annotations/rate-limiter-policy.html#per-user-rate-limiting","480":"/annotations/rate-limiter-policy.html#behavior","481":"/annotations/rate-limiter-policy.html#related","482":"/annotations/rate-limiter-policy.html#related-annotations","483":"/annotations/rate-limiter-policy.html#see-also","484":"/annotations/raw.html#raw","485":"/annotations/raw.html#syntax","486":"/annotations/raw.html#examples","487":"/annotations/raw.html#basic-raw-output","488":"/annotations/raw.html#raw-with-multiple-columns","489":"/annotations/raw.html#csv-export","490":"/annotations/raw.html#tab-separated-values","491":"/annotations/raw.html#pipe-delimited-format","492":"/annotations/raw.html#download-as-file","493":"/annotations/raw.html#dynamic-csv-download","494":"/annotations/raw.html#behavior","495":"/annotations/raw.html#related","496":"/annotations/raw.html#related-annotations","497":"/annotations/request-headers-mode.html#request-headers-mode","498":"/annotations/request-headers-mode.html#syntax","499":"/annotations/request-headers-mode.html#values","500":"/annotations/request-headers-mode.html#examples","501":"/annotations/request-headers-mode.html#ignore-headers","502":"/annotations/request-headers-mode.html#pass-as-context-variable","503":"/annotations/request-headers-mode.html#pass-as-parameter","504":"/annotations/request-headers-mode.html#behavior","505":"/annotations/request-headers-mode.html#related","506":"/annotations/request-headers-mode.html#related-annotations","507":"/annotations/request-headers-parameter-name.html#request-headers-parameter-name","508":"/annotations/request-headers-parameter-name.html#syntax","509":"/annotations/request-headers-parameter-name.html#examples","510":"/annotations/request-headers-parameter-name.html#custom-parameter-name","511":"/annotations/request-headers-parameter-name.html#default-parameter-name","512":"/annotations/request-headers-parameter-name.html#behavior","513":"/annotations/request-headers-parameter-name.html#related","514":"/annotations/request-headers-parameter-name.html#related-annotations","515":"/annotations/request-param-type.html#request-param-type","516":"/annotations/request-param-type.html#syntax","517":"/annotations/request-param-type.html#values","518":"/annotations/request-param-type.html#default-behavior","519":"/annotations/request-param-type.html#examples","520":"/annotations/request-param-type.html#force-query-string-parameters","521":"/annotations/request-param-type.html#force-json-body-parameters","522":"/annotations/request-param-type.html#short-form-keywords","523":"/annotations/request-param-type.html#post-with-query-string","524":"/annotations/request-param-type.html#behavior","525":"/annotations/request-param-type.html#related","526":"/annotations/request-param-type.html#related-annotations","527":"/annotations/resolved-parameters.html#resolved-parameters","528":"/annotations/resolved-parameters.html#syntax","529":"/annotations/resolved-parameters.html#behavior","530":"/annotations/resolved-parameters.html#examples","531":"/annotations/resolved-parameters.html#inject-a-db-stored-api-token-into-an-outbound-call","532":"/annotations/resolved-parameters.html#multiple-resolved-parameters","533":"/annotations/resolved-parameters.html#resolved-value-in-url-header-and-body","534":"/annotations/resolved-parameters.html#how-it-compares-to-the-other-name-sources","535":"/annotations/resolved-parameters.html#related","536":"/annotations/response-headers.html#response-headers","537":"/annotations/response-headers.html#syntax","538":"/annotations/response-headers.html#examples","539":"/annotations/response-headers.html#set-content-type","540":"/annotations/response-headers.html#multiple-headers","541":"/annotations/response-headers.html#multi-value-headers","542":"/annotations/response-headers.html#cache-control","543":"/annotations/response-headers.html#combined-with-other-annotations","544":"/annotations/response-headers.html#dynamic-headers-from-parameters","545":"/annotations/response-headers.html#cors-headers","546":"/annotations/response-headers.html#common-headers","547":"/annotations/response-headers.html#related","548":"/annotations/response-headers.html#related-annotations","549":"/annotations/response-null-handling.html#response-null-handling","550":"/annotations/response-null-handling.html#syntax","551":"/annotations/response-null-handling.html#values","552":"/annotations/response-null-handling.html#examples","553":"/annotations/response-null-handling.html#return-empty-string-for-null","554":"/annotations/response-null-handling.html#return-204-for-null","555":"/annotations/response-null-handling.html#return-json-null","556":"/annotations/response-null-handling.html#configuration-default","557":"/annotations/response-null-handling.html#related","558":"/annotations/response-null-handling.html#related-annotations","559":"/annotations/result-name.html#result-name","560":"/annotations/result-name.html#syntax","561":"/annotations/result-name.html#examples","562":"/annotations/result-name.html#before-statement-separate-line","563":"/annotations/result-name.html#inline-after-semicolon-same-line","564":"/annotations/result-name.html#is-style-syntax","565":"/annotations/result-name.html#naming-some-results","566":"/annotations/result-name.html#naming-all-results","567":"/annotations/result-name.html#behavior","568":"/annotations/result-name.html#related","569":"/annotations/retry-strategy.html#retry-strategy","570":"/annotations/retry-strategy.html#syntax","571":"/annotations/retry-strategy.html#examples","572":"/annotations/retry-strategy.html#use-default-strategy","573":"/annotations/retry-strategy.html#use-named-strategy","574":"/annotations/retry-strategy.html#combined-with-timeout","575":"/annotations/retry-strategy.html#behavior","576":"/annotations/retry-strategy.html#common-retry-scenarios","577":"/annotations/retry-strategy.html#configuration-example","578":"/annotations/retry-strategy.html#related","579":"/annotations/retry-strategy.html#related-annotations","580":"/annotations/retry-strategy.html#see-also","581":"/annotations/returns.html#returns","582":"/annotations/returns.html#syntax","583":"/annotations/returns.html#when-to-use","584":"/annotations/returns.html#example","585":"/annotations/returns.html#scalar-type","586":"/annotations/returns.html#void-statements","587":"/annotations/returns.html#behavior","588":"/annotations/returns.html#related","589":"/annotations/security-sensitive.html#security-sensitive","590":"/annotations/security-sensitive.html#syntax","591":"/annotations/security-sensitive.html#examples","592":"/annotations/security-sensitive.html#password-change-endpoint","593":"/annotations/security-sensitive.html#login-endpoint","594":"/annotations/security-sensitive.html#payment-processing","595":"/annotations/security-sensitive.html#behavior","596":"/annotations/security-sensitive.html#related","597":"/annotations/security-sensitive.html#related-annotations","598":"/annotations/separator.html#separator","599":"/annotations/separator.html#syntax","600":"/annotations/separator.html#examples","601":"/annotations/separator.html#comma-separator-csv","602":"/annotations/separator.html#tab-separator-tsv","603":"/annotations/separator.html#pipe-separator","604":"/annotations/separator.html#custom-separator","605":"/annotations/separator.html#related","606":"/annotations/separator.html#related-annotations","607":"/annotations/single.html#single","608":"/annotations/single.html#syntax","609":"/annotations/single.html#default-behavior-vs-single","610":"/annotations/single.html#examples","611":"/annotations/single.html#postgresql-function","612":"/annotations/single.html#sql-file","613":"/annotations/single.html#single-unnamed-column","614":"/annotations/single.html#multi-command-files-positional","615":"/annotations/single.html#behavior","616":"/annotations/single.html#empty-results","617":"/annotations/single.html#related","618":"/annotations/skip.html#skip","619":"/annotations/skip.html#syntax","620":"/annotations/skip.html#examples","621":"/annotations/skip.html#skipping-a-do-block","622":"/annotations/skip.html#skipping-transaction-control","623":"/annotations/skip.html#inline-placement","624":"/annotations/skip.html#skipnonquerycommands-setting","625":"/annotations/skip.html#behavior","626":"/annotations/skip.html#related","627":"/annotations/sse-events-level.html#sse-events-level","628":"/annotations/sse-events-level.html#syntax","629":"/annotations/sse-events-level.html#values","630":"/annotations/sse-events-level.html#examples","631":"/annotations/sse-events-level.html#info-level-all-messages","632":"/annotations/sse-events-level.html#notice-level","633":"/annotations/sse-events-level.html#warning-level-only","634":"/annotations/sse-events-level.html#related","635":"/annotations/sse-events-level.html#related-annotations","636":"/annotations/sse-events-scope.html#sse-events-scope","637":"/annotations/sse-events-scope.html#syntax","638":"/annotations/sse-events-scope.html#values","639":"/annotations/sse-events-scope.html#request-correlation","640":"/annotations/sse-events-scope.html#examples","641":"/annotations/sse-events-scope.html#matching-scope","642":"/annotations/sse-events-scope.html#authorize-scope-with-roles","643":"/annotations/sse-events-scope.html#authorize-with-user-names-or-ids","644":"/annotations/sse-events-scope.html#multiple-values","645":"/annotations/sse-events-scope.html#broadcast-to-all","646":"/annotations/sse-events-scope.html#dynamic-scope-via-raise-hint","647":"/annotations/sse-events-scope.html#related","648":"/annotations/sse-events-scope.html#related-annotations","649":"/annotations/sse.html#sse","650":"/annotations/sse.html#how-events-flow","651":"/annotations/sse.html#syntax","652":"/annotations/sse.html#sse-path-construction","653":"/annotations/sse.html#when-path-is-omitted","654":"/annotations/sse.html#when-custom-path-is-specified","655":"/annotations/sse.html#default-level","656":"/annotations/sse.html#level-filtering","657":"/annotations/sse.html#examples","658":"/annotations/sse.html#basic-sse-endpoint-function","659":"/annotations/sse.html#basic-sse-endpoint-sql-file","660":"/annotations/sse.html#with-notice-level","661":"/annotations/sse.html#warning-level-only","662":"/annotations/sse.html#using-default-path-level-name","663":"/annotations/sse.html#cross-procedure-pattern","664":"/annotations/sse.html#function-form","665":"/annotations/sse.html#sql-file-form","666":"/annotations/sse.html#what-the-client-does","667":"/annotations/sse.html#behavior","668":"/annotations/sse.html#on-the-publisher-side","669":"/annotations/sse.html#on-the-subscriber-side","670":"/annotations/sse.html#related","671":"/annotations/sse.html#related-annotations","672":"/annotations/sse.html#see-also","673":"/annotations/table-format.html#table-format","674":"/annotations/table-format.html#syntax","675":"/annotations/table-format.html#parameters","676":"/annotations/table-format.html#examples","677":"/annotations/table-format.html#static-html-table","678":"/annotations/table-format.html#static-excel-download","679":"/annotations/table-format.html#dynamic-format-selection","680":"/annotations/table-format.html#related","681":"/annotations/table-format.html#related-annotations","682":"/annotations/table-format.html#see-also","683":"/annotations/tags.html#tags","684":"/annotations/tags.html#available-tags","685":"/annotations/tags.html#syntax","686":"/annotations/tags.html#example-cache-only-when-immutable","687":"/annotations/tags.html#behavior","688":"/annotations/tags.html#related","689":"/annotations/test-claim.html#test-claim","690":"/annotations/test-claim.html#semantics","691":"/annotations/test-claim.html#why-not-call-the-login-endpoint","692":"/annotations/test-claim.html#related","693":"/annotations/test-connection.html#test-connection","694":"/annotations/test-connection.html#syntax","695":"/annotations/test-connection.html#example","696":"/annotations/test-connection.html#notes","697":"/annotations/test-connection.html#related","698":"/annotations/test-response.html#test-response","699":"/annotations/test-response.html#default-naming","700":"/annotations/test-response.html#syntax","701":"/annotations/test-response.html#notes","702":"/annotations/test-response.html#related","703":"/annotations/test-setup.html#test-setup","704":"/annotations/test-setup.html#syntax","705":"/annotations/test-setup.html#example","706":"/annotations/test-setup.html#header-semantics","707":"/annotations/test-setup.html#related","708":"/annotations/test-tag.html#test-tag","709":"/annotations/test-tag.html#syntax","710":"/annotations/test-tag.html#example","711":"/annotations/test-tag.html#tags-via-a-shared-profile","712":"/annotations/test-tag.html#related","713":"/annotations/test-teardown.html#test-teardown","714":"/annotations/test-teardown.html#syntax","715":"/annotations/test-teardown.html#example","716":"/annotations/test-teardown.html#ordering","717":"/annotations/test-teardown.html#related","718":"/annotations/tsclient.html#tsclient","719":"/annotations/tsclient.html#syntax","720":"/annotations/tsclient.html#parameters","721":"/annotations/tsclient.html#examples","722":"/annotations/tsclient.html#disable-generation","723":"/annotations/tsclient.html#url-only-export","724":"/annotations/tsclient.html#custom-module","725":"/annotations/tsclient.html#related","726":"/annotations/tsclient.html#related-annotations","727":"/annotations/tsclient.html#see-also","728":"/annotations/user-context.html#user-context","729":"/annotations/user-context.html#keywords","730":"/annotations/user-context.html#syntax","731":"/annotations/user-context.html#examples","732":"/annotations/user-context.html#enable-user-context","733":"/annotations/user-context.html#access-user-claims-in-function","734":"/annotations/user-context.html#access-all-claims-as-json","735":"/annotations/user-context.html#access-client-ip-address","736":"/annotations/user-context.html#combined-with-request-headers","737":"/annotations/user-context.html#behavior","738":"/annotations/user-context.html#default-context-keys","739":"/annotations/user-context.html#additional-context-keys-when-configured","740":"/annotations/user-context.html#related","741":"/annotations/user-context.html#related-annotations","742":"/annotations/user-context.html#see-also","743":"/annotations/upload.html#upload","744":"/annotations/upload.html#keywords","745":"/annotations/upload.html#syntax","746":"/annotations/upload.html#handler-types","747":"/annotations/upload.html#shared-annotation-options","748":"/annotations/upload.html#upload-metadata","749":"/annotations/upload.html#large-object-handler","750":"/annotations/upload.html#basic-example","751":"/annotations/upload.html#with-custom-oid-parameter","752":"/annotations/upload.html#context-metadata","753":"/annotations/upload.html#large-object-annotation-options","754":"/annotations/upload.html#file-system-handler","755":"/annotations/upload.html#basic-example-1","756":"/annotations/upload.html#with-custom-parameters","757":"/annotations/upload.html#file-system-annotation-options","758":"/annotations/upload.html#mime-type-filtering","759":"/annotations/upload.html#csv-handler","760":"/annotations/upload.html#row-command-function-signature","761":"/annotations/upload.html#row-command-parameters","762":"/annotations/upload.html#row-metadata-structure-4","763":"/annotations/upload.html#upload-function-metadata-meta-parameter","764":"/annotations/upload.html#basic-example-2","765":"/annotations/upload.html#accessing-user-claims-in-row-command","766":"/annotations/upload.html#using-user-context-variables","767":"/annotations/upload.html#custom-delimiters","768":"/annotations/upload.html#csv-annotation-options","769":"/annotations/upload.html#excel-handler","770":"/annotations/upload.html#row-command-function-signature-1","771":"/annotations/upload.html#row-command-parameters-1","772":"/annotations/upload.html#row-metadata-structure-4-1","773":"/annotations/upload.html#upload-function-metadata-meta-parameter-1","774":"/annotations/upload.html#basic-example-3","775":"/annotations/upload.html#row-data-as-json","776":"/annotations/upload.html#excel-annotation-options","777":"/annotations/upload.html#error-handling-and-rollback","778":"/annotations/upload.html#multiple-file-uploads","779":"/annotations/upload.html#behavior","780":"/annotations/upload.html#custom-parameters","781":"/annotations/upload.html#shared-parameters","782":"/annotations/upload.html#large-object-upload-handler","783":"/annotations/upload.html#example","784":"/annotations/upload.html#file-system-upload-handler","785":"/annotations/upload.html#example-1","786":"/annotations/upload.html#csv-upload-handler","787":"/annotations/upload.html#example-2","788":"/annotations/upload.html#excel-upload-handler","789":"/annotations/upload.html#example-3","790":"/annotations/upload.html#related","791":"/annotations/upload.html#blog-posts","792":"/annotations/upload.html#related-annotations","793":"/annotations/upload.html#see-also","794":"/annotations/user-parameters.html#user-parameters","795":"/annotations/user-parameters.html#syntax","796":"/annotations/user-parameters.html#examples","797":"/annotations/user-parameters.html#basic-user-parameters","798":"/annotations/user-parameters.html#with-default-values-for-unauthenticated-access","799":"/annotations/user-parameters.html#access-all-claims-as-json","800":"/annotations/user-parameters.html#combined-with-user-context","801":"/annotations/user-parameters.html#behavior","802":"/annotations/user-parameters.html#default-parameter-mapping","803":"/annotations/user-parameters.html#differences-from-user-context","804":"/annotations/user-parameters.html#related","805":"/annotations/user-parameters.html#related-annotations","806":"/annotations/user-parameters.html#see-also","807":"/annotations/validate.html#validate","808":"/annotations/validate.html#keywords","809":"/annotations/validate.html#syntax","810":"/annotations/validate.html#examples","811":"/annotations/validate.html#single-rule-validation","812":"/annotations/validate.html#multiple-rules-on-one-parameter","813":"/annotations/validate.html#multiple-parameters","814":"/annotations/validate.html#using-converted-parameter-names","815":"/annotations/validate.html#with-authorization","816":"/annotations/validate.html#default-rules","817":"/annotations/validate.html#custom-rules","818":"/annotations/validate.html#behavior","819":"/annotations/validate.html#error-response","820":"/annotations/validate.html#related","821":"/annotations/validate.html#related-annotations","822":"/annotations/validate.html#see-also","823":"/annotations/void.html#void","824":"/annotations/void.html#syntax","825":"/annotations/void.html#examples","826":"/annotations/void.html#multi-command-side-effects","827":"/annotations/void.html#single-command-void","828":"/annotations/void.html#function-endpoints","829":"/annotations/void.html#behavior","830":"/annotations/void.html#related","831":"/blog/DRAFT-npgsqlrest-vs-sqlpage.html#npgsqlrest-vs-sqlpage-two-sql-first-tools-two-different-layers","832":"/blog/DRAFT-npgsqlrest-vs-sqlpage.html#the-shared-idea","833":"/blog/DRAFT-npgsqlrest-vs-sqlpage.html#the-fork-in-the-road","834":"/blog/DRAFT-npgsqlrest-vs-sqlpage.html#where-sqlpage-is-stronger-the-ui","835":"/blog/DRAFT-npgsqlrest-vs-sqlpage.html#where-npgsqlrest-is-stronger-the-api","836":"/blog/DRAFT-npgsqlrest-vs-sqlpage.html#they-re-complementary-not-rivals","837":"/blog/DRAFT-npgsqlrest-vs-sqlpage.html#when-to-choose-each","838":"/blog/DRAFT-npgsqlrest-vs-sqlpage.html#conclusion","839":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#draft-20th-anniversary-of-the-vietnam-of-computer-science","840":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#introduction","841":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#what-is-the-object–relational-impedance-mismatch","842":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#_1-state-data-abstraction-misconception","843":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-claim","844":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-reality","845":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-cost","846":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#_2-storage-devices-abstraction-misconception","847":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-claim-1","848":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-reality-1","849":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-cost-1","850":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#_3-data-structures-abstraction-misconception","851":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-claim-2","852":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-reality-2","853":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-cost-2","854":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#copy-not-record-→-staleness-and-write-amplification","855":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#private-not-shared-→-arbitration-lives-in-the-database-anyway","856":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#graph-walk-not-set-operation-→-the-access-pattern-tax","857":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#simulation-not-engine-→-the-capability-ceiling","858":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#_4-abstraction-over-algorithms","859":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-claim-3","860":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-reality-3","861":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-cost-3","862":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#_5-abstraction-over-concurrency-and-integrity","863":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-claim-4","864":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-reality-4","865":"/blog/DRAFT-anniversary-vietnam-of-computer-science.html#the-cost-4","866":"/blog/case-study-zero-backend-code.html#case-study-74-endpoints-zero-backend-code","867":"/blog/case-study-zero-backend-code.html#what-s-in-the-repository","868":"/blog/case-study-zero-backend-code.html#what-npgsqlrest-is-doing-for-them","869":"/blog/case-study-zero-backend-code.html#the-comparison-equivalent-build-in-asp-net-core","870":"/blog/case-study-zero-backend-code.html#how-it-scores-on-the-four-dimensions-that-matter","871":"/blog/case-study-zero-backend-code.html#productivity","872":"/blog/case-study-zero-backend-code.html#time-saved-quantified","873":"/blog/case-study-zero-backend-code.html#lines-of-code-saved","874":"/blog/case-study-zero-backend-code.html#performance","875":"/blog/case-study-zero-backend-code.html#overall-quality","876":"/blog/case-study-zero-backend-code.html#honest-tradeoffs","877":"/blog/case-study-zero-backend-code.html#what-this-case-study-is-and-isn-t","878":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#csv-and-excel-ingestion-made-easy-postgresql-row-processing-with-npgsqlrest","879":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#the-traditional-approach-rigid-and-brittle","880":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#the-npgsqlrest-approach-dynamic-and-flexible","881":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#how-it-works","882":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#the-row-function-four-parameters-infinite-flexibility","883":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#csv-row-function-example","884":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#excel-row-function-example","885":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#row-chaining-the-power-of-3","886":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#the-upload-endpoint-function","887":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#upload-metadata-structure","888":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#dynamic-structure-no-hardcoding-no-redeployment","889":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#configuration","890":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#annotation-options","891":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#csv-handler-options","892":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#excel-handler-options","893":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#row-metadata-differences-csv-vs-excel","894":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#generated-typescript-client","895":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#advanced-patterns","896":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#skipping-header-rows","897":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#validation-and-rejection","898":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#upsert-insert-or-update","899":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#processing-only-specific-sheets","900":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#json-row-format-for-complex-data","901":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#transaction-safety","902":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#combining-handlers-process-and-store-the-original-file","903":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#combined-handler-metadata","904":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#fallback-handler-one-endpoint-for-both-excel-and-csv","905":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#authentication-integration","906":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#comparison-with-other-tools","907":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#copy-command","908":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#etl-tools-talend-pentaho-etc","909":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#python-pandas","910":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#conclusion-what-you-don-t-have-to-write","911":"/blog/csv-excel-ingestion-postgresql-npgsqlrest.html#the-numbers","912":"/blog/custom-types-multiset-rest-api.html#custom-types-and-multiset-for-nested-json-in-postgresql-rest-apis","913":"/blog/custom-types-multiset-rest-api.html#example-setup","914":"/blog/custom-types-multiset-rest-api.html#returning-single-object","915":"/blog/custom-types-multiset-rest-api.html#using-custom-types-as-parameters","916":"/blog/custom-types-multiset-rest-api.html#returning-sets-of-objects","917":"/blog/custom-types-multiset-rest-api.html#new-nested-json-objects","918":"/blog/custom-types-multiset-rest-api.html#new-nested-json-with-multiset","919":"/blog/custom-types-multiset-rest-api.html#limitations","920":"/blog/custom-types-multiset-rest-api.html#conclusion-and-workaround","921":"/blog/database-level-security-postgresql-authentication.html#database-level-security-building-secure-authentication-with-postgresql-and-npgsqlrest","922":"/blog/database-level-security-postgresql-authentication.html#the-principle-of-least-privilege-polp","923":"/blog/database-level-security-postgresql-authentication.html#schema-architecture","924":"/blog/database-level-security-postgresql-authentication.html#the-protected-schema","925":"/blog/database-level-security-postgresql-authentication.html#the-public-api-schema","926":"/blog/database-level-security-postgresql-authentication.html#the-restricted-application-role","927":"/blog/database-level-security-postgresql-authentication.html#bypassing-bcrypt-s-72-byte-limit","928":"/blog/database-level-security-postgresql-authentication.html#the-hash-function","929":"/blog/database-level-security-postgresql-authentication.html#the-verify-function","930":"/blog/database-level-security-postgresql-authentication.html#testing-the-password-functions","931":"/blog/database-level-security-postgresql-authentication.html#the-authentication-functions","932":"/blog/database-level-security-postgresql-authentication.html#understanding-security-definer","933":"/blog/database-level-security-postgresql-authentication.html#protecting-against-search-path-attacks","934":"/blog/database-level-security-postgresql-authentication.html#login-function","935":"/blog/database-level-security-postgresql-authentication.html#logout-function","936":"/blog/database-level-security-postgresql-authentication.html#who-am-i-function","937":"/blog/database-level-security-postgresql-authentication.html#npgsqlrest-configuration","938":"/blog/database-level-security-postgresql-authentication.html#the-demo-application","939":"/blog/database-level-security-postgresql-authentication.html#why-this-architecture-is-more-secure","940":"/blog/database-level-security-postgresql-authentication.html#_1-defense-in-depth","941":"/blog/database-level-security-postgresql-authentication.html#_2-sql-injection-becomes-less-dangerous","942":"/blog/database-level-security-postgresql-authentication.html#_3-no-secrets-in-application-code","943":"/blog/database-level-security-postgresql-authentication.html#_4-auditable-security-boundary","944":"/blog/database-level-security-postgresql-authentication.html#_5-bcrypt-limit-protection","945":"/blog/database-level-security-postgresql-authentication.html#comparison-with-traditional-approaches","946":"/blog/database-level-security-postgresql-authentication.html#conclusion","947":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#excel-exports-done-right-zero-allocation-streaming-from-postgresql","948":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#why-excel-exports-are-terrible","949":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#the-npgsqlrest-approach-pure-streaming","950":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#what-makes-this-special","951":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#zero-allocation-cell-writing","952":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#native-type-mapping","953":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#constant-memory-usage","954":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#aot-trim-compatible","955":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#building-an-excel-export-endpoint","956":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#step-1-write-your-function","957":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#step-2-add-the-annotation","958":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#step-3-configure-table-format","959":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#two-formats-one-endpoint","960":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#static-format-annotation","961":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#the-typescript-client-url-only-generation","962":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#excel-format-configuration","963":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#datetime-and-numeric-formats","964":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#worksheet-and-file-names","965":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#html-table-format","966":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#bonus-built-in-statistics-endpoints","967":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#stats-configuration-options","968":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#the-traditional-way-vs-this-way","969":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#memory-profile-comparison","970":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#running-the-example","971":"/blog/excel-export-table-format-postgresql-npgsqlrest.html#conclusion","972":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#end-to-end-static-type-checking-postgresql-to-typescript","973":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#the-problem-with-traditional-api-development","974":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#why-postgresql-functions","975":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#the-solution-single-source-of-truth","976":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#project-structure","977":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#the-database-schema","978":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#functions-that-define-the-api-contract","979":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#get-users","980":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#get-posts","981":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#static-type-checking-at-the-sql-level","982":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#how-postgresql-enforces-return-types","983":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#the-return-type-contract","984":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#type-changes-propagate-naturally","985":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#why-functions-are-recreated-on-every-build","986":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#built-in-testing-with-sql-assertions","987":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#unit-testing-postgresql-functions-beyond-fixed-data","988":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#co-located-tests-function-and-test-in-the-same-file","989":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#test-isolation-with-rollback","990":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#testing-multiple-scenarios","991":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#testing-against-empty-tables","992":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#deferrable-constraints-the-key-to-test-data","993":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#why-database-testing-is-fast","994":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#addressing-common-myths","995":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#the-generated-typescript-client","996":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#the-application-code","997":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#the-complete-type-safe-workflow","998":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#configuration","999":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#benefits-of-this-approach","1000":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#_1-single-source-of-truth","1001":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#_2-compile-time-safety","1002":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#_3-automatic-documentation","1003":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#_4-database-level-testing","1004":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#_5-no-runtime-type-checking-overhead","1005":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#conclusion","1006":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#why-this-stack-is-superior","1007":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#performance-that-scales","1008":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#maximum-type-safety-minimum-code","1009":"/blog/end-to-end-static-type-checking-postgresql-typescript.html#the-bottom-line","1010":"/blog/external-api-calls-postgresql-http-types.html#call-external-apis-from-postgresql-http-types-in-npgsqlrest","1011":"/blog/external-api-calls-postgresql-http-types.html#the-problem-backend-for-frontend-api-aggregation","1012":"/blog/external-api-calls-postgresql-http-types.html#why-not-use-postgresql-http-extensions","1013":"/blog/external-api-calls-postgresql-http-types.html#installation-and-distribution-overhead","1014":"/blog/external-api-calls-postgresql-http-types.html#network-and-performance-issues","1015":"/blog/external-api-calls-postgresql-http-types.html#the-npgsqlrest-advantage","1016":"/blog/external-api-calls-postgresql-http-types.html#the-npgsqlrest-solution-http-types","1017":"/blog/external-api-calls-postgresql-http-types.html#the-http-type-syntax-just-like-http-files","1018":"/blog/external-api-calls-postgresql-http-types.html#building-the-financial-dashboard","1019":"/blog/external-api-calls-postgresql-http-types.html#step-1-define-http-types","1020":"/blog/external-api-calls-postgresql-http-types.html#step-2-define-the-return-type","1021":"/blog/external-api-calls-postgresql-http-types.html#step-3-create-the-aggregation-function","1022":"/blog/external-api-calls-postgresql-http-types.html#step-4-configuration","1023":"/blog/external-api-calls-postgresql-http-types.html#what-happens-at-runtime","1024":"/blog/external-api-calls-postgresql-http-types.html#the-generated-typescript-client","1025":"/blog/external-api-calls-postgresql-http-types.html#traditional-approach-what-it-would-take","1026":"/blog/external-api-calls-postgresql-http-types.html#traditional-backend-node-js","1027":"/blog/external-api-calls-postgresql-http-types.html#the-numbers","1028":"/blog/external-api-calls-postgresql-http-types.html#advanced-features","1029":"/blog/external-api-calls-postgresql-http-types.html#multiple-api-calls","1030":"/blog/external-api-calls-postgresql-http-types.html#post-requests-with-bodies","1031":"/blog/external-api-calls-postgresql-http-types.html#response-field-customization","1032":"/blog/external-api-calls-postgresql-http-types.html#retry-logic","1033":"/blog/external-api-calls-postgresql-http-types.html#resolved-parameter-expressions","1034":"/blog/external-api-calls-postgresql-http-types.html#timeout-configuration","1035":"/blog/external-api-calls-postgresql-http-types.html#when-to-use-http-types","1036":"/blog/external-api-calls-postgresql-http-types.html#conclusion","1037":"/blog/#blog-posts-tutorials","1038":"/blog/mcp-server-postgresql-ai-tools-npgsqlrest.html#turn-postgresql-into-mcp-tools-an-ai-agent-can-call","1039":"/blog/mcp-server-postgresql-ai-tools-npgsqlrest.html#what-mcp-is-in-one-paragraph","1040":"/blog/mcp-server-postgresql-ai-tools-npgsqlrest.html#opt-in-never-automatic","1041":"/blog/mcp-server-postgresql-ai-tools-npgsqlrest.html#results-are-structured","1042":"/blog/mcp-server-postgresql-ai-tools-npgsqlrest.html#mcp-only-tools-a-tool-with-no-rest-route","1043":"/blog/mcp-server-postgresql-ai-tools-npgsqlrest.html#one-source-two-interfaces-—-made-visible","1044":"/blog/mcp-server-postgresql-ai-tools-npgsqlrest.html#the-real-test-an-ai-agent-driving-the-store","1045":"/blog/mcp-server-postgresql-ai-tools-npgsqlrest.html#authorization-without-locking-down-the-server","1046":"/blog/mcp-server-postgresql-ai-tools-npgsqlrest.html#why-this-approach-holds-up","1047":"/blog/mcp-server-postgresql-ai-tools-npgsqlrest.html#try-it","1048":"/blog/multiple-auth-schemes-rbac-external-providers.html#multiple-authentication-schemes-role-based-access-control-and-external-providers","1049":"/blog/multiple-auth-schemes-rbac-external-providers.html#why-npgsqlrest-s-built-in-password-hasher","1050":"/blog/multiple-auth-schemes-rbac-external-providers.html#schema-design","1051":"/blog/multiple-auth-schemes-rbac-external-providers.html#generating-password-hashes","1052":"/blog/multiple-auth-schemes-rbac-external-providers.html#automatic-parameter-hashing-for-registration","1053":"/blog/multiple-auth-schemes-rbac-external-providers.html#multiple-authentication-schemes","1054":"/blog/multiple-auth-schemes-rbac-external-providers.html#a-note-on-data-protection-and-encryption","1055":"/blog/multiple-auth-schemes-rbac-external-providers.html#the-login-function-with-built-in-password-verification","1056":"/blog/multiple-auth-schemes-rbac-external-providers.html#password-verification-callbacks","1057":"/blog/multiple-auth-schemes-rbac-external-providers.html#role-based-access-control","1058":"/blog/multiple-auth-schemes-rbac-external-providers.html#user-context-with-current-setting","1059":"/blog/multiple-auth-schemes-rbac-external-providers.html#external-oauth-providers","1060":"/blog/multiple-auth-schemes-rbac-external-providers.html#the-external-login-function","1061":"/blog/multiple-auth-schemes-rbac-external-providers.html#the-demo-application","1062":"/blog/multiple-auth-schemes-rbac-external-providers.html#configuration-summary","1063":"/blog/multiple-auth-schemes-rbac-external-providers.html#generated-client-with-token-support","1064":"/blog/multiple-auth-schemes-rbac-external-providers.html#conclusion-enterprise-auth-made-simple","1065":"/blog/multiple-auth-schemes-rbac-external-providers.html#this-blog-post-is-your-recipe","1066":"/blog/npgsqlrest-3.13-production-patterns.html#npgsqlrest-3-13-0-cache-profiles-auth-schemes-per-user-rate-limits-and-pgbouncer-compatibility","1067":"/blog/npgsqlrest-3.13-production-patterns.html#_1-conditional-caching-historical-vs-current-vs-live","1068":"/blog/npgsqlrest-3.13-production-patterns.html#_2-short-lived-sensitive-session-alongside-the-normal-session","1069":"/blog/npgsqlrest-3.13-production-patterns.html#_3-per-user-rate-limits","1070":"/blog/npgsqlrest-3.13-production-patterns.html#_4-multi-tenant-search-path-with-pgbouncer-or-rds-proxy-or-supabase-pooler","1071":"/blog/npgsqlrest-3.13-production-patterns.html#other-notable-changes","1072":"/blog/npgsqlrest-3.19-sql-test-runner-watch-mode.html#tests-are-sql-files-too","1073":"/blog/npgsqlrest-3.19-sql-test-runner-watch-mode.html#introduction","1074":"/blog/npgsqlrest-3.19-sql-test-runner-watch-mode.html#tl-dr-test-runner","1075":"/blog/npgsqlrest-3.19-sql-test-runner-watch-mode.html#database-testing-is-impossible-they-said","1076":"/blog/npgsqlrest-3.19-sql-test-runner-watch-mode.html#the-pattern-i-have-used-for-years","1077":"/blog/npgsqlrest-3.19-sql-test-runner-watch-mode.html#but-it-has-limits","1078":"/blog/npgsqlrest-3.19-sql-test-runner-watch-mode.html#tests-are-sql-files-too-1","1079":"/blog/npgsqlrest-3.19-sql-test-runner-watch-mode.html#the-old-demons-isolation-and-fixtures","1080":"/blog/npgsqlrest-3.19-sql-test-runner-watch-mode.html#and-then-there-is-watch-mode","1081":"/blog/npgsqlrest-3.19-sql-test-runner-watch-mode.html#ai-tdd","1082":"/blog/npgsqlrest-3.19-sql-test-runner-watch-mode.html#where-to-start","1083":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#npgsqlrest-vs-postgrest-vs-supabase-complete-feature-comparison","1084":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#executive-summary","1085":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#architecture-comparison","1086":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#npgsqlrest","1087":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#postgrest","1088":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#supabase","1089":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#performance-benchmarks","1090":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#requests-per-second-100-concurrent-users-1-record","1091":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#larger-payloads-500-records-100-vu","1092":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#postgresql-type-handling","1093":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#feature-comparison-matrix","1094":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#platform-features","1095":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#core-api-generation","1096":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#table-and-view-query-features","1097":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#custom-types-and-nested-json","1098":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#authentication","1099":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#file-handling","1100":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#security-and-infrastructure","1101":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#performance-features","1102":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#connection-pooler-compatibility-multi-tenancy","1103":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#real-time-capabilities","1104":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#external-service-integration-and-custom-code-execution","1105":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#npgsqlrest-declarative-proxy-in-sql","1106":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#postgrest-no-custom-code-execution","1107":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#supabase-edge-functions-separate-deno-runtime","1108":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#architectural-comparison","1109":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#advanced-features","1110":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#observability","1111":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#error-handling","1112":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#configuration-approach","1113":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#npgsqlrest-sql-comments","1114":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#postgrest-external-configuration-rls","1115":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#supabase-dashboard-rls-edge-functions","1116":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#deployment-comparison","1117":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#npgsqlrest-1","1118":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#postgrest-1","1119":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#supabase-self-hosted","1120":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#when-to-choose-each","1121":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#choose-npgsqlrest-when","1122":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#choose-postgrest-when","1123":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#choose-supabase-when","1124":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#migration-considerations","1125":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#from-postgrest-to-npgsqlrest","1126":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#from-supabase-to-npgsqlrest","1127":"/blog/npgsqlrest-vs-postgrest-supabase-comparison.html#conclusion","1128":"/blog/optimization-labels-101.html#postgresql-optimization-labels-101","1129":"/blog/optimization-labels-101.html#volatile-stable-immutable","1130":"/blog/optimization-labels-101.html#parallel-unsafe-restricted-safe","1131":"/blog/optimization-labels-101.html#cost-rows","1132":"/blog/optimization-labels-101.html#cost-default-100","1133":"/blog/optimization-labels-101.html#rows-default-1000","1134":"/blog/optimization-labels-101.html#called-on-null-input-returns-null-on-null-input-strict","1135":"/blog/performance-scalability-high-availability-npgsqlrest.html#performance-scalability-and-high-availability-with-npgsqlrest","1136":"/blog/performance-scalability-high-availability-npgsqlrest.html#caching-strategies","1137":"/blog/performance-scalability-high-availability-npgsqlrest.html#http-cache-headers-the-fastest-cache","1138":"/blog/performance-scalability-high-availability-npgsqlrest.html#setting-cache-headers-in-annotations","1139":"/blog/performance-scalability-high-availability-npgsqlrest.html#cache-busting-technique","1140":"/blog/performance-scalability-high-availability-npgsqlrest.html#server-side-caching","1141":"/blog/performance-scalability-high-availability-npgsqlrest.html#enabling-server-cache","1142":"/blog/performance-scalability-high-availability-npgsqlrest.html#cache-keys-by-parameter","1143":"/blog/performance-scalability-high-availability-npgsqlrest.html#cache-expiration","1144":"/blog/performance-scalability-high-availability-npgsqlrest.html#cache-types","1145":"/blog/performance-scalability-high-availability-npgsqlrest.html#memory-cache","1146":"/blog/performance-scalability-high-availability-npgsqlrest.html#redis-cache","1147":"/blog/performance-scalability-high-availability-npgsqlrest.html#hybrid-cache","1148":"/blog/performance-scalability-high-availability-npgsqlrest.html#cache-invalidation-endpoints","1149":"/blog/performance-scalability-high-availability-npgsqlrest.html#caching-set-returning-functions","1150":"/blog/performance-scalability-high-availability-npgsqlrest.html#cache-profiles","1151":"/blog/performance-scalability-high-availability-npgsqlrest.html#retry-strategies","1152":"/blog/performance-scalability-high-availability-npgsqlrest.html#connection-retries","1153":"/blog/performance-scalability-high-availability-npgsqlrest.html#command-retries","1154":"/blog/performance-scalability-high-availability-npgsqlrest.html#multiple-retry-strategies","1155":"/blog/performance-scalability-high-availability-npgsqlrest.html#postgresql-error-code-classes","1156":"/blog/performance-scalability-high-availability-npgsqlrest.html#rate-limiting","1157":"/blog/performance-scalability-high-availability-npgsqlrest.html#enabling-rate-limiting","1158":"/blog/performance-scalability-high-availability-npgsqlrest.html#fixed-window","1159":"/blog/performance-scalability-high-availability-npgsqlrest.html#sliding-window","1160":"/blog/performance-scalability-high-availability-npgsqlrest.html#token-bucket","1161":"/blog/performance-scalability-high-availability-npgsqlrest.html#concurrency-limiting","1162":"/blog/performance-scalability-high-availability-npgsqlrest.html#per-user-rate-limiting-partitions","1163":"/blog/performance-scalability-high-availability-npgsqlrest.html#combining-policies","1164":"/blog/performance-scalability-high-availability-npgsqlrest.html#thread-pool-optimization","1165":"/blog/performance-scalability-high-availability-npgsqlrest.html#the-thread-injection-problem","1166":"/blog/performance-scalability-high-availability-npgsqlrest.html#configuring-minimum-threads","1167":"/blog/performance-scalability-high-availability-npgsqlrest.html#worker-threads-vs-completion-port-threads","1168":"/blog/performance-scalability-high-availability-npgsqlrest.html#high-throughput-configuration","1169":"/blog/performance-scalability-high-availability-npgsqlrest.html#sizing-guidelines","1170":"/blog/performance-scalability-high-availability-npgsqlrest.html#when-not-to-increase-thread-pool-size","1171":"/blog/performance-scalability-high-availability-npgsqlrest.html#example-burst-traffic-handling","1172":"/blog/performance-scalability-high-availability-npgsqlrest.html#high-availability","1173":"/blog/performance-scalability-high-availability-npgsqlrest.html#multi-host-connections","1174":"/blog/performance-scalability-high-availability-npgsqlrest.html#target-session-attributes","1175":"/blog/performance-scalability-high-availability-npgsqlrest.html#load-balancing","1176":"/blog/performance-scalability-high-availability-npgsqlrest.html#read-replica-routing","1177":"/blog/performance-scalability-high-availability-npgsqlrest.html#production-high-availability-configuration","1178":"/blog/performance-scalability-high-availability-npgsqlrest.html#same-schema-requirement","1179":"/blog/performance-scalability-high-availability-npgsqlrest.html#putting-it-all-together","1180":"/blog/performance-scalability-high-availability-npgsqlrest.html#summary","1181":"/blog/performance-scalability-high-availability-npgsqlrest.html#development-time-saved","1182":"/blog/performance-scalability-high-availability-npgsqlrest.html#related-documentation","1183":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#turn-postgresql-into-a-bi-server-csv-exports-basic-auth-excel-integration","1184":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#the-architecture","1185":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#defense-in-depth-the-principle-of-least-privilege","1186":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#creating-csv-endpoints","1187":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#define-a-reusable-type","1188":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#the-secured-report-function","1189":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#csv-annotations","1190":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#type-reuse-and-composition","1191":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#the-problem-schema-duplication","1192":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#the-solution-composite-type-expansion","1193":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#benefits-for-applications","1194":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#securing-with-basic-authentication","1195":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#password-hashing","1196":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#multiple-users-via-configuration","1197":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#database-driven-authentication-with-challengecommand","1198":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#ssl-configuration","1199":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#setup-steps","1200":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#no-code-generation-required","1201":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#excel-power-query-integration","1202":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#connecting-excel-to-your-endpoint","1203":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#the-power-of-central-control","1204":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#production-considerations","1205":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#when-you-still-need-etl","1206":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#the-cost-comparison","1207":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#complete-example","1208":"/blog/postgresql-bi-server-excel-csv-basic-auth.html#conclusion","1209":"/blog/passkey-sql-auth.html#implementing-webauthn-passkeys-with-pure-sql-and-npgsqlrest","1210":"/blog/passkey-sql-auth.html#what-gets-stored-and-what-doesn-t","1211":"/blog/passkey-sql-auth.html#architecture-overview","1212":"/blog/passkey-sql-auth.html#complete-example-walkthrough","1213":"/blog/passkey-sql-auth.html#_1-database-schema","1214":"/blog/passkey-sql-auth.html#_2-challenge-functions","1215":"/blog/passkey-sql-auth.html#_3-completion-functions","1216":"/blog/passkey-sql-auth.html#_4-authentication-function","1217":"/blog/passkey-sql-auth.html#_5-configuration","1218":"/blog/passkey-sql-auth.html#_6-client-side-implementation","1219":"/blog/passkey-sql-auth.html#three-authentication-flows","1220":"/blog/passkey-sql-auth.html#_1-registration-new-user-with-passkey","1221":"/blog/passkey-sql-auth.html#_2-add-passkey-existing-user","1222":"/blog/passkey-sql-auth.html#_3-login","1223":"/blog/passkey-sql-auth.html#complete-configuration-reference","1224":"/blog/passkey-sql-auth.html#general-settings","1225":"/blog/passkey-sql-auth.html#relying-party-settings","1226":"/blog/passkey-sql-auth.html#endpoint-paths","1227":"/blog/passkey-sql-auth.html#webauthn-settings","1228":"/blog/passkey-sql-auth.html#userverificationrequirement","1229":"/blog/passkey-sql-auth.html#residentkeyrequirement","1230":"/blog/passkey-sql-auth.html#attestationconveyance","1231":"/blog/passkey-sql-auth.html#sql-commands-reference","1232":"/blog/passkey-sql-auth.html#challengeaddexistingusercommand","1233":"/blog/passkey-sql-auth.html#challengeregistrationcommand","1234":"/blog/passkey-sql-auth.html#challengeauthenticationcommand","1235":"/blog/passkey-sql-auth.html#verifychallengecommand","1236":"/blog/passkey-sql-auth.html#authenticatedatacommand","1237":"/blog/passkey-sql-auth.html#completeaddexistingusercommand","1238":"/blog/passkey-sql-auth.html#completeregistrationcommand","1239":"/blog/passkey-sql-auth.html#completeauthenticatecommand","1240":"/blog/passkey-sql-auth.html#column-name-configuration","1241":"/blog/passkey-sql-auth.html#analytics-data","1242":"/blog/passkey-sql-auth.html#security-considerations","1243":"/blog/passkey-sql-auth.html#what-npgsqlrest-validates","1244":"/blog/passkey-sql-auth.html#what-you-control","1245":"/blog/passkey-sql-auth.html#rate-limiting","1246":"/blog/passkey-sql-auth.html#advantages-of-this-approach","1247":"/blog/passkey-sql-auth.html#_1-sql-first-logic","1248":"/blog/passkey-sql-auth.html#_2-no-external-dependencies","1249":"/blog/passkey-sql-auth.html#_3-complete-control","1250":"/blog/passkey-sql-auth.html#_4-built-in-resilience","1251":"/blog/passkey-sql-auth.html#_5-privacy-by-design","1252":"/blog/passkey-sql-auth.html#getting-started","1253":"/blog/passkey-sql-auth.html#conclusion","1254":"/blog/postgresql-rest-api-benchmark-2026.html#postgresql-rest-api-benchmark-2026-14-frameworks-compared","1255":"/blog/postgresql-rest-api-benchmark-2026.html#what-we-tested","1256":"/blog/postgresql-rest-api-benchmark-2026.html#what-s-new-in-this-benchmark","1257":"/blog/postgresql-rest-api-benchmark-2026.html#version-updates","1258":"/blog/postgresql-rest-api-benchmark-2026.html#new-test-scenarios","1259":"/blog/postgresql-rest-api-benchmark-2026.html#infrastructure-changes","1260":"/blog/postgresql-rest-api-benchmark-2026.html#comparing-with-previous-results","1261":"/blog/postgresql-rest-api-benchmark-2026.html#key-findings","1262":"/blog/postgresql-rest-api-benchmark-2026.html#swoole-php-dominates-large-payload-scenarios","1263":"/blog/postgresql-rest-api-benchmark-2026.html#npgsqlrest-leads-high-concurrency-low-payload-scenarios","1264":"/blog/postgresql-rest-api-benchmark-2026.html#the-top-performers-by-scenario","1265":"/blog/postgresql-rest-api-benchmark-2026.html#performance-tiers-at-100-vu-1-record","1266":"/blog/postgresql-rest-api-benchmark-2026.html#what-changed-from-2025","1267":"/blog/postgresql-rest-api-benchmark-2026.html#scaling-behavior","1268":"/blog/postgresql-rest-api-benchmark-2026.html#large-payloads-level-the-playing-field","1269":"/blog/postgresql-rest-api-benchmark-2026.html#pure-http-overhead-minimal-baseline","1270":"/blog/postgresql-rest-api-benchmark-2026.html#post-body-parsing-performance","1271":"/blog/postgresql-rest-api-benchmark-2026.html#python-frameworks-continue-to-struggle","1272":"/blog/postgresql-rest-api-benchmark-2026.html#jit-vs-aot-in-2026","1273":"/blog/postgresql-rest-api-benchmark-2026.html#why-certain-frameworks-excel","1274":"/blog/postgresql-rest-api-benchmark-2026.html#swoole-php-s-rise","1275":"/blog/postgresql-rest-api-benchmark-2026.html#go-s-http-dominance","1276":"/blog/postgresql-rest-api-benchmark-2026.html#npgsqlrest-s-architecture","1277":"/blog/postgresql-rest-api-benchmark-2026.html#resource-usage","1278":"/blog/postgresql-rest-api-benchmark-2026.html#key-observations","1279":"/blog/postgresql-rest-api-benchmark-2026.html#important-note-json-and-array-type-handling","1280":"/blog/postgresql-rest-api-benchmark-2026.html#conclusion","1281":"/blog/postgresql-rest-api-benchmark-2026.html#lines-of-code-comparison","1282":"/blog/postgresql-rest-api-benchmark-2026.html#full-benchmark-results","1283":"/blog/postgresql-rest-api-benchmark-2026.html#summary-tables","1284":"/blog/postgresql-rest-api-benchmark-2026.html#data-type-serialization","1285":"/blog/postgresql-rest-api-benchmark-2026.html#new-scenarios","1286":"/blog/postgresql-rest-api-benchmark-2026.html#data-type-serialization-tests","1287":"/blog/postgresql-rest-api-benchmark-2026.html#_1-virtual-user-1-record","1288":"/blog/postgresql-rest-api-benchmark-2026.html#_1-virtual-user-10-records","1289":"/blog/postgresql-rest-api-benchmark-2026.html#_100-virtual-users-1-record","1290":"/blog/postgresql-rest-api-benchmark-2026.html#_100-virtual-users-100-records","1291":"/blog/postgresql-rest-api-benchmark-2026.html#_100-virtual-users-500-records","1292":"/blog/postgresql-rest-api-benchmark-2026.html#minimal-baseline-pure-http-overhead","1293":"/blog/postgresql-rest-api-benchmark-2026.html#_100-virtual-users","1294":"/blog/postgresql-rest-api-benchmark-2026.html#post-body-parsing","1295":"/blog/postgresql-rest-api-benchmark-2026.html#_50-virtual-users-10-records","1296":"/blog/postgresql-rest-api-benchmark-2026.html#nested-json-serialization","1297":"/blog/postgresql-rest-api-benchmark-2026.html#_50-virtual-users-depth-1","1298":"/blog/postgresql-rest-api-benchmark-2026.html#large-payload","1299":"/blog/postgresql-rest-api-benchmark-2026.html#_25-virtual-users-100kb-payload","1300":"/blog/postgresql-rest-api-benchmark-2026.html#many-parameters-20-params","1301":"/blog/postgresql-rest-api-benchmark-2026.html#_50-virtual-users","1302":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#build-a-real-time-chat-app-with-postgresql-and-server-sent-events","1303":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#the-traditional-approach-complex-infrastructure","1304":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#the-npgsqlrest-approach-postgresql-is-your-real-time-server","1305":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#how-sse-works-in-npgsqlrest","1306":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#building-the-chat-step-by-step","1307":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#step-1-schema-setup","1308":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#step-2-login-function","1309":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#step-3-the-magic-send-message-with-sse","1310":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#step-4-message-history","1311":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#understanding-sse-scopes","1312":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#sse-scope-authorize","1313":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#sse-scope-authorize-roles-users","1314":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#sse-scope-matching","1315":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#sse-scope-all","1316":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#dynamic-scopes-with-raise-hint","1317":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#the-auto-generated-typescript-client","1318":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#the-frontend-minimal-code-required","1319":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#code-comparison-traditional-vs-npgsqlrest","1320":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#traditional-real-time-chat-architecture","1321":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#npgsqlrest-approach","1322":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#the-numbers","1323":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#when-to-use-sse-vs-websockets","1324":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#why-not-postgresql-listen-notify","1325":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#how-npgsqlrest-avoids-this-problem","1326":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#advanced-execution-id-correlation-as-soft-channels","1327":"/blog/real-time-chat-postgresql-sse-npgsqlrest.html#conclusion","1328":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#reverse-proxy-in-postgresql-gateway-to-external-services-with-npgsqlrest","1329":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#the-problem-connection-pool-exhaustion","1330":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#the-npgsqlrest-solution-proxy-mode","1331":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#passthrough-mode-zero-database-connections","1332":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#transform-mode-process-before-returning","1333":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#architecture-npgsqlrest-as-api-gateway","1334":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#building-the-ai-text-analysis-service","1335":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#the-upstream-ai-service","1336":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#postgresql-schema-caching-layer","1337":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#passthrough-proxy-health-check","1338":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#transform-proxy-summarization-with-caching","1339":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#full-analysis-complete-transform-example","1340":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#configuration","1341":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#proxy-response-parameters","1342":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#the-generated-typescript-client","1343":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#docker-bun-runtime-image","1344":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#use-cases-for-reverse-proxy","1345":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#api-gateway-pattern","1346":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#caching-expensive-operations","1347":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#data-enrichment","1348":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#authentication-context-forwarding","1349":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#the-numbers","1350":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#code-comparison","1351":"/blog/reverse-proxy-postgresql-ai-service-npgsqlrest.html#summary-when-to-use-proxy-mode","1352":"/blog/secure-image-uploads-postgresql-typescript.html#secure-image-uploads-with-postgresql-file-system-large-objects-and-type-safe-typescript","1353":"/blog/secure-image-uploads-postgresql-typescript.html#storage-options","1354":"/blog/secure-image-uploads-postgresql-typescript.html#when-to-use-each-strategy","1355":"/blog/secure-image-uploads-postgresql-typescript.html#step-1-create-the-schema","1356":"/blog/secure-image-uploads-postgresql-typescript.html#step-2-configure-upload-handlers","1357":"/blog/secure-image-uploads-postgresql-typescript.html#step-3-create-the-upload-function","1358":"/blog/secure-image-uploads-postgresql-typescript.html#step-4-add-the-upload-annotation","1359":"/blog/secure-image-uploads-postgresql-typescript.html#how-the-metadata-works","1360":"/blog/secure-image-uploads-postgresql-typescript.html#when-uploads-fail","1361":"/blog/secure-image-uploads-postgresql-typescript.html#step-5-use-the-generated-client","1362":"/blog/secure-image-uploads-postgresql-typescript.html#step-6-serve-images-from-large-objects","1363":"/blog/secure-image-uploads-postgresql-typescript.html#performance-large-objects-vs-file-system","1364":"/blog/secure-image-uploads-postgresql-typescript.html#displaying-images","1365":"/blog/secure-image-uploads-postgresql-typescript.html#backup-advantage","1366":"/blog/secure-image-uploads-postgresql-typescript.html#traditional-approach-comparison","1367":"/blog/secure-image-uploads-postgresql-typescript.html#summary","1368":"/blog/sql-file-source-rest-api-from-plain-sql.html#sql-file-source-rest-endpoints-from-plain-sql-files","1369":"/blog/sql-file-source-rest-api-from-plain-sql.html#the-simplest-endpoint","1370":"/blog/sql-file-source-rest-api-from-plain-sql.html#multi-command-multiple-queries-in-one-request","1371":"/blog/sql-file-source-rest-api-from-plain-sql.html#authentication-login-logout-who-am-i","1372":"/blog/sql-file-source-rest-api-from-plain-sql.html#real-time-chat-with-sse","1373":"/blog/sql-file-source-rest-api-from-plain-sql.html#csv-export-with-basic-auth","1374":"/blog/sql-file-source-rest-api-from-plain-sql.html#dynamic-excel-output","1375":"/blog/sql-file-source-rest-api-from-plain-sql.html#nested-custom-types","1376":"/blog/sql-file-source-rest-api-from-plain-sql.html#external-api-calls","1377":"/blog/sql-file-source-rest-api-from-plain-sql.html#the-important-part","1378":"/blog/sql-file-source-rest-api-from-plain-sql.html#sql-files-vs-routines-when-to-use-which","1379":"/blog/sql-file-source-rest-api-from-plain-sql.html#what-came-after-this-post","1380":"/blog/sql-file-source-rest-api-from-plain-sql.html#get-started","1381":"/blog/the-backend-that-writes-itself-presentation.html#the-backend-that-writes-itself","1382":"/blog/the-backend-that-writes-itself-presentation.html#the-narration","1383":"/blog/the-backend-that-writes-itself-presentation.html#where-to-go-next","1384":"/blog/sql-rest-api.html#sql-rest-api","1385":"/blog/sql-rest-api.html#introduction","1386":"/blog/sql-rest-api.html#sql-script-files-as-rest-api-endpoints","1387":"/blog/sql-rest-api.html#sql-files-vs-routines","1388":"/blog/sql-rest-api.html#_1-no-migrations","1389":"/blog/sql-rest-api.html#_2-no-comment-on-statements","1390":"/blog/sql-rest-api.html#_3-mapping-by-position-vs-no-mapping-at-all","1391":"/blog/sql-rest-api.html#_4-multiple-result-sets","1392":"/blog/sql-rest-api.html#_5-named-parameters","1393":"/blog/sql-rest-api.html#_6-testability","1394":"/blog/sql-rest-api.html#_7-complex-logic","1395":"/blog/sql-rest-api.html#_1-parameters-are-not-supported-in-do-blocks","1396":"/blog/sql-rest-api.html#_2-do-blocks-can-t-return-result-sets","1397":"/blog/sql-rest-api.html#other-features-in-v3-12-0","1398":"/blog/sql-rest-api.html#self-referencing-endpoints","1399":"/blog/sql-rest-api.html#future-improvements","1400":"/blog/sql-rest-api.html#ai-tools","1401":"/blog/sql-rest-api.html#_1-ai-tools-with-npgsqlrest","1402":"/blog/sql-rest-api.html#_2-ai-tools-in-npgsqlrest-development","1403":"/blog/sql-rest-api.html#philosophy-of-npgsqlrest","1404":"/blog/sql-rest-api.html#wrap-it-up-chapter","1405":"/blog/the-power-of-simplicity.html#the-power-of-simplicity","1406":"/blog/typescript-codegen-walkthrough.html#from-sql-to-type-safe-typescript-a-walkthrough-of-npgsqlrest-s-code-generator","1407":"/blog/typescript-codegen-walkthrough.html#the-pipeline","1408":"/blog/typescript-codegen-walkthrough.html#a-minimal-example","1409":"/blog/typescript-codegen-walkthrough.html#end-to-end-type-safety-in-action","1410":"/blog/typescript-codegen-walkthrough.html#uploads-when-the-generated-wrapper-isn-t-just-fetch","1411":"/blog/typescript-codegen-walkthrough.html#per-endpoint-control-with-tsclient-annotations","1412":"/blog/typescript-codegen-walkthrough.html#disable-generation-binary-endpoints","1413":"/blog/typescript-codegen-walkthrough.html#url-only-browser-navigation-endpoints","1414":"/blog/typescript-codegen-walkthrough.html#module-grouping-logical-bundles-across-schemas","1415":"/blog/typescript-codegen-walkthrough.html#other-per-endpoint-toggles","1416":"/blog/typescript-codegen-walkthrough.html#scaling-up-real-world-configuration","1417":"/blog/typescript-codegen-walkthrough.html#real-world-workflow-dev-codegen-prod-no-codegen","1418":"/blog/typescript-codegen-walkthrough.html#two-processes-one-tight-loop","1419":"/blog/typescript-codegen-walkthrough.html#managing-change","1420":"/blog/typescript-codegen-walkthrough.html#production-no-codegen-just-the-server","1421":"/blog/typescript-codegen-walkthrough.html#what-this-means-in-practice","1422":"/blog/typescript-codegen-walkthrough.html#workflow-summary","1423":"/blog/web-scraping-postgresql-http-types-xml.html#web-scraping-with-postgresql-http-types-xml-functions","1424":"/blog/web-scraping-postgresql-http-types-xml.html#the-recipe","1425":"/blog/web-scraping-postgresql-http-types-xml.html#example-17-average-book-price","1426":"/blog/web-scraping-postgresql-http-types-xml.html#fetch-—-the-http-custom-type","1427":"/blog/web-scraping-postgresql-http-types-xml.html#parse-—-regex-to-isolate-xpath-to-read","1428":"/blog/web-scraping-postgresql-http-types-xml.html#why-regex-and-xpath","1429":"/blog/web-scraping-postgresql-http-types-xml.html#example-16-best-value-laptop","1430":"/blog/web-scraping-postgresql-http-types-xml.html#be-a-good-citizen-cache-the-page","1431":"/blog/web-scraping-postgresql-http-types-xml.html#a-different-split-fetch-in-sql-parse-in-a-service","1432":"/blog/web-scraping-postgresql-http-types-xml.html#when-this-works-and-when-it-doesn-t","1433":"/blog/web-scraping-postgresql-http-types-xml.html#try-it","1434":"/blog/web-scraping-postgresql-http-types-xml.html#related","1435":"/blog/what-have-stored-procedures-ever-done-for-us.html#what-have-postgresql-functions-ever-done-for-us","1436":"/blog/what-have-stored-procedures-ever-done-for-us.html#type-safety","1437":"/blog/what-have-stored-procedures-ever-done-for-us.html#real-encapsulation","1438":"/blog/what-have-stored-procedures-ever-done-for-us.html#zero-downtime","1439":"/blog/what-have-stored-procedures-ever-done-for-us.html#performance","1440":"/blog/what-have-stored-procedures-ever-done-for-us.html#race-conditions-minimized","1441":"/blog/what-have-stored-procedures-ever-done-for-us.html#security","1442":"/blog/what-have-stored-procedures-ever-done-for-us.html#a-short-test-loop","1443":"/blog/what-have-stored-procedures-ever-done-for-us.html#so-ddd-developers","1444":"/config/auth.html#authentication","1445":"/config/auth.html#overview","1446":"/config/auth.html#cookie-authentication","1447":"/config/auth.html#cookie-settings-reference","1448":"/config/auth.html#cookie-security","1449":"/config/auth.html#cross-origin-cookies-new-in-3-15-0","1450":"/config/auth.html#microsoft-bearer-token-authentication","1451":"/config/auth.html#bearer-token-settings-reference","1452":"/config/auth.html#token-refresh","1453":"/config/auth.html#jwt-authentication","1454":"/config/auth.html#jwt-settings-reference","1455":"/config/auth.html#login-response","1456":"/config/auth.html#token-refresh-1","1457":"/config/auth.html#jwt-vs-microsoft-bearer-token","1458":"/config/auth.html#additional-authentication-schemes","1459":"/config/auth.html#per-type-override-fields","1460":"/config/auth.html#validation-at-startup-fail-fast","1461":"/config/auth.html#complete-examples","1462":"/config/auth.html#cookie-authentication-1","1463":"/config/auth.html#jwt-authentication-1","1464":"/config/auth.html#combined-authentication","1465":"/config/auth.html#related","1466":"/config/auth.html#next-steps","1467":"/config/auth.html#see-also","1468":"/config/authentication-options.html#authentication-options","1469":"/config/authentication-options.html#overview","1470":"/config/authentication-options.html#general-settings","1471":"/config/authentication-options.html#login-response-columns","1472":"/config/authentication-options.html#password-handling","1473":"/config/authentication-options.html#password-verification-command-parameters","1474":"/config/authentication-options.html#default-claim-types","1475":"/config/authentication-options.html#user-context-settings","1476":"/config/authentication-options.html#default-contextkeyclaimsmapping","1477":"/config/authentication-options.html#user-parameters-settings","1478":"/config/authentication-options.html#default-parameternameclaimsmapping","1479":"/config/authentication-options.html#login-and-logout-paths","1480":"/config/authentication-options.html#login-command-convention","1481":"/config/authentication-options.html#logout-command-convention","1482":"/config/authentication-options.html#basic-authentication","1483":"/config/authentication-options.html#complete-example","1484":"/config/authentication-options.html#related","1485":"/config/authentication-options.html#next-steps","1486":"/config/authentication-options.html#see-also","1487":"/config/antiforgery.html#antiforgery","1488":"/config/antiforgery.html#overview","1489":"/config/antiforgery.html#settings-reference","1490":"/config/antiforgery.html#token-submission","1491":"/config/antiforgery.html#form-field","1492":"/config/antiforgery.html#http-header","1493":"/config/antiforgery.html#x-frame-options-header","1494":"/config/antiforgery.html#example-configuration","1495":"/config/antiforgery.html#related","1496":"/config/antiforgery.html#next-steps","1497":"/config/basic-auth-config.html#basic-auth-configuration","1498":"/config/basic-auth-config.html#overview","1499":"/config/basic-auth-config.html#settings","1500":"/config/basic-auth-config.html#ssl-requirement-values","1501":"/config/basic-auth-config.html#challenge-command-parameters","1502":"/config/basic-auth-config.html#static-users-example","1503":"/config/basic-auth-config.html#database-authentication-example","1504":"/config/basic-auth-config.html#challenge-function-example","1505":"/config/basic-auth-config.html#complete-example","1506":"/config/basic-auth-config.html#related","1507":"/config/basic-auth-config.html#next-steps","1508":"/config/basic-auth-config.html#see-also","1509":"/config/cache-options.html#cache-options","1510":"/config/cache-options.html#overview","1511":"/config/cache-options.html#settings-reference","1512":"/config/cache-options.html#cache-types","1513":"/config/cache-options.html#memory-cache","1514":"/config/cache-options.html#redis-cache","1515":"/config/cache-options.html#hybrid-cache","1516":"/config/cache-options.html#cache-key-hashing","1517":"/config/cache-options.html#caching-set-returning-functions","1518":"/config/cache-options.html#cache-invalidation-endpoints","1519":"/config/cache-options.html#cache-profiles","1520":"/config/cache-options.html#overview-1","1521":"/config/cache-options.html#profile-fields","1522":"/config/cache-options.html#backend-pooling","1523":"/config/cache-options.html#when-rules","1524":"/config/cache-options.html#pattern-skip-on-condition","1525":"/config/cache-options.html#pattern-dynamic-ttl","1526":"/config/cache-options.html#pattern-array-of-values","1527":"/config/cache-options.html#validation","1528":"/config/cache-options.html#connection-pooler-note","1529":"/config/cache-options.html#complete-example","1530":"/config/cache-options.html#routine-annotations","1531":"/config/cache-options.html#cached","1532":"/config/cache-options.html#cache-expires-cache-expires-in","1533":"/config/cache-options.html#cache-profile","1534":"/config/cache-options.html#example-configuration","1535":"/config/cache-options.html#related","1536":"/config/cache-options.html#next-steps","1537":"/config/cache-options.html#see-also","1538":"/config/claims-mapping.html#claims-mapping","1539":"/config/claims-mapping.html#overview","1540":"/config/claims-mapping.html#user-context-postgresql-context-variables","1541":"/config/claims-mapping.html#default-context-mapping","1542":"/config/claims-mapping.html#custom-context-mapping-example","1543":"/config/claims-mapping.html#access-in-postgresql","1544":"/config/claims-mapping.html#user-parameters","1545":"/config/claims-mapping.html#default-parameter-mapping","1546":"/config/claims-mapping.html#custom-parameter-mapping-example","1547":"/config/claims-mapping.html#example-function-using-parameters","1548":"/config/claims-mapping.html#complete-example","1549":"/config/claims-mapping.html#related","1550":"/config/claims-mapping.html#next-steps","1551":"/config/claims-mapping.html#see-also","1552":"/config/codegen.html#code-generation","1553":"/config/codegen.html#overview","1554":"/config/codegen.html#general-settings","1555":"/config/codegen.html#host-configuration","1556":"/config/codegen.html#comment-headers","1557":"/config/codegen.html#comment-header-styles","1558":"/config/codegen.html#response-options","1559":"/config/codegen.html#type-generation","1560":"/config/codegen.html#import-configuration","1561":"/config/codegen.html#function-parameters","1562":"/config/codegen.html#skip-options","1563":"/config/codegen.html#export-options","1564":"/config/codegen.html#headers-and-security","1565":"/config/codegen.html#file-headers","1566":"/config/codegen.html#what-gets-generated","1567":"/config/codegen.html#default-function-shape","1568":"/config/codegen.html#includestatuscode-false-—-direct-response","1569":"/config/codegen.html#omitautomaticparameters-true","1570":"/config/codegen.html#createseparatetypefile-true-—-type-only-files","1571":"/config/codegen.html#exporttypes-true-—-importable-interfaces","1572":"/config/codegen.html#exporturls-true-—-url-constants","1573":"/config/codegen.html#exporteventsources-true-—-sse-helpers","1574":"/config/codegen.html#importbaseurlfrom-importparsequeryfrom","1575":"/config/codegen.html#path-parameters","1576":"/config/codegen.html#useroutinenameinsteadofendpoint-true","1577":"/config/codegen.html#byschema-true-—-one-file-per-schema","1578":"/config/codegen.html#example-configurations","1579":"/config/codegen.html#minimal-examples-repo-style","1580":"/config/codegen.html#single-javascript-file-no-types","1581":"/config/codegen.html#production-sveltekit-vite-setup","1582":"/config/codegen.html#with-custom-headers-and-imports","1583":"/config/codegen.html#related","1584":"/config/codegen.html#next-steps","1585":"/config/codegen.html#see-also","1586":"/config/command-retry.html#command-retry","1587":"/config/command-retry.html#overview","1588":"/config/command-retry.html#settings-reference","1589":"/config/command-retry.html#strategy-settings","1590":"/config/command-retry.html#retry-sequence","1591":"/config/command-retry.html#default-error-codes","1592":"/config/command-retry.html#serialization-failures","1593":"/config/command-retry.html#connection-issues-class-08","1594":"/config/command-retry.html#resource-constraints-class-53","1595":"/config/command-retry.html#system-errors-class-57-58","1596":"/config/command-retry.html#lock-acquisition-issues-class-55","1597":"/config/command-retry.html#multiple-strategies","1598":"/config/command-retry.html#example-configuration","1599":"/config/command-retry.html#using-strategies-in-annotations","1600":"/config/command-retry.html#related","1601":"/config/command-retry.html#next-steps","1602":"/config/command-retry.html#see-also","1603":"/config/config-section.html#config-section","1604":"/config/config-section.html#settings-reference","1605":"/config/config-section.html#placeholder-forms-optional-and-required-3-17-0","1606":"/config/config-section.html#environment-variable-override","1607":"/config/config-section.html#environment-variable-parsing","1608":"/config/config-section.html#loading-from-env-file","1609":"/config/config-section.html#configuration-key-validation","1610":"/config/config-section.html#related","1611":"/config/config-section.html#next-steps","1612":"/config/connection.html#connection-settings","1613":"/config/connection.html#connection-strings","1614":"/config/connection.html#multiple-connections","1615":"/config/connection.html#using-environment-variables","1616":"/config/connection.html#connection-string-parameters","1617":"/config/connection.html#connection-settings-1","1618":"/config/connection.html#settings-reference","1619":"/config/connection.html#application-name-in-connection","1620":"/config/connection.html#json-application-name","1621":"/config/connection.html#connection-testing","1622":"/config/connection.html#retry-options","1623":"/config/connection.html#retry-settings-reference","1624":"/config/connection.html#default-error-codes","1625":"/config/connection.html#custom-retry-configuration","1626":"/config/connection.html#multi-host-connection-support","1627":"/config/connection.html#multi-host-connection-strings","1628":"/config/connection.html#target-session-attributes","1629":"/config/connection.html#multi-host-example","1630":"/config/connection.html#npgsqlrest-connection-options","1631":"/config/connection.html#npgsqlrest-connection-settings-reference","1632":"/config/connection.html#using-multiple-connections","1633":"/config/connection.html#complete-example","1634":"/config/connection.html#related","1635":"/config/connection.html#next-steps","1636":"/config/connection.html#see-also","1637":"/config/cors.html#cors","1638":"/config/cors.html#overview","1639":"/config/cors.html#settings-reference","1640":"/config/cors.html#allowed-origins","1641":"/config/cors.html#allow-all-origins","1642":"/config/cors.html#allowed-methods","1643":"/config/cors.html#allowed-headers","1644":"/config/cors.html#credentials","1645":"/config/cors.html#preflight-caching","1646":"/config/cors.html#example-configuration","1647":"/config/cors.html#related","1648":"/config/cors.html#next-steps","1649":"/config/data-protection.html#data-protection","1650":"/config/data-protection.html#overview","1651":"/config/data-protection.html#settings-reference","1652":"/config/data-protection.html#storage-options","1653":"/config/data-protection.html#default-storage","1654":"/config/data-protection.html#file-system-storage","1655":"/config/data-protection.html#database-storage","1656":"/config/data-protection.html#encryption-algorithms","1657":"/config/data-protection.html#validation-algorithms","1658":"/config/data-protection.html#application-name-scope","1659":"/config/data-protection.html#key-encryption-options","1660":"/config/data-protection.html#no-encryption-default","1661":"/config/data-protection.html#certificate-encryption","1662":"/config/data-protection.html#dpapi-encryption-windows-only","1663":"/config/data-protection.html#complete-example","1664":"/config/data-protection.html#column-encryption-with-annotations","1665":"/config/data-protection.html#related","1666":"/config/data-protection.html#next-steps","1667":"/config/data-protection.html#see-also","1668":"/config/error-handling.html#error-handling","1669":"/config/error-handling.html#overview","1670":"/config/error-handling.html#settings-reference","1671":"/config/error-handling.html#error-mapping-object","1672":"/config/error-handling.html#timeout-error-mapping","1673":"/config/error-handling.html#error-code-policies","1674":"/config/error-handling.html#default-error-code-mappings","1675":"/config/error-handling.html#response-fields","1676":"/config/error-handling.html#type-url","1677":"/config/error-handling.html#traceid","1678":"/config/error-handling.html#example-configuration","1679":"/config/error-handling.html#related","1680":"/config/error-handling.html#next-steps","1681":"/config/error-handling.html#see-also","1682":"/config/external-auth.html#external-oauth-authentication","1683":"/config/external-auth.html#overview","1684":"/config/external-auth.html#settings-reference","1685":"/config/external-auth.html#signinhtmltemplate","1686":"/config/external-auth.html#login-command","1687":"/config/external-auth.html#parameters","1688":"/config/external-auth.html#result-set-conventions","1689":"/config/external-auth.html#example-login-command-function","1690":"/config/external-auth.html#oauth-providers","1691":"/config/external-auth.html#google","1692":"/config/external-auth.html#linkedin","1693":"/config/external-auth.html#github","1694":"/config/external-auth.html#microsoft","1695":"/config/external-auth.html#facebook","1696":"/config/external-auth.html#provider-settings-reference","1697":"/config/external-auth.html#custom-providers","1698":"/config/external-auth.html#complete-example","1699":"/config/external-auth.html#related","1700":"/config/external-auth.html#next-steps","1701":"/config/forwarded-headers.html#forwarded-headers","1702":"/config/forwarded-headers.html#overview","1703":"/config/forwarded-headers.html#settings-reference","1704":"/config/forwarded-headers.html#why-forwarded-headers-matter","1705":"/config/forwarded-headers.html#processed-headers","1706":"/config/forwarded-headers.html#forward-limit","1707":"/config/forwarded-headers.html#known-proxies","1708":"/config/forwarded-headers.html#known-networks","1709":"/config/forwarded-headers.html#allowed-hosts","1710":"/config/forwarded-headers.html#example-configurations","1711":"/config/forwarded-headers.html#behind-nginx","1712":"/config/forwarded-headers.html#aws-alb-elb","1713":"/config/forwarded-headers.html#azure-app-service","1714":"/config/forwarded-headers.html#cloudflare-origin-server","1715":"/config/forwarded-headers.html#docker-kubernetes-with-internal-load-balancer","1716":"/config/forwarded-headers.html#development-trust-all","1717":"/config/forwarded-headers.html#security-considerations","1718":"/config/forwarded-headers.html#related","1719":"/config/forwarded-headers.html#next-steps","1720":"/config/http-client.html#http-client-options","1721":"/config/http-client.html#overview","1722":"/config/http-client.html#settings-reference","1723":"/config/http-client.html#how-http-types-work","1724":"/config/http-client.html#creating-an-http-type","1725":"/config/http-client.html#step-1-create-a-composite-type","1726":"/config/http-client.html#step-2-add-http-definition-comment","1727":"/config/http-client.html#step-3-use-in-a-function","1728":"/config/http-client.html#http-definition-format","1729":"/config/http-client.html#supported-methods","1730":"/config/http-client.html#example-definitions","1731":"/config/http-client.html#timeout-directives","1732":"/config/http-client.html#response-fields","1733":"/config/http-client.html#placeholder-substitution","1734":"/config/http-client.html#complete-example","1735":"/config/http-client.html#configuration","1736":"/config/http-client.html#sql-setup","1737":"/config/http-client.html#usage","1738":"/config/http-client.html#resolved-parameter-expressions","1739":"/config/http-client.html#retry-logic","1740":"/config/http-client.html#syntax","1741":"/config/http-client.html#behavior","1742":"/config/http-client.html#example","1743":"/config/http-client.html#response-caching","1744":"/config/http-client.html#self-referencing-calls-relative-paths","1745":"/config/http-client.html#parallel-query-composition","1746":"/config/http-client.html#zero-http-overhead","1747":"/config/http-client.html#internal-only-endpoints","1748":"/config/http-client.html#related","1749":"/config/http-client.html#next-steps","1750":"/config/http-client.html#see-also","1751":"/config/http-files.html#http-file-options","1752":"/config/http-files.html#overview","1753":"/config/http-files.html#settings-reference","1754":"/config/http-files.html#generation-options","1755":"/config/http-files.html#comment-header-styles","1756":"/config/http-files.html#file-mode","1757":"/config/http-files.html#http-files","1758":"/config/http-files.html#example-configuration","1759":"/config/http-files.html#omitting-automatic-parameters","1760":"/config/http-files.html#related","1761":"/config/http-files.html#next-steps","1762":"/config/health-checks.html#health-checks","1763":"/config/health-checks.html#overview","1764":"/config/health-checks.html#settings-reference","1765":"/config/health-checks.html#health-check-types","1766":"/config/health-checks.html#main-health-health","1767":"/config/health-checks.html#readiness-probe-health-ready","1768":"/config/health-checks.html#liveness-probe-health-live","1769":"/config/health-checks.html#cache-duration","1770":"/config/health-checks.html#database-health-check","1771":"/config/health-checks.html#using-a-different-connection","1772":"/config/health-checks.html#kubernetes-integration","1773":"/config/health-checks.html#deployment-configuration","1774":"/config/health-checks.html#probe-behavior","1775":"/config/health-checks.html#docker-compose-health-check","1776":"/config/health-checks.html#custom-paths","1777":"/config/health-checks.html#example-configurations","1778":"/config/health-checks.html#basic-configuration","1779":"/config/health-checks.html#production-with-caching","1780":"/config/health-checks.html#api-gateway-integration","1781":"/config/health-checks.html#without-database-check","1782":"/config/health-checks.html#response-format","1783":"/config/health-checks.html#related","1784":"/config/health-checks.html#next-steps","1785":"/config/#configuration-reference","1786":"/config/#reference-sections","1787":"/config/#core-settings","1788":"/config/#security","1789":"/config/#features","1790":"/config/#performance","1791":"/config/#infrastructure","1792":"/config/latest.html#latest-default-configuration-reference","1793":"/config/latest.html#related","1794":"/config/latest.html#core-settings","1795":"/config/latest.html#security","1796":"/config/latest.html#features","1797":"/config/latest.html#performance","1798":"/config/latest.html#infrastructure","1799":"/config/logging.html#logging","1800":"/config/logging.html#overview","1801":"/config/logging.html#log-levels","1802":"/config/logging.html#minimal-levels","1803":"/config/logging.html#console-output","1804":"/config/logging.html#file-output","1805":"/config/logging.html#postgresql-output","1806":"/config/logging.html#postgresql-command-parameters","1807":"/config/logging.html#opentelemetry-output","1808":"/config/logging.html#resource-attributes","1809":"/config/logging.html#output-template","1810":"/config/logging.html#complete-example","1811":"/config/logging.html#related","1812":"/config/logging.html#next-steps","1813":"/config/mcp.html#mcp-options","1814":"/config/mcp.html#overview","1815":"/config/mcp.html#options","1816":"/config/mcp.html#enabled","1817":"/config/mcp.html#urlpath","1818":"/config/mcp.html#servername","1819":"/config/mcp.html#serverversion","1820":"/config/mcp.html#instructions","1821":"/config/mcp.html#tooldescriptionsuffix","1822":"/config/mcp.html#ratelimiterpolicy","1823":"/config/mcp.html#allowedorigins","1824":"/config/mcp.html#how-it-works","1825":"/config/mcp.html#authentication-—-oauth-2-1-resource-server","1826":"/config/mcp.html#authorization-options","1827":"/config/mcp.html#requireauthorization","1828":"/config/mcp.html#authorizationservers","1829":"/config/mcp.html#scopessupported","1830":"/config/mcp.html#audience","1831":"/config/mcp.html#protectedresourcemetadatapath","1832":"/config/mcp.html#filtertoolsbyrole","1833":"/config/mcp.html#protected-resource-metadata-rfc-9728","1834":"/config/mcp.html#related","1835":"/config/npgsqlrest.html#npgsqlrest-options","1836":"/config/npgsqlrest.html#overview","1837":"/config/npgsqlrest.html#connection-settings","1838":"/config/npgsqlrest.html#schema-and-name-filtering","1839":"/config/npgsqlrest.html#filtering-examples","1840":"/config/npgsqlrest.html#comments-mode","1841":"/config/npgsqlrest.html#url-and-naming","1842":"/config/npgsqlrest.html#url-examples","1843":"/config/npgsqlrest.html#authorization","1844":"/config/npgsqlrest.html#logging","1845":"/config/npgsqlrest.html#notice-event-modes","1846":"/config/npgsqlrest.html#http-method-and-parameters","1847":"/config/npgsqlrest.html#default-behavior","1848":"/config/npgsqlrest.html#request-headers","1849":"/config/npgsqlrest.html#request-headers-modes","1850":"/config/npgsqlrest.html#connection-pooler-compatibility","1851":"/config/npgsqlrest.html#wrapintransaction","1852":"/config/npgsqlrest.html#beforeroutinecommands","1853":"/config/npgsqlrest.html#null-handling","1854":"/config/npgsqlrest.html#querystringnullhandling-values","1855":"/config/npgsqlrest.html#textresponsenullhandling-values","1856":"/config/npgsqlrest.html#json-timestamp-handling","1857":"/config/npgsqlrest.html#server-sent-events","1858":"/config/npgsqlrest.html#notice-level-behavior","1859":"/config/npgsqlrest.html#example-configuration","1860":"/config/npgsqlrest.html#related","1861":"/config/npgsqlrest.html#unbound-raise-warning","1862":"/config/npgsqlrest.html#environment-variables-in-annotation-values","1863":"/config/npgsqlrest.html#complete-example","1864":"/config/npgsqlrest.html#related-1","1865":"/config/npgsqlrest.html#next-steps","1866":"/config/passkey-auth.html#passkey-authentication","1867":"/config/passkey-auth.html#overview","1868":"/config/passkey-auth.html#how-it-works","1869":"/config/passkey-auth.html#three-authentication-flows","1870":"/config/passkey-auth.html#_1-registration-new-user-with-passkey","1871":"/config/passkey-auth.html#_2-add-passkey-existing-user","1872":"/config/passkey-auth.html#_3-login","1873":"/config/passkey-auth.html#settings-reference","1874":"/config/passkey-auth.html#general-settings","1875":"/config/passkey-auth.html#relying-party-settings","1876":"/config/passkey-auth.html#endpoint-paths","1877":"/config/passkey-auth.html#webauthn-settings","1878":"/config/passkey-auth.html#userverificationrequirement","1879":"/config/passkey-auth.html#residentkeyrequirement","1880":"/config/passkey-auth.html#attestationconveyance","1881":"/config/passkey-auth.html#sql-commands-reference","1882":"/config/passkey-auth.html#challengeaddexistingusercommand","1883":"/config/passkey-auth.html#challengeregistrationcommand","1884":"/config/passkey-auth.html#challengeauthenticationcommand","1885":"/config/passkey-auth.html#verifychallengecommand","1886":"/config/passkey-auth.html#authenticatedatacommand","1887":"/config/passkey-auth.html#completeaddexistingusercommand-completeregistrationcommand","1888":"/config/passkey-auth.html#completeauthenticatecommand","1889":"/config/passkey-auth.html#column-name-configuration","1890":"/config/passkey-auth.html#analytics-data","1891":"/config/passkey-auth.html#complete-example","1892":"/config/passkey-auth.html#minimal-configuration","1893":"/config/passkey-auth.html#full-configuration","1894":"/config/passkey-auth.html#related","1895":"/config/passkey-auth.html#next-steps","1896":"/config/openapi.html#openapi-options","1897":"/config/openapi.html#overview","1898":"/config/openapi.html#settings-reference","1899":"/config/openapi.html#document-info","1900":"/config/openapi.html#servers","1901":"/config/openapi.html#security-schemes","1902":"/config/openapi.html#bearer-token-authentication","1903":"/config/openapi.html#basic-authentication","1904":"/config/openapi.html#cookie-authentication","1905":"/config/openapi.html#api-key-in-header","1906":"/config/openapi.html#security-scheme-settings","1907":"/config/openapi.html#complete-example","1908":"/config/openapi.html#filters-new-in-3-15-0","1909":"/config/openapi.html#schema-and-name-filters","1910":"/config/openapi.html#filter-order","1911":"/config/openapi.html#partner-facing-document-example","1912":"/config/openapi.html#omitting-automatic-parameters","1913":"/config/openapi.html#related","1914":"/config/openapi.html#next-steps","1915":"/config/proxy.html#proxy-options","1916":"/config/proxy.html#overview","1917":"/config/proxy.html#settings-reference","1918":"/config/proxy.html#response-parameter-names","1919":"/config/proxy.html#proxy-modes","1920":"/config/proxy.html#passthrough-mode","1921":"/config/proxy.html#transform-mode","1922":"/config/proxy.html#response-parameters","1923":"/config/proxy.html#automatic-parameter-forwarding","1924":"/config/proxy.html#placement-follows-the-endpoint-shape-not-the-http-verb","1925":"/config/proxy.html#query-string-length-guard","1926":"/config/proxy.html#http-headers-user-context","1927":"/config/proxy.html#upload-forwarding","1928":"/config/proxy.html#key-features","1929":"/config/proxy.html#self-referencing-calls-relative-paths","1930":"/config/proxy.html#internal-only-endpoints","1931":"/config/proxy.html#complete-example","1932":"/config/proxy.html#related","1933":"/config/proxy.html#next-steps","1934":"/config/proxy.html#see-also","1935":"/config/response-compression.html#response-compression","1936":"/config/response-compression.html#overview","1937":"/config/response-compression.html#settings-reference","1938":"/config/response-compression.html#compression-levels","1939":"/config/response-compression.html#compression-algorithms","1940":"/config/response-compression.html#brotli","1941":"/config/response-compression.html#gzip-fallback","1942":"/config/response-compression.html#https-compression","1943":"/config/response-compression.html#default-mime-types","1944":"/config/response-compression.html#example-configuration","1945":"/config/response-compression.html#related","1946":"/config/response-compression.html#next-steps","1947":"/config/rate-limiter.html#rate-limiter","1948":"/config/rate-limiter.html#overview","1949":"/config/rate-limiter.html#settings-reference","1950":"/config/rate-limiter.html#policy-types","1951":"/config/rate-limiter.html#fixed-window-policy","1952":"/config/rate-limiter.html#sliding-window-policy","1953":"/config/rate-limiter.html#token-bucket-policy","1954":"/config/rate-limiter.html#concurrency-policy","1955":"/config/rate-limiter.html#per-user-rate-limiting-partition","1956":"/config/rate-limiter.html#partition-fields","1957":"/config/rate-limiter.html#source-types","1958":"/config/rate-limiter.html#per-policy-status-code-and-message","1959":"/config/rate-limiter.html#ready-to-use-login-throttle-policy","1960":"/config/rate-limiter.html#complete-example","1961":"/config/rate-limiter.html#rate-limiting-scope","1962":"/config/rate-limiter.html#related","1963":"/config/rate-limiter.html#next-steps","1964":"/config/rate-limiter.html#see-also","1965":"/config/routine-options.html#routine-options","1966":"/config/routine-options.html#overview","1967":"/config/routine-options.html#settings","1968":"/config/routine-options.html#custom-type-parameter-separator","1969":"/config/routine-options.html#language-filtering","1970":"/config/routine-options.html#include-specific-languages","1971":"/config/routine-options.html#exclude-additional-languages","1972":"/config/routine-options.html#common-postgresql-languages","1973":"/config/routine-options.html#nested-json-for-composite-types","1974":"/config/routine-options.html#resolve-nested-composite-types","1975":"/config/routine-options.html#complete-example","1976":"/config/routine-options.html#related","1977":"/config/routine-options.html#next-steps","1978":"/config/server.html#server-ssl-settings","1979":"/config/server.html#ssl-configuration","1980":"/config/server.html#settings-reference","1981":"/config/server.html#enabling-https","1982":"/config/server.html#https-redirection","1983":"/config/server.html#http-strict-transport-security-hsts","1984":"/config/server.html#kestrel-configuration","1985":"/config/server.html#certificate-configuration","1986":"/config/server.html#pfx-file","1987":"/config/server.html#pem-crt-with-key-file","1988":"/config/server.html#certificate-store-windows","1989":"/config/server.html#default-certificate","1990":"/config/server.html#connection-limits","1991":"/config/server.html#limits-reference","1992":"/config/server.html#http-2-settings","1993":"/config/server.html#http-3-settings","1994":"/config/server.html#additional-kestrel-options","1995":"/config/server.html#complete-example","1996":"/config/server.html#related","1997":"/config/server.html#next-steps","1998":"/config/sql-file-source.html#sql-file-source","1999":"/config/sql-file-source.html#overview","2000":"/config/sql-file-source.html#settings","2001":"/config/sql-file-source.html#enabled","2002":"/config/sql-file-source.html#filepattern","2003":"/config/sql-file-source.html#examples","2004":"/config/sql-file-source.html#commentsmode","2005":"/config/sql-file-source.html#commentscope","2006":"/config/sql-file-source.html#example","2007":"/config/sql-file-source.html#errormode","2008":"/config/sql-file-source.html#resultprefix","2009":"/config/sql-file-source.html#unnamedsinglecolumnset","2010":"/config/sql-file-source.html#nestedjsonforcompositetypes","2011":"/config/sql-file-source.html#logcommandtext","2012":"/config/sql-file-source.html#quick-start-example","2013":"/config/sql-file-source.html#related","2014":"/config/security-headers.html#security-headers","2015":"/config/security-headers.html#overview","2016":"/config/security-headers.html#settings-reference","2017":"/config/security-headers.html#x-content-type-options","2018":"/config/security-headers.html#x-frame-options","2019":"/config/security-headers.html#referrer-policy","2020":"/config/security-headers.html#content-security-policy","2021":"/config/security-headers.html#permissions-policy","2022":"/config/security-headers.html#cross-origin-policies","2023":"/config/security-headers.html#cross-origin-opener-policy","2024":"/config/security-headers.html#cross-origin-embedder-policy","2025":"/config/security-headers.html#cross-origin-resource-policy","2026":"/config/security-headers.html#example-configurations","2027":"/config/security-headers.html#basic-security-recommended-starting-point","2028":"/config/security-headers.html#api-only-application","2029":"/config/security-headers.html#full-protection-with-csp","2030":"/config/security-headers.html#related","2031":"/config/security-headers.html#next-steps","2032":"/config/static-files.html#static-files","2033":"/config/static-files.html#overview","2034":"/config/static-files.html#settings-reference","2035":"/config/static-files.html#authorization","2036":"/config/static-files.html#path-patterns","2037":"/config/static-files.html#content-parsing","2038":"/config/static-files.html#parse-content-settings-reference","2039":"/config/static-files.html#tag-replacement","2040":"/config/static-files.html#environment-variable-injection","2041":"/config/static-files.html#default-headers","2042":"/config/static-files.html#example-configuration","2043":"/config/static-files.html#related","2044":"/config/static-files.html#next-steps","2045":"/config/stats.html#postgresql-stats","2046":"/config/stats.html#overview","2047":"/config/stats.html#settings-reference","2048":"/config/stats.html#available-endpoints","2049":"/config/stats.html#routines-stats-stats-routines","2050":"/config/stats.html#tables-stats-stats-tables","2051":"/config/stats.html#indexes-stats-stats-indexes","2052":"/config/stats.html#activity-stats-activity","2053":"/config/stats.html#output-formats","2054":"/config/stats.html#html-format-default","2055":"/config/stats.html#json-format","2056":"/config/stats.html#per-request-format-override","2057":"/config/stats.html#security","2058":"/config/stats.html#require-authentication","2059":"/config/stats.html#role-based-access","2060":"/config/stats.html#caching","2061":"/config/stats.html#rate-limiting","2062":"/config/stats.html#schema-filtering","2063":"/config/stats.html#using-a-different-connection","2064":"/config/stats.html#custom-paths","2065":"/config/stats.html#example-configurations","2066":"/config/stats.html#development-open-access","2067":"/config/stats.html#production-secured","2068":"/config/stats.html#monitoring-integration","2069":"/config/stats.html#limited-schema-access","2070":"/config/stats.html#related","2071":"/config/stats.html#next-steps","2072":"/config/table-format.html#table-format-options","2073":"/config/table-format.html#overview","2074":"/config/table-format.html#general-settings","2075":"/config/table-format.html#html-table-handler","2076":"/config/table-format.html#example","2077":"/config/table-format.html#excel-table-handler","2078":"/config/table-format.html#example-1","2079":"/config/table-format.html#per-endpoint-overrides","2080":"/config/table-format.html#complete-example","2081":"/config/table-format.html#related","2082":"/config/table-format.html#next-steps","2083":"/config/table-format.html#see-also","2084":"/config/thread-pool.html#thread-pool","2085":"/config/thread-pool.html#overview","2086":"/config/thread-pool.html#settings-reference","2087":"/config/thread-pool.html#worker-threads-vs-completion-port-threads","2088":"/config/thread-pool.html#when-to-configure","2089":"/config/thread-pool.html#example-configuration","2090":"/config/thread-pool.html#related","2091":"/config/thread-pool.html#next-steps","2092":"/config/test-runner.html#test-runner","2093":"/config/test-runner.html#overview","2094":"/config/test-runner.html#settings","2095":"/config/test-runner.html#filepattern","2096":"/config/test-runner.html#filter","2097":"/config/test-runner.html#tag-and-excludetag","2098":"/config/test-runner.html#connectionname","2099":"/config/test-runner.html#maxparallelism","2100":"/config/test-runner.html#failfast","2101":"/config/test-runner.html#pertesttimeout","2102":"/config/test-runner.html#junitoutput","2103":"/config/test-runner.html#keep","2104":"/config/test-runner.html#detailedreport","2105":"/config/test-runner.html#allowempty","2106":"/config/test-runner.html#watch-mode","2107":"/config/test-runner.html#coverage-and-coveragethreshold","2108":"/config/test-runner.html#loggername","2109":"/config/test-runner.html#responsetemptable","2110":"/config/test-runner.html#debugtable-—-inspect-responses-after-the-run","2111":"/config/test-runner.html#steps","2112":"/config/test-runner.html#setup-and-teardown","2113":"/config/test-runner.html#exit-codes","2114":"/config/test-runner.html#related","2115":"/config/top-level.html#top-level-settings","2116":"/config/top-level.html#application-settings","2117":"/config/top-level.html#settings-reference","2118":"/config/top-level.html#urls-configuration","2119":"/config/top-level.html#startup-message-placeholders","2120":"/config/top-level.html#related","2121":"/config/top-level.html#next-steps","2122":"/config/uploads.html#upload-options","2123":"/config/uploads.html#overview","2124":"/config/uploads.html#general-settings","2125":"/config/uploads.html#upload-handlers-common-settings","2126":"/config/uploads.html#large-object-handler","2127":"/config/uploads.html#file-system-handler","2128":"/config/uploads.html#csv-upload-handler","2129":"/config/uploads.html#csv-row-command-parameters","2130":"/config/uploads.html#excel-upload-handler","2131":"/config/uploads.html#excel-row-command-parameters","2132":"/config/uploads.html#complete-example","2133":"/config/uploads.html#related","2134":"/config/uploads.html#blog-posts","2135":"/config/uploads.html#next-steps","2136":"/config/uploads.html#see-also","2137":"/config/validation.html#validation-options","2138":"/config/validation.html#overview","2139":"/config/validation.html#settings-reference","2140":"/config/validation.html#validation-types","2141":"/config/validation.html#rule-properties","2142":"/config/validation.html#default-rules","2143":"/config/validation.html#adding-custom-rules","2144":"/config/validation.html#regex-pattern-rule","2145":"/config/validation.html#length-validation-rules","2146":"/config/validation.html#complete-example","2147":"/config/validation.html#usage-with-annotations","2148":"/config/validation.html#programmatic-configuration","2149":"/config/validation.html#behavior","2150":"/config/validation.html#related","2151":"/config/validation.html#next-steps","2152":"/config/validation.html#see-also","2153":"/config/watch.html#watch-mode","2154":"/config/watch.html#overview","2155":"/config/watch.html#enabled","2156":"/config/watch.html#databasepollinginterval","2157":"/config/watch.html#server-watch-behavior","2158":"/config/watch.html#test-watch-behavior","2159":"/config/watch.html#related","2160":"/examples/#examples","2161":"/examples/#prerequisites","2162":"/examples/#getting-started","2163":"/examples/#available-examples","2164":"/examples/#function-based-examples-routinesource","2165":"/examples/#sql-file-examples-sqlfilesource","2166":"/examples/#mcp-server-sqlfilesource","2167":"/examples/#sql-test-runner","2168":"/examples/#available-commands","2169":"/examples/#next-steps","2170":"/guide/authentication.html#authentication","2171":"/guide/authentication.html#the-big-picture","2172":"/guide/authentication.html#step-1-configure-an-authentication-scheme","2173":"/guide/authentication.html#cookie-the-simplest","2174":"/guide/authentication.html#bearer-token","2175":"/guide/authentication.html#jwt","2176":"/guide/authentication.html#step-2-write-a-login-endpoint","2177":"/guide/authentication.html#verifying-the-password","2178":"/guide/authentication.html#choosing-a-scheme","2179":"/guide/authentication.html#how-claims-work","2180":"/guide/authentication.html#claims-are-just-the-login-columns","2181":"/guide/authentication.html#identity-claims","2182":"/guide/authentication.html#accessing-claims-in-your-endpoints","2183":"/guide/authentication.html#as-function-parameters","2184":"/guide/authentication.html#as-postgresql-context-variables","2185":"/guide/authentication.html#as-template-placeholders","2186":"/guide/authentication.html#logging-out","2187":"/guide/authentication.html#a-complete-worked-example","2188":"/guide/authentication.html#see-it-in-the-examples","2189":"/guide/authentication.html#related","2190":"/guide/annotations.html#comment-annotations-guide","2191":"/guide/annotations.html#how-annotations-work","2192":"/guide/annotations.html#basic-rules","2193":"/guide/annotations.html#optional-prefix","2194":"/guide/annotations.html#simple-example","2195":"/guide/annotations.html#the-http-annotation","2196":"/guide/annotations.html#syntax-variations","2197":"/guide/annotations.html#default-behavior","2198":"/guide/annotations.html#authorization-annotations","2199":"/guide/annotations.html#require-authentication","2200":"/guide/annotations.html#role-list-syntax","2201":"/guide/annotations.html#allow-anonymous-access","2202":"/guide/annotations.html#response-headers","2203":"/guide/annotations.html#request-parameter-configuration","2204":"/guide/annotations.html#query-string-vs-body","2205":"/guide/annotations.html#caching","2206":"/guide/annotations.html#raw-output-mode","2207":"/guide/annotations.html#combining-annotations","2208":"/guide/annotations.html#debugging-annotations","2209":"/guide/annotations.html#comments-mode","2210":"/guide/annotations.html#time-duration-formats","2211":"/guide/annotations.html#quick-reference","2212":"/guide/annotations.html#examples","2213":"/guide/annotations.html#common-patterns","2214":"/guide/annotations.html#public-read-protected-write","2215":"/guide/annotations.html#api-versioning-with-custom-paths","2216":"/guide/annotations.html#secure-sensitive-operations","2217":"/guide/annotations.html#nested-json-for-composite-types","2218":"/guide/annotations.html#rate-limiting","2219":"/guide/annotations.html#next-steps","2220":"/guide/changelog/#changelog","2221":"/guide/changelog/#version-3-19-latest","2222":"/guide/changelog/#version-3-18","2223":"/guide/changelog/#version-3-17","2224":"/guide/changelog/#version-3-16","2225":"/guide/changelog/#version-3-15","2226":"/guide/changelog/#version-3-14","2227":"/guide/changelog/#version-3-13","2228":"/guide/changelog/#version-3-12","2229":"/guide/changelog/#version-3-11","2230":"/guide/changelog/#version-3-10","2231":"/guide/changelog/#version-3-9","2232":"/guide/changelog/#version-3-8","2233":"/guide/changelog/#version-3-7","2234":"/guide/changelog/#version-3-6","2235":"/guide/changelog/#version-3-5","2236":"/guide/changelog/#version-3-4","2237":"/guide/changelog/#version-3-3","2238":"/guide/changelog/#version-3-2","2239":"/guide/changelog/#version-3-1","2240":"/guide/changelog/#version-3-0","2241":"/guide/changelog/v3.0.1.html#changelog-v3-0-1-2025-11-28","2242":"/guide/changelog/v3.0.1.html#version-3-0-1-2025-11-28","2243":"/guide/changelog/v3.0.0.html#changelog-v3-0-0-2025-11-27","2244":"/guide/changelog/v3.0.0.html#version-3-0-0-2025-11-27","2245":"/guide/changelog/v3.0.0.html#docker-jit-version","2246":"/guide/changelog/v3.0.0.html#net-10-target-framework","2247":"/guide/changelog/v3.0.0.html#tsclient-code-generation-improvements","2248":"/guide/changelog/v3.0.0.html#info-events-streaming-changes-server-sent-events","2249":"/guide/changelog/v3.0.0.html#name-refactor-changed-all-info-events-related-names-to-sse-to-better-reflect-their-purpose","2250":"/guide/changelog/v3.0.0.html#removed-self-scope-level","2251":"/guide/changelog/v3.0.0.html#new-feature-support-for-custom-notice-level","2252":"/guide/changelog/v3.0.0.html#other-comment-annotations-changes","2253":"/guide/changelog/v3.0.0.html#timeout-handling","2254":"/guide/changelog/v3.0.0.html#openapi-3-0-support","2255":"/guide/changelog/v3.0.0.html#error-handling-improvements","2256":"/guide/changelog/v3.0.0.html#metadata-query-improvements","2257":"/guide/changelog/v3.0.0.html#rate-limiter","2258":"/guide/changelog/v3.0.0.html#other-changes-and-fixes","2259":"/guide/changelog/v3.0.0.html#login-endpoint-changes","2260":"/guide/changelog/v3.1.1.html#changelog-v3-1-1-2025-12-15","2261":"/guide/changelog/v3.1.1.html#version-3-1-1-2025-12-15","2262":"/guide/changelog/v3.1.0.html#changelog-v3-1-0-2025-12-13","2263":"/guide/changelog/v3.1.0.html#version-3-1-0-2025-12-13","2264":"/guide/changelog/v3.1.0.html#http-types","2265":"/guide/changelog/v3.1.0.html#routine-caching-improvements","2266":"/guide/changelog/v3.1.0.html#multi-host-connection-support","2267":"/guide/changelog/v3.1.0.html#other-changes-and-fixes","2268":"/guide/changelog/v3.1.2.html#changelog-v3-1-2-2025-12-20","2269":"/guide/changelog/v3.1.2.html#version-3-1-2-2025-12-20","2270":"/guide/changelog/v3.1.2.html#performance-simd-accelerated-string-processing","2271":"/guide/changelog/v3.1.2.html#consistent-json-error-responses","2272":"/guide/changelog/v3.1.2.html#envfile-configuration-option","2273":"/guide/changelog/v3.1.2.html#tsclient-configurable-error-expression-and-type","2274":"/guide/changelog/v3.1.2.html#hybridcache-support","2275":"/guide/changelog/v3.1.3.html#changelog-v3-1-3-2025-12-21","2276":"/guide/changelog/v3.1.3.html#version-3-1-3-2025-12-21","2277":"/guide/changelog/v3.1.3.html#path-parameters-support","2278":"/guide/changelog/v3.1.3.html#tsclient-improvements","2279":"/guide/changelog/v3.1.3.html#hybridcache-configuration-keys-renamed","2280":"/guide/changelog/v3.10.0.html#changelog-v3-10-0-2026-02-25","2281":"/guide/changelog/v3.10.0.html#version-3-10-0-2026-02-25","2282":"/guide/changelog/v3.10.0.html#new-feature-resolved-parameter-expressions","2283":"/guide/changelog/v3.10.0.html#how-it-works","2284":"/guide/changelog/v3.10.0.html#behavior","2285":"/guide/changelog/v3.10.0.html#multiple-resolved-parameters","2286":"/guide/changelog/v3.10.0.html#resolved-parameters-in-url-headers-and-body","2287":"/guide/changelog/v3.10.0.html#new-feature-http-client-type-retry-logic","2288":"/guide/changelog/v3.10.0.html#syntax","2289":"/guide/changelog/v3.10.0.html#behavior-1","2290":"/guide/changelog/v3.10.0.html#example","2291":"/guide/changelog/v3.10.0.html#new-feature-data-protection-encrypt-decrypt-annotations","2292":"/guide/changelog/v3.10.0.html#encrypt-parameters","2293":"/guide/changelog/v3.10.0.html#decrypt-result-columns","2294":"/guide/changelog/v3.10.0.html#full-roundtrip-example","2295":"/guide/changelog/v3.10.0.html#annotation-aliases","2296":"/guide/changelog/v3.10.0.html#behavior-notes","2297":"/guide/changelog/v3.10.0.html#key-management","2298":"/guide/changelog/v3.11.0.html#changelog-v3-11-0-2026-03-10","2299":"/guide/changelog/v3.11.0.html#version-3-11-0-2026-03-10","2300":"/guide/changelog/v3.11.0.html#new-feature-proxy-out-annotation-post-execution-proxy","2301":"/guide/changelog/v3.11.0.html#syntax","2302":"/guide/changelog/v3.11.0.html#how-it-works","2303":"/guide/changelog/v3.11.0.html#basic-usage","2304":"/guide/changelog/v3.11.0.html#query-string-forwarding","2305":"/guide/changelog/v3.11.0.html#http-method-override","2306":"/guide/changelog/v3.11.0.html#custom-host","2307":"/guide/changelog/v3.11.0.html#error-handling","2308":"/guide/changelog/v3.11.0.html#configuration","2309":"/guide/changelog/v3.11.0.html#performance","2310":"/guide/changelog/v3.11.0.html#tsclient-proxy-out-endpoint-support","2311":"/guide/changelog/v3.11.1.html#changelog-v3-11-1-2026-03-13","2312":"/guide/changelog/v3.11.1.html#version-3-11-1-2026-03-13","2313":"/guide/changelog/v3.11.1.html#tsclient-proxy-passthrough-endpoint-support","2314":"/guide/changelog/v3.11.1.html#authorize-annotation-now-matches-user-id-and-user-name-claims","2315":"/guide/changelog/v3.12.0.html#changelog-v3-12-0-2026-03-23","2316":"/guide/changelog/v3.12.0.html#version-3-12-0-2026-03-23","2317":"/guide/changelog/v3.12.0.html#new-endpoint-source-plugin-npgsqlrest-sqlfilesource","2318":"/guide/changelog/v3.12.0.html#how-it-works","2319":"/guide/changelog/v3.12.0.html#single-command-files","2320":"/guide/changelog/v3.12.0.html#multi-command-files","2321":"/guide/changelog/v3.12.0.html#parameters","2322":"/guide/changelog/v3.12.0.html#virtual-parameters","2323":"/guide/changelog/v3.12.0.html#comments-and-annotations","2324":"/guide/changelog/v3.12.0.html#wire-protocol-introspection","2325":"/guide/changelog/v3.12.0.html#custom-composite-type-support","2326":"/guide/changelog/v3.12.0.html#unnamed-and-duplicate-columns","2327":"/guide/changelog/v3.12.0.html#url-path-derivation","2328":"/guide/changelog/v3.12.0.html#error-handling","2329":"/guide/changelog/v3.12.0.html#feature-parity","2330":"/guide/changelog/v3.12.0.html#configuration-reference","2331":"/guide/changelog/v3.12.0.html#new-annotations","2332":"/guide/changelog/v3.12.0.html#new-core-annotation-param-parameter-—-rename-and-retype-parameters","2333":"/guide/changelog/v3.12.0.html#param-default-values-for-sql-file-parameters","2334":"/guide/changelog/v3.12.0.html#param-rename-validation","2335":"/guide/changelog/v3.12.0.html#param-default-value-alias-for-default","2336":"/guide/changelog/v3.12.0.html#param-type-hints-for-sql-file-describe","2337":"/guide/changelog/v3.12.0.html#new-positional-annotation-returns-—-skip-describe-and-declare-return-type","2338":"/guide/changelog/v3.12.0.html#new-annotation-void-—-force-void-response","2339":"/guide/changelog/v3.12.0.html#new-comment-annotation-single","2340":"/guide/changelog/v3.12.0.html#positional-result-annotation-for-multi-command-files","2341":"/guide/changelog/v3.12.0.html#skipnonquerycommands-setting-and-skip-annotation","2342":"/guide/changelog/v3.12.0.html#skipnonquerycommands-default-true","2343":"/guide/changelog/v3.12.0.html#skip-annotation-aliases-skip-result-no-result","2344":"/guide/changelog/v3.12.0.html#new-core-annotation-internal-internal-only","2345":"/guide/changelog/v3.12.0.html#http-custom-types-self-referencing-calls","2346":"/guide/changelog/v3.12.0.html#self-referencing-calls-relative-path-support-for-proxy-and-http-client-types","2347":"/guide/changelog/v3.12.0.html#internal-self-call-optimization-zero-http-overhead","2348":"/guide/changelog/v3.12.0.html#composite-type-parameters-in-sql-files-—-no-sql-rewriting","2349":"/guide/changelog/v3.12.0.html#configuration-changes","2350":"/guide/changelog/v3.12.0.html#routinesource-enabled-configuration-option","2351":"/guide/changelog/v3.12.0.html#crudsource-disabled-by-default","2352":"/guide/changelog/v3.12.0.html#crudsource-no-longer-blocks-sqlfilesource","2353":"/guide/changelog/v3.12.0.html#dataprotection-disabled-by-default","2354":"/guide/changelog/v3.12.0.html#sqlfilesource-logcommandtext-setting","2355":"/guide/changelog/v3.12.0.html#tsclient-improvements","2356":"/guide/changelog/v3.12.0.html#tsclient-composite-type-support-for-sql-files","2357":"/guide/changelog/v3.12.0.html#tsclient-multi-command-sql-file-support","2358":"/guide/changelog/v3.12.0.html#tsclient-sql-file-comment-headers","2359":"/guide/changelog/v3.12.0.html#tsclient-type-alias-extraction-for-error-and-result-types","2360":"/guide/changelog/v3.12.0.html#tsclient-fix-skiptypes-generating-invalid-javascript","2361":"/guide/changelog/v3.12.0.html#bug-fixes-log-improvements","2362":"/guide/changelog/v3.12.0.html#graceful-shutdown-with-active-sse-connections","2363":"/guide/changelog/v3.12.0.html#downgrade-basic-auth-missing-header-log-to-debug","2364":"/guide/changelog/v3.12.0.html#improved-log-level-classification","2365":"/guide/changelog/v3.12.0.html#fix-separator-and-new-line-annotations-not-working-with-prefix","2366":"/guide/changelog/v3.12.0.html#aggregated-comment-annotation-logging","2367":"/guide/changelog/v3.12.0.html#fix-onlywithhttptag-mode-skips-files-before-describe","2368":"/guide/changelog/v3.12.0.html#internal-breaking-changes","2369":"/guide/changelog/v3.12.0.html#interface-refactoring-iendpointsource-iroutinesource","2370":"/guide/changelog/v3.12.0.html#composite-type-cache-public-api","2371":"/guide/changelog/v3.12.0.html#glob-pattern-enhancement-recursive-matching","2372":"/guide/changelog/v3.12.0.html#internal-changes","2373":"/guide/changelog/v3.13.0.html#changelog-v3-13-0-2026-04-24","2374":"/guide/changelog/v3.13.0.html#version-3-13-0-2026-04-24","2375":"/guide/changelog/v3.13.0.html#new-auth-schemes-named-additional-authentication-schemes","2376":"/guide/changelog/v3.13.0.html#breaking-legacy-auth-time-integer-fields-removed","2377":"/guide/changelog/v3.13.0.html#new-interval-notation-for-auth-time-fields","2378":"/guide/changelog/v3.13.0.html#breaking-ratelimiteroptions-policies-is-now-a-dict-not-an-array","2379":"/guide/changelog/v3.13.0.html#new-per-user-rate-limiting-partition-on-a-policy","2380":"/guide/changelog/v3.13.0.html#new-caching-profiles-cacheoptions-profiles-cache-profile-annotation","2381":"/guide/changelog/v3.13.0.html#never-expiring-infinite-cache-entries","2382":"/guide/changelog/v3.13.0.html#new-wrapintransaction-option-connection-pooler-compatibility","2383":"/guide/changelog/v3.13.0.html#new-beforeroutinecommands-option","2384":"/guide/changelog/v3.13.0.html#fix-400-bad-request-responses-are-no-longer-silent-in-logs","2385":"/guide/changelog/v3.13.0.html#docker-images-ubuntu-26-04-lts-base","2386":"/guide/changelog/v3.13.0.html#nuget-package-upgrades","2387":"/guide/changelog/v3.14.0.html#changelog-v3-14-0-2026-05-09","2388":"/guide/changelog/v3.14.0.html#version-3-14-0-2026-05-09","2389":"/guide/changelog/v3.14.0.html#removed-auto-crud-endpoint-generation-from-the-standalone-client","2390":"/guide/changelog/v3.14.0.html#what-s-new","2391":"/guide/changelog/v3.14.0.html#two-new-sse-annotations-sse-publish-and-sse-subscribe","2392":"/guide/changelog/v3.14.0.html#warning-when-a-raise-looks-like-a-missed-sse-publish","2393":"/guide/changelog/v3.14.0.html#reliable-sse-connection-handshake","2394":"/guide/changelog/v3.14.0.html#startup-error-when-claim-mapped-parameters-use-a-non-text-type","2395":"/guide/changelog/v3.14.0.html#warning-when-a-request-value-is-overridden-by-claim-auto-bind","2396":"/guide/changelog/v3.14.0.html#performance","2397":"/guide/changelog/v3.14.0.html#lower-allocation-json-conversion-for-arrays-and-composites","2398":"/guide/changelog/v3.14.0.html#estimated-impact-on-the-postgresql-rest-api-benchmark-2026-workloads","2399":"/guide/changelog/v3.14.0.html#utf-8-literals-for-json-markup-constants","2400":"/guide/changelog/v3.14.0.html#tighter-pipewriter-writes","2401":"/guide/changelog/v3.14.0.html#hardening-silent-failure-fixes","2402":"/guide/changelog/v3.14.0.html#arraypool-rent-now-in-try-finally","2403":"/guide/changelog/v3.14.0.html#multi-command-stringbuilder-rentals-always-released","2404":"/guide/changelog/v3.14.0.html#proxy-out-buffer-released-on-exception-path","2405":"/guide/changelog/v3.14.0.html#column-decryption-failures-now-logged-at-trace","2406":"/guide/changelog/v3.14.0.html#configuration","2407":"/guide/changelog/v3.14.0.html#test-suite","2408":"/guide/changelog/v3.15.1.html#changelog-v3-15-1-2026-05-11","2409":"/guide/changelog/v3.15.1.html#version-3-15-1-2026-05-11","2410":"/guide/changelog/v3.15.1.html#fix-named-auth-schemes-are-validated-by-type-not-by-name","2411":"/guide/changelog/v3.15.1.html#root-cause","2412":"/guide/changelog/v3.15.1.html#what-changed","2413":"/guide/changelog/v3.15.1.html#behavior-after-the-fix","2414":"/guide/changelog/v3.15.1.html#fix-config-and-validate-cli-commands-now-honor-validateconfigkeys-mode","2415":"/guide/changelog/v3.15.1.html#what-changed-1","2416":"/guide/changelog/v3.15.1.html#behavior-after-the-fix-1","2417":"/guide/changelog/v3.15.1.html#tests","2418":"/guide/changelog/v3.15.0.html#changelog-v3-15-0","2419":"/guide/changelog/v3.15.0.html#version-3-15-0-2026-05-11","2420":"/guide/changelog/v3.15.0.html#fix-named-cookie-schemes-now-actually-authenticate-requests","2421":"/guide/changelog/v3.15.0.html#root-cause","2422":"/guide/changelog/v3.15.0.html#what-changed","2423":"/guide/changelog/v3.15.0.html#behavior-after-the-fix","2424":"/guide/changelog/v3.15.0.html#cookie-precedence-order-when-both-are-present","2425":"/guide/changelog/v3.15.0.html#feature-cookiesamesite-and-cookiesecure-config","2426":"/guide/changelog/v3.15.0.html#root-level-main-cookie-scheme","2427":"/guide/changelog/v3.15.0.html#per-scheme-override-under-auth-schemes","2428":"/guide/changelog/v3.15.0.html#validation-and-warnings","2429":"/guide/changelog/v3.15.0.html#cross-origin-checklist-for-an-external-web-api-setup","2430":"/guide/changelog/v3.15.0.html#feature-openapi-filtering-for-partner-facing-documents","2431":"/guide/changelog/v3.15.0.html#config-level-filters","2432":"/guide/changelog/v3.15.0.html#per-routine-openapi-comment-annotation","2433":"/guide/changelog/v3.15.0.html#filter-order-and-composition","2434":"/guide/changelog/v3.15.0.html#partner-facing-config-example","2435":"/guide/changelog/v3.15.0.html#tests","2436":"/guide/changelog/v3.15.0.html#configuration-summary","2437":"/guide/changelog/v3.15.0.html#out-of-scope","2438":"/guide/changelog/v3.15.0.html#partner-system-integration-readiness-—-what-s-still-missing","2439":"/guide/changelog/v3.15.2.html#changelog-v3-15-2-2026-05-11","2440":"/guide/changelog/v3.15.2.html#version-3-15-2-2026-05-11","2441":"/guide/changelog/v3.15.2.html#fix-ratelimiteroptions-policies-validates-by-type-not-by-name","2442":"/guide/changelog/v3.15.2.html#root-cause","2443":"/guide/changelog/v3.15.2.html#what-changed","2444":"/guide/changelog/v3.15.2.html#behavior-after-the-fix","2445":"/guide/changelog/v3.15.2.html#fix-cacheoptions-profiles-validates-by-shape","2446":"/guide/changelog/v3.15.2.html#improvement-validationoptions-rules-now-validates-rule-bodies","2447":"/guide/changelog/v3.15.2.html#tests","2448":"/guide/changelog/v3.15.2.html#files-touched","2449":"/guide/changelog/v3.16.0.html#changelog-v3-16-0-2026-05-20","2450":"/guide/changelog/v3.16.0.html#version-3-16-0-2026-05-20","2451":"/guide/changelog/v3.16.0.html#fix-datetime-parsers-are-now-host-tz-independent","2452":"/guide/changelog/v3.16.0.html#why-this-was-hidden-so-long","2453":"/guide/changelog/v3.16.0.html#tryparsedate-left-alone","2454":"/guide/changelog/v3.16.0.html#breaking-change","2455":"/guide/changelog/v3.16.0.html#opt-out-npgsqlrestoptions-jsontimestampsareutc","2456":"/guide/changelog/v3.16.0.html#tests","2457":"/guide/changelog/v3.16.0.html#files-touched","2458":"/guide/changelog/v3.16.1.html#changelog-v3-16-1-2026-06-01","2459":"/guide/changelog/v3.16.1.html#version-3-16-1-2026-06-01","2460":"/guide/changelog/v3.16.1.html#what-changed","2461":"/guide/changelog/v3.16.1.html#iroutinecache-gains-getorcreateasync-additive","2462":"/guide/changelog/v3.16.1.html#stampede-protection-per-backend","2463":"/guide/changelog/v3.16.1.html#middleware-paths","2464":"/guide/changelog/v3.16.1.html#effect","2465":"/guide/changelog/v3.16.1.html#test-coverage-read-this-honestly","2466":"/guide/changelog/v3.16.1.html#known-limitations","2467":"/guide/changelog/v3.16.2.html#changelog-v3-16-2-2026-06-02","2468":"/guide/changelog/v3.16.2.html#version-3-16-2-2026-06-02","2469":"/guide/changelog/v3.16.2.html#what-changed","2470":"/guide/changelog/v3.16.2.html#per-policy-statuscode-statusmessage-overrides","2471":"/guide/changelog/v3.16.2.html#new-ready-to-use-login-throttle-default-policy","2472":"/guide/changelog/v3.16.2.html#test-coverage","2473":"/guide/changelog/v3.16.3.html#changelog-v3-16-3-2026-06-03","2474":"/guide/changelog/v3.16.3.html#version-3-16-3-2026-06-03","2475":"/guide/changelog/v3.16.3.html#what-changed","2476":"/guide/changelog/v3.16.3.html#availableenvvars-under-staticfiles-parsecontentoptions","2477":"/guide/changelog/v3.16.3.html#security-note","2478":"/guide/changelog/v3.17.0.html#changelog-v3-17-0","2479":"/guide/changelog/v3.17.0.html#version-3-17-0-2026-06-13","2480":"/guide/changelog/v3.17.0.html#new-features","2481":"/guide/changelog/v3.17.0.html#mcp-model-context-protocol-server-—-new-npgsqlrest-mcp-plugin","2482":"/guide/changelog/v3.17.0.html#plugin-extension-points-on-routineendpoint","2483":"/guide/changelog/v3.17.0.html#name-annotation-substitution-can-resolve-allowlisted-environment-variables","2484":"/guide/changelog/v3.17.0.html#tsclient-exporttypes-—-emit-request-response-interfaces-with-the-export-keyword","2485":"/guide/changelog/v3.17.0.html#breaking-changes","2486":"/guide/changelog/v3.17.0.html#⚠️-safer-configuration-defaults-cors-credentials-passkey-requirements-connection-testing","2487":"/guide/changelog/v3.17.0.html#⚠️-openapi-annotation-handling-moved-out-of-core-c-api-only","2488":"/guide/changelog/v3.17.0.html#fixes","2489":"/guide/changelog/v3.17.0.html#internal-only-endpoints-are-excluded-from-generated-client-artifacts-and-api-docs","2490":"/guide/changelog/v3.17.0.html#🔴-security-sse-scope-hints-were-not-enforced-—-hint-scoped-events-were-delivered-to-every-subscriber","2491":"/guide/changelog/v3.17.0.html#malformed-json-request-body-now-returns-400-bad-request-was-404-not-found","2492":"/guide/changelog/v3.17.0.html#passkey-webauthn-diagnostics-cbor-decode-failures-are-no-longer-silent","2493":"/guide/changelog/v3.17.0.html#name-parameter-value-placeholders-case-insensitive-matching-typo-warning","2494":"/guide/changelog/v3.17.0.html#bare-cached-no-parameter-list-used-only-the-routine-name-as-the-cache-key","2495":"/guide/changelog/v3.17.0.html#hybridcache-cache-key-contains-invalid-content-on-nullable-cached-params","2496":"/guide/changelog/v3.17.0.html#json-command-parameters-accept-json-jsonb-or-text","2497":"/guide/changelog/v3.17.0.html#optional-name-and-required-name-environment-variable-placeholders","2498":"/guide/changelog/v3.17.0.html#tests","2499":"/guide/changelog/v3.18.0.html#changelog-v3-18-0","2500":"/guide/changelog/v3.18.0.html#version-3-18-0-2026-06-23","2501":"/guide/changelog/v3.18.0.html#new-features","2502":"/guide/changelog/v3.18.0.html#http-custom-type-response-caching-—-cache-directive","2503":"/guide/changelog/v3.18.0.html#fixes","2504":"/guide/changelog/v3.18.0.html#http-custom-type-request-fired-once-per-composite-field-on-database-function-endpoints","2505":"/guide/changelog/v3.18.0.html#http-type-directives-after-the-headers-were-silently-ignored","2506":"/guide/changelog/v3.18.0.html#tests","2507":"/guide/changelog/v3.18.1.html#changelog-v3-18-1","2508":"/guide/changelog/v3.18.1.html#version-3-18-1-2026-06-23","2509":"/guide/changelog/v3.18.1.html#what-changed","2510":"/guide/changelog/v3.18.1.html#why","2511":"/guide/changelog/v3.18.1.html#behavior-change-to-note","2512":"/guide/changelog/v3.18.1.html#notes","2513":"/guide/changelog/v3.18.1.html#tests","2514":"/guide/changelog/v3.18.2.html#changelog-v3-18-2","2515":"/guide/changelog/v3.18.2.html#version-3-18-2-2026-06-26","2516":"/guide/changelog/v3.18.2.html#what-changed","2517":"/guide/changelog/v3.18.2.html#_1-large-auto-filled-values-no-longer-break-the-proxy-query-string","2518":"/guide/changelog/v3.18.2.html#_2-body-parameter-name-reliably-matches-http-custom-type-fields","2519":"/guide/changelog/v3.18.2.html#_3-typescript-client-generation-for-body-parameter-name","2520":"/guide/changelog/v3.18.2.html#_4-opt-in-omit-automatic-server-filled-parameters-from-generated-request-shapes","2521":"/guide/changelog/v3.18.2.html#why-these-go-together","2522":"/guide/changelog/v3.18.2.html#notes","2523":"/guide/changelog/v3.18.2.html#tests","2524":"/guide/changelog/v3.19.0.html#changelog-v3-19-0","2525":"/guide/changelog/v3.19.0.html#version-3-19-0-2026-07-03","2526":"/guide/changelog/v3.19.0.html#_1-sql-test-runner-test","2527":"/guide/changelog/v3.19.0.html#how-it-works","2528":"/guide/changelog/v3.19.0.html#test-file-anatomy","2529":"/guide/changelog/v3.19.0.html#http-blocks-—-invoking-endpoints","2530":"/guide/changelog/v3.19.0.html#the-response-temp-table","2531":"/guide/changelog/v3.19.0.html#reusing-scripts-i-and-ir-includes","2532":"/guide/changelog/v3.19.0.html#setup-and-teardown-and-named-steps","2533":"/guide/changelog/v3.19.0.html#per-file-setup-teardown-and-connection-header-annotations","2534":"/guide/changelog/v3.19.0.html#a-dedicated-test-database","2535":"/guide/changelog/v3.19.0.html#reporting","2536":"/guide/changelog/v3.19.0.html#logging","2537":"/guide/changelog/v3.19.0.html#configuration-reference-testrunner-section","2538":"/guide/changelog/v3.19.0.html#project-layout","2539":"/guide/changelog/v3.19.0.html#_2-sqlfilesource-skippattern-—-exclude-files-from-endpoint-discovery","2540":"/guide/changelog/v3.19.0.html#_3-named-parameters-in-sql-files-name","2541":"/guide/changelog/v3.19.0.html#_4-watch-mode-watch","2542":"/guide/changelog/v3.19.0.html#watching-the-routine-source-—-database-polling","2543":"/guide/changelog/v3.19.0.html#server-watch","2544":"/guide/changelog/v3.19.0.html#_5-mute-an-individual-logger-with-off-in-log-minimallevels","2545":"/guide/changelog/v3.19.0.html#notes","2546":"/guide/changelog/v3.19.0.html#tests","2547":"/guide/changelog/v3.2.0.html#changelog-v3-2-0-2025-12-22","2548":"/guide/changelog/v3.2.0.html#version-3-2-0-2025-12-22","2549":"/guide/changelog/v3.2.0.html#reverse-proxy-feature","2550":"/guide/changelog/v3.2.0.html#docker-image-with-bun-runtime","2551":"/guide/changelog/v3.2.0.html#configuration-default-fixes","2552":"/guide/changelog/v3.2.1.html#changelog-v3-2-1-2025-12-23","2553":"/guide/changelog/v3.2.1.html#version-3-2-1-2025-12-23","2554":"/guide/changelog/v3.2.1.html#jwt-json-web-token-authentication-support","2555":"/guide/changelog/v3.2.1.html#path-parameters-support-for-httpfiles-and-openapi-plugins","2556":"/guide/changelog/v3.2.2.html#changelog-v3-2-2-2025-12-24","2557":"/guide/changelog/v3.2.2.html#version-3-2-2-2025-12-24","2558":"/guide/changelog/v3.2.2.html#bug-fixes","2559":"/guide/changelog/v3.2.2.html#performance-improvements","2560":"/guide/changelog/v3.2.3.html#changelog-v3-2-3-2025-12-30","2561":"/guide/changelog/v3.2.3.html#version-3-2-3-2025-12-30","2562":"/guide/changelog/v3.2.3.html#tsclient-plugin","2563":"/guide/changelog/v3.2.4.html#changelog-v3-2-4-2025-01-03","2564":"/guide/changelog/v3.2.4.html#version-3-2-4-2025-01-03","2565":"/guide/changelog/v3.2.4.html#dataprotection-key-encryption-options","2566":"/guide/changelog/v3.2.4.html#tsclient-plugin","2567":"/guide/changelog/v3.2.4.html#npgsqlrestclient","2568":"/guide/changelog/v3.2.6.html#changelog-v3-2-6-2025-01-04","2569":"/guide/changelog/v3.2.6.html#version-3-2-6-2025-01-04","2570":"/guide/changelog/v3.2.7.html#changelog-v3-2-7-2025-01-05","2571":"/guide/changelog/v3.2.7.html#version-3-2-7-2025-01-05","2572":"/guide/changelog/v3.2.7.html#upload-handlers-user-context-and-claims-support","2573":"/guide/changelog/v3.3.0.html#changelog-v3-3-0-2025-01-08","2574":"/guide/changelog/v3.3.0.html#version-3-3-0-2025-01-08","2575":"/guide/changelog/v3.3.0.html#parameter-validation","2576":"/guide/changelog/v3.3.0.html#linux-arm64-build-and-docker-image","2577":"/guide/changelog/v3.3.0.html#config-command-shows-default-values","2578":"/guide/changelog/v3.3.1.html#changelog-v3-3-1-2025-01-14","2579":"/guide/changelog/v3.3.1.html#version-3-3-1-2025-01-14","2580":"/guide/changelog/v3.3.1.html#proxy-response-caching","2581":"/guide/changelog/v3.3.1.html#optional-prefix-for-comment-annotations","2582":"/guide/changelog/v3.3.1.html#added-a-logo-on-client-app-commands","2583":"/guide/changelog/v3.4.0.html#changelog-v3-4-0-2025-01-16","2584":"/guide/changelog/v3.4.0.html#version-3-4-0-2025-01-16","2585":"/guide/changelog/v3.4.0.html#composite-type-support","2586":"/guide/changelog/v3.4.0.html#_1-arrays-of-composite-types","2587":"/guide/changelog/v3.4.0.html#_2-nested-json-for-composite-type-columns-opt-in","2588":"/guide/changelog/v3.4.0.html#multidimensional-array-support","2589":"/guide/changelog/v3.4.0.html#json-escaping-fix-for-arrays-and-tuple-strings","2590":"/guide/changelog/v3.4.0.html#tsclient-plugin-composite-type-interface-generation","2591":"/guide/changelog/v3.4.0.html#optional-prefix-extended-to-annotation-parameters","2592":"/guide/changelog/v3.4.1.html#changelog-v3-4-1-2025-01-15","2593":"/guide/changelog/v3.4.1.html#version-3-4-1-2025-01-15","2594":"/guide/changelog/v3.4.1.html#configuration-options-for-null-handling","2595":"/guide/changelog/v3.4.1.html#querystringnullhandling","2596":"/guide/changelog/v3.4.1.html#textresponsenullhandling","2597":"/guide/changelog/v3.4.1.html#bug-fixes","2598":"/guide/changelog/v3.4.2.html#changelog-v3-4-2-2025-01-15","2599":"/guide/changelog/v3.4.2.html#version-3-4-2-2025-01-15","2600":"/guide/changelog/v3.4.2.html#bug-fixes","2601":"/guide/changelog/v3.4.3.html#changelog-v3-4-3-2025-01-16","2602":"/guide/changelog/v3.4.3.html#version-3-4-3-2025-01-16","2603":"/guide/changelog/v3.4.3.html#bug-fixes","2604":"/guide/changelog/v3.4.3.html#performance-improvements","2605":"/guide/changelog/v3.4.4.html#changelog-v3-4-4-2025-01-17","2606":"/guide/changelog/v3.4.4.html#version-3-4-4-2025-01-17","2607":"/guide/changelog/v3.4.4.html#deep-nested-composite-type-resolution-resolvenestedcompositetypes","2608":"/guide/changelog/v3.4.4.html#bug-fixes","2609":"/guide/changelog/v3.4.5.html#changelog-v3-4-5-2025-01-19","2610":"/guide/changelog/v3.4.5.html#version-3-4-5-2025-01-19","2611":"/guide/changelog/v3.4.5.html#npgsqlrest-tsclient-deep-nested-composite-type-support","2612":"/guide/changelog/v3.4.6.html#changelog-v3-4-6-2025-01-21","2613":"/guide/changelog/v3.4.6.html#version-3-4-6-2025-01-21","2614":"/guide/changelog/v3.4.6.html#endpoint-execution-performance-optimizations","2615":"/guide/changelog/v3.4.6.html#comprehensive-cancellationtoken-propagation","2616":"/guide/changelog/v3.4.8.html#changelog-v3-4-8-2025-01-26","2617":"/guide/changelog/v3.4.8.html#version-3-4-8-2025-01-26","2618":"/guide/changelog/v3.4.8.html#fix-single-field-composite-type-returns","2619":"/guide/changelog/v3.4.7.html#changelog-v3-4-7-2025-01-21","2620":"/guide/changelog/v3.4.7.html#version-3-4-7-2025-01-21","2621":"/guide/changelog/v3.4.7.html#type-category-lookup-optimization","2622":"/guide/changelog/v3.4.7.html#additional-allocation-optimizations","2623":"/guide/changelog/v3.5.0.html#changelog-v3-5-0-2025-01-28","2624":"/guide/changelog/v3.5.0.html#version-3-5-0-2025-01-28","2625":"/guide/changelog/v3.5.0.html#new-feature-passkeyauth-webauthn-fido2","2626":"/guide/changelog/v3.5.0.html#bugfix-response-compression-for-static-files","2627":"/guide/changelog/v3.5.0.html#added-client-integration-tests","2628":"/guide/changelog/v3.5.0.html#separate-core-and-client-logging","2629":"/guide/changelog/v3.5.0.html#debug-log-filtering-options","2630":"/guide/changelog/v3.6.0.html#changelog-v3-6-0-2025-02-01","2631":"/guide/changelog/v3.6.0.html#version-3-6-0-2025-02-01","2632":"/guide/changelog/v3.6.0.html#new-feature-security-headers-middleware","2633":"/guide/changelog/v3.6.0.html#new-feature-forwarded-headers-middleware","2634":"/guide/changelog/v3.6.0.html#new-feature-health-check-endpoints","2635":"/guide/changelog/v3.6.0.html#new-feature-postgresql-statistics-endpoints","2636":"/guide/changelog/v3.6.1.html#changelog-v3-6-1-2025-02-02","2637":"/guide/changelog/v3.6.1.html#version-3-6-1-2025-02-02","2638":"/guide/changelog/v3.6.1.html#fixes","2639":"/guide/changelog/v3.6.2.html#changelog-v3-6-2-2025-02-02","2640":"/guide/changelog/v3.6.2.html#version-3-6-2-2025-02-02","2641":"/guide/changelog/v3.6.2.html#fixes","2642":"/guide/changelog/v3.6.2.html#breaking-changes","2643":"/guide/changelog/v3.6.3.html#changelog-v3-6-3-2025-02-03","2644":"/guide/changelog/v3.6.3.html#version-3-6-3-2025-02-03","2645":"/guide/changelog/v3.6.3.html#fixes","2646":"/guide/changelog/v3.7.0.html#changelog-v3-7-0-2025-02-07","2647":"/guide/changelog/v3.7.0.html#version-3-7-0-2025-02-07","2648":"/guide/changelog/v3.7.0.html#fixes","2649":"/guide/changelog/v3.7.0.html#new-features","2650":"/guide/changelog/v3.7.0.html#new-feature-pluggable-table-format-renderers","2651":"/guide/changelog/v3.7.0.html#html-table-format","2652":"/guide/changelog/v3.7.0.html#excel-table-format","2653":"/guide/changelog/v3.7.0.html#per-endpoint-custom-parameters","2654":"/guide/changelog/v3.7.0.html#tsclient-per-endpoint-url-export-control","2655":"/guide/changelog/v3.7.0.html#tsclient-export-url","2656":"/guide/changelog/v3.7.0.html#tsclient-url-only","2657":"/guide/changelog/v3.8.0.html#changelog-v3-8-0-2025-02-11","2658":"/guide/changelog/v3.8.0.html#version-3-8-0-2025-02-11","2659":"/guide/changelog/v3.8.0.html#new-feature-configuration-key-validation","2660":"/guide/changelog/v3.8.0.html#removed","2661":"/guide/changelog/v3.8.0.html#kestrel-configuration-validation","2662":"/guide/changelog/v3.8.0.html#syntax-highlighted-config-output","2663":"/guide/changelog/v3.8.0.html#improved-cli-error-handling","2664":"/guide/changelog/v3.8.0.html#universal-fallback-handler-for-all-upload-handlers","2665":"/guide/changelog/v3.8.0.html#optional-path-parameters","2666":"/guide/changelog/v3.8.0.html#fixes","2667":"/guide/changelog/v3.8.0.html#machine-readable-cli-commands-for-tool-integration","2668":"/guide/changelog/v3.8.0.html#version-json","2669":"/guide/changelog/v3.8.0.html#validate-json","2670":"/guide/changelog/v3.8.0.html#config-schema","2671":"/guide/changelog/v3.8.0.html#annotations","2672":"/guide/changelog/v3.8.0.html#endpoints","2673":"/guide/changelog/v3.8.0.html#config-updated","2674":"/guide/changelog/v3.8.0.html#stats-endpoints-format-query-string-override","2675":"/guide/changelog/v3.9.0.html#changelog-v3-9-0-2026-02-23","2676":"/guide/changelog/v3.9.0.html#version-3-9-0-2026-02-23","2677":"/guide/changelog/v3.9.0.html#commented-configuration-output-config","2678":"/guide/changelog/v3.9.0.html#configuration-search-and-filter-config-filter","2679":"/guide/changelog/v3.9.0.html#cli-improvements","2680":"/guide/configuration.html#configuration-guide","2681":"/guide/configuration.html#configuration-sources","2682":"/guide/configuration.html#default-values","2683":"/guide/configuration.html#configuration-files","2684":"/guide/configuration.html#default-configuration-files","2685":"/guide/configuration.html#optional-configuration-files","2686":"/guide/configuration.html#configuration-file-format","2687":"/guide/configuration.html#environment-variables","2688":"/guide/configuration.html#optional-and-required-placeholders","2689":"/guide/configuration.html#enabling-environment-variable-binding","2690":"/guide/configuration.html#environment-variable-naming-rules","2691":"/guide/configuration.html#command-line-arguments","2692":"/guide/configuration.html#command-line-syntax-rules","2693":"/guide/configuration.html#exploring-configuration","2694":"/guide/configuration.html#generating-a-default-configuration-file","2695":"/guide/configuration.html#searching-for-settings","2696":"/guide/configuration.html#configuration-validation","2697":"/guide/configuration.html#configuration-precedence-example","2698":"/guide/configuration.html#quick-reference","2699":"/guide/configuration.html#common-command-line-overrides","2700":"/guide/configuration.html#exploring-configuration-1","2701":"/guide/configuration.html#configuration-structure-overview","2702":"/guide/configuration.html#top-level-settings","2703":"/guide/configuration.html#urls-configuration","2704":"/guide/configuration.html#startup-message","2705":"/guide/configuration.html#config-section-options","2706":"/guide/configuration.html#next-steps","2707":"/guide/faq.html#faq-troubleshooting","2708":"/guide/faq.html#general","2709":"/guide/faq.html#what-is-npgsqlrest","2710":"/guide/faq.html#what-postgresql-versions-are-supported","2711":"/guide/faq.html#what-net-version-is-required","2712":"/guide/faq.html#is-it-safe-from-sql-injection","2713":"/guide/faq.html#how-does-npgsqlrest-compare-to-postgrest-or-supabase","2714":"/guide/faq.html#can-i-use-it-inside-an-existing-asp-net-core-application","2715":"/guide/faq.html#installation-setup","2716":"/guide/faq.html#how-do-i-install-npgsqlrest","2717":"/guide/faq.html#how-do-i-run-it-in-docker","2718":"/guide/faq.html#how-do-i-connect-to-my-database","2719":"/guide/faq.html#can-i-use-environment-variables-for-configuration","2720":"/guide/faq.html#endpoints","2721":"/guide/faq.html#my-function-doesn-t-appear-as-an-endpoint","2722":"/guide/faq.html#my-sql-file-doesn-t-appear-as-an-endpoint","2723":"/guide/faq.html#an-endpoint-exists-but-i-get-404-—-why","2724":"/guide/faq.html#why-are-parameter-and-column-names-camelcased-how-do-i-turn-that-off","2725":"/guide/faq.html#my-query-returns-one-row-—-why-do-i-get-an-array","2726":"/guide/faq.html#how-do-i-return-plain-text-html-or-csv-instead-of-json","2727":"/guide/faq.html#how-do-i-customize-the-endpoint-url-path","2728":"/guide/faq.html#how-do-i-restrict-access-to-an-endpoint","2729":"/guide/faq.html#can-i-expose-tables-and-views-directly-without-writing-any-sql","2730":"/guide/faq.html#parameters","2731":"/guide/faq.html#named-or-positional-parameters-in-sql-files-—-which-should-i-use","2732":"/guide/faq.html#how-do-i-make-a-parameter-optional","2733":"/guide/faq.html#how-do-i-get-the-authenticated-user-s-id-into-a-query","2734":"/guide/faq.html#error-could-not-determine-data-type-of-parameter","2735":"/guide/faq.html#authentication","2736":"/guide/faq.html#what-authentication-methods-are-supported","2737":"/guide/faq.html#how-do-i-set-up-jwt-authentication","2738":"/guide/faq.html#testing","2739":"/guide/faq.html#how-do-i-test-my-endpoints","2740":"/guide/faq.html#can-tests-run-against-a-temporary-database-instead-of-my-real-one","2741":"/guide/faq.html#my-test-fixtures-need-half-the-database-inserted-first-—-is-there-a-better-way","2742":"/guide/faq.html#is-there-a-watch-mode","2743":"/guide/faq.html#performance","2744":"/guide/faq.html#how-fast-is-it","2745":"/guide/faq.html#how-do-i-enable-caching","2746":"/guide/faq.html#how-do-i-enable-response-compression","2747":"/guide/faq.html#how-do-i-set-up-rate-limiting","2748":"/guide/faq.html#debugging-logging","2749":"/guide/faq.html#how-do-i-see-which-endpoints-are-created-and-what-options-they-have","2750":"/guide/faq.html#how-do-i-log-the-sql-each-endpoint-executes-at-runtime","2751":"/guide/faq.html#how-do-i-see-the-metadata-queries-npgsqlrest-runs-at-startup","2752":"/guide/faq.html#how-do-i-completely-silence-a-logger","2753":"/guide/faq.html#troubleshooting","2754":"/guide/faq.html#startup-warning-unknown-configuration-key","2755":"/guide/faq.html#error-permission-denied-for-schema","2756":"/guide/faq.html#timeout-errors-504-gateway-timeout","2757":"/guide/faq.html#encrypted-data-is-unreadable-after-restart","2758":"/guide/faq.html#leftover-abcde-test-databases","2759":"/guide/http-types.html#http-custom-types","2760":"/guide/http-types.html#how-it-works","2761":"/guide/http-types.html#enabling-the-http-client","2762":"/guide/http-types.html#defining-and-using-a-type","2763":"/guide/http-types.html#reading-the-response","2764":"/guide/http-types.html#dynamic-requests-with-placeholders","2765":"/guide/http-types.html#timeouts-retries-and-caching","2766":"/guide/http-types.html#multiple-calls-in-parallel","2767":"/guide/http-types.html#self-calls-composing-your-own-endpoints","2768":"/guide/http-types.html#secrets-and-server-side-values","2769":"/guide/http-types.html#configuration","2770":"/guide/http-types.html#see-it-in-the-examples","2771":"/guide/http-types.html#related","2772":"/guide/#overview","2773":"/guide/#declarative-approach","2774":"/guide/#plain-sql-files","2775":"/guide/#postgresql-routines-functions-and-procedures","2776":"/guide/#technology-distribution","2777":"/guide/installation.html#npgsqlrest-installation-guide","2778":"/guide/installation.html#download-executable","2779":"/guide/installation.html#manual-installation","2780":"/guide/installation.html#command-line-download","2781":"/guide/installation.html#windows-x64","2782":"/guide/installation.html#linux-x64","2783":"/guide/installation.html#linux-arm64","2784":"/guide/installation.html#macos-arm64","2785":"/guide/installation.html#command-line-basic-commands","2786":"/guide/installation.html#npm-installation","2787":"/guide/installation.html#docker-installation","2788":"/guide/installation.html#standard-image-aot","2789":"/guide/installation.html#jit-image","2790":"/guide/installation.html#arm64-image","2791":"/guide/installation.html#bun-runtime-image","2792":"/guide/installation.html#building-from-source","2793":"/guide/installation.html#next-steps","2794":"/guide/logging.html#logging","2795":"/guide/logging.html#the-channel-map","2796":"/guide/logging.html#recipes","2797":"/guide/logging.html#see-which-endpoints-exist-and-why","2798":"/guide/logging.html#see-every-sql-command-endpoints-execute","2799":"/guide/logging.html#debug-discovery-why-isn-t-my-function-file-picked-up","2800":"/guide/logging.html#watch-the-test-runner-mute-everything-else","2801":"/guide/logging.html#silence-a-channel-completely","2802":"/guide/logging.html#postgresql-messages-in-your-logs","2803":"/guide/logging.html#logging-into-postgresql","2804":"/guide/logging.html#files-opentelemetry-and-production","2805":"/guide/logging.html#related","2806":"/guide/proxy.html#proxy-endpoints","2807":"/guide/proxy.html#how-it-works","2808":"/guide/proxy.html#enabling-the-proxy","2809":"/guide/proxy.html#passthrough-mode","2810":"/guide/proxy.html#transform-mode","2811":"/guide/proxy.html#where-the-request-goes-target-url","2812":"/guide/proxy.html#forwarding-headers-claims-and-ip","2813":"/guide/proxy.html#forward-proxy-send-a-function-result-upstream","2814":"/guide/proxy.html#configuration","2815":"/guide/proxy.html#a-complete-example-cached-ai-gateway","2816":"/guide/proxy.html#see-it-in-the-examples","2817":"/guide/proxy.html#related","2818":"/guide/quick-start.html#quick-start","2819":"/guide/quick-start.html#prerequisites","2820":"/guide/quick-start.html#step-1-create-your-first-endpoint","2821":"/guide/quick-start.html#option-a-sql-file-recommended","2822":"/guide/quick-start.html#option-b-postgresql-function","2823":"/guide/quick-start.html#step-2-run-npgsqlrest","2824":"/guide/quick-start.html#step-3-anonymous-endpoint-and-verbose-logging","2825":"/guide/quick-start.html#step-4-create-configuration-file","2826":"/guide/quick-start.html#next-steps","2827":"/guide/sse.html#server-sent-events-sse","2828":"/guide/sse.html#how-sse-works","2829":"/guide/sse.html#creating-a-publisher-endpoint","2830":"/guide/sse.html#subscribing-from-the-browser","2831":"/guide/sse.html#who-receives-events-scope","2832":"/guide/sse.html#which-raise-level-fires-event-level","2833":"/guide/sse.html#targeting-specific-recipients","2834":"/guide/sse.html#splitting-publish-from-subscribe","2835":"/guide/sse.html#configuration","2836":"/guide/sse.html#a-complete-example-real-time-chat","2837":"/guide/sse.html#see-it-in-the-examples","2838":"/guide/sse.html#related","2839":"/guide/sql-files.html#sql-file-endpoints","2840":"/guide/sql-files.html#how-it-works","2841":"/guide/sql-files.html#configuration","2842":"/guide/sql-files.html#single-command-files","2843":"/guide/sql-files.html#http-verb-detection","2844":"/guide/sql-files.html#parameters","2845":"/guide/sql-files.html#named-parameters-name","2846":"/guide/sql-files.html#positional-parameters-n","2847":"/guide/sql-files.html#type-hints","2848":"/guide/sql-files.html#default-values","2849":"/guide/sql-files.html#virtual-parameters-define-param","2850":"/guide/sql-files.html#multi-command-files","2851":"/guide/sql-files.html#result-rules","2852":"/guide/sql-files.html#positional-annotations","2853":"/guide/sql-files.html#void","2854":"/guide/sql-files.html#returns-—-skip-describe","2855":"/guide/sql-files.html#do-blocks-and-limitations","2856":"/guide/sql-files.html#existing-features-work-unchanged","2857":"/guide/sql-files.html#the-dev-loop-watch-mode","2858":"/guide/sql-files.html#sql-files-vs-functions","2859":"/guide/sql-files.html#related","2860":"/guide/testing.html#testing","2861":"/guide/testing.html#quick-start","2862":"/guide/testing.html#how-it-works","2863":"/guide/testing.html#test-file-anatomy","2864":"/guide/testing.html#assertions","2865":"/guide/testing.html#http-blocks-invoking-endpoints","2866":"/guide/testing.html#the-response-table","2867":"/guide/testing.html#transactions-when-to-begin-rollback","2868":"/guide/testing.html#fixtures-without-inserting-the-whole-database-deferrable-constraints","2869":"/guide/testing.html#reusing-sql-includes","2870":"/guide/testing.html#per-file-annotations","2871":"/guide/testing.html#setup-teardown-and-named-steps","2872":"/guide/testing.html#scenario-dedicated-test-database-per-run","2873":"/guide/testing.html#scenario-template-database-and-per-test-isolation","2874":"/guide/testing.html#scenario-external-migration-runners","2875":"/guide/testing.html#scenario-docker","2876":"/guide/testing.html#scenario-testing-least-privilege-polp-setups","2877":"/guide/testing.html#filtering-and-tags","2878":"/guide/testing.html#watch-mode","2879":"/guide/testing.html#endpoint-coverage","2880":"/guide/testing.html#reporting-logging-ci","2881":"/guide/testing.html#troubleshooting","2882":"/guide/testing.html#reference"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[3,1,44],"1":[5,3,111],"2":[3,3,19],"3":[1,3,44],"4":[2,1,21],"5":[1,2,5],"6":[1,2,1],"7":[2,3,32],"8":[2,3,11],"9":[5,3,25],"10":[1,2,21],"11":[1,2,24],"12":[2,2,10],"13":[1,1,24],"14":[1,1,24],"15":[1,1,1],"16":[4,2,42],"17":[2,2,20],"18":[3,2,33],"19":[4,2,49],"20":[4,2,48],"21":[2,2,35],"22":[6,2,48],"23":[3,2,19],"24":[4,2,10],"25":[1,1,32],"26":[1,1,22],"27":[2,1,16],"28":[2,1,7],"29":[3,1,25],"30":[1,3,22],"31":[2,3,56],"32":[2,3,23],"33":[2,5,52],"34":[2,5,32],"35":[2,5,50],"36":[1,3,1],"37":[3,4,69],"38":[6,4,77],"39":[5,4,58],"40":[5,4,67],"41":[1,3,75],"42":[1,3,16],"43":[2,3,27],"44":[3,1,17],"45":[1,3,24],"46":[2,3,9],"47":[1,3,1],"48":[3,4,50],"49":[2,4,19],"50":[3,4,42],"51":[1,3,53],"52":[3,3,22],"53":[1,3,17],"54":[2,3,14],"55":[2,1,17],"56":[1,2,22],"57":[3,2,20],"58":[3,2,29],"59":[1,2,1],"60":[8,3,49],"61":[4,3,58],"62":[2,3,59],"63":[1,2,67],"64":[2,2,38],"65":[1,2,22],"66":[2,2,25],"67":[2,2,6],"68":[3,1,18],"69":[1,3,9],"70":[1,3,1],"71":[3,4,34],"72":[3,4,22],"73":[1,3,24],"74":[2,3,83],"75":[10,5,66],"76":[1,3,16],"77":[2,3,26],"78":[2,1,21],"79":[1,2,13],"80":[2,2,7],"81":[2,2,27],"82":[1,2,1],"83":[2,3,21],"84":[3,3,20],"85":[4,3,14],"86":[5,3,12],"87":[1,2,52],"88":[2,2,46],"89":[1,2,16],"90":[2,2,11],"91":[3,1,16],"92":[1,3,27],"93":[1,3,1],"94":[5,4,16],"95":[5,4,16],"96":[5,4,16],"97":[2,4,16],"98":[1,3,21],"99":[2,3,4],"100":[2,3,8],"101":[2,1,67],"102":[1,2,40],"103":[1,2,1],"104":[2,3,43],"105":[5,3,50],"106":[5,3,73],"107":[5,3,44],"108":[1,2,76],"109":[1,2,63],"110":[1,2,29],"111":[2,2,10],"112":[1,1,9],"113":[1,1,23],"114":[1,1,1],"115":[2,2,34],"116":[4,2,35],"117":[4,2,23],"118":[3,2,20],"119":[4,2,65],"120":[1,1,32],"121":[2,1,50],"122":[1,1,24],"123":[2,1,20],"124":[2,1,8],"125":[2,1,19],"126":[1,2,4],"127":[1,2,1],"128":[3,3,53],"129":[3,3,18],"130":[1,2,10],"131":[2,2,13],"132":[2,1,15],"133":[1,2,75],"134":[2,2,18],"135":[1,2,1],"136":[2,3,40],"137":[3,3,25],"138":[3,3,13],"139":[1,2,24],"140":[2,2,35],"141":[1,2,27],"142":[2,2,11],"143":[2,2,6],"144":[1,1,17],"145":[1,1,7],"146":[1,1,1],"147":[3,2,12],"148":[2,2,13],"149":[2,2,13],"150":[1,1,23],"151":[1,1,18],"152":[2,1,6],"153":[2,1,6],"154":[2,1,9],"155":[1,2,28],"156":[3,2,39],"157":[1,5,46],"158":[3,2,20],"159":[1,4,36],"160":[1,4,16],"161":[2,4,13],"162":[3,4,19],"163":[2,4,10],"164":[1,2,28],"165":[2,1,73],"166":[1,2,14],"167":[3,2,63],"168":[2,2,85],"169":[2,2,25],"170":[1,2,40],"171":[1,1,16],"172":[1,1,2],"173":[1,1,26],"174":[1,1,49],"175":[3,1,100],"176":[1,1,22],"177":[1,1,37],"178":[1,1,2],"179":[1,1,41],"180":[8,1,36],"181":[1,1,12],"182":[2,1,63],"183":[2,2,1],"184":[1,4,89],"185":[3,2,1],"186":[1,5,77],"187":[3,2,41],"188":[1,2,99],"189":[1,2,16],"190":[2,2,11],"191":[2,2,8],"192":[3,1,16],"193":[1,3,7],"194":[1,3,1],"195":[2,4,15],"196":[2,4,14],"197":[1,3,23],"198":[1,3,16],"199":[2,3,6],"200":[2,3,7],"201":[3,1,16],"202":[1,3,32],"203":[1,3,40],"204":[2,3,6],"205":[1,3,1],"206":[3,4,65],"207":[5,4,52],"208":[4,4,52],"209":[3,4,80],"210":[2,3,52],"211":[2,3,46],"212":[2,3,113],"213":[2,3,94],"214":[2,3,180],"215":[3,3,108],"216":[1,3,43],"217":[1,3,27],"218":[2,3,12],"219":[2,3,7],"220":[2,1,45],"221":[5,2,20],"222":[2,2,1],"223":[3,4,71],"224":[1,4,17],"225":[2,4,14],"226":[2,4,35],"227":[2,4,40],"228":[3,4,14],"229":[3,4,21],"230":[1,4,24],"231":[1,4,14],"232":[2,4,11],"233":[3,4,14],"234":[1,4,5],"235":[1,4,11],"236":[3,4,17],"237":[2,4,29],"238":[3,4,42],"239":[3,4,54],"240":[1,4,6],"241":[1,1,13],"242":[1,1,2],"243":[1,1,24],"244":[2,1,52],"245":[2,1,36],"246":[1,1,1],"247":[2,2,28],"248":[3,2,27],"249":[2,2,21],"250":[4,2,26],"251":[4,2,28],"252":[4,2,21],"253":[2,1,27],"254":[3,3,26],"255":[3,3,28],"256":[5,3,34],"257":[5,3,34],"258":[4,3,53],"259":[1,1,17],"260":[2,1,17],"261":[1,1,39],"262":[1,1,8],"263":[5,1,62],"264":[7,1,45],"265":[3,1,22],"266":[1,1,23],"267":[3,1,19],"268":[1,3,29],"269":[2,3,50],"270":[1,3,1],"271":[4,4,22],"272":[2,4,16],"273":[2,4,12],"274":[2,4,19],"275":[6,4,12],"276":[3,3,1],"277":[3,6,46],"278":[4,6,25],"279":[2,3,23],"280":[2,3,28],"281":[1,3,17],"282":[1,1,14],"283":[1,1,4],"284":[3,1,17],"285":[2,4,18],"286":[4,4,54],"287":[1,1,1],"288":[4,2,41],"289":[4,2,29],"290":[4,2,30],"291":[3,2,38],"292":[3,2,42],"293":[1,1,23],"294":[2,1,10],"295":[2,1,7],"296":[1,1,53],"297":[5,1,103],"298":[2,1,116],"299":[3,1,61],"300":[2,1,51],"301":[2,3,59],"302":[2,3,69],"303":[2,3,33],"304":[6,1,52],"305":[2,7,80],"306":[6,7,89],"307":[2,1,101],"308":[9,3,144],"309":[10,3,130],"310":[2,3,129],"311":[2,1,1],"312":[5,3,67],"313":[5,3,65],"314":[5,3,23],"315":[1,1,29],"316":[2,1,45],"317":[1,1,74],"318":[1,1,27],"319":[2,2,91],"320":[7,1,124],"321":[1,1,1],"322":[9,2,50],"323":[4,2,28],"324":[11,2,59],"325":[4,2,41],"326":[2,1,26],"327":[1,1,61],"328":[1,1,23],"329":[1,1,4],"330":[4,1,27],"331":[1,1,1],"332":[2,2,50],"333":[3,2,50],"334":[4,2,77],"335":[4,2,66],"336":[2,1,47],"337":[1,1,56],"338":[1,1,36],"339":[2,1,18],"340":[1,2,14],"341":[1,2,1],"342":[3,3,15],"343":[3,3,16],"344":[3,3,14],"345":[1,2,10],"346":[2,2,15],"347":[1,1,76],"348":[1,1,36],"349":[7,1,44],"350":[1,1,1],"351":[5,2,52],"352":[6,2,51],"353":[2,2,24],"354":[5,2,45],"355":[2,1,21],"356":[1,1,29],"357":[2,1,35],"358":[1,2,21],"359":[1,2,1],"360":[3,3,39],"361":[4,3,42],"362":[1,2,44],"363":[4,2,47],"364":[5,2,43],"365":[2,7,31],"366":[2,7,47],"367":[1,2,15],"368":[2,2,20],"369":[1,1,65],"370":[1,1,63],"371":[1,1,1],"372":[6,2,50],"373":[4,2,33],"374":[3,2,57],"375":[5,2,29],"376":[5,1,73],"377":[6,1,46],"378":[1,7,78],"379":[6,7,24],"380":[1,7,41],"381":[4,7,16],"382":[2,1,55],"383":[6,1,72],"384":[1,1,71],"385":[1,1,32],"386":[3,1,85],"387":[3,3,70],"388":[5,3,148],"389":[2,8,41],"390":[2,3,174],"391":[1,3,1],"392":[3,4,21],"393":[5,4,31],"394":[6,4,53],"395":[5,3,103],"396":[1,3,40],"397":[1,1,13],"398":[1,1,2],"399":[1,1,7],"400":[1,1,1],"401":[2,2,37],"402":[4,2,12],"403":[2,2,13],"404":[2,1,18],"405":[3,3,25],"406":[3,3,28],"407":[3,3,20],"408":[3,3,84],"409":[1,1,36],"410":[1,1,17],"411":[2,1,8],"412":[2,1,34],"413":[1,2,9],"414":[1,2,96],"415":[2,2,89],"416":[2,2,1],"417":[6,4,24],"418":[5,4,28],"419":[6,4,43],"420":[4,4,29],"421":[7,4,51],"422":[2,2,43],"423":[5,2,107],"424":[2,2,32],"425":[1,2,1],"426":[3,3,55],"427":[2,3,57],"428":[2,3,58],"429":[2,2,68],"430":[1,2,30],"431":[1,2,23],"432":[2,2,8],"433":[1,1,20],"434":[1,1,8],"435":[1,1,35],"436":[6,1,185],"437":[2,1,1],"438":[2,3,58],"439":[2,3,83],"440":[2,1,1],"441":[5,3,23],"442":[4,3,24],"443":[5,3,27],"444":[4,3,27],"445":[6,3,47],"446":[2,1,82],"447":[2,1,73],"448":[4,3,132],"449":[3,3,67],"450":[1,1,1],"451":[3,2,33],"452":[2,2,116],"453":[5,2,109],"454":[4,2,87],"455":[1,1,26],"456":[1,1,35],"457":[2,1,8],"458":[4,1,44],"459":[1,4,9],"460":[1,4,27],"461":[2,4,1],"462":[4,6,41],"463":[2,6,35],"464":[2,6,37],"465":[1,4,1],"466":[5,5,43],"467":[6,5,35],"468":[6,5,34],"469":[2,4,61],"470":[2,4,32],"471":[1,4,16],"472":[2,4,12],"473":[3,1,26],"474":[1,3,8],"475":[1,3,1],"476":[3,4,34],"477":[3,4,31],"478":[3,4,35],"479":[4,4,56],"480":[1,3,97],"481":[1,3,16],"482":[2,3,4],"483":[2,3,7],"484":[1,1,18],"485":[1,1,4],"486":[1,1,1],"487":[3,2,32],"488":[4,2,34],"489":[2,2,46],"490":[3,2,36],"491":[3,2,31],"492":[3,2,33],"493":[3,2,72],"494":[1,1,29],"495":[1,1,10],"496":[2,1,16],"497":[3,1,19],"498":[1,3,8],"499":[1,3,24],"500":[1,3,1],"501":[2,4,14],"502":[4,4,19],"503":[3,4,38],"504":[1,3,18],"505":[1,3,17],"506":[2,3,8],"507":[4,1,20],"508":[1,4,10],"509":[1,4,1],"510":[3,5,40],"511":[3,5,31],"512":[1,4,29],"513":[1,4,16],"514":[2,4,8],"515":[3,1,34],"516":[1,3,12],"517":[1,3,14],"518":[2,3,15],"519":[1,3,1],"520":[4,4,48],"521":[4,4,32],"522":[3,4,21],"523":[4,4,32],"524":[1,3,27],"525":[1,3,16],"526":[2,3,16],"527":[2,1,104],"528":[1,2,72],"529":[1,2,108],"530":[1,2,1],"531":[10,3,76],"532":[3,3,23],"533":[7,3,32],"534":[8,2,63],"535":[1,2,40],"536":[2,1,9],"537":[1,2,21],"538":[1,2,1],"539":[3,3,35],"540":[2,3,38],"541":[3,3,33],"542":[2,3,37],"543":[4,3,30],"544":[4,3,70],"545":[2,3,40],"546":[2,2,22],"547":[1,2,14],"548":[2,2,10],"549":[3,1,27],"550":[1,3,9],"551":[1,3,25],"552":[1,3,1],"553":[5,4,22],"554":[4,4,22],"555":[3,4,20],"556":[2,3,32],"557":[1,3,16],"558":[2,3,8],"559":[2,1,39],"560":[1,2,41],"561":[1,2,1],"562":[5,3,30],"563":[6,3,26],"564":[5,3,12],"565":[3,3,53],"566":[3,3,31],"567":[1,2,69],"568":[1,2,33],"569":[2,1,18],"570":[1,2,21],"571":[1,2,1],"572":[3,3,13],"573":[3,3,12],"574":[3,3,16],"575":[1,2,38],"576":[3,2,27],"577":[2,2,56],"578":[1,2,15],"579":[2,2,13],"580":[2,2,6],"581":[1,1,32],"582":[1,1,68],"583":[3,1,46],"584":[1,1,64],"585":[2,2,56],"586":[2,2,59],"587":[1,1,115],"588":[1,1,32],"589":[2,1,18],"590":[1,2,4],"591":[1,2,1],"592":[3,3,49],"593":[2,3,22],"594":[2,3,27],"595":[1,2,23],"596":[1,2,18],"597":[2,2,10],"598":[1,1,16],"599":[1,1,13],"600":[1,1,1],"601":[4,2,12],"602":[4,2,13],"603":[2,2,13],"604":[2,2,12],"605":[1,1,10],"606":[2,1,15],"607":[1,1,18],"608":[1,1,4],"609":[4,1,32],"610":[1,1,1],"611":[2,2,36],"612":[2,2,28],"613":[3,2,36],"614":[5,2,65],"615":[1,1,60],"616":[2,2,35],"617":[1,1,29],"618":[1,1,48],"619":[1,1,39],"620":[1,1,1],"621":[4,2,46],"622":[3,2,52],"623":[2,2,24],"624":[2,1,71],"625":[1,1,45],"626":[1,1,31],"627":[3,1,19],"628":[1,3,8],"629":[1,3,11],"630":[1,3,1],"631":[5,4,18],"632":[2,4,17],"633":[3,4,17],"634":[1,3,21],"635":[2,3,11],"636":[3,1,54],"637":[1,3,26],"638":[1,3,28],"639":[2,3,40],"640":[1,3,1],"641":[2,4,58],"642":[4,4,18],"643":[6,4,34],"644":[2,4,24],"645":[3,4,23],"646":[5,3,98],"647":[1,3,21],"648":[2,3,14],"649":[1,1,20],"650":[3,1,166],"651":[1,1,11],"652":[3,1,13],"653":[4,3,41],"654":[5,3,28],"655":[2,1,17],"656":[2,1,43],"657":[1,1,1],"658":[5,2,47],"659":[6,2,48],"660":[3,2,26],"661":[3,2,26],"662":[6,2,31],"663":[3,1,125],"664":[2,4,70],"665":[3,4,62],"666":[4,4,86],"667":[1,1,22],"668":[4,2,53],"669":[4,2,75],"670":[1,1,21],"671":[2,1,10],"672":[2,1,6],"673":[2,1,54],"674":[1,2,21],"675":[1,2,49],"676":[1,2,1],"677":[3,3,37],"678":[3,3,21],"679":[3,3,78],"680":[1,2,25],"681":[2,2,14],"682":[2,2,9],"683":[1,1,51],"684":[2,1,51],"685":[1,1,29],"686":[5,1,37],"687":[1,1,37],"688":[1,1,12],"689":[2,1,55],"690":[1,2,54],"691":[7,2,68],"692":[1,2,21],"693":[2,1,43],"694":[1,2,54],"695":[1,2,85],"696":[1,2,60],"697":[1,2,22],"698":[2,1,32],"699":[2,2,37],"700":[1,2,47],"701":[1,2,52],"702":[1,2,17],"703":[2,1,37],"704":[1,2,84],"705":[1,2,69],"706":[2,2,63],"707":[1,2,20],"708":[2,1,40],"709":[1,2,41],"710":[1,2,47],"711":[5,2,51],"712":[1,2,18],"713":[2,1,43],"714":[1,2,57],"715":[1,2,41],"716":[1,2,35],"717":[1,2,17],"718":[1,1,27],"719":[1,1,16],"720":[1,1,80],"721":[1,1,1],"722":[2,2,54],"723":[3,2,71],"724":[2,2,33],"725":[1,1,23],"726":[2,1,22],"727":[2,1,7],"728":[2,1,13],"729":[1,2,3],"730":[1,2,5],"731":[1,2,1],"732":[3,3,13],"733":[5,3,37],"734":[5,3,32],"735":[4,3,28],"736":[4,3,30],"737":[1,2,46],"738":[3,3,18],"739":[6,3,13],"740":[1,2,16],"741":[2,2,23],"742":[2,2,7],"743":[1,1,8],"744":[1,1,2],"745":[1,1,29],"746":[2,1,38],"747":[3,1,115],"748":[2,1,60],"749":[3,1,10],"750":[2,4,35],"751":[4,4,36],"752":[2,4,31],"753":[4,4,34],"754":[3,1,8],"755":[2,4,27],"756":[3,4,38],"757":[4,4,46],"758":[3,4,26],"759":[2,1,12],"760":[4,3,46],"761":[3,3,66],"762":[5,3,66],"763":[6,3,46],"764":[2,3,69],"765":[6,3,51],"766":[4,3,53],"767":[2,3,35],"768":[3,3,63],"769":[2,1,14],"770":[4,3,55],"771":[3,3,81],"772":[5,3,84],"773":[6,3,68],"774":[2,3,73],"775":[4,3,43],"776":[3,3,73],"777":[4,1,60],"778":[3,1,23],"779":[1,1,32],"780":[2,1,19],"781":[2,3,55],"782":[4,3,55],"783":[1,7,22],"784":[4,3,74],"785":[1,7,28],"786":[3,3,73],"787":[1,6,24],"788":[3,3,56],"789":[1,6,26],"790":[1,1,22],"791":[2,1,22],"792":[2,1,12],"793":[2,1,8],"794":[2,1,18],"795":[1,2,6],"796":[1,2,1],"797":[3,3,37],"798":[7,3,28],"799":[5,3,26],"800":[4,3,13],"801":[1,2,65],"802":[3,3,22],"803":[4,3,30],"804":[1,2,16],"805":[2,2,14],"806":[2,2,7],"807":[1,1,22],"808":[1,1,2],"809":[1,1,48],"810":[1,1,1],"811":[3,2,41],"812":[5,2,46],"813":[2,2,42],"814":[4,2,53],"815":[2,2,45],"816":[2,1,34],"817":[2,1,56],"818":[1,1,39],"819":[2,1,34],"820":[1,1,14],"821":[2,1,11],"822":[2,1,6],"823":[1,1,37],"824":[1,1,5],"825":[1,1,1],"826":[4,2,69],"827":[3,2,22],"828":[2,2,17],"829":[1,1,62],"830":[1,1,20],"831":[9,1,83],"832":[3,9,80],"833":[5,9,88],"834":[6,9,171],"835":[6,9,225],"836":[5,9,123],"837":[4,9,105],"838":[1,9,69],"839":[8,1,10],"840":[1,8,133],"841":[7,8,358],"842":[5,8,1],"843":[2,13,211],"844":[2,13,220],"845":[2,13,248],"846":[5,8,1],"847":[2,13,176],"848":[2,13,375],"849":[2,13,222],"850":[5,8,1],"851":[2,13,425],"852":[2,13,431],"853":[2,13,14],"854":[8,14,99],"855":[10,14,93],"856":[10,14,102],"857":[7,14,194],"858":[4,8,1],"859":[2,12,197],"860":[2,12,310],"861":[2,12,194],"862":[6,8,1],"863":[2,14,147],"864":[2,14,278],"865":[2,14,251],"866":[7,1,93],"867":[5,7,109],"868":[6,7,447],"869":[8,7,367],"870":[9,7,1],"871":[1,16,250],"872":[3,17,397],"873":[4,16,300],"874":[1,16,201],"875":[2,16,107],"876":[2,7,340],"877":[8,7,100],"878":[11,1,74],"879":[6,11,107],"880":[6,11,100],"881":[3,11,75],"882":[7,11,39],"883":[4,17,69],"884":[4,17,76],"885":[6,11,76],"886":[4,11,65],"887":[3,15,50],"888":[5,11,102],"889":[1,11,35],"890":[2,11,1],"891":[3,13,35],"892":[3,13,65],"893":[6,11,54],"894":[3,11,132],"895":[2,11,1],"896":[3,13,17],"897":[3,13,30],"898":[5,13,24],"899":[4,13,25],"900":[6,13,39],"901":[2,11,34],"902":[8,11,84],"903":[3,19,116],"904":[9,11,163],"905":[2,11,36],"906":[4,11,1],"907":[2,14,46],"908":[6,14,23],"909":[2,14,35],"910":[8,11,67],"911":[2,19,125],"912":[11,1,73],"913":[2,11,204],"914":[3,11,129],"915":[5,11,151],"916":[4,11,207],"917":[4,11,127],"918":[5,11,267],"919":[1,13,243],"920":[3,13,206],"921":[10,1,79],"922":[7,10,105],"923":[2,10,1],"924":[3,12,77],"925":[4,12,23],"926":[4,12,115],"927":[6,10,66],"928":[3,16,90],"929":[3,16,64],"930":[4,16,97],"931":[3,10,1],"932":[3,12,84],"933":[5,12,100],"934":[2,12,132],"935":[2,12,47],"936":[4,12,69],"937":[2,10,101],"938":[3,10,110],"939":[6,10,1],"940":[4,15,33],"941":[6,15,44],"942":[6,15,23],"943":[4,15,27],"944":[4,15,23],"945":[4,10,41],"946":[1,10,90],"947":[9,1,99],"948":[5,9,148],"949":[5,9,81],"950":[4,9,1],"951":[4,13,45],"952":[3,13,51],"953":[3,13,35],"954":[3,13,26],"955":[5,9,1],"956":[5,13,115],"957":[5,13,67],"958":[5,13,31],"959":[4,9,46],"960":[3,13,39],"961":[6,9,140],"962":[3,9,1],"963":[4,11,45],"964":[4,11,48],"965":[3,9,71],"966":[5,9,94],"967":[3,14,79],"968":[5,9,69],"969":[3,14,47],"970":[3,9,51],"971":[1,9,84],"972":[7,1,42],"973":[6,7,56],"974":[4,7,106],"975":[6,7,101],"976":[2,7,77],"977":[3,7,98],"978":[6,7,37],"979":[3,13,74],"980":[3,13,109],"981":[7,7,23],"982":[5,11,105],"983":[4,11,62],"984":[4,11,45],"985":[7,7,72],"986":[6,7,132],"987":[7,7,32],"988":[10,13,94],"989":[4,13,67],"990":[3,13,145],"991":[4,13,51],"992":[7,13,101],"993":[5,13,57],"994":[3,13,145],"995":[4,7,136],"996":[3,7,159],"997":[5,7,75],"998":[1,7,37],"999":[4,7,1],"1000":[5,11,15],"1001":[4,11,16],"1002":[3,11,20],"1003":[4,11,16],"1004":[6,11,19],"1005":[1,7,128],"1006":[5,7,67],"1007":[3,12,69],"1008":[5,12,52],"1009":[3,12,70],"1010":[9,1,96],"1011":[7,9,75],"1012":[7,9,23],"1013":[4,14,61],"1014":[4,14,65],"1015":[3,14,70],"1016":[5,9,49],"1017":[8,9,73],"1018":[4,9,25],"1019":[5,13,79],"1020":[6,13,46],"1021":[6,13,101],"1022":[3,13,13],"1023":[4,9,110],"1024":[4,9,84],"1025":[6,9,7],"1026":[5,15,178],"1027":[2,9,58],"1028":[2,9,1],"1029":[3,11,53],"1030":[4,11,35],"1031":[3,11,47],"1032":[2,11,75],"1033":[3,11,77],"1034":[2,11,27],"1035":[5,9,58],"1036":[1,9,86],"1037":[4,1,463],"1038":[10,1,134],"1039":[6,10,74],"1040":[4,10,66],"1041":[3,14,62],"1042":[9,10,107],"1043":[6,10,86],"1044":[9,10,142],"1045":[6,10,133],"1046":[5,10,79],"1047":[2,10,65],"1048":[10,1,99],"1049":[8,10,147],"1050":[2,10,55],"1051":[3,12,51],"1052":[5,12,47],"1053":[3,10,72],"1054":[7,10,143],"1055":[8,10,90],"1056":[3,18,92],"1057":[4,10,74],"1058":[5,10,69],"1059":[3,10,53],"1060":[4,11,118],"1061":[3,10,100],"1062":[2,10,93],"1063":[5,12,76],"1064":[5,10,145],"1065":[6,15,102],"1066":[15,1,108],"1067":[7,15,264],"1068":[8,15,174],"1069":[5,15,150],"1070":[13,15,167],"1071":[3,15,104],"1072":[5,1,12],"1073":[1,5,211],"1074":[4,5,158],"1075":[7,5,152],"1076":[7,5,179],"1077":[4,5,103],"1078":[5,5,166],"1079":[6,5,200],"1080":[6,5,163],"1081":[2,5,117],"1082":[3,5,106],"1083":[7,1,46],"1084":[2,7,105],"1085":[2,7,1],"1086":[1,8,178],"1087":[1,8,28],"1088":[1,8,90],"1089":[2,7,14],"1090":[9,9,74],"1091":[7,9,41],"1092":[3,9,26],"1093":[3,7,1],"1094":[2,8,193],"1095":[3,8,88],"1096":[5,8,190],"1097":[5,8,148],"1098":[1,8,314],"1099":[2,8,98],"1100":[3,8,150],"1101":[2,8,228],"1102":[6,8,219],"1103":[3,8,59],"1104":[7,8,153],"1105":[5,15,303],"1106":[5,15,140],"1107":[7,15,199],"1108":[2,15,125],"1109":[2,8,53],"1110":[1,8,34],"1111":[2,7,203],"1112":[2,7,1],"1113":[3,9,97],"1114":[5,9,43],"1115":[6,9,52],"1116":[2,7,1],"1117":[1,8,49],"1118":[1,8,35],"1119":[3,8,42],"1120":[4,7,1],"1121":[4,11,153],"1122":[4,11,65],"1123":[4,11,59],"1124":[2,7,1],"1125":[4,9,87],"1126":[4,9,101],"1127":[1,7,237],"1128":[4,1,53],"1129":[3,4,82],"1130":[4,4,81],"1131":[2,4,1],"1132":[4,6,65],"1133":[4,6,97],"1134":[6,4,66],"1135":[7,1,146],"1136":[2,7,26],"1137":[5,9,59],"1138":[5,14,112],"1139":[3,14,137],"1140":[3,9,32],"1141":[3,11,77],"1142":[4,11,72],"1143":[2,11,31],"1144":[2,9,12],"1145":[2,11,42],"1146":[2,11,28],"1147":[2,11,88],"1148":[3,9,59],"1149":[4,9,62],"1150":[2,9,212],"1151":[2,7,26],"1152":[2,9,83],"1153":[2,9,57],"1154":[3,11,74],"1155":[4,9,57],"1156":[2,7,27],"1157":[3,9,63],"1158":[2,9,50],"1159":[2,9,43],"1160":[2,9,53],"1161":[2,9,67],"1162":[6,9,127],"1163":[2,9,41],"1164":[3,7,52],"1165":[4,10,74],"1166":[3,10,39],"1167":[5,10,49],"1168":[3,10,38],"1169":[2,10,76],"1170":[7,10,54],"1171":[4,10,60],"1172":[2,7,28],"1173":[3,7,33],"1174":[3,7,76],"1175":[2,7,41],"1176":[3,7,116],"1177":[4,7,122],"1178":[3,7,42],"1179":[4,7,127],"1180":[1,7,105],"1181":[3,8,171],"1182":[2,7,54],"1183":[13,1,75],"1184":[2,13,63],"1185":[8,13,158],"1186":[3,13,1],"1187":[4,15,49],"1188":[4,15,75],"1189":[2,15,108],"1190":[4,13,49],"1191":[4,17,62],"1192":[5,17,105],"1193":[3,17,214],"1194":[4,13,1],"1195":[2,16,23],"1196":[4,16,61],"1197":[5,16,87],"1198":[2,13,18],"1199":[2,15,75],"1200":[4,13,53],"1201":[4,13,1],"1202":[5,15,55],"1203":[5,15,88],"1204":[2,15,51],"1205":[5,15,86],"1206":[3,13,79],"1207":[2,13,84],"1208":[1,13,83],"1209":[8,1,84],"1210":[7,8,75],"1211":[2,8,81],"1212":[3,8,14],"1213":[3,11,82],"1214":[3,11,112],"1215":[3,11,85],"1216":[3,11,83],"1217":[2,11,107],"1218":[4,11,79],"1219":[3,8,21],"1220":[7,11,170],"1221":[6,11,124],"1222":[2,11,111],"1223":[3,8,15],"1224":[2,11,54],"1225":[3,11,52],"1226":[2,11,42],"1227":[2,11,30],"1228":[1,12,44],"1229":[1,12,40],"1230":[1,12,37],"1231":[3,11,23],"1232":[1,12,162],"1233":[1,12,58],"1234":[1,12,129],"1235":[1,12,77],"1236":[1,12,97],"1237":[1,12,89],"1238":[1,12,38],"1239":[1,12,130],"1240":[3,11,47],"1241":[2,11,32],"1242":[2,8,1],"1243":[3,10,45],"1244":[3,10,32],"1245":[2,10,21],"1246":[4,8,1],"1247":[4,12,38],"1248":[4,12,17],"1249":[3,12,31],"1250":[4,12,24],"1251":[4,12,30],"1252":[2,8,58],"1253":[1,8,47],"1254":[8,1,200],"1255":[3,8,217],"1256":[6,8,10],"1257":[2,13,47],"1258":[3,13,78],"1259":[2,13,43],"1260":[4,13,17],"1261":[2,8,1],"1262":[6,10,39],"1263":[7,10,35],"1264":[5,10,37],"1265":[7,10,39],"1266":[4,10,64],"1267":[2,10,42],"1268":[6,10,44],"1269":[6,10,62],"1270":[4,10,58],"1271":[5,10,29],"1272":[5,10,54],"1273":[4,8,1],"1274":[4,11,25],"1275":[4,11,24],"1276":[3,11,31],"1277":[2,8,93],"1278":[2,10,52],"1279":[7,8,77],"1280":[1,8,75],"1281":[4,9,127],"1282":[3,8,1],"1283":[2,10,14],"1284":[3,12,102],"1285":[2,12,149],"1286":[4,10,1],"1287":[4,14,111],"1288":[5,14,108],"1289":[5,14,126],"1290":[4,14,123],"1291":[5,14,116],"1292":[6,10,1],"1293":[3,16,129],"1294":[3,10,1],"1295":[5,13,125],"1296":[3,10,1],"1297":[5,13,126],"1298":[2,10,1],"1299":[5,12,119],"1300":[5,10,1],"1301":[3,15,127],"1302":[12,1,75],"1303":[5,12,81],"1304":[9,12,75],"1305":[5,12,121],"1306":[5,12,1],"1307":[4,16,53],"1308":[4,16,47],"1309":[8,16,122],"1310":[4,16,35],"1311":[3,12,9],"1312":[3,15,20],"1313":[8,15,27],"1314":[3,15,17],"1315":[3,15,16],"1316":[5,15,40],"1317":[5,12,70],"1318":[5,12,81],"1319":[5,12,1],"1320":[5,17,124],"1321":[2,17,73],"1322":[2,12,73],"1323":[6,12,70],"1324":[6,12,109],"1325":[5,17,96],"1326":[7,12,115],"1327":[1,12,81],"1328":[10,1,103],"1329":[5,10,74],"1330":[5,10,8],"1331":[5,13,59],"1332":[5,13,96],"1333":[5,10,39],"1334":[6,10,20],"1335":[4,16,109],"1336":[4,16,42],"1337":[4,16,61],"1338":[5,16,146],"1339":[5,16,114],"1340":[1,16,49],"1341":[3,10,55],"1342":[4,10,95],"1343":[4,10,61],"1344":[5,10,1],"1345":[3,13,33],"1346":[3,13,23],"1347":[2,13,57],"1348":[3,13,44],"1349":[2,10,48],"1350":[2,12,48],"1351":[6,10,110],"1352":[13,1,47],"1353":[2,13,29],"1354":[5,15,52],"1355":[5,13,72],"1356":[5,13,40],"1357":[6,13,82],"1358":[6,13,114],"1359":[4,13,54],"1360":[3,17,69],"1361":[6,13,50],"1362":[7,13,61],"1363":[6,18,83],"1364":[2,13,36],"1365":[2,13,25],"1366":[3,13,326],"1367":[1,13,72],"1368":[9,1,140],"1369":[3,9,42],"1370":[7,9,69],"1371":[6,9,72],"1372":[5,9,110],"1373":[5,9,85],"1374":[3,9,117],"1375":[3,9,60],"1376":[3,9,138],"1377":[3,9,62],"1378":[8,9,159],"1379":[5,9,56],"1380":[2,9,51],"1381":[5,1,67],"1382":[2,5,370],"1383":[4,5,49],"1384":[3,1,118],"1385":[1,3,392],"1386":[7,3,465],"1387":[4,3,55],"1388":[3,6,86],"1389":[5,6,47],"1390":[8,6,134],"1391":[4,6,130],"1392":[3,6,49],"1393":[2,6,158],"1394":[3,6,210],"1395":[9,9,124],"1396":[9,9,216],"1397":[6,3,34],"1398":[3,9,288],"1399":[2,12,186],"1400":[2,3,150],"1401":[5,5,304],"1402":[6,5,258],"1403":[3,3,326],"1404":[4,3,185],"1405":[4,1,262],"1406":[13,1,153],"1407":[2,13,109],"1408":[3,13,192],"1409":[6,13,206],"1410":[10,13,222],"1411":[6,13,26],"1412":[4,19,130],"1413":[5,19,99],"1414":[6,19,132],"1415":[4,19,69],"1416":[5,13,214],"1417":[7,13,90],"1418":[5,20,75],"1419":[2,20,175],"1420":[6,20,106],"1421":[5,20,75],"1422":[2,13,107],"1423":[9,1,110],"1424":[2,9,49],"1425":[5,9,1],"1426":[5,14,62],"1427":[6,14,146],"1428":[5,14,73],"1429":[5,9,121],"1430":[7,9,85],"1431":[9,9,209],"1432":[9,9,78],"1433":[2,9,48],"1434":[1,9,36],"1435":[9,1,171],"1436":[3,9,79],"1437":[3,9,77],"1438":[3,9,62],"1439":[2,9,60],"1440":[4,9,69],"1441":[2,9,115],"1442":[5,9,137],"1443":[3,9,63],"1444":[1,1,13],"1445":[1,1,52],"1446":[2,1,26],"1447":[3,2,104],"1448":[2,2,33],"1449":[9,2,67],"1450":[4,1,36],"1451":[4,4,56],"1452":[2,4,20],"1453":[2,1,69],"1454":[3,2,94],"1455":[2,2,26],"1456":[2,2,28],"1457":[5,2,49],"1458":[3,1,180],"1459":[4,3,93],"1460":[6,3,116],"1461":[2,1,1],"1462":[2,3,12],"1463":[2,3,22],"1464":[2,3,99],"1465":[1,1,44],"1466":[2,1,28],"1467":[2,1,14],"1468":[2,1,14],"1469":[1,2,55],"1470":[2,2,55],"1471":[3,2,49],"1472":[2,2,52],"1473":[4,4,21],"1474":[3,2,19],"1475":[3,2,72],"1476":[2,5,8],"1477":[3,2,80],"1478":[2,5,7],"1479":[4,2,16],"1480":[3,6,57],"1481":[3,6,15],"1482":[2,2,37],"1483":[2,2,47],"1484":[1,2,34],"1485":[2,2,23],"1486":[2,2,18],"1487":[1,1,24],"1488":[1,1,13],"1489":[2,1,58],"1490":[2,1,9],"1491":[2,3,27],"1492":[2,3,21],"1493":[4,1,36],"1494":[2,1,17],"1495":[1,1,10],"1496":[2,1,9],"1497":[3,1,11],"1498":[1,3,16],"1499":[1,3,50],"1500":[3,3,22],"1501":[3,3,29],"1502":[3,3,36],"1503":[3,3,29],"1504":[3,6,92],"1505":[2,3,27],"1506":[1,3,35],"1507":[2,3,21],"1508":[2,3,14],"1509":[2,1,6],"1510":[1,2,33],"1511":[2,2,186],"1512":[2,2,1],"1513":[2,3,26],"1514":[2,3,25],"1515":[2,3,98],"1516":[3,2,71],"1517":[4,2,50],"1518":[3,2,73],"1519":[2,2,74],"1520":[1,3,53],"1521":[2,3,90],"1522":[2,3,75],"1523":[2,3,97],"1524":[4,5,33],"1525":[3,5,52],"1526":[4,5,20],"1527":[1,3,93],"1528":[3,3,32],"1529":[2,3,79],"1530":[2,2,9],"1531":[1,4,34],"1532":[3,4,28],"1533":[2,4,40],"1534":[2,2,26],"1535":[1,2,33],"1536":[2,2,9],"1537":[2,2,13],"1538":[2,1,15],"1539":[1,2,23],"1540":[5,2,64],"1541":[3,7,9],"1542":[4,7,19],"1543":[3,7,38],"1544":[2,2,59],"1545":[3,4,8],"1546":[4,4,21],"1547":[4,4,60],"1548":[2,2,27],"1549":[1,2,28],"1550":[2,2,18],"1551":[2,2,11],"1552":[2,1,10],"1553":[1,2,56],"1554":[2,2,45],"1555":[2,2,20],"1556":[2,2,22],"1557":[3,4,20],"1558":[2,2,55],"1559":[2,2,87],"1560":[2,2,23],"1561":[2,2,19],"1562":[2,2,21],"1563":[2,2,27],"1564":[3,2,28],"1565":[2,2,18],"1566":[3,2,28],"1567":[3,5,131],"1568":[4,5,56],"1569":[2,5,132],"1570":[5,5,52],"1571":[4,5,108],"1572":[4,5,52],"1573":[4,5,40],"1574":[3,5,97],"1575":[2,5,57],"1576":[2,5,50],"1577":[6,5,43],"1578":[2,2,1],"1579":[5,4,31],"1580":[6,4,40],"1581":[4,4,121],"1582":[5,4,78],"1583":[1,2,17],"1584":[2,2,12],"1585":[2,2,7],"1586":[2,1,11],"1587":[1,2,38],"1588":[2,2,41],"1589":[2,2,35],"1590":[2,4,34],"1591":[3,2,10],"1592":[2,5,19],"1593":[5,5,30],"1594":[5,5,21],"1595":[6,5,17],"1596":[6,5,22],"1597":[2,2,33],"1598":[2,2,31],"1599":[4,2,36],"1600":[1,2,17],"1601":[2,2,15],"1602":[2,2,8],"1603":[2,1,22],"1604":[2,2,52],"1605":[9,2,75],"1606":[3,2,32],"1607":[3,2,41],"1608":[4,2,65],"1609":[3,2,126],"1610":[1,2,10],"1611":[2,2,13],"1612":[2,1,17],"1613":[2,2,26],"1614":[2,3,31],"1615":[3,3,39],"1616":[3,3,75],"1617":[2,2,43],"1618":[2,2,86],"1619":[4,2,23],"1620":[3,2,81],"1621":[2,2,39],"1622":[2,2,33],"1623":[3,4,41],"1624":[3,4,68],"1625":[3,4,31],"1626":[4,2,17],"1627":[4,5,26],"1628":[3,5,57],"1629":[3,5,27],"1630":[3,2,23],"1631":[4,4,27],"1632":[3,4,68],"1633":[2,2,62],"1634":[1,2,17],"1635":[2,2,15],"1636":[2,2,7],"1637":[1,1,13],"1638":[1,1,12],"1639":[2,1,65],"1640":[2,1,34],"1641":[3,3,33],"1642":[2,1,19],"1643":[2,1,21],"1644":[1,1,51],"1645":[2,1,25],"1646":[2,1,33],"1647":[1,1,10],"1648":[2,1,13],"1649":[2,1,21],"1650":[1,2,31],"1651":[2,2,127],"1652":[2,2,1],"1653":[2,4,38],"1654":[3,4,27],"1655":[2,4,95],"1656":[2,2,26],"1657":[2,2,24],"1658":[3,2,29],"1659":[3,2,19],"1660":[4,5,13],"1661":[2,5,51],"1662":[5,5,47],"1663":[2,2,41],"1664":[4,2,142],"1665":[1,2,16],"1666":[2,2,13],"1667":[2,2,7],"1668":[2,1,11],"1669":[1,2,34],"1670":[2,2,62],"1671":[3,2,44],"1672":[3,2,42],"1673":[3,2,35],"1674":[4,4,49],"1675":[2,2,1],"1676":[2,4,34],"1677":[1,4,34],"1678":[2,2,67],"1679":[1,2,24],"1680":[2,2,12],"1681":[2,2,10],"1682":[3,1,16],"1683":[1,3,21],"1684":[2,3,90],"1685":[1,5,65],"1686":[2,3,52],"1687":[1,5,45],"1688":[3,5,48],"1689":[4,5,88],"1690":[2,3,65],"1691":[1,4,53],"1692":[1,4,54],"1693":[1,4,47],"1694":[1,4,57],"1695":[1,4,56],"1696":[3,3,59],"1697":[2,6,62],"1698":[2,3,36],"1699":[1,3,32],"1700":[2,3,17],"1701":[2,1,42],"1702":[1,2,11],"1703":[2,2,59],"1704":[4,2,66],"1705":[2,2,21],"1706":[2,2,53],"1707":[2,2,25],"1708":[2,2,56],"1709":[2,2,26],"1710":[2,2,1],"1711":[2,4,37],"1712":[3,4,26],"1713":[3,4,23],"1714":[4,4,65],"1715":[6,4,16],"1716":[4,4,27],"1717":[2,2,44],"1718":[1,2,30],"1719":[2,2,13],"1720":[3,1,16],"1721":[1,3,28],"1722":[2,3,103],"1723":[4,3,37],"1724":[4,3,1],"1725":[6,6,29],"1726":[6,6,31],"1727":[6,6,64],"1728":[3,3,26],"1729":[2,5,6],"1730":[2,5,32],"1731":[2,3,52],"1732":[2,3,59],"1733":[2,3,80],"1734":[2,3,1],"1735":[1,5,7],"1736":[2,5,58],"1737":[1,5,13],"1738":[3,3,127],"1739":[2,3,33],"1740":[1,5,68],"1741":[1,5,74],"1742":[1,5,65],"1743":[2,3,141],"1744":[6,3,34],"1745":[3,9,52],"1746":[3,9,52],"1747":[3,9,38],"1748":[1,3,27],"1749":[2,3,10],"1750":[2,3,7],"1751":[3,1,18],"1752":[1,3,22],"1753":[2,3,72],"1754":[2,3,20],"1755":[3,3,22],"1756":[2,3,15],"1757":[2,3,29],"1758":[2,3,43],"1759":[3,3,91],"1760":[1,3,10],"1761":[2,3,11],"1762":[2,1,31],"1763":[1,2,19],"1764":[2,2,61],"1765":[3,2,9],"1766":[4,4,22],"1767":[5,4,41],"1768":[5,4,33],"1769":[2,2,44],"1770":[3,2,33],"1771":[4,4,37],"1772":[2,2,1],"1773":[2,4,34],"1774":[2,4,39],"1775":[4,2,25],"1776":[2,2,17],"1777":[2,2,1],"1778":[2,4,16],"1779":[3,4,10],"1780":[3,4,18],"1781":[3,4,23],"1782":[2,2,25],"1783":[1,2,16],"1784":[2,2,11],"1785":[2,1,38],"1786":[2,2,1],"1787":[2,3,47],"1788":[1,3,66],"1789":[1,3,84],"1790":[1,3,23],"1791":[1,3,26],"1792":[4,1,3360],"1793":[1,4,1],"1794":[2,5,47],"1795":[1,5,34],"1796":[1,5,27],"1797":[1,5,23],"1798":[1,5,14],"1799":[1,1,31],"1800":[1,1,65],"1801":[2,1,62],"1802":[2,1,105],"1803":[2,1,24],"1804":[2,1,55],"1805":[2,1,34],"1806":[3,3,38],"1807":[2,1,57],"1808":[2,3,22],"1809":[2,1,34],"1810":[2,1,59],"1811":[1,1,27],"1812":[2,1,14],"1813":[2,1,68],"1814":[1,2,25],"1815":[1,2,1],"1816":[1,2,21],"1817":[1,2,22],"1818":[1,2,36],"1819":[1,2,24],"1820":[1,2,32],"1821":[1,2,24],"1822":[1,2,102],"1823":[1,2,123],"1824":[3,2,213],"1825":[6,2,172],"1826":[2,8,6],"1827":[1,10,63],"1828":[1,10,22],"1829":[1,10,13],"1830":[1,10,64],"1831":[1,10,30],"1832":[1,10,61],"1833":[6,8,76],"1834":[1,2,54],"1835":[2,1,12],"1836":[1,2,73],"1837":[2,2,49],"1838":[4,2,41],"1839":[2,6,24],"1840":[2,2,105],"1841":[3,2,29],"1842":[2,5,16],"1843":[1,2,22],"1844":[1,2,62],"1845":[3,3,17],"1846":[4,2,25],"1847":[2,6,30],"1848":[2,2,52],"1849":[3,4,33],"1850":[3,2,65],"1851":[1,5,84],"1852":[1,5,101],"1853":[2,2,27],"1854":[2,4,30],"1855":[2,4,47],"1856":[3,2,140],"1857":[3,2,38],"1858":[3,5,50],"1859":[2,5,26],"1860":[1,5,17],"1861":[3,5,48],"1862":[5,2,86],"1863":[2,2,42],"1864":[1,2,48],"1865":[2,2,19],"1866":[2,1,27],"1867":[1,2,43],"1868":[3,2,75],"1869":[3,2,21],"1870":[7,4,71],"1871":[6,4,27],"1872":[2,4,17],"1873":[2,2,1],"1874":[2,4,54],"1875":[3,4,69],"1876":[2,4,40],"1877":[2,4,32],"1878":[1,5,39],"1879":[1,5,40],"1880":[1,5,37],"1881":[3,2,12],"1882":[1,5,83],"1883":[1,5,23],"1884":[1,5,58],"1885":[1,5,43],"1886":[1,5,58],"1887":[2,5,78],"1888":[1,5,52],"1889":[3,2,41],"1890":[2,2,31],"1891":[2,2,1],"1892":[2,4,8],"1893":[2,4,61],"1894":[1,2,48],"1895":[2,2,19],"1896":[2,1,11],"1897":[1,2,29],"1898":[2,2,122],"1899":[2,2,23],"1900":[1,2,24],"1901":[2,2,21],"1902":[3,4,15],"1903":[2,4,13],"1904":[2,4,16],"1905":[4,4,18],"1906":[3,4,40],"1907":[2,2,58],"1908":[7,2,38],"1909":[4,9,50],"1910":[2,9,34],"1911":[4,9,85],"1912":[3,2,92],"1913":[1,2,26],"1914":[2,2,10],"1915":[2,1,39],"1916":[1,2,40],"1917":[2,2,116],"1918":[3,2,49],"1919":[2,2,1],"1920":[2,3,48],"1921":[2,3,60],"1922":[2,2,99],"1923":[3,2,57],"1924":[8,5,144],"1925":[4,5,125],"1926":[5,5,54],"1927":[2,2,43],"1928":[2,2,61],"1929":[6,2,76],"1930":[3,8,48],"1931":[2,2,34],"1932":[1,2,25],"1933":[2,2,19],"1934":[2,2,10],"1935":[2,1,14],"1936":[1,2,27],"1937":[2,2,51],"1938":[2,2,21],"1939":[2,2,1],"1940":[1,3,30],"1941":[2,3,27],"1942":[2,2,32],"1943":[3,2,30],"1944":[2,2,21],"1945":[1,2,10],"1946":[2,2,13],"1947":[2,1,20],"1948":[1,2,77],"1949":[2,2,59],"1950":[2,2,21],"1951":[3,2,97],"1952":[3,2,96],"1953":[3,2,95],"1954":[2,2,81],"1955":[6,2,87],"1956":[2,7,59],"1957":[2,7,97],"1958":[6,2,112],"1959":[6,8,68],"1960":[2,2,57],"1961":[3,2,114],"1962":[1,2,19],"1963":[2,2,15],"1964":[2,2,9],"1965":[2,1,9],"1966":[1,2,14],"1967":[1,2,80],"1968":[4,2,43],"1969":[2,2,21],"1970":[3,4,16],"1971":[3,4,16],"1972":[3,4,26],"1973":[5,2,93],"1974":[4,2,185],"1975":[2,2,15],"1976":[1,2,10],"1977":[2,2,10],"1978":[4,1,15],"1979":[2,4,18],"1980":[2,5,29],"1981":[2,5,21],"1982":[2,5,21],"1983":[6,5,46],"1984":[2,4,41],"1985":[2,6,9],"1986":[2,7,19],"1987":[5,7,22],"1988":[4,7,18],"1989":[2,7,30],"1990":[2,6,33],"1991":[2,8,61],"1992":[3,6,29],"1993":[3,6,14],"1994":[3,6,47],"1995":[2,4,49],"1996":[1,4,10],"1997":[2,4,11],"1998":[3,1,10],"1999":[1,3,19],"2000":[1,3,88],"2001":[1,3,22],"2002":[1,3,38],"2003":[1,4,29],"2004":[1,3,55],"2005":[1,3,30],"2006":[1,4,37],"2007":[1,3,86],"2008":[1,3,34],"2009":[1,3,50],"2010":[1,3,95],"2011":[1,3,63],"2012":[3,3,43],"2013":[1,3,38],"2014":[2,1,26],"2015":[1,2,21],"2016":[2,2,107],"2017":[4,2,31],"2018":[3,2,61],"2019":[2,2,49],"2020":[3,2,77],"2021":[2,2,44],"2022":[3,2,1],"2023":[4,5,29],"2024":[4,5,50],"2025":[4,5,24],"2026":[2,2,1],"2027":[6,4,15],"2028":[3,4,19],"2029":[4,4,37],"2030":[1,2,22],"2031":[2,2,10],"2032":[2,1,11],"2033":[1,2,35],"2034":[2,2,47],"2035":[1,2,23],"2036":[2,3,30],"2037":[2,2,40],"2038":[4,4,102],"2039":[2,4,54],"2040":[3,4,212],"2041":[2,4,20],"2042":[2,2,38],"2043":[1,2,10],"2044":[2,2,8],"2045":[2,1,30],"2046":[1,2,26],"2047":[2,2,110],"2048":[2,2,1],"2049":[5,4,39],"2050":[5,4,26],"2051":[5,4,18],"2052":[4,4,39],"2053":[2,2,1],"2054":[4,4,25],"2055":[2,4,20],"2056":[4,4,54],"2057":[1,2,1],"2058":[2,3,13],"2059":[3,3,38],"2060":[1,2,44],"2061":[2,2,24],"2062":[2,2,35],"2063":[4,2,34],"2064":[2,2,16],"2065":[2,2,1],"2066":[4,4,8],"2067":[3,4,14],"2068":[2,4,15],"2069":[3,4,11],"2070":[1,2,16],"2071":[2,2,10],"2072":[3,1,46],"2073":[1,3,46],"2074":[2,3,16],"2075":[3,3,97],"2076":[1,5,45],"2077":[3,3,90],"2078":[1,5,37],"2079":[3,5,58],"2080":[2,3,58],"2081":[1,3,34],"2082":[2,3,10],"2083":[2,3,9],"2084":[2,1,9],"2085":[1,2,9],"2086":[2,2,27],"2087":[5,2,20],"2088":[3,2,28],"2089":[2,2,33],"2090":[1,2,10],"2091":[2,2,14],"2092":[2,1,81],"2093":[1,2,45],"2094":[1,2,183],"2095":[1,2,51],"2096":[1,2,41],"2097":[3,2,70],"2098":[1,2,90],"2099":[1,2,41],"2100":[1,2,18],"2101":[1,2,32],"2102":[1,2,44],"2103":[1,2,31],"2104":[1,2,53],"2105":[1,2,24],"2106":[2,2,153],"2107":[3,2,121],"2108":[1,2,36],"2109":[1,2,95],"2110":[6,3,123],"2111":[1,2,159],"2112":[3,2,93],"2113":[2,2,43],"2114":[1,2,41],"2115":[3,1,12],"2116":[2,3,19],"2117":[2,4,52],"2118":[2,4,23],"2119":[3,4,33],"2120":[1,3,15],"2121":[2,3,13],"2122":[2,1,17],"2123":[1,2,86],"2124":[2,2,46],"2125":[4,2,106],"2126":[3,2,44],"2127":[3,2,61],"2128":[3,2,67],"2129":[4,4,39],"2130":[3,2,81],"2131":[4,4,44],"2132":[2,2,55],"2133":[1,2,16],"2134":[2,2,22],"2135":[2,2,11],"2136":[2,2,7],"2137":[2,1,26],"2138":[1,2,18],"2139":[2,2,23],"2140":[2,2,42],"2141":[2,2,62],"2142":[2,2,41],"2143":[3,2,20],"2144":[3,5,43],"2145":[3,5,26],"2146":[2,2,67],"2147":[3,2,73],"2148":[2,2,56],"2149":[1,2,49],"2150":[1,2,18],"2151":[2,2,11],"2152":[2,2,7],"2153":[2,1,68],"2154":[1,2,50],"2155":[1,2,49],"2156":[1,2,163],"2157":[3,2,153],"2158":[3,2,37],"2159":[1,2,30],"2160":[1,1,47],"2161":[1,1,26],"2162":[2,1,60],"2163":[2,1,1],"2164":[5,2,235],"2165":[5,2,135],"2166":[4,2,63],"2167":[3,2,119],"2168":[2,1,36],"2169":[2,1,24],"2170":[1,1,72],"2171":[3,1,116],"2172":[6,1,25],"2173":[4,7,23],"2174":[2,7,29],"2175":[1,7,100],"2176":[6,1,97],"2177":[3,7,170],"2178":[3,7,49],"2179":[3,1,32],"2180":[6,4,52],"2181":[2,4,84],"2182":[5,1,32],"2183":[3,6,107],"2184":[4,6,144],"2185":[3,6,88],"2186":[2,1,43],"2187":[4,1,117],"2188":[5,1,40],"2189":[1,1,43],"2190":[3,1,50],"2191":[3,3,30],"2192":[2,5,43],"2193":[2,5,118],"2194":[2,5,30],"2195":[3,3,49],"2196":[2,6,23],"2197":[2,6,36],"2198":[2,3,8],"2199":[2,4,27],"2200":[3,4,48],"2201":[3,4,20],"2202":[2,3,46],"2203":[3,3,9],"2204":[4,6,26],"2205":[1,3,44],"2206":[3,3,36],"2207":[2,3,57],"2208":[2,3,38],"2209":[2,3,32],"2210":[3,3,26],"2211":[2,6,27],"2212":[1,6,54],"2213":[2,3,1],"2214":[4,5,22],"2215":[5,5,13],"2216":[3,5,23],"2217":[5,5,34],"2218":[2,5,24],"2219":[2,3,20],"2220":[1,1,24],"2221":[5,1,169],"2222":[3,1,175],"2223":[3,1,189],"2224":[3,1,137],"2225":[3,1,92],"2226":[3,1,77],"2227":[3,1,27],"2228":[3,1,60],"2229":[3,1,28],"2230":[3,1,28],"2231":[3,1,21],"2232":[3,1,28],"2233":[3,1,24],"2234":[3,1,22],"2235":[3,1,23],"2236":[3,1,40],"2237":[2,1,27],"2238":[3,1,33],"2239":[3,1,35],"2240":[3,1,33],"2241":[8,1,1],"2242":[1,8,47],"2243":[7,1,1],"2244":[1,7,3],"2245":[3,7,53],"2246":[5,7,12],"2247":[4,7,174],"2248":[7,7,1],"2249":[16,14,18],"2250":[4,14,38],"2251":[7,14,37],"2252":[4,14,73],"2253":[2,7,64],"2254":[4,7,146],"2255":[3,7,216],"2256":[3,7,92],"2257":[2,7,143],"2258":[4,7,156],"2259":[3,11,37],"2260":[7,1,1],"2261":[1,7,39],"2262":[8,1,1],"2263":[1,8,3],"2264":[2,8,222],"2265":[3,8,276],"2266":[4,8,147],"2267":[4,8,137],"2268":[8,1,1],"2269":[1,8,3],"2270":[5,8,139],"2271":[4,8,52],"2272":[3,8,69],"2273":[6,8,64],"2274":[2,8,105],"2275":[8,1,1],"2276":[1,8,3],"2277":[3,8,130],"2278":[2,8,44],"2279":[4,8,53],"2280":[8,1,1],"2281":[1,8,3],"2282":[5,8,79],"2283":[3,13,102],"2284":[1,13,96],"2285":[3,13,31],"2286":[7,13,35],"2287":[7,8,55],"2288":[1,15,68],"2289":[1,15,94],"2290":[1,15,65],"2291":[7,8,98],"2292":[2,15,77],"2293":[3,15,76],"2294":[3,15,41],"2295":[2,15,11],"2296":[2,15,105],"2297":[2,15,158],"2298":[8,1,1],"2299":[1,8,3],"2300":[9,8,53],"2301":[1,17,15],"2302":[3,17,49],"2303":[2,17,81],"2304":[3,17,61],"2305":[3,17,31],"2306":[2,17,24],"2307":[2,17,32],"2308":[1,17,25],"2309":[1,17,49],"2310":[5,8,73],"2311":[8,1,1],"2312":[1,8,3],"2313":[5,8,81],"2314":[9,8,80],"2315":[8,1,1],"2316":[1,8,3],"2317":[6,8,39],"2318":[3,14,56],"2319":[3,14,110],"2320":[3,14,147],"2321":[1,14,88],"2322":[2,14,87],"2323":[3,14,97],"2324":[3,14,63],"2325":[4,14,33],"2326":[4,14,31],"2327":[3,14,33],"2328":[2,14,103],"2329":[2,14,92],"2330":[2,14,125],"2331":[2,8,1],"2332":[9,10,81],"2333":[8,10,154],"2334":[4,10,57],"2335":[8,10,43],"2336":[8,10,57],"2337":[10,10,149],"2338":[6,10,105],"2339":[4,10,143],"2340":[7,10,71],"2341":[5,10,1],"2342":[4,15,98],"2343":[6,15,38],"2344":[5,10,88],"2345":[7,8,1],"2346":[12,15,133],"2347":[7,15,114],"2348":[8,15,84],"2349":[2,8,1],"2350":[4,10,40],"2351":[4,10,37],"2352":[5,10,28],"2353":[4,10,69],"2354":[3,10,63],"2355":[2,8,1],"2356":[7,10,34],"2357":[6,10,74],"2358":[5,10,43],"2359":[9,10,98],"2360":[6,10,57],"2361":[5,8,1],"2362":[6,13,48],"2363":[8,13,44],"2364":[4,13,67],"2365":[10,13,46],"2366":[4,13,64],"2367":[7,13,46],"2368":[4,8,1],"2369":[4,12,54],"2370":[5,12,40],"2371":[5,12,57],"2372":[2,12,202],"2373":[8,1,1],"2374":[1,8,3],"2375":[7,8,291],"2376":[7,8,102],"2377":[7,8,80],"2378":[10,8,110],"2379":[10,8,187],"2380":[9,8,299],"2381":[5,17,102],"2382":[7,8,96],"2383":[3,8,121],"2384":[11,8,98],"2385":[7,8,74],"2386":[3,8,34],"2387":[8,1,1],"2388":[1,8,51],"2389":[9,8,209],"2390":[3,8,1],"2391":[8,10,136],"2392":[9,10,88],"2393":[4,10,70],"2394":[11,10,127],"2395":[11,10,104],"2396":[1,8,13],"2397":[8,8,129],"2398":[4,16,209],"2399":[7,8,60],"2400":[3,8,47],"2401":[5,8,19],"2402":[6,12,55],"2403":[6,12,30],"2404":[7,12,31],"2405":[7,12,65],"2406":[1,8,49],"2407":[2,8,68],"2408":[8,1,1],"2409":[1,8,36],"2410":[10,8,66],"2411":[2,17,58],"2412":[2,17,78],"2413":[4,17,69],"2414":[10,8,86],"2415":[2,17,96],"2416":[4,17,57],"2417":[1,8,44],"2418":[4,1,1],"2419":[1,4,132],"2420":[8,4,55],"2421":[2,12,93],"2422":[2,12,117],"2423":[4,12,81],"2424":[7,12,62],"2425":[5,4,67],"2426":[6,9,35],"2427":[6,9,78],"2428":[3,9,86],"2429":[9,9,84],"2430":[7,4,82],"2431":[3,11,89],"2432":[5,11,99],"2433":[4,11,53],"2434":[4,11,94],"2435":[1,4,175],"2436":[2,4,88],"2437":[3,4,70],"2438":[8,4,292],"2439":[8,1,1],"2440":[1,8,62],"2441":[8,8,44],"2442":[2,15,67],"2443":[2,15,58],"2444":[4,15,49],"2445":[6,8,76],"2446":[7,8,66],"2447":[1,8,40],"2448":[2,8,36],"2449":[8,1,1],"2450":[1,8,103],"2451":[8,8,123],"2452":[6,8,110],"2453":[3,8,82],"2454":[2,8,51],"2455":[4,8,103],"2456":[1,8,100],"2457":[2,8,34],"2458":[8,1,1],"2459":[1,8,87],"2460":[2,8,1],"2461":[5,9,91],"2462":[4,9,44],"2463":[2,9,99],"2464":[1,8,45],"2465":[6,8,93],"2466":[2,8,191],"2467":[8,1,1],"2468":[1,8,61],"2469":[2,8,1],"2470":[5,9,111],"2471":[8,9,69],"2472":[2,8,56],"2473":[8,1,1],"2474":[1,8,57],"2475":[2,8,1],"2476":[4,9,152],"2477":[2,9,68],"2478":[4,1,1],"2479":[1,4,82],"2480":[2,4,1],"2481":[9,6,410],"2482":[5,6,161],"2483":[9,6,121],"2484":[10,6,90],"2485":[2,4,1],"2486":[10,6,100],"2487":[12,6,61],"2488":[1,4,1],"2489":[12,5,63],"2490":[15,5,112],"2491":[14,5,51],"2492":[10,5,79],"2493":[11,5,106],"2494":[13,5,73],"2495":[10,5,118],"2496":[8,5,93],"2497":[7,5,95],"2498":[1,4,169],"2499":[4,1,1],"2500":[1,4,47],"2501":[2,4,1],"2502":[7,6,188],"2503":[1,4,1],"2504":[13,5,107],"2505":[9,5,57],"2506":[1,4,60],"2507":[4,1,1],"2508":[1,4,24],"2509":[2,4,104],"2510":[1,6,49],"2511":[4,6,54],"2512":[1,6,36],"2513":[1,4,58],"2514":[4,1,1],"2515":[1,4,44],"2516":[2,4,1],"2517":[12,6,81],"2518":[10,6,109],"2519":[8,6,74],"2520":[12,6,107],"2521":[4,6,43],"2522":[1,4,44],"2523":[1,4,85],"2524":[4,1,1],"2525":[1,4,63],"2526":[5,4,94],"2527":[3,9,146],"2528":[3,9,157],"2529":[4,9,210],"2530":[4,9,180],"2531":[6,9,206],"2532":[5,9,277],"2533":[9,9,232],"2534":[4,9,188],"2535":[1,9,199],"2536":[1,9,84],"2537":[5,9,498],"2538":[2,9,43],"2539":[8,4,96],"2540":[7,4,230],"2541":[4,4,74],"2542":[6,8,183],"2543":[2,8,227],"2544":[11,4,84],"2545":[1,4,151],"2546":[1,4,211],"2547":[8,1,1],"2548":[1,8,3],"2549":[3,8,232],"2550":[5,8,49],"2551":[3,8,113],"2552":[8,1,1],"2553":[1,8,3],"2554":[6,8,156],"2555":[8,8,73],"2556":[7,1,1],"2557":[1,7,3],"2558":[2,7,72],"2559":[2,7,41],"2560":[8,1,1],"2561":[1,8,3],"2562":[2,8,21],"2563":[8,1,1],"2564":[1,8,3],"2565":[4,8,75],"2566":[2,8,35],"2567":[1,8,17],"2568":[8,1,1],"2569":[1,8,21],"2570":[8,1,1],"2571":[1,8,19],"2572":[7,8,105],"2573":[8,1,1],"2574":[1,8,3],"2575":[2,8,203],"2576":[6,8,76],"2577":[5,8,58],"2578":[8,1,1],"2579":[1,8,3],"2580":[3,8,111],"2581":[5,8,78],"2582":[7,8,1],"2583":[8,1,1],"2584":[1,8,3],"2585":[3,8,13],"2586":[5,11,149],"2587":[10,11,87],"2588":[3,8,111],"2589":[8,8,96],"2590":[6,8,110],"2591":[6,8,63],"2592":[8,1,1],"2593":[1,8,3],"2594":[5,8,12],"2595":[1,13,38],"2596":[1,13,60],"2597":[2,8,83],"2598":[8,1,1],"2599":[1,8,3],"2600":[2,8,39],"2601":[8,1,1],"2602":[1,8,3],"2603":[2,8,51],"2604":[2,8,27],"2605":[7,1,1],"2606":[1,7,3],"2607":[7,7,224],"2608":[2,7,65],"2609":[8,1,1],"2610":[1,8,3],"2611":[7,8,105],"2612":[8,1,1],"2613":[1,8,3],"2614":[4,8,126],"2615":[3,8,138],"2616":[8,1,1],"2617":[1,8,3],"2618":[6,8,14],"2619":[8,1,1],"2620":[1,8,3],"2621":[4,8,142],"2622":[3,8,68],"2623":[8,1,1],"2624":[1,8,3],"2625":[6,8,42],"2626":[6,8,40],"2627":[4,8,41],"2628":[5,8,44],"2629":[4,8,41],"2630":[8,1,1],"2631":[1,8,3],"2632":[5,8,216],"2633":[5,8,167],"2634":[5,8,213],"2635":[5,8,228],"2636":[7,1,1],"2637":[1,7,3],"2638":[1,7,21],"2639":[7,1,1],"2640":[1,7,3],"2641":[1,7,55],"2642":[2,7,14],"2643":[8,1,1],"2644":[1,8,3],"2645":[1,8,53],"2646":[8,1,1],"2647":[1,8,3],"2648":[1,8,70],"2649":[2,8,56],"2650":[6,8,30],"2651":[3,14,36],"2652":[3,14,55],"2653":[4,14,44],"2654":[6,8,15],"2655":[3,14,42],"2656":[3,14,50],"2657":[8,1,1],"2658":[1,8,3],"2659":[5,8,68],"2660":[1,8,14],"2661":[3,8,39],"2662":[4,8,44],"2663":[4,8,21],"2664":[7,8,64],"2665":[3,8,71],"2666":[1,8,57],"2667":[7,8,30],"2668":[3,15,19],"2669":[3,15,30],"2670":[3,15,37],"2671":[2,15,22],"2672":[2,15,32],"2673":[3,15,26],"2674":[6,8,34],"2675":[8,1,1],"2676":[1,8,3],"2677":[5,8,40],"2678":[7,8,72],"2679":[2,8,83],"2680":[2,1,27],"2681":[2,2,43],"2682":[2,2,49],"2683":[2,2,1],"2684":[3,3,58],"2685":[3,3,33],"2686":[3,3,31],"2687":[2,2,64],"2688":[4,4,80],"2689":[4,4,59],"2690":[4,4,13],"2691":[3,2,41],"2692":[4,5,46],"2693":[2,2,34],"2694":[5,3,54],"2695":[3,3,66],"2696":[2,3,30],"2697":[3,2,36],"2698":[2,2,1],"2699":[4,4,31],"2700":[2,4,31],"2701":[3,2,127],"2702":[3,2,58],"2703":[2,5,23],"2704":[2,5,29],"2705":[3,2,41],"2706":[2,2,38],"2707":[3,1,1],"2708":[1,3,1],"2709":[4,4,32],"2710":[6,4,16],"2711":[6,4,23],"2712":[7,4,52],"2713":[9,4,33],"2714":[12,4,32],"2715":[3,3,1],"2716":[6,5,20],"2717":[8,5,34],"2718":[8,5,22],"2719":[8,5,50],"2720":[1,3,1],"2721":[8,4,84],"2722":[9,4,57],"2723":[9,4,84],"2724":[14,4,27],"2725":[12,4,40],"2726":[13,4,49],"2727":[9,4,20],"2728":[9,4,30],"2729":[12,4,51],"2730":[1,3,1],"2731":[12,4,64],"2732":[8,4,32],"2733":[13,4,53],"2734":[10,4,34],"2735":[1,3,1],"2736":[6,4,30],"2737":[8,4,32],"2738":[1,3,1],"2739":[7,4,81],"2740":[13,4,45],"2741":[15,4,58],"2742":[6,4,66],"2743":[1,3,1],"2744":[5,4,42],"2745":[6,4,27],"2746":[7,4,8],"2747":[8,4,16],"2748":[3,3,1],"2749":[14,5,31],"2750":[12,5,46],"2751":[12,5,39],"2752":[8,5,36],"2753":[1,3,1],"2754":[7,3,30],"2755":[7,3,36],"2756":[5,3,14],"2757":[6,3,23],"2758":[4,3,54],"2759":[3,1,94],"2760":[3,3,86],"2761":[4,3,17],"2762":[5,3,143],"2763":[3,3,87],"2764":[4,3,102],"2765":[4,3,112],"2766":[4,3,107],"2767":[6,3,79],"2768":[5,3,91],"2769":[1,3,87],"2770":[5,3,36],"2771":[1,3,47],"2772":[1,1,71],"2773":[2,1,25],"2774":[3,3,94],"2775":[6,3,79],"2776":[3,1,66],"2777":[3,1,1],"2778":[2,3,1],"2779":[2,5,60],"2780":[3,5,1],"2781":[3,7,28],"2782":[3,7,31],"2783":[3,7,39],"2784":[3,7,33],"2785":[4,5,75],"2786":[2,3,42],"2787":[2,3,1],"2788":[4,4,44],"2789":[2,4,78],"2790":[2,4,59],"2791":[3,4,64],"2792":[3,3,103],"2793":[2,3,26],"2794":[1,1,83],"2795":[3,1,161],"2796":[1,1,1],"2797":[6,2,48],"2798":[6,2,51],"2799":[12,2,33],"2800":[7,2,46],"2801":[4,2,31],"2802":[5,1,122],"2803":[3,1,93],"2804":[4,1,115],"2805":[1,1,36],"2806":[2,1,91],"2807":[3,2,86],"2808":[3,2,25],"2809":[2,2,100],"2810":[2,2,107],"2811":[6,2,76],"2812":[5,2,123],"2813":[7,2,96],"2814":[1,2,102],"2815":[6,2,139],"2816":[5,2,44],"2817":[1,2,40],"2818":[2,1,28],"2819":[1,2,21],"2820":[6,2,29],"2821":[6,8,51],"2822":[4,8,49],"2823":[4,2,118],"2824":[7,2,198],"2825":[5,2,155],"2826":[2,2,59],"2827":[5,1,84],"2828":[3,5,113],"2829":[4,5,124],"2830":[4,5,120],"2831":[4,5,64],"2832":[5,5,60],"2833":[3,5,109],"2834":[4,5,111],"2835":[1,5,114],"2836":[6,5,154],"2837":[5,5,24],"2838":[1,5,42],"2839":[3,1,40],"2840":[3,3,130],"2841":[1,3,136],"2842":[3,3,63],"2843":[3,6,31],"2844":[1,3,20],"2845":[4,4,158],"2846":[4,4,44],"2847":[2,4,40],"2848":[2,4,67],"2849":[5,4,38],"2850":[3,3,59],"2851":[2,6,50],"2852":[2,6,56],"2853":[2,6,30],"2854":[4,3,74],"2855":[4,3,95],"2856":[4,3,59],"2857":[5,3,74],"2858":[4,3,96],"2859":[1,3,55],"2860":[1,1,137],"2861":[2,1,83],"2862":[3,1,129],"2863":[3,1,46],"2864":[1,4,120],"2865":[4,4,150],"2866":[3,4,80],"2867":[5,4,70],"2868":[8,4,185],"2869":[3,1,206],"2870":[3,1,58],"2871":[5,1,166],"2872":[6,1,98],"2873":[7,1,161],"2874":[4,1,78],"2875":[2,1,67],"2876":[6,1,77],"2877":[3,1,37],"2878":[2,1,155],"2879":[2,1,99],"2880":[3,1,120],"2881":[1,1,114],"2882":[1,1,27]},"averageFieldLength":[3.2365591397849456,5.156434269857778,56.49462365591402],"storedFields":{"0":{"title":"About This Website","titles":[]},"1":{"title":"How These Docs Are Made","titles":["About This Website"]},"2":{"title":"About the Author","titles":["About This Website"]},"3":{"title":"Feedback","titles":["About This Website"]},"4":{"title":"ALLOW_ANONYMOUS","titles":[]},"5":{"title":"Syntax","titles":["ALLOW_ANONYMOUS"]},"6":{"title":"Examples","titles":["ALLOW_ANONYMOUS"]},"7":{"title":"Public Endpoint","titles":["ALLOW_ANONYMOUS","Examples"]},"8":{"title":"Short Form","titles":["ALLOW_ANONYMOUS","Examples"]},"9":{"title":"Public Read, Protected Write Pattern","titles":["ALLOW_ANONYMOUS","Examples"]},"10":{"title":"Behavior","titles":["ALLOW_ANONYMOUS"]},"11":{"title":"Related","titles":["ALLOW_ANONYMOUS"]},"12":{"title":"Related Annotations","titles":["ALLOW_ANONYMOUS"]},"13":{"title":"AUTHORIZE","titles":[]},"14":{"title":"Syntax","titles":["AUTHORIZE"]},"15":{"title":"Examples","titles":["AUTHORIZE"]},"16":{"title":"Require Any Authenticated User","titles":["AUTHORIZE","Examples"]},"17":{"title":"Alternative Keywords","titles":["AUTHORIZE","Examples"]},"18":{"title":"Require Specific Role","titles":["AUTHORIZE","Examples"]},"19":{"title":"Authorize by User Name","titles":["AUTHORIZE","Examples"]},"20":{"title":"Authorize by User ID","titles":["AUTHORIZE","Examples"]},"21":{"title":"Multiple Roles","titles":["AUTHORIZE","Examples"]},"22":{"title":"Mix of Roles and User Identifiers","titles":["AUTHORIZE","Examples"]},"23":{"title":"Authorize Before HTTP","titles":["AUTHORIZE","Examples"]},"24":{"title":"Authorize on Separate Line","titles":["AUTHORIZE","Examples"]},"25":{"title":"Behavior","titles":["AUTHORIZE"]},"26":{"title":"Related","titles":["AUTHORIZE"]},"27":{"title":"Related Annotations","titles":["AUTHORIZE"]},"28":{"title":"See Also","titles":["AUTHORIZE"]},"29":{"title":"BASIC_AUTH_COMMAND","titles":[]},"30":{"title":"Syntax","titles":["BASIC_AUTH_COMMAND"]},"31":{"title":"Command Parameters","titles":["BASIC_AUTH_COMMAND"]},"32":{"title":"Return Value","titles":["BASIC_AUTH_COMMAND"]},"33":{"title":"Special Columns","titles":["BASIC_AUTH_COMMAND","Return Value"]},"34":{"title":"Authentication Success","titles":["BASIC_AUTH_COMMAND","Return Value"]},"35":{"title":"Authentication Failure","titles":["BASIC_AUTH_COMMAND","Return Value"]},"36":{"title":"Examples","titles":["BASIC_AUTH_COMMAND"]},"37":{"title":"Basic Challenge Command","titles":["BASIC_AUTH_COMMAND","Examples"]},"38":{"title":"Challenge Command with Pre-Validated Password","titles":["BASIC_AUTH_COMMAND","Examples"]},"39":{"title":"Challenge Command That Denies Access","titles":["BASIC_AUTH_COMMAND","Examples"]},"40":{"title":"Challenge Command Without Annotation Credentials","titles":["BASIC_AUTH_COMMAND","Examples"]},"41":{"title":"Behavior","titles":["BASIC_AUTH_COMMAND"]},"42":{"title":"Related","titles":["BASIC_AUTH_COMMAND"]},"43":{"title":"Related Annotations","titles":["BASIC_AUTH_COMMAND"]},"44":{"title":"BASIC_AUTH_REALM","titles":[]},"45":{"title":"Syntax","titles":["BASIC_AUTH_REALM"]},"46":{"title":"Default Value","titles":["BASIC_AUTH_REALM"]},"47":{"title":"Examples","titles":["BASIC_AUTH_REALM"]},"48":{"title":"Set Realm Name","titles":["BASIC_AUTH_REALM","Examples"]},"49":{"title":"Alternative Keyword","titles":["BASIC_AUTH_REALM","Examples"]},"50":{"title":"With Challenge Command","titles":["BASIC_AUTH_REALM","Examples"]},"51":{"title":"Behavior","titles":["BASIC_AUTH_REALM"]},"52":{"title":"Realm Resolution Order","titles":["BASIC_AUTH_REALM"]},"53":{"title":"Related","titles":["BASIC_AUTH_REALM"]},"54":{"title":"Related Annotations","titles":["BASIC_AUTH_REALM"]},"55":{"title":"BASIC_AUTH","titles":[]},"56":{"title":"Syntax","titles":["BASIC_AUTH"]},"57":{"title":"Generating Password Hashes","titles":["BASIC_AUTH"]},"58":{"title":"Generating Authorization Headers","titles":["BASIC_AUTH"]},"59":{"title":"Examples","titles":["BASIC_AUTH"]},"60":{"title":"Basic Auth Without Credentials (Requires Challenge Command)","titles":["BASIC_AUTH","Examples"]},"61":{"title":"Basic Auth With Credentials","titles":["BASIC_AUTH","Examples"]},"62":{"title":"Multiple Users","titles":["BASIC_AUTH","Examples"]},"63":{"title":"Behavior","titles":["BASIC_AUTH"]},"64":{"title":"SSL Requirements","titles":["BASIC_AUTH"]},"65":{"title":"Related","titles":["BASIC_AUTH"]},"66":{"title":"Related Annotations","titles":["BASIC_AUTH"]},"67":{"title":"See Also","titles":["BASIC_AUTH"]},"68":{"title":"BODY_PARAMETER_NAME","titles":[]},"69":{"title":"Syntax","titles":["BODY_PARAMETER_NAME"]},"70":{"title":"Examples","titles":["BODY_PARAMETER_NAME"]},"71":{"title":"Custom Body Parameter","titles":["BODY_PARAMETER_NAME","Examples"]},"72":{"title":"JSON Body Parameter","titles":["BODY_PARAMETER_NAME","Examples"]},"73":{"title":"Behavior","titles":["BODY_PARAMETER_NAME"]},"74":{"title":"Matching Rules","titles":["BODY_PARAMETER_NAME"]},"75":{"title":"Redirecting an HTTP Custom Type field into a proxy body","titles":["BODY_PARAMETER_NAME","Matching Rules"]},"76":{"title":"Related","titles":["BODY_PARAMETER_NAME"]},"77":{"title":"Related Annotations","titles":["BODY_PARAMETER_NAME"]},"78":{"title":"BUFFER_ROWS","titles":[]},"79":{"title":"Syntax","titles":["BUFFER_ROWS"]},"80":{"title":"Default Value","titles":["BUFFER_ROWS"]},"81":{"title":"Special Values","titles":["BUFFER_ROWS"]},"82":{"title":"Examples","titles":["BUFFER_ROWS"]},"83":{"title":"Disable Buffering","titles":["BUFFER_ROWS","Examples"]},"84":{"title":"Buffer Entire Response","titles":["BUFFER_ROWS","Examples"]},"85":{"title":"Large Buffer for Throughput","titles":["BUFFER_ROWS","Examples"]},"86":{"title":"Small Buffer for Memory Efficiency","titles":["BUFFER_ROWS","Examples"]},"87":{"title":"Behavior","titles":["BUFFER_ROWS"]},"88":{"title":"Performance Considerations","titles":["BUFFER_ROWS"]},"89":{"title":"Related","titles":["BUFFER_ROWS"]},"90":{"title":"Related Annotations","titles":["BUFFER_ROWS"]},"91":{"title":"CACHE_EXPIRES_IN","titles":[]},"92":{"title":"Syntax","titles":["CACHE_EXPIRES_IN"]},"93":{"title":"Examples","titles":["CACHE_EXPIRES_IN"]},"94":{"title":"Short Cache (10 seconds)","titles":["CACHE_EXPIRES_IN","Examples"]},"95":{"title":"Medium Cache (5 minutes)","titles":["CACHE_EXPIRES_IN","Examples"]},"96":{"title":"Long Cache (1 hour)","titles":["CACHE_EXPIRES_IN","Examples"]},"97":{"title":"Daily Cache","titles":["CACHE_EXPIRES_IN","Examples"]},"98":{"title":"Related","titles":["CACHE_EXPIRES_IN"]},"99":{"title":"Related Annotations","titles":["CACHE_EXPIRES_IN"]},"100":{"title":"See Also","titles":["CACHE_EXPIRES_IN"]},"101":{"title":"CACHE_PROFILE","titles":[]},"102":{"title":"Syntax","titles":["CACHE_PROFILE"]},"103":{"title":"Examples","titles":["CACHE_PROFILE"]},"104":{"title":"Basic usage","titles":["CACHE_PROFILE","Examples"]},"105":{"title":"Combined with cached / cache_expires","titles":["CACHE_PROFILE","Examples"]},"106":{"title":"Multi-tenant search_path pattern","titles":["CACHE_PROFILE","Examples"]},"107":{"title":"Tiered TTL by user role","titles":["CACHE_PROFILE","Examples"]},"108":{"title":"Behavior","titles":["CACHE_PROFILE"]},"109":{"title":"Validation","titles":["CACHE_PROFILE"]},"110":{"title":"Related","titles":["CACHE_PROFILE"]},"111":{"title":"See Also","titles":["CACHE_PROFILE"]},"112":{"title":"CACHED","titles":[]},"113":{"title":"Syntax","titles":["CACHED"]},"114":{"title":"Examples","titles":["CACHED"]},"115":{"title":"Simple Caching","titles":["CACHED","Examples"]},"116":{"title":"Cache Key by Parameter","titles":["CACHED","Examples"]},"117":{"title":"Multiple Cache Key Parameters","titles":["CACHED","Examples"]},"118":{"title":"With Cache Expiration","titles":["CACHED","Examples"]},"119":{"title":"Caching Set-Returning Functions","titles":["CACHED","Examples"]},"120":{"title":"Behavior","titles":["CACHED"]},"121":{"title":"Cache Configuration","titles":["CACHED"]},"122":{"title":"Related","titles":["CACHED"]},"123":{"title":"Related Annotations","titles":["CACHED"]},"124":{"title":"See Also","titles":["CACHED"]},"125":{"title":"COLUMN_NAMES","titles":[]},"126":{"title":"Syntax","titles":["COLUMN_NAMES"]},"127":{"title":"Examples","titles":["COLUMN_NAMES"]},"128":{"title":"CSV with Headers","titles":["COLUMN_NAMES","Examples"]},"129":{"title":"TSV with Headers","titles":["COLUMN_NAMES","Examples"]},"130":{"title":"Related","titles":["COLUMN_NAMES"]},"131":{"title":"Related Annotations","titles":["COLUMN_NAMES"]},"132":{"title":"COMMAND_TIMEOUT","titles":[]},"133":{"title":"Syntax","titles":["COMMAND_TIMEOUT"]},"134":{"title":"Default Value","titles":["COMMAND_TIMEOUT"]},"135":{"title":"Examples","titles":["COMMAND_TIMEOUT"]},"136":{"title":"Short Timeout","titles":["COMMAND_TIMEOUT","Examples"]},"137":{"title":"Long Running Query","titles":["COMMAND_TIMEOUT","Examples"]},"138":{"title":"Using Seconds Format","titles":["COMMAND_TIMEOUT","Examples"]},"139":{"title":"Behavior","titles":["COMMAND_TIMEOUT"]},"140":{"title":"Timeout Response","titles":["COMMAND_TIMEOUT"]},"141":{"title":"Related","titles":["COMMAND_TIMEOUT"]},"142":{"title":"Related Annotations","titles":["COMMAND_TIMEOUT"]},"143":{"title":"See Also","titles":["COMMAND_TIMEOUT"]},"144":{"title":"CONNECTION","titles":[]},"145":{"title":"Syntax","titles":["CONNECTION"]},"146":{"title":"Examples","titles":["CONNECTION"]},"147":{"title":"Use Named Connection","titles":["CONNECTION","Examples"]},"148":{"title":"Reporting Database","titles":["CONNECTION","Examples"]},"149":{"title":"Read Replica","titles":["CONNECTION","Examples"]},"150":{"title":"Behavior","titles":["CONNECTION"]},"151":{"title":"Related","titles":["CONNECTION"]},"152":{"title":"Related Annotations","titles":["CONNECTION"]},"153":{"title":"See Also","titles":["CONNECTION"]},"154":{"title":"Custom Parameters","titles":[]},"155":{"title":"Syntax","titles":["Custom Parameters"]},"156":{"title":"Dynamic Parameter Values","titles":["Custom Parameters"]},"157":{"title":"Example","titles":["Custom Parameters","Dynamic Parameter Values"]},"158":{"title":"Built-in Parameters","titles":["Custom Parameters"]},"159":{"title":"General","titles":["Custom Parameters","Built-in Parameters"]},"160":{"title":"Upload","titles":["Custom Parameters","Built-in Parameters"]},"161":{"title":"Table Format","titles":["Custom Parameters","Built-in Parameters"]},"162":{"title":"Server-Sent Events","titles":["Custom Parameters","Built-in Parameters"]},"163":{"title":"TypeScript Client","titles":["Custom Parameters","Built-in Parameters"]},"164":{"title":"Related","titles":["Custom Parameters"]},"165":{"title":"DEFINE_PARAM","titles":[]},"166":{"title":"Syntax","titles":["DEFINE_PARAM"]},"167":{"title":"Custom Parameter Placeholders","titles":["DEFINE_PARAM"]},"168":{"title":"Claim Mapping","titles":["DEFINE_PARAM"]},"169":{"title":"Default Type","titles":["DEFINE_PARAM"]},"170":{"title":"Related","titles":["DEFINE_PARAM"]},"171":{"title":"DISABLED","titles":[]},"172":{"title":"Keywords","titles":["DISABLED"]},"173":{"title":"Syntax","titles":["DISABLED"]},"174":{"title":"Example","titles":["DISABLED"]},"175":{"title":"Tag-conditional form","titles":["DISABLED"]},"176":{"title":"Related","titles":["DISABLED"]},"177":{"title":"ENABLED","titles":[]},"178":{"title":"Keywords","titles":["ENABLED"]},"179":{"title":"Syntax","titles":["ENABLED"]},"180":{"title":"Example: disable-by-default, enable for immutable only","titles":["ENABLED"]},"181":{"title":"Related","titles":["ENABLED"]},"182":{"title":"ENCRYPT / DECRYPT","titles":[]},"183":{"title":"Encrypt Parameters","titles":["ENCRYPT / DECRYPT"]},"184":{"title":"Syntax","titles":["ENCRYPT / DECRYPT","Encrypt Parameters"]},"185":{"title":"Decrypt Result Columns","titles":["ENCRYPT / DECRYPT"]},"186":{"title":"Syntax","titles":["ENCRYPT / DECRYPT","Decrypt Result Columns"]},"187":{"title":"Full Roundtrip Example","titles":["ENCRYPT / DECRYPT"]},"188":{"title":"Behavior","titles":["ENCRYPT / DECRYPT"]},"189":{"title":"Related","titles":["ENCRYPT / DECRYPT"]},"190":{"title":"Related Annotations","titles":["ENCRYPT / DECRYPT"]},"191":{"title":"See Also","titles":["ENCRYPT / DECRYPT"]},"192":{"title":"ERROR_CODE_POLICY","titles":[]},"193":{"title":"Syntax","titles":["ERROR_CODE_POLICY"]},"194":{"title":"Examples","titles":["ERROR_CODE_POLICY"]},"195":{"title":"Named Policy","titles":["ERROR_CODE_POLICY","Examples"]},"196":{"title":"Short Form","titles":["ERROR_CODE_POLICY","Examples"]},"197":{"title":"Behavior","titles":["ERROR_CODE_POLICY"]},"198":{"title":"Related","titles":["ERROR_CODE_POLICY"]},"199":{"title":"Related Annotations","titles":["ERROR_CODE_POLICY"]},"200":{"title":"See Also","titles":["ERROR_CODE_POLICY"]},"201":{"title":"HTTP CUSTOM TYPES","titles":[]},"202":{"title":"Overview","titles":["HTTP CUSTOM TYPES"]},"203":{"title":"Syntax","titles":["HTTP CUSTOM TYPES"]},"204":{"title":"Supported Methods","titles":["HTTP CUSTOM TYPES"]},"205":{"title":"Examples","titles":["HTTP CUSTOM TYPES"]},"206":{"title":"Basic GET Request","titles":["HTTP CUSTOM TYPES","Examples"]},"207":{"title":"GET with Headers and Placeholders","titles":["HTTP CUSTOM TYPES","Examples"]},"208":{"title":"POST with Request Body","titles":["HTTP CUSTOM TYPES","Examples"]},"209":{"title":"Multiple API Calls","titles":["HTTP CUSTOM TYPES","Examples"]},"210":{"title":"Response Fields","titles":["HTTP CUSTOM TYPES"]},"211":{"title":"Timeout Directives","titles":["HTTP CUSTOM TYPES"]},"212":{"title":"Placeholder Substitution","titles":["HTTP CUSTOM TYPES"]},"213":{"title":"Retry Logic","titles":["HTTP CUSTOM TYPES"]},"214":{"title":"Response Caching","titles":["HTTP CUSTOM TYPES"]},"215":{"title":"Resolved Parameter Expressions","titles":["HTTP CUSTOM TYPES"]},"216":{"title":"Behavior","titles":["HTTP CUSTOM TYPES"]},"217":{"title":"Related","titles":["HTTP CUSTOM TYPES"]},"218":{"title":"Related Annotations","titles":["HTTP CUSTOM TYPES"]},"219":{"title":"See Also","titles":["HTTP CUSTOM TYPES"]},"220":{"title":"Annotations Reference","titles":[]},"221":{"title":"How to Use This Reference","titles":["Annotations Reference"]},"222":{"title":"Annotation Categories","titles":["Annotations Reference"]},"223":{"title":"HTTP & Routing","titles":["Annotations Reference","Annotation Categories"]},"224":{"title":"Authorization","titles":["Annotations Reference","Annotation Categories"]},"225":{"title":"Basic Authentication","titles":["Annotations Reference","Annotation Categories"]},"226":{"title":"Request Configuration","titles":["Annotations Reference","Annotation Categories"]},"227":{"title":"Response Configuration","titles":["Annotations Reference","Annotation Categories"]},"228":{"title":"Table Format Output","titles":["Annotations Reference","Annotation Categories"]},"229":{"title":"Raw Output Mode","titles":["Annotations Reference","Annotation Categories"]},"230":{"title":"Caching","titles":["Annotations Reference","Annotation Categories"]},"231":{"title":"Performance","titles":["Annotations Reference","Annotation Categories"]},"232":{"title":"Format References","titles":["Annotations Reference","Annotation Categories"]},"233":{"title":"Server-Sent Events","titles":["Annotations Reference","Annotation Categories"]},"234":{"title":"Upload","titles":["Annotations Reference","Annotation Categories"]},"235":{"title":"Policies","titles":["Annotations Reference","Annotation Categories"]},"236":{"title":"Context & Security","titles":["Annotations Reference","Annotation Categories"]},"237":{"title":"Parameter Annotations","titles":["Annotations Reference","Annotation Categories"]},"238":{"title":"SQL File Annotations","titles":["Annotations Reference","Annotation Categories"]},"239":{"title":"Test File Annotations","titles":["Annotations Reference","Annotation Categories"]},"240":{"title":"Custom","titles":["Annotations Reference","Annotation Categories"]},"241":{"title":"HTTP","titles":[]},"242":{"title":"Keywords","titles":["HTTP"]},"243":{"title":"Syntax","titles":["HTTP"]},"244":{"title":"CommentsMode Requirement","titles":["HTTP"]},"245":{"title":"Default Behavior","titles":["HTTP"]},"246":{"title":"Examples","titles":["HTTP"]},"247":{"title":"Basic Endpoint","titles":["HTTP","Examples"]},"248":{"title":"Explicit HTTP Method","titles":["HTTP","Examples"]},"249":{"title":"Custom Path","titles":["HTTP","Examples"]},"250":{"title":"Method and Custom Path","titles":["HTTP","Examples"]},"251":{"title":"Multi-line with Documentation","titles":["HTTP","Examples"]},"252":{"title":"Unrecognized Method Becomes Path","titles":["HTTP","Examples"]},"253":{"title":"Path Parameters","titles":["HTTP"]},"254":{"title":"Single Path Parameter","titles":["HTTP","Path Parameters"]},"255":{"title":"Multiple Path Parameters","titles":["HTTP","Path Parameters"]},"256":{"title":"Path Parameters with Query String","titles":["HTTP","Path Parameters"]},"257":{"title":"Path Parameters with JSON Body","titles":["HTTP","Path Parameters"]},"258":{"title":"Path Parameter Key Features","titles":["HTTP","Path Parameters"]},"259":{"title":"Related","titles":["HTTP"]},"260":{"title":"Related Annotations","titles":["HTTP"]},"261":{"title":"INTERNAL","titles":[]},"262":{"title":"Syntax","titles":["INTERNAL"]},"263":{"title":"Example: Internal Helper with Proxy","titles":["INTERNAL"]},"264":{"title":"Example: Internal Helper with HTTP Client Types","titles":["INTERNAL"]},"265":{"title":"SQL File Endpoints","titles":["INTERNAL"]},"266":{"title":"Related","titles":["INTERNAL"]},"267":{"title":"Interval Format Reference","titles":[]},"268":{"title":"Syntax","titles":["Interval Format Reference"]},"269":{"title":"Supported Units","titles":["Interval Format Reference"]},"270":{"title":"Examples","titles":["Interval Format Reference"]},"271":{"title":"Short Form (Recommended)","titles":["Interval Format Reference","Examples"]},"272":{"title":"Long Form","titles":["Interval Format Reference","Examples"]},"273":{"title":"With Space","titles":["Interval Format Reference","Examples"]},"274":{"title":"Decimal Values","titles":["Interval Format Reference","Examples"]},"275":{"title":"No Unit (Defaults to Seconds)","titles":["Interval Format Reference","Examples"]},"276":{"title":"Usage in Annotations","titles":["Interval Format Reference"]},"277":{"title":"@timeout / @command_timeout","titles":["Interval Format Reference","Usage in Annotations"]},"278":{"title":"@cache_expires_in","titles":["Interval Format Reference","Usage in Annotations"]},"279":{"title":"Configuration Values","titles":["Interval Format Reference"]},"280":{"title":"Invalid Formats","titles":["Interval Format Reference"]},"281":{"title":"Related","titles":["Interval Format Reference"]},"282":{"title":"LOGOUT","titles":[]},"283":{"title":"Syntax","titles":["LOGOUT"]},"284":{"title":"Logout Endpoint Behavior","titles":["LOGOUT"]},"285":{"title":"Void Functions","titles":["LOGOUT","Logout Endpoint Behavior"]},"286":{"title":"Functions with Return Values","titles":["LOGOUT","Logout Endpoint Behavior"]},"287":{"title":"Examples","titles":["LOGOUT"]},"288":{"title":"Basic Logout (Void)","titles":["LOGOUT","Examples"]},"289":{"title":"Logout from Specific Scheme","titles":["LOGOUT","Examples"]},"290":{"title":"Logout from Multiple Schemes","titles":["LOGOUT","Examples"]},"291":{"title":"Conditional Scheme Logout","titles":["LOGOUT","Examples"]},"292":{"title":"Logout with Cleanup","titles":["LOGOUT","Examples"]},"293":{"title":"Related","titles":["LOGOUT"]},"294":{"title":"Related Annotations","titles":["LOGOUT"]},"295":{"title":"See Also","titles":["LOGOUT"]},"296":{"title":"LOGIN","titles":[]},"297":{"title":"How a login endpoint works","titles":["LOGIN"]},"298":{"title":"Minimal example","titles":["LOGIN"]},"299":{"title":"The return record","titles":["LOGIN"]},"300":{"title":"Special columns","titles":["LOGIN"]},"301":{"title":"Status column","titles":["LOGIN","Special columns"]},"302":{"title":"Scheme column","titles":["LOGIN","Special columns"]},"303":{"title":"Body column","titles":["LOGIN","Special columns"]},"304":{"title":"Claims: how columns become the user","titles":["LOGIN"]},"305":{"title":"Identity claims","titles":["LOGIN","Claims: how columns become the user"]},"306":{"title":"Using claims in your other endpoints","titles":["LOGIN","Claims: how columns become the user"]},"307":{"title":"Password verification","titles":["LOGIN"]},"308":{"title":"Option A — verify in SQL (no hash column)","titles":["LOGIN","Password verification"]},"309":{"title":"Option B — built-in hasher (return a hash column)","titles":["LOGIN","Password verification"]},"310":{"title":"Verification callbacks","titles":["LOGIN","Password verification"]},"311":{"title":"More examples","titles":["LOGIN"]},"312":{"title":"Multiple schemes from one login","titles":["LOGIN","More examples"]},"313":{"title":"Explicit status code and message","titles":["LOGIN","More examples"]},"314":{"title":"Role-protected endpoint after login","titles":["LOGIN","More examples"]},"315":{"title":"Related","titles":["LOGIN"]},"316":{"title":"Related Annotations","titles":["LOGIN"]},"317":{"title":"MCP","titles":[]},"318":{"title":"Syntax","titles":["MCP"]},"319":{"title":"Description precedence","titles":["MCP","Syntax"]},"320":{"title":"MCP-only tools (no HTTP route)","titles":["MCP"]},"321":{"title":"Examples","titles":["MCP"]},"322":{"title":"Expose a routine as a tool (HTTP and MCP)","titles":["MCP","Examples"]},"323":{"title":"Description from comment prose","titles":["MCP","Examples"]},"324":{"title":"Explicit description, with a private note that stays out of it","titles":["MCP","Examples"]},"325":{"title":"Override the tool name","titles":["MCP","Examples"]},"326":{"title":"Recognized keywords","titles":["MCP"]},"327":{"title":"Related","titles":["MCP"]},"328":{"title":"NESTED","titles":[]},"329":{"title":"Syntax","titles":["NESTED"]},"330":{"title":"Default Behavior vs Nested","titles":["NESTED"]},"331":{"title":"Examples","titles":["NESTED"]},"332":{"title":"Basic Usage","titles":["NESTED","Examples"]},"333":{"title":"Multiple Composite Columns","titles":["NESTED","Examples"]},"334":{"title":"Deep Nested Composite Types","titles":["NESTED","Examples"]},"335":{"title":"Arrays of Composite Types","titles":["NESTED","Examples"]},"336":{"title":"Global Configuration","titles":["NESTED"]},"337":{"title":"Behavior","titles":["NESTED"]},"338":{"title":"Related","titles":["NESTED"]},"339":{"title":"NEW_LINE","titles":[]},"340":{"title":"Syntax","titles":["NEW_LINE"]},"341":{"title":"Examples","titles":["NEW_LINE"]},"342":{"title":"Unix Line Endings","titles":["NEW_LINE","Examples"]},"343":{"title":"Windows Line Endings","titles":["NEW_LINE","Examples"]},"344":{"title":"Custom Row Separator","titles":["NEW_LINE","Examples"]},"345":{"title":"Related","titles":["NEW_LINE"]},"346":{"title":"Related Annotations","titles":["NEW_LINE"]},"347":{"title":"OPENAPI","titles":[]},"348":{"title":"Syntax","titles":["OPENAPI"]},"349":{"title":"How it composes with config-level filters","titles":["OPENAPI"]},"350":{"title":"Examples","titles":["OPENAPI"]},"351":{"title":"Hide an internal maintenance routine","titles":["OPENAPI","Examples"]},"352":{"title":"Group routines under a custom tag","titles":["OPENAPI","Examples"]},"353":{"title":"Multiple tags","titles":["OPENAPI","Examples"]},"354":{"title":"Hide alongside a config filter","titles":["OPENAPI","Examples"]},"355":{"title":"Recognized keywords","titles":["OPENAPI"]},"356":{"title":"Related","titles":["OPENAPI"]},"357":{"title":"PARAMETER_HASH","titles":[]},"358":{"title":"Syntax","titles":["PARAMETER_HASH"]},"359":{"title":"Examples","titles":["PARAMETER_HASH"]},"360":{"title":"Simple User Registration","titles":["PARAMETER_HASH","Examples"]},"361":{"title":"User Registration with Response","titles":["PARAMETER_HASH","Examples"]},"362":{"title":"Behavior","titles":["PARAMETER_HASH"]},"363":{"title":"Built-in Password Hasher","titles":["PARAMETER_HASH"]},"364":{"title":"Complete Registration and Login Flow","titles":["PARAMETER_HASH"]},"365":{"title":"Registration Function","titles":["PARAMETER_HASH","Complete Registration and Login Flow"]},"366":{"title":"Login Function","titles":["PARAMETER_HASH","Complete Registration and Login Flow"]},"367":{"title":"Related","titles":["PARAMETER_HASH"]},"368":{"title":"Related Annotations","titles":["PARAMETER_HASH"]},"369":{"title":"PARAM","titles":[]},"370":{"title":"Syntax","titles":["PARAM"]},"371":{"title":"Examples","titles":["PARAM"]},"372":{"title":"Rename Positional Parameters (SQL Files)","titles":["PARAM","Examples"]},"373":{"title":"Rename with Type Override","titles":["PARAM","Examples"]},"374":{"title":"Rename Function Parameters","titles":["PARAM","Examples"]},"375":{"title":""is" Style Syntax","titles":["PARAM","Examples"]},"376":{"title":"Claim Mapping with Renamed Parameters","titles":["PARAM"]},"377":{"title":"Default Values (SQL File Parameters)","titles":["PARAM"]},"378":{"title":"Syntax","titles":["PARAM","Default Values (SQL File Parameters)"]},"379":{"title":"Value Parsing Rules (SQL Conventions)","titles":["PARAM","Default Values (SQL File Parameters)"]},"380":{"title":"Example","titles":["PARAM","Default Values (SQL File Parameters)"]},"381":{"title":"Effects on Generated Output","titles":["PARAM","Default Values (SQL File Parameters)"]},"382":{"title":"Rename Validation","titles":["PARAM"]},"383":{"title":"Composite Type Parameters (SQL Files)","titles":["PARAM"]},"384":{"title":"Behavior","titles":["PARAM"]},"385":{"title":"Related","titles":["PARAM"]},"386":{"title":"Parameter Value Substitution","titles":[]},"387":{"title":"Where it works","titles":["Parameter Value Substitution"]},"388":{"title":"How a placeholder is resolved","titles":["Parameter Value Substitution"]},"389":{"title":"Brace handling","titles":["Parameter Value Substitution","How a placeholder is resolved"]},"390":{"title":"Environment variables","titles":["Parameter Value Substitution"]},"391":{"title":"Examples","titles":["Parameter Value Substitution"]},"392":{"title":"Dynamic file download","titles":["Parameter Value Substitution","Examples"]},"393":{"title":"Upload destination from a parameter","titles":["Parameter Value Substitution","Examples"]},"394":{"title":"Outbound HTTP call shaped by parameters","titles":["Parameter Value Substitution","Examples"]},"395":{"title":"Not to be confused with","titles":["Parameter Value Substitution"]},"396":{"title":"Related","titles":["Parameter Value Substitution"]},"397":{"title":"PATH","titles":[]},"398":{"title":"Keywords","titles":["PATH"]},"399":{"title":"Syntax","titles":["PATH"]},"400":{"title":"Examples","titles":["PATH"]},"401":{"title":"Custom Path","titles":["PATH","Examples"]},"402":{"title":"Path with HTTP Method","titles":["PATH","Examples"]},"403":{"title":"Versioned API","titles":["PATH","Examples"]},"404":{"title":"Path Parameters","titles":["PATH"]},"405":{"title":"Basic Path Parameter","titles":["PATH","Path Parameters"]},"406":{"title":"Nested Path Parameters","titles":["PATH","Path Parameters"]},"407":{"title":"Parameter Name Matching","titles":["PATH","Path Parameters"]},"408":{"title":"Optional Path Parameters","titles":["PATH","Path Parameters"]},"409":{"title":"Behavior","titles":["PATH"]},"410":{"title":"Related","titles":["PATH"]},"411":{"title":"Related Annotations","titles":["PATH"]},"412":{"title":"PROXY_OUT","titles":[]},"413":{"title":"Syntax","titles":["PROXY_OUT"]},"414":{"title":"Description","titles":["PROXY_OUT"]},"415":{"title":"Basic Usage","titles":["PROXY_OUT"]},"416":{"title":"Proxy Annotations","titles":["PROXY_OUT"]},"417":{"title":"Basic Proxy Out with Default Host","titles":["PROXY_OUT","Proxy Annotations"]},"418":{"title":"Proxy Out with Custom Host","titles":["PROXY_OUT","Proxy Annotations"]},"419":{"title":"Proxy Out with HTTP Method Override","titles":["PROXY_OUT","Proxy Annotations"]},"420":{"title":"Combined Method and Host","titles":["PROXY_OUT","Proxy Annotations"]},"421":{"title":"Self-Referencing Proxy Out (Relative Path)","titles":["PROXY_OUT","Proxy Annotations"]},"422":{"title":"URL Resolution","titles":["PROXY_OUT"]},"423":{"title":"Path and Query String Forwarding","titles":["PROXY_OUT"]},"424":{"title":"Error Handling","titles":["PROXY_OUT"]},"425":{"title":"Examples","titles":["PROXY_OUT"]},"426":{"title":"PDF Rendering Pipeline","titles":["PROXY_OUT","Examples"]},"427":{"title":"ML Inference","titles":["PROXY_OUT","Examples"]},"428":{"title":"Email Sending","titles":["PROXY_OUT","Examples"]},"429":{"title":"TypeScript Client","titles":["PROXY_OUT"]},"430":{"title":"Configuration","titles":["PROXY_OUT"]},"431":{"title":"Related","titles":["PROXY_OUT"]},"432":{"title":"See Also","titles":["PROXY_OUT"]},"433":{"title":"PROXY","titles":[]},"434":{"title":"Syntax","titles":["PROXY"]},"435":{"title":"Description","titles":["PROXY"]},"436":{"title":"How the target URL is built","titles":["PROXY"]},"437":{"title":"Basic Usage","titles":["PROXY"]},"438":{"title":"Passthrough Mode","titles":["PROXY","Basic Usage"]},"439":{"title":"Transform Mode","titles":["PROXY","Basic Usage"]},"440":{"title":"Proxy Annotations","titles":["PROXY"]},"441":{"title":"Basic Proxy with Default Host","titles":["PROXY","Proxy Annotations"]},"442":{"title":"Proxy with Custom Host","titles":["PROXY","Proxy Annotations"]},"443":{"title":"Proxy with Custom HTTP Method","titles":["PROXY","Proxy Annotations"]},"444":{"title":"Combined Method and Host","titles":["PROXY","Proxy Annotations"]},"445":{"title":"Self-Referencing Proxy (Relative Path)","titles":["PROXY","Proxy Annotations"]},"446":{"title":"URL Resolution","titles":["PROXY"]},"447":{"title":"Response Parameters","titles":["PROXY"]},"448":{"title":"How parameters are mapped","titles":["PROXY","Response Parameters"]},"449":{"title":"Custom parameter names","titles":["PROXY","Response Parameters"]},"450":{"title":"Examples","titles":["PROXY"]},"451":{"title":"API Gateway Pattern","titles":["PROXY","Examples"]},"452":{"title":"Data Enrichment","titles":["PROXY","Examples"]},"453":{"title":"Authenticated Proxy with User Context","titles":["PROXY","Examples"]},"454":{"title":"Proxy with User Parameters","titles":["PROXY","Examples"]},"455":{"title":"Configuration","titles":["PROXY"]},"456":{"title":"Related","titles":["PROXY"]},"457":{"title":"See Also","titles":["PROXY"]},"458":{"title":"QUERY_STRING_NULL_HANDLING","titles":[]},"459":{"title":"Syntax","titles":["QUERY_STRING_NULL_HANDLING"]},"460":{"title":"Values","titles":["QUERY_STRING_NULL_HANDLING"]},"461":{"title":"Behavior Explained","titles":["QUERY_STRING_NULL_HANDLING"]},"462":{"title":"Ignore Mode (Default)","titles":["QUERY_STRING_NULL_HANDLING","Behavior Explained"]},"463":{"title":"EmptyString Mode","titles":["QUERY_STRING_NULL_HANDLING","Behavior Explained"]},"464":{"title":"NullLiteral Mode","titles":["QUERY_STRING_NULL_HANDLING","Behavior Explained"]},"465":{"title":"Examples","titles":["QUERY_STRING_NULL_HANDLING"]},"466":{"title":"Using Empty String for NULL","titles":["QUERY_STRING_NULL_HANDLING","Examples"]},"467":{"title":"Using "null" String for NULL","titles":["QUERY_STRING_NULL_HANDLING","Examples"]},"468":{"title":"Default Behavior (No Special Handling)","titles":["QUERY_STRING_NULL_HANDLING","Examples"]},"469":{"title":"Path Parameters","titles":["QUERY_STRING_NULL_HANDLING"]},"470":{"title":"Configuration Default","titles":["QUERY_STRING_NULL_HANDLING"]},"471":{"title":"Related","titles":["QUERY_STRING_NULL_HANDLING"]},"472":{"title":"Related Annotations","titles":["QUERY_STRING_NULL_HANDLING"]},"473":{"title":"RATE_LIMITER_POLICY","titles":[]},"474":{"title":"Syntax","titles":["RATE_LIMITER_POLICY"]},"475":{"title":"Examples","titles":["RATE_LIMITER_POLICY"]},"476":{"title":"Fixed Window Policy","titles":["RATE_LIMITER_POLICY","Examples"]},"477":{"title":"Token Bucket Policy","titles":["RATE_LIMITER_POLICY","Examples"]},"478":{"title":"Combined with Authorization","titles":["RATE_LIMITER_POLICY","Examples"]},"479":{"title":"Per-User Rate Limiting","titles":["RATE_LIMITER_POLICY","Examples"]},"480":{"title":"Behavior","titles":["RATE_LIMITER_POLICY"]},"481":{"title":"Related","titles":["RATE_LIMITER_POLICY"]},"482":{"title":"Related Annotations","titles":["RATE_LIMITER_POLICY"]},"483":{"title":"See Also","titles":["RATE_LIMITER_POLICY"]},"484":{"title":"RAW","titles":[]},"485":{"title":"Syntax","titles":["RAW"]},"486":{"title":"Examples","titles":["RAW"]},"487":{"title":"Basic Raw Output","titles":["RAW","Examples"]},"488":{"title":"Raw with Multiple Columns","titles":["RAW","Examples"]},"489":{"title":"CSV Export","titles":["RAW","Examples"]},"490":{"title":"Tab-Separated Values","titles":["RAW","Examples"]},"491":{"title":"Pipe-Delimited Format","titles":["RAW","Examples"]},"492":{"title":"Download as File","titles":["RAW","Examples"]},"493":{"title":"Dynamic CSV Download","titles":["RAW","Examples"]},"494":{"title":"Behavior","titles":["RAW"]},"495":{"title":"Related","titles":["RAW"]},"496":{"title":"Related Annotations","titles":["RAW"]},"497":{"title":"REQUEST_HEADERS_MODE","titles":[]},"498":{"title":"Syntax","titles":["REQUEST_HEADERS_MODE"]},"499":{"title":"Values","titles":["REQUEST_HEADERS_MODE"]},"500":{"title":"Examples","titles":["REQUEST_HEADERS_MODE"]},"501":{"title":"Ignore Headers","titles":["REQUEST_HEADERS_MODE","Examples"]},"502":{"title":"Pass as Context Variable","titles":["REQUEST_HEADERS_MODE","Examples"]},"503":{"title":"Pass as Parameter","titles":["REQUEST_HEADERS_MODE","Examples"]},"504":{"title":"Behavior","titles":["REQUEST_HEADERS_MODE"]},"505":{"title":"Related","titles":["REQUEST_HEADERS_MODE"]},"506":{"title":"Related Annotations","titles":["REQUEST_HEADERS_MODE"]},"507":{"title":"REQUEST_HEADERS_PARAMETER_NAME","titles":[]},"508":{"title":"Syntax","titles":["REQUEST_HEADERS_PARAMETER_NAME"]},"509":{"title":"Examples","titles":["REQUEST_HEADERS_PARAMETER_NAME"]},"510":{"title":"Custom Parameter Name","titles":["REQUEST_HEADERS_PARAMETER_NAME","Examples"]},"511":{"title":"Default Parameter Name","titles":["REQUEST_HEADERS_PARAMETER_NAME","Examples"]},"512":{"title":"Behavior","titles":["REQUEST_HEADERS_PARAMETER_NAME"]},"513":{"title":"Related","titles":["REQUEST_HEADERS_PARAMETER_NAME"]},"514":{"title":"Related Annotations","titles":["REQUEST_HEADERS_PARAMETER_NAME"]},"515":{"title":"REQUEST_PARAM_TYPE","titles":[]},"516":{"title":"Syntax","titles":["REQUEST_PARAM_TYPE"]},"517":{"title":"Values","titles":["REQUEST_PARAM_TYPE"]},"518":{"title":"Default Behavior","titles":["REQUEST_PARAM_TYPE"]},"519":{"title":"Examples","titles":["REQUEST_PARAM_TYPE"]},"520":{"title":"Force Query String Parameters","titles":["REQUEST_PARAM_TYPE","Examples"]},"521":{"title":"Force JSON Body Parameters","titles":["REQUEST_PARAM_TYPE","Examples"]},"522":{"title":"Short Form Keywords","titles":["REQUEST_PARAM_TYPE","Examples"]},"523":{"title":"POST with Query String","titles":["REQUEST_PARAM_TYPE","Examples"]},"524":{"title":"Behavior","titles":["REQUEST_PARAM_TYPE"]},"525":{"title":"Related","titles":["REQUEST_PARAM_TYPE"]},"526":{"title":"Related Annotations","titles":["REQUEST_PARAM_TYPE"]},"527":{"title":"Resolved Parameters","titles":[]},"528":{"title":"Syntax","titles":["Resolved Parameters"]},"529":{"title":"Behavior","titles":["Resolved Parameters"]},"530":{"title":"Examples","titles":["Resolved Parameters"]},"531":{"title":"Inject a DB-stored API token into an outbound call","titles":["Resolved Parameters","Examples"]},"532":{"title":"Multiple resolved parameters","titles":["Resolved Parameters","Examples"]},"533":{"title":"Resolved value in URL, header, and body","titles":["Resolved Parameters","Examples"]},"534":{"title":"How it compares to the other {name} sources","titles":["Resolved Parameters"]},"535":{"title":"Related","titles":["Resolved Parameters"]},"536":{"title":"Response Headers","titles":[]},"537":{"title":"Syntax","titles":["Response Headers"]},"538":{"title":"Examples","titles":["Response Headers"]},"539":{"title":"Set Content-Type","titles":["Response Headers","Examples"]},"540":{"title":"Multiple Headers","titles":["Response Headers","Examples"]},"541":{"title":"Multi-Value Headers","titles":["Response Headers","Examples"]},"542":{"title":"Cache Control","titles":["Response Headers","Examples"]},"543":{"title":"Combined with Other Annotations","titles":["Response Headers","Examples"]},"544":{"title":"Dynamic Headers from Parameters","titles":["Response Headers","Examples"]},"545":{"title":"CORS Headers","titles":["Response Headers","Examples"]},"546":{"title":"Common Headers","titles":["Response Headers"]},"547":{"title":"Related","titles":["Response Headers"]},"548":{"title":"Related Annotations","titles":["Response Headers"]},"549":{"title":"RESPONSE_NULL_HANDLING","titles":[]},"550":{"title":"Syntax","titles":["RESPONSE_NULL_HANDLING"]},"551":{"title":"Values","titles":["RESPONSE_NULL_HANDLING"]},"552":{"title":"Examples","titles":["RESPONSE_NULL_HANDLING"]},"553":{"title":"Return Empty String for NULL","titles":["RESPONSE_NULL_HANDLING","Examples"]},"554":{"title":"Return 204 for NULL","titles":["RESPONSE_NULL_HANDLING","Examples"]},"555":{"title":"Return JSON null","titles":["RESPONSE_NULL_HANDLING","Examples"]},"556":{"title":"Configuration Default","titles":["RESPONSE_NULL_HANDLING"]},"557":{"title":"Related","titles":["RESPONSE_NULL_HANDLING"]},"558":{"title":"Related Annotations","titles":["RESPONSE_NULL_HANDLING"]},"559":{"title":"RESULT_NAME","titles":[]},"560":{"title":"Syntax","titles":["RESULT_NAME"]},"561":{"title":"Examples","titles":["RESULT_NAME"]},"562":{"title":"Before Statement (Separate Line)","titles":["RESULT_NAME","Examples"]},"563":{"title":"Inline After Semicolon (Same Line)","titles":["RESULT_NAME","Examples"]},"564":{"title":""is" Style Syntax","titles":["RESULT_NAME","Examples"]},"565":{"title":"Naming Some Results","titles":["RESULT_NAME","Examples"]},"566":{"title":"Naming All Results","titles":["RESULT_NAME","Examples"]},"567":{"title":"Behavior","titles":["RESULT_NAME"]},"568":{"title":"Related","titles":["RESULT_NAME"]},"569":{"title":"RETRY_STRATEGY","titles":[]},"570":{"title":"Syntax","titles":["RETRY_STRATEGY"]},"571":{"title":"Examples","titles":["RETRY_STRATEGY"]},"572":{"title":"Use Default Strategy","titles":["RETRY_STRATEGY","Examples"]},"573":{"title":"Use Named Strategy","titles":["RETRY_STRATEGY","Examples"]},"574":{"title":"Combined with Timeout","titles":["RETRY_STRATEGY","Examples"]},"575":{"title":"Behavior","titles":["RETRY_STRATEGY"]},"576":{"title":"Common Retry Scenarios","titles":["RETRY_STRATEGY"]},"577":{"title":"Configuration Example","titles":["RETRY_STRATEGY"]},"578":{"title":"Related","titles":["RETRY_STRATEGY"]},"579":{"title":"Related Annotations","titles":["RETRY_STRATEGY"]},"580":{"title":"See Also","titles":["RETRY_STRATEGY"]},"581":{"title":"RETURNS","titles":[]},"582":{"title":"Syntax","titles":["RETURNS"]},"583":{"title":"When to Use","titles":["RETURNS"]},"584":{"title":"Example","titles":["RETURNS"]},"585":{"title":"Scalar Type","titles":["RETURNS","Example"]},"586":{"title":"Void Statements","titles":["RETURNS","Example"]},"587":{"title":"Behavior","titles":["RETURNS"]},"588":{"title":"Related","titles":["RETURNS"]},"589":{"title":"SECURITY_SENSITIVE","titles":[]},"590":{"title":"Syntax","titles":["SECURITY_SENSITIVE"]},"591":{"title":"Examples","titles":["SECURITY_SENSITIVE"]},"592":{"title":"Password Change Endpoint","titles":["SECURITY_SENSITIVE","Examples"]},"593":{"title":"Login Endpoint","titles":["SECURITY_SENSITIVE","Examples"]},"594":{"title":"Payment Processing","titles":["SECURITY_SENSITIVE","Examples"]},"595":{"title":"Behavior","titles":["SECURITY_SENSITIVE"]},"596":{"title":"Related","titles":["SECURITY_SENSITIVE"]},"597":{"title":"Related Annotations","titles":["SECURITY_SENSITIVE"]},"598":{"title":"SEPARATOR","titles":[]},"599":{"title":"Syntax","titles":["SEPARATOR"]},"600":{"title":"Examples","titles":["SEPARATOR"]},"601":{"title":"Comma Separator (CSV)","titles":["SEPARATOR","Examples"]},"602":{"title":"Tab Separator (TSV)","titles":["SEPARATOR","Examples"]},"603":{"title":"Pipe Separator","titles":["SEPARATOR","Examples"]},"604":{"title":"Custom Separator","titles":["SEPARATOR","Examples"]},"605":{"title":"Related","titles":["SEPARATOR"]},"606":{"title":"Related Annotations","titles":["SEPARATOR"]},"607":{"title":"SINGLE","titles":[]},"608":{"title":"Syntax","titles":["SINGLE"]},"609":{"title":"Default Behavior vs Single","titles":["SINGLE"]},"610":{"title":"Examples","titles":["SINGLE"]},"611":{"title":"PostgreSQL Function","titles":["SINGLE","Examples"]},"612":{"title":"SQL File","titles":["SINGLE","Examples"]},"613":{"title":"Single Unnamed Column","titles":["SINGLE","Examples"]},"614":{"title":"Multi-Command Files (Positional)","titles":["SINGLE","Examples"]},"615":{"title":"Behavior","titles":["SINGLE"]},"616":{"title":"Empty Results","titles":["SINGLE","Behavior"]},"617":{"title":"Related","titles":["SINGLE"]},"618":{"title":"SKIP","titles":[]},"619":{"title":"Syntax","titles":["SKIP"]},"620":{"title":"Examples","titles":["SKIP"]},"621":{"title":"Skipping a DO Block","titles":["SKIP","Examples"]},"622":{"title":"Skipping Transaction Control","titles":["SKIP","Examples"]},"623":{"title":"Inline Placement","titles":["SKIP","Examples"]},"624":{"title":"SkipNonQueryCommands Setting","titles":["SKIP"]},"625":{"title":"Behavior","titles":["SKIP"]},"626":{"title":"Related","titles":["SKIP"]},"627":{"title":"SSE_EVENTS_LEVEL","titles":[]},"628":{"title":"Syntax","titles":["SSE_EVENTS_LEVEL"]},"629":{"title":"Values","titles":["SSE_EVENTS_LEVEL"]},"630":{"title":"Examples","titles":["SSE_EVENTS_LEVEL"]},"631":{"title":"Info Level (All Messages)","titles":["SSE_EVENTS_LEVEL","Examples"]},"632":{"title":"Notice Level","titles":["SSE_EVENTS_LEVEL","Examples"]},"633":{"title":"Warning Level Only","titles":["SSE_EVENTS_LEVEL","Examples"]},"634":{"title":"Related","titles":["SSE_EVENTS_LEVEL"]},"635":{"title":"Related Annotations","titles":["SSE_EVENTS_LEVEL"]},"636":{"title":"SSE_EVENTS_SCOPE","titles":[]},"637":{"title":"Syntax","titles":["SSE_EVENTS_SCOPE"]},"638":{"title":"Values","titles":["SSE_EVENTS_SCOPE"]},"639":{"title":"Request Correlation","titles":["SSE_EVENTS_SCOPE"]},"640":{"title":"Examples","titles":["SSE_EVENTS_SCOPE"]},"641":{"title":"Matching Scope","titles":["SSE_EVENTS_SCOPE","Examples"]},"642":{"title":"Authorize Scope with Roles","titles":["SSE_EVENTS_SCOPE","Examples"]},"643":{"title":"Authorize with User Names or IDs","titles":["SSE_EVENTS_SCOPE","Examples"]},"644":{"title":"Multiple Values","titles":["SSE_EVENTS_SCOPE","Examples"]},"645":{"title":"Broadcast to All","titles":["SSE_EVENTS_SCOPE","Examples"]},"646":{"title":"Dynamic Scope via RAISE HINT","titles":["SSE_EVENTS_SCOPE"]},"647":{"title":"Related","titles":["SSE_EVENTS_SCOPE"]},"648":{"title":"Related Annotations","titles":["SSE_EVENTS_SCOPE"]},"649":{"title":"SSE","titles":[]},"650":{"title":"How events flow","titles":["SSE"]},"651":{"title":"Syntax","titles":["SSE"]},"652":{"title":"SSE Path Construction","titles":["SSE"]},"653":{"title":"When Path is Omitted","titles":["SSE","SSE Path Construction"]},"654":{"title":"When Custom Path is Specified","titles":["SSE","SSE Path Construction"]},"655":{"title":"Default Level","titles":["SSE"]},"656":{"title":"Level Filtering","titles":["SSE"]},"657":{"title":"Examples","titles":["SSE"]},"658":{"title":"Basic SSE Endpoint (function)","titles":["SSE","Examples"]},"659":{"title":"Basic SSE Endpoint (SQL file)","titles":["SSE","Examples"]},"660":{"title":"With Notice Level","titles":["SSE","Examples"]},"661":{"title":"Warning Level Only","titles":["SSE","Examples"]},"662":{"title":"Using Default Path (Level Name)","titles":["SSE","Examples"]},"663":{"title":"Cross-procedure pattern","titles":["SSE"]},"664":{"title":"Function form","titles":["SSE","Cross-procedure pattern"]},"665":{"title":"SQL file form","titles":["SSE","Cross-procedure pattern"]},"666":{"title":"What the client does","titles":["SSE","Cross-procedure pattern"]},"667":{"title":"Behavior","titles":["SSE"]},"668":{"title":"On the publisher side","titles":["SSE","Behavior"]},"669":{"title":"On the subscriber side","titles":["SSE","Behavior"]},"670":{"title":"Related","titles":["SSE"]},"671":{"title":"Related Annotations","titles":["SSE"]},"672":{"title":"See Also","titles":["SSE"]},"673":{"title":"TABLE_FORMAT","titles":[]},"674":{"title":"Syntax","titles":["TABLE_FORMAT"]},"675":{"title":"Parameters","titles":["TABLE_FORMAT"]},"676":{"title":"Examples","titles":["TABLE_FORMAT"]},"677":{"title":"Static HTML Table","titles":["TABLE_FORMAT","Examples"]},"678":{"title":"Static Excel Download","titles":["TABLE_FORMAT","Examples"]},"679":{"title":"Dynamic Format Selection","titles":["TABLE_FORMAT","Examples"]},"680":{"title":"Related","titles":["TABLE_FORMAT"]},"681":{"title":"Related Annotations","titles":["TABLE_FORMAT"]},"682":{"title":"See Also","titles":["TABLE_FORMAT"]},"683":{"title":"TAGS","titles":[]},"684":{"title":"Available tags","titles":["TAGS"]},"685":{"title":"Syntax","titles":["TAGS"]},"686":{"title":"Example: cache only when immutable","titles":["TAGS"]},"687":{"title":"Behavior","titles":["TAGS"]},"688":{"title":"Related","titles":["TAGS"]},"689":{"title":"TEST @claim","titles":[]},"690":{"title":"Semantics","titles":["TEST @claim"]},"691":{"title":"Why not call the login endpoint?","titles":["TEST @claim"]},"692":{"title":"Related","titles":["TEST @claim"]},"693":{"title":"TEST @connection","titles":[]},"694":{"title":"Syntax","titles":["TEST @connection"]},"695":{"title":"Example","titles":["TEST @connection"]},"696":{"title":"Notes","titles":["TEST @connection"]},"697":{"title":"Related","titles":["TEST @connection"]},"698":{"title":"TEST @response","titles":[]},"699":{"title":"Default naming","titles":["TEST @response"]},"700":{"title":"Syntax","titles":["TEST @response"]},"701":{"title":"Notes","titles":["TEST @response"]},"702":{"title":"Related","titles":["TEST @response"]},"703":{"title":"TEST @setup","titles":[]},"704":{"title":"Syntax","titles":["TEST @setup"]},"705":{"title":"Example","titles":["TEST @setup"]},"706":{"title":"Header semantics","titles":["TEST @setup"]},"707":{"title":"Related","titles":["TEST @setup"]},"708":{"title":"TEST @tag","titles":[]},"709":{"title":"Syntax","titles":["TEST @tag"]},"710":{"title":"Example","titles":["TEST @tag"]},"711":{"title":"Tags via a shared profile","titles":["TEST @tag"]},"712":{"title":"Related","titles":["TEST @tag"]},"713":{"title":"TEST @teardown","titles":[]},"714":{"title":"Syntax","titles":["TEST @teardown"]},"715":{"title":"Example","titles":["TEST @teardown"]},"716":{"title":"Ordering","titles":["TEST @teardown"]},"717":{"title":"Related","titles":["TEST @teardown"]},"718":{"title":"TSCLIENT","titles":[]},"719":{"title":"Syntax","titles":["TSCLIENT"]},"720":{"title":"Parameters","titles":["TSCLIENT"]},"721":{"title":"Examples","titles":["TSCLIENT"]},"722":{"title":"Disable Generation","titles":["TSCLIENT","Examples"]},"723":{"title":"URL-Only Export","titles":["TSCLIENT","Examples"]},"724":{"title":"Custom Module","titles":["TSCLIENT","Examples"]},"725":{"title":"Related","titles":["TSCLIENT"]},"726":{"title":"Related Annotations","titles":["TSCLIENT"]},"727":{"title":"See Also","titles":["TSCLIENT"]},"728":{"title":"USER_CONTEXT","titles":[]},"729":{"title":"Keywords","titles":["USER_CONTEXT"]},"730":{"title":"Syntax","titles":["USER_CONTEXT"]},"731":{"title":"Examples","titles":["USER_CONTEXT"]},"732":{"title":"Enable User Context","titles":["USER_CONTEXT","Examples"]},"733":{"title":"Access User Claims in Function","titles":["USER_CONTEXT","Examples"]},"734":{"title":"Access All Claims as JSON","titles":["USER_CONTEXT","Examples"]},"735":{"title":"Access Client IP Address","titles":["USER_CONTEXT","Examples"]},"736":{"title":"Combined with Request Headers","titles":["USER_CONTEXT","Examples"]},"737":{"title":"Behavior","titles":["USER_CONTEXT"]},"738":{"title":"Default Context Keys","titles":["USER_CONTEXT","Behavior"]},"739":{"title":"Additional Context Keys (when configured)","titles":["USER_CONTEXT","Behavior"]},"740":{"title":"Related","titles":["USER_CONTEXT"]},"741":{"title":"Related Annotations","titles":["USER_CONTEXT"]},"742":{"title":"See Also","titles":["USER_CONTEXT"]},"743":{"title":"UPLOAD","titles":[]},"744":{"title":"Keywords","titles":["UPLOAD"]},"745":{"title":"Syntax","titles":["UPLOAD"]},"746":{"title":"Handler Types","titles":["UPLOAD"]},"747":{"title":"Shared Annotation Options","titles":["UPLOAD"]},"748":{"title":"Upload Metadata","titles":["UPLOAD"]},"749":{"title":"Large Object Handler","titles":["UPLOAD"]},"750":{"title":"Basic Example","titles":["UPLOAD","Large Object Handler"]},"751":{"title":"With Custom OID Parameter","titles":["UPLOAD","Large Object Handler"]},"752":{"title":"Context Metadata","titles":["UPLOAD","Large Object Handler"]},"753":{"title":"Large Object Annotation Options","titles":["UPLOAD","Large Object Handler"]},"754":{"title":"File System Handler","titles":["UPLOAD"]},"755":{"title":"Basic Example","titles":["UPLOAD","File System Handler"]},"756":{"title":"With Custom Parameters","titles":["UPLOAD","File System Handler"]},"757":{"title":"File System Annotation Options","titles":["UPLOAD","File System Handler"]},"758":{"title":"MIME Type Filtering","titles":["UPLOAD","File System Handler"]},"759":{"title":"CSV Handler","titles":["UPLOAD"]},"760":{"title":"Row Command Function Signature","titles":["UPLOAD","CSV Handler"]},"761":{"title":"Row Command Parameters","titles":["UPLOAD","CSV Handler"]},"762":{"title":"Row Metadata Structure ($4)","titles":["UPLOAD","CSV Handler"]},"763":{"title":"Upload Function Metadata (_meta parameter)","titles":["UPLOAD","CSV Handler"]},"764":{"title":"Basic Example","titles":["UPLOAD","CSV Handler"]},"765":{"title":"Accessing User Claims in Row Command","titles":["UPLOAD","CSV Handler"]},"766":{"title":"Using User Context Variables","titles":["UPLOAD","CSV Handler"]},"767":{"title":"Custom Delimiters","titles":["UPLOAD","CSV Handler"]},"768":{"title":"CSV Annotation Options","titles":["UPLOAD","CSV Handler"]},"769":{"title":"Excel Handler","titles":["UPLOAD"]},"770":{"title":"Row Command Function Signature","titles":["UPLOAD","Excel Handler"]},"771":{"title":"Row Command Parameters","titles":["UPLOAD","Excel Handler"]},"772":{"title":"Row Metadata Structure ($4)","titles":["UPLOAD","Excel Handler"]},"773":{"title":"Upload Function Metadata (_meta parameter)","titles":["UPLOAD","Excel Handler"]},"774":{"title":"Basic Example","titles":["UPLOAD","Excel Handler"]},"775":{"title":"Row Data as JSON","titles":["UPLOAD","Excel Handler"]},"776":{"title":"Excel Annotation Options","titles":["UPLOAD","Excel Handler"]},"777":{"title":"Error Handling and Rollback","titles":["UPLOAD"]},"778":{"title":"Multiple File Uploads","titles":["UPLOAD"]},"779":{"title":"Behavior","titles":["UPLOAD"]},"780":{"title":"Custom Parameters","titles":["UPLOAD"]},"781":{"title":"Shared Parameters","titles":["UPLOAD","Custom Parameters"]},"782":{"title":"Large Object Upload Handler","titles":["UPLOAD","Custom Parameters"]},"783":{"title":"Example","titles":["UPLOAD","Custom Parameters","Large Object Upload Handler"]},"784":{"title":"File System Upload Handler","titles":["UPLOAD","Custom Parameters"]},"785":{"title":"Example","titles":["UPLOAD","Custom Parameters","File System Upload Handler"]},"786":{"title":"CSV Upload Handler","titles":["UPLOAD","Custom Parameters"]},"787":{"title":"Example","titles":["UPLOAD","Custom Parameters","CSV Upload Handler"]},"788":{"title":"Excel Upload Handler","titles":["UPLOAD","Custom Parameters"]},"789":{"title":"Example","titles":["UPLOAD","Custom Parameters","Excel Upload Handler"]},"790":{"title":"Related","titles":["UPLOAD"]},"791":{"title":"Blog Posts","titles":["UPLOAD"]},"792":{"title":"Related Annotations","titles":["UPLOAD"]},"793":{"title":"See Also","titles":["UPLOAD"]},"794":{"title":"USER_PARAMETERS","titles":[]},"795":{"title":"Syntax","titles":["USER_PARAMETERS"]},"796":{"title":"Examples","titles":["USER_PARAMETERS"]},"797":{"title":"Basic User Parameters","titles":["USER_PARAMETERS","Examples"]},"798":{"title":"With Default Values (for unauthenticated access)","titles":["USER_PARAMETERS","Examples"]},"799":{"title":"Access All Claims as JSON","titles":["USER_PARAMETERS","Examples"]},"800":{"title":"Combined with User Context","titles":["USER_PARAMETERS","Examples"]},"801":{"title":"Behavior","titles":["USER_PARAMETERS"]},"802":{"title":"Default Parameter Mapping","titles":["USER_PARAMETERS","Behavior"]},"803":{"title":"Differences from USER_CONTEXT","titles":["USER_PARAMETERS","Behavior"]},"804":{"title":"Related","titles":["USER_PARAMETERS"]},"805":{"title":"Related Annotations","titles":["USER_PARAMETERS"]},"806":{"title":"See Also","titles":["USER_PARAMETERS"]},"807":{"title":"VALIDATE","titles":[]},"808":{"title":"Keywords","titles":["VALIDATE"]},"809":{"title":"Syntax","titles":["VALIDATE"]},"810":{"title":"Examples","titles":["VALIDATE"]},"811":{"title":"Single Rule Validation","titles":["VALIDATE","Examples"]},"812":{"title":"Multiple Rules on One Parameter","titles":["VALIDATE","Examples"]},"813":{"title":"Multiple Parameters","titles":["VALIDATE","Examples"]},"814":{"title":"Using Converted Parameter Names","titles":["VALIDATE","Examples"]},"815":{"title":"With Authorization","titles":["VALIDATE","Examples"]},"816":{"title":"Default Rules","titles":["VALIDATE"]},"817":{"title":"Custom Rules","titles":["VALIDATE"]},"818":{"title":"Behavior","titles":["VALIDATE"]},"819":{"title":"Error Response","titles":["VALIDATE"]},"820":{"title":"Related","titles":["VALIDATE"]},"821":{"title":"Related Annotations","titles":["VALIDATE"]},"822":{"title":"See Also","titles":["VALIDATE"]},"823":{"title":"VOID","titles":[]},"824":{"title":"Syntax","titles":["VOID"]},"825":{"title":"Examples","titles":["VOID"]},"826":{"title":"Multi-Command Side Effects","titles":["VOID","Examples"]},"827":{"title":"Single-Command Void","titles":["VOID","Examples"]},"828":{"title":"Function Endpoints","titles":["VOID","Examples"]},"829":{"title":"Behavior","titles":["VOID"]},"830":{"title":"Related","titles":["VOID"]},"831":{"title":"NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers","titles":[]},"832":{"title":"The shared idea","titles":["NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers"]},"833":{"title":"The fork in the road","titles":["NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers"]},"834":{"title":"Where SQLPage is stronger: the UI","titles":["NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers"]},"835":{"title":"Where NpgsqlRest is stronger: the API","titles":["NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers"]},"836":{"title":"They\'re complementary, not rivals","titles":["NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers"]},"837":{"title":"When to choose each","titles":["NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers"]},"838":{"title":"Conclusion","titles":["NpgsqlRest vs SQLPage: Two SQL-First Tools, Two Different Layers"]},"839":{"title":"DRAFT: 20th Anniversary of The Vietnam of Computer Science","titles":[]},"840":{"title":"Introduction","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science"]},"841":{"title":"What Is The Object–Relational Impedance Mismatch","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science"]},"842":{"title":"1) State Data Abstraction Misconception","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science"]},"843":{"title":"The Claim","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","1) State Data Abstraction Misconception"]},"844":{"title":"The Reality","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","1) State Data Abstraction Misconception"]},"845":{"title":"The Cost","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","1) State Data Abstraction Misconception"]},"846":{"title":"2) Storage Devices Abstraction Misconception","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science"]},"847":{"title":"The Claim","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","2) Storage Devices Abstraction Misconception"]},"848":{"title":"The Reality","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","2) Storage Devices Abstraction Misconception"]},"849":{"title":"The Cost","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","2) Storage Devices Abstraction Misconception"]},"850":{"title":"3) Data Structures Abstraction Misconception","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science"]},"851":{"title":"The Claim","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","3) Data Structures Abstraction Misconception"]},"852":{"title":"The Reality","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","3) Data Structures Abstraction Misconception"]},"853":{"title":"The Cost","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","3) Data Structures Abstraction Misconception"]},"854":{"title":"Copy, not record → staleness and write amplification","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","3) Data Structures Abstraction Misconception","The Cost"]},"855":{"title":"Private, not shared → arbitration lives in the database anyway","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","3) Data Structures Abstraction Misconception","The Cost"]},"856":{"title":"Graph walk, not set operation → the access-pattern tax","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","3) Data Structures Abstraction Misconception","The Cost"]},"857":{"title":"Simulation, not engine → the capability ceiling","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","3) Data Structures Abstraction Misconception","The Cost"]},"858":{"title":"4) Abstraction Over Algorithms","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science"]},"859":{"title":"The Claim","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","4) Abstraction Over Algorithms"]},"860":{"title":"The Reality","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","4) Abstraction Over Algorithms"]},"861":{"title":"The Cost","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","4) Abstraction Over Algorithms"]},"862":{"title":"5) Abstraction Over Concurrency and Integrity","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science"]},"863":{"title":"The Claim","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","5) Abstraction Over Concurrency and Integrity"]},"864":{"title":"The Reality","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","5) Abstraction Over Concurrency and Integrity"]},"865":{"title":"The Cost","titles":["DRAFT: 20th Anniversary of The Vietnam of Computer Science","5) Abstraction Over Concurrency and Integrity"]},"866":{"title":"Case Study: 74 Endpoints, Zero Backend Code","titles":[]},"867":{"title":"What\'s in the repository","titles":["Case Study: 74 Endpoints, Zero Backend Code"]},"868":{"title":"What NpgsqlRest is doing for them","titles":["Case Study: 74 Endpoints, Zero Backend Code"]},"869":{"title":"The comparison: equivalent build in ASP.NET Core","titles":["Case Study: 74 Endpoints, Zero Backend Code"]},"870":{"title":"How it scores on the four dimensions that matter","titles":["Case Study: 74 Endpoints, Zero Backend Code"]},"871":{"title":"Productivity","titles":["Case Study: 74 Endpoints, Zero Backend Code","How it scores on the four dimensions that matter"]},"872":{"title":"Time saved, quantified","titles":["Case Study: 74 Endpoints, Zero Backend Code","How it scores on the four dimensions that matter","Productivity"]},"873":{"title":"Lines of code saved","titles":["Case Study: 74 Endpoints, Zero Backend Code","How it scores on the four dimensions that matter"]},"874":{"title":"Performance","titles":["Case Study: 74 Endpoints, Zero Backend Code","How it scores on the four dimensions that matter"]},"875":{"title":"Overall quality","titles":["Case Study: 74 Endpoints, Zero Backend Code","How it scores on the four dimensions that matter"]},"876":{"title":"Honest tradeoffs","titles":["Case Study: 74 Endpoints, Zero Backend Code"]},"877":{"title":"What this case study is, and isn\'t","titles":["Case Study: 74 Endpoints, Zero Backend Code"]},"878":{"title":"CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","titles":[]},"879":{"title":"The Traditional Approach: Rigid and Brittle","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"880":{"title":"The NpgsqlRest Approach: Dynamic and Flexible","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"881":{"title":"How It Works","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"882":{"title":"The Row Function: Four Parameters, Infinite Flexibility","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"883":{"title":"CSV Row Function Example","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","The Row Function: Four Parameters, Infinite Flexibility"]},"884":{"title":"Excel Row Function Example","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","The Row Function: Four Parameters, Infinite Flexibility"]},"885":{"title":"Row Chaining: The Power of $3","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"886":{"title":"The Upload Endpoint Function","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"887":{"title":"Upload Metadata Structure","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","The Upload Endpoint Function"]},"888":{"title":"Dynamic Structure: No Hardcoding, No Redeployment","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"889":{"title":"Configuration","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"890":{"title":"Annotation Options","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"891":{"title":"CSV Handler Options","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Annotation Options"]},"892":{"title":"Excel Handler Options","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Annotation Options"]},"893":{"title":"Row Metadata Differences: CSV vs Excel","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"894":{"title":"Generated TypeScript Client","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"895":{"title":"Advanced Patterns","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"896":{"title":"Skipping Header Rows","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Advanced Patterns"]},"897":{"title":"Validation and Rejection","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Advanced Patterns"]},"898":{"title":"Upsert (Insert or Update)","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Advanced Patterns"]},"899":{"title":"Processing Only Specific Sheets","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Advanced Patterns"]},"900":{"title":"JSON Row Format for Complex Data","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Advanced Patterns"]},"901":{"title":"Transaction Safety","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"902":{"title":"Combining Handlers: Process AND Store the Original File","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"903":{"title":"Combined Handler Metadata","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Combining Handlers: Process AND Store the Original File"]},"904":{"title":"Fallback Handler: One Endpoint for Both Excel and CSV","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"905":{"title":"Authentication Integration","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"906":{"title":"Comparison with Other Tools","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"907":{"title":"COPY Command","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Comparison with Other Tools"]},"908":{"title":"ETL Tools (Talend, Pentaho, etc.)","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Comparison with Other Tools"]},"909":{"title":"Python/pandas","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Comparison with Other Tools"]},"910":{"title":"Conclusion: What You Don\'t Have to Write","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest"]},"911":{"title":"The Numbers","titles":["CSV and Excel Ingestion Made Easy: PostgreSQL Row Processing with NpgsqlRest","Conclusion: What You Don\'t Have to Write"]},"912":{"title":"Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs","titles":[]},"913":{"title":"Example Setup","titles":["Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs"]},"914":{"title":"Returning Single Object","titles":["Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs"]},"915":{"title":"Using Custom Types as Parameters","titles":["Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs"]},"916":{"title":"Returning Sets of Objects","titles":["Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs"]},"917":{"title":"NEW: Nested JSON Objects","titles":["Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs"]},"918":{"title":"NEW: Nested JSON with Multiset","titles":["Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs"]},"919":{"title":"Limitations","titles":["Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs","NEW: Nested JSON with Multiset"]},"920":{"title":"Conclusion And Workaround","titles":["Custom Types and Multiset for Nested JSON in PostgreSQL REST APIs","NEW: Nested JSON with Multiset"]},"921":{"title":"Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","titles":[]},"922":{"title":"The Principle of Least Privilege (PoLP)","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest"]},"923":{"title":"Schema Architecture","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest"]},"924":{"title":"The Protected Schema","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","Schema Architecture"]},"925":{"title":"The Public API Schema","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","Schema Architecture"]},"926":{"title":"The Restricted Application Role","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","Schema Architecture"]},"927":{"title":"Bypassing Bcrypt\'s 72-Byte Limit","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest"]},"928":{"title":"The Hash Function","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","Bypassing Bcrypt\'s 72-Byte Limit"]},"929":{"title":"The Verify Function","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","Bypassing Bcrypt\'s 72-Byte Limit"]},"930":{"title":"Testing the Password Functions","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","Bypassing Bcrypt\'s 72-Byte Limit"]},"931":{"title":"The Authentication Functions","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest"]},"932":{"title":"Understanding SECURITY DEFINER","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","The Authentication Functions"]},"933":{"title":"Protecting Against Search Path Attacks","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","The Authentication Functions"]},"934":{"title":"Login Function","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","The Authentication Functions"]},"935":{"title":"Logout Function","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","The Authentication Functions"]},"936":{"title":"Who Am I Function","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","The Authentication Functions"]},"937":{"title":"NpgsqlRest Configuration","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest"]},"938":{"title":"The Demo Application","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest"]},"939":{"title":"Why This Architecture is More Secure","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest"]},"940":{"title":"1. Defense in Depth","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","Why This Architecture is More Secure"]},"941":{"title":"2. SQL Injection Becomes Less Dangerous","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","Why This Architecture is More Secure"]},"942":{"title":"3. No Secrets in Application Code","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","Why This Architecture is More Secure"]},"943":{"title":"4. Auditable Security Boundary","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","Why This Architecture is More Secure"]},"944":{"title":"5. Bcrypt Limit Protection","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest","Why This Architecture is More Secure"]},"945":{"title":"Comparison with Traditional Approaches","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest"]},"946":{"title":"Conclusion","titles":["Database-Level Security: Building Secure Authentication with PostgreSQL and NpgsqlRest"]},"947":{"title":"Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","titles":[]},"948":{"title":"Why Excel Exports Are Terrible","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"949":{"title":"The NpgsqlRest Approach: Pure Streaming","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"950":{"title":"What Makes This Special","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"951":{"title":"Zero-Allocation Cell Writing","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","What Makes This Special"]},"952":{"title":"Native Type Mapping","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","What Makes This Special"]},"953":{"title":"Constant Memory Usage","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","What Makes This Special"]},"954":{"title":"AOT/Trim Compatible","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","What Makes This Special"]},"955":{"title":"Building an Excel Export Endpoint","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"956":{"title":"Step 1: Write Your Function","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","Building an Excel Export Endpoint"]},"957":{"title":"Step 2: Add the Annotation","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","Building an Excel Export Endpoint"]},"958":{"title":"Step 3: Configure Table Format","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","Building an Excel Export Endpoint"]},"959":{"title":"Two Formats, One Endpoint","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"960":{"title":"Static Format Annotation","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","Two Formats, One Endpoint"]},"961":{"title":"The TypeScript Client: URL-Only Generation","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"962":{"title":"Excel Format Configuration","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"963":{"title":"DateTime and Numeric Formats","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","Excel Format Configuration"]},"964":{"title":"Worksheet and File Names","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","Excel Format Configuration"]},"965":{"title":"HTML Table Format","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"966":{"title":"Bonus: Built-In Statistics Endpoints","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"967":{"title":"Stats Configuration Options","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","Bonus: Built-In Statistics Endpoints"]},"968":{"title":"The Traditional Way vs. This Way","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"969":{"title":"Memory Profile Comparison","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL","The Traditional Way vs. This Way"]},"970":{"title":"Running the Example","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"971":{"title":"Conclusion","titles":["Excel Exports Done Right: Zero-Allocation Streaming from PostgreSQL"]},"972":{"title":"End-to-End Static Type Checking: PostgreSQL to TypeScript","titles":[]},"973":{"title":"The Problem with Traditional API Development","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"974":{"title":"Why PostgreSQL Functions?","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"975":{"title":"The Solution: Single Source of Truth","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"976":{"title":"Project Structure","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"977":{"title":"The Database Schema","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"978":{"title":"Functions That Define the API Contract","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"979":{"title":"get_users()","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Functions That Define the API Contract"]},"980":{"title":"get_posts()","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Functions That Define the API Contract"]},"981":{"title":"Static Type Checking at the SQL Level","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"982":{"title":"How PostgreSQL Enforces Return Types","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Static Type Checking at the SQL Level"]},"983":{"title":"The Return Type Contract","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Static Type Checking at the SQL Level"]},"984":{"title":"Type Changes Propagate Naturally","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Static Type Checking at the SQL Level"]},"985":{"title":"Why Functions Are Recreated on Every Build","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"986":{"title":"Built-in Testing with SQL Assertions","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"987":{"title":"Unit Testing PostgreSQL Functions: Beyond Fixed Data","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"988":{"title":"Co-located Tests: Function and Test in the Same File","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Unit Testing PostgreSQL Functions: Beyond Fixed Data"]},"989":{"title":"Test Isolation with Rollback","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Unit Testing PostgreSQL Functions: Beyond Fixed Data"]},"990":{"title":"Testing Multiple Scenarios","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Unit Testing PostgreSQL Functions: Beyond Fixed Data"]},"991":{"title":"Testing Against Empty Tables","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Unit Testing PostgreSQL Functions: Beyond Fixed Data"]},"992":{"title":"Deferrable Constraints: The Key to Test Data","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Unit Testing PostgreSQL Functions: Beyond Fixed Data"]},"993":{"title":"Why Database Testing is Fast","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Unit Testing PostgreSQL Functions: Beyond Fixed Data"]},"994":{"title":"Addressing Common Myths","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Unit Testing PostgreSQL Functions: Beyond Fixed Data"]},"995":{"title":"The Generated TypeScript Client","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"996":{"title":"The Application Code","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"997":{"title":"The Complete Type-Safe Workflow","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"998":{"title":"Configuration","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"999":{"title":"Benefits of This Approach","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"1000":{"title":"1. Single Source of Truth","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Benefits of This Approach"]},"1001":{"title":"2. Compile-Time Safety","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Benefits of This Approach"]},"1002":{"title":"3. Automatic Documentation","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Benefits of This Approach"]},"1003":{"title":"4. Database-Level Testing","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Benefits of This Approach"]},"1004":{"title":"5. No Runtime Type Checking Overhead","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Benefits of This Approach"]},"1005":{"title":"Conclusion","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"1006":{"title":"Why This Stack is Superior","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript"]},"1007":{"title":"Performance That Scales","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Why This Stack is Superior"]},"1008":{"title":"Maximum Type Safety, Minimum Code","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Why This Stack is Superior"]},"1009":{"title":"The Bottom Line","titles":["End-to-End Static Type Checking: PostgreSQL to TypeScript","Why This Stack is Superior"]},"1010":{"title":"Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","titles":[]},"1011":{"title":"The Problem: Backend-for-Frontend API Aggregation","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1012":{"title":"Why Not Use PostgreSQL HTTP Extensions?","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1013":{"title":"Installation and Distribution Overhead","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Why Not Use PostgreSQL HTTP Extensions?"]},"1014":{"title":"Network and Performance Issues","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Why Not Use PostgreSQL HTTP Extensions?"]},"1015":{"title":"The NpgsqlRest Advantage","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Why Not Use PostgreSQL HTTP Extensions?"]},"1016":{"title":"The NpgsqlRest Solution: HTTP Types","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1017":{"title":"The HTTP Type Syntax: Just Like .http Files","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1018":{"title":"Building the Financial Dashboard","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1019":{"title":"Step 1: Define HTTP Types","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Building the Financial Dashboard"]},"1020":{"title":"Step 2: Define the Return Type","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Building the Financial Dashboard"]},"1021":{"title":"Step 3: Create the Aggregation Function","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Building the Financial Dashboard"]},"1022":{"title":"Step 4: Configuration","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Building the Financial Dashboard"]},"1023":{"title":"What Happens at Runtime","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1024":{"title":"The Generated TypeScript Client","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1025":{"title":"Traditional Approach: What It Would Take","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1026":{"title":"Traditional Backend (Node.js)","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Traditional Approach: What It Would Take"]},"1027":{"title":"The Numbers","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1028":{"title":"Advanced Features","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1029":{"title":"Multiple API Calls","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Advanced Features"]},"1030":{"title":"POST Requests with Bodies","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Advanced Features"]},"1031":{"title":"Response Field Customization","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Advanced Features"]},"1032":{"title":"Retry Logic","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Advanced Features"]},"1033":{"title":"Resolved Parameter Expressions","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Advanced Features"]},"1034":{"title":"Timeout Configuration","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest","Advanced Features"]},"1035":{"title":"When to Use HTTP Types","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1036":{"title":"Conclusion","titles":["Call External APIs from PostgreSQL: HTTP Types in NpgsqlRest"]},"1037":{"title":"Blog Posts & Tutorials","titles":[]},"1038":{"title":"Turn PostgreSQL into MCP Tools an AI Agent Can Call","titles":[]},"1039":{"title":"What MCP is, in one paragraph","titles":["Turn PostgreSQL into MCP Tools an AI Agent Can Call"]},"1040":{"title":"Opt-in, never automatic","titles":["Turn PostgreSQL into MCP Tools an AI Agent Can Call"]},"1041":{"title":"Results are structured","titles":["Turn PostgreSQL into MCP Tools an AI Agent Can Call","Opt-in, never automatic"]},"1042":{"title":"MCP-only tools: a tool with no REST route","titles":["Turn PostgreSQL into MCP Tools an AI Agent Can Call"]},"1043":{"title":"One source, two interfaces — made visible","titles":["Turn PostgreSQL into MCP Tools an AI Agent Can Call"]},"1044":{"title":"The real test: an AI agent driving the store","titles":["Turn PostgreSQL into MCP Tools an AI Agent Can Call"]},"1045":{"title":"Authorization, without locking down the server","titles":["Turn PostgreSQL into MCP Tools an AI Agent Can Call"]},"1046":{"title":"Why this approach holds up","titles":["Turn PostgreSQL into MCP Tools an AI Agent Can Call"]},"1047":{"title":"Try it","titles":["Turn PostgreSQL into MCP Tools an AI Agent Can Call"]},"1048":{"title":"Multiple Authentication Schemes, Role-Based Access Control, and External Providers","titles":[]},"1049":{"title":"Why NpgsqlRest\'s Built-in Password Hasher?","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers"]},"1050":{"title":"Schema Design","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers"]},"1051":{"title":"Generating Password Hashes","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers","Schema Design"]},"1052":{"title":"Automatic Parameter Hashing for Registration","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers","Schema Design"]},"1053":{"title":"Multiple Authentication Schemes","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers"]},"1054":{"title":"A Note on Data Protection and Encryption","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers","Multiple Authentication Schemes"]},"1055":{"title":"The Login Function with Built-in Password Verification","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers"]},"1056":{"title":"Password Verification Callbacks","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers","The Login Function with Built-in Password Verification"]},"1057":{"title":"Role-Based Access Control","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers"]},"1058":{"title":"User Context with current_setting","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers","Role-Based Access Control"]},"1059":{"title":"External OAuth Providers","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers"]},"1060":{"title":"The External Login Function","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers","External OAuth Providers"]},"1061":{"title":"The Demo Application","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers"]},"1062":{"title":"Configuration Summary","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers"]},"1063":{"title":"Generated Client with Token Support","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers","Configuration Summary"]},"1064":{"title":"Conclusion: Enterprise Auth Made Simple","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers"]},"1065":{"title":"This Blog Post is Your Recipe","titles":["Multiple Authentication Schemes, Role-Based Access Control, and External Providers","Conclusion: Enterprise Auth Made Simple"]},"1066":{"title":"NpgsqlRest 3.13.0: Cache Profiles, Auth Schemes, Per-User Rate Limits, and pgBouncer Compatibility","titles":[]},"1067":{"title":"1. Conditional Caching: Historical vs Current vs Live","titles":["NpgsqlRest 3.13.0: Cache Profiles, Auth Schemes, Per-User Rate Limits, and pgBouncer Compatibility"]},"1068":{"title":"2. Short-Lived Sensitive Session Alongside the Normal Session","titles":["NpgsqlRest 3.13.0: Cache Profiles, Auth Schemes, Per-User Rate Limits, and pgBouncer Compatibility"]},"1069":{"title":"3. Per-User Rate Limits","titles":["NpgsqlRest 3.13.0: Cache Profiles, Auth Schemes, Per-User Rate Limits, and pgBouncer Compatibility"]},"1070":{"title":"4. Multi-Tenant search_path with pgBouncer (or RDS Proxy, or Supabase Pooler)","titles":["NpgsqlRest 3.13.0: Cache Profiles, Auth Schemes, Per-User Rate Limits, and pgBouncer Compatibility"]},"1071":{"title":"Other Notable Changes","titles":["NpgsqlRest 3.13.0: Cache Profiles, Auth Schemes, Per-User Rate Limits, and pgBouncer Compatibility"]},"1072":{"title":"Tests Are SQL Files Too","titles":[]},"1073":{"title":"Introduction","titles":["Tests Are SQL Files Too"]},"1074":{"title":"TL;DR Test Runner","titles":["Tests Are SQL Files Too"]},"1075":{"title":"Database Testing Is Impossible (They Said)","titles":["Tests Are SQL Files Too"]},"1076":{"title":"The Pattern I Have Used for Years","titles":["Tests Are SQL Files Too"]},"1077":{"title":"But It Has Limits","titles":["Tests Are SQL Files Too"]},"1078":{"title":"Tests Are SQL Files Too","titles":["Tests Are SQL Files Too"]},"1079":{"title":"The Old Demons: Isolation and Fixtures","titles":["Tests Are SQL Files Too"]},"1080":{"title":"And Then There Is Watch Mode","titles":["Tests Are SQL Files Too"]},"1081":{"title":"AI TDD","titles":["Tests Are SQL Files Too"]},"1082":{"title":"Where to Start","titles":["Tests Are SQL Files Too"]},"1083":{"title":"NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","titles":[]},"1084":{"title":"Executive Summary","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"]},"1085":{"title":"Architecture Comparison","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"]},"1086":{"title":"NpgsqlRest","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Architecture Comparison"]},"1087":{"title":"PostgREST","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Architecture Comparison"]},"1088":{"title":"Supabase","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Architecture Comparison"]},"1089":{"title":"Performance Benchmarks","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"]},"1090":{"title":"Requests Per Second (100 Concurrent Users, 1 Record)","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Performance Benchmarks"]},"1091":{"title":"Larger Payloads (500 Records, 100 VU)","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Performance Benchmarks"]},"1092":{"title":"PostgreSQL Type Handling","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Performance Benchmarks"]},"1093":{"title":"Feature Comparison Matrix","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"]},"1094":{"title":"Platform Features","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1095":{"title":"Core API Generation","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1096":{"title":"Table and View Query Features","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1097":{"title":"Custom Types and Nested JSON","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1098":{"title":"Authentication","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1099":{"title":"File Handling","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1100":{"title":"Security and Infrastructure","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1101":{"title":"Performance Features","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1102":{"title":"Connection Pooler Compatibility & Multi-Tenancy","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1103":{"title":"Real-Time Capabilities","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1104":{"title":"External Service Integration and Custom Code Execution","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1105":{"title":"NpgsqlRest: Declarative Proxy in SQL","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix","External Service Integration and Custom Code Execution"]},"1106":{"title":"PostgREST: No Custom Code Execution","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix","External Service Integration and Custom Code Execution"]},"1107":{"title":"Supabase: Edge Functions (Separate Deno Runtime)","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix","External Service Integration and Custom Code Execution"]},"1108":{"title":"Architectural Comparison","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix","External Service Integration and Custom Code Execution"]},"1109":{"title":"Advanced Features","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1110":{"title":"Observability","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Feature Comparison Matrix"]},"1111":{"title":"Error Handling","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"]},"1112":{"title":"Configuration Approach","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"]},"1113":{"title":"NpgsqlRest: SQL Comments","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Configuration Approach"]},"1114":{"title":"PostgREST: External Configuration + RLS","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Configuration Approach"]},"1115":{"title":"Supabase: Dashboard + RLS + Edge Functions","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Configuration Approach"]},"1116":{"title":"Deployment Comparison","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"]},"1117":{"title":"NpgsqlRest","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Deployment Comparison"]},"1118":{"title":"PostgREST","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Deployment Comparison"]},"1119":{"title":"Supabase Self-Hosted","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Deployment Comparison"]},"1120":{"title":"When to Choose Each","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"]},"1121":{"title":"Choose NpgsqlRest When:","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","When to Choose Each"]},"1122":{"title":"Choose PostgREST When:","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","When to Choose Each"]},"1123":{"title":"Choose Supabase When:","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","When to Choose Each"]},"1124":{"title":"Migration Considerations","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"]},"1125":{"title":"From PostgREST to NpgsqlRest","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Migration Considerations"]},"1126":{"title":"From Supabase to NpgsqlRest","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison","Migration Considerations"]},"1127":{"title":"Conclusion","titles":["NpgsqlRest vs PostgREST vs Supabase: Complete Feature Comparison"]},"1128":{"title":"PostgreSQL Optimization Labels 101","titles":[]},"1129":{"title":"VOLATILE / STABLE / IMMUTABLE","titles":["PostgreSQL Optimization Labels 101"]},"1130":{"title":"PARALLEL UNSAFE / RESTRICTED / SAFE","titles":["PostgreSQL Optimization Labels 101"]},"1131":{"title":"COST / ROWS","titles":["PostgreSQL Optimization Labels 101"]},"1132":{"title":"COST (default: 100)","titles":["PostgreSQL Optimization Labels 101","COST / ROWS"]},"1133":{"title":"ROWS (default: 1000)","titles":["PostgreSQL Optimization Labels 101","COST / ROWS"]},"1134":{"title":"CALLED ON NULL INPUT / RETURNS NULL ON NULL INPUT / STRICT","titles":["PostgreSQL Optimization Labels 101"]},"1135":{"title":"Performance, Scalability, and High Availability with NpgsqlRest","titles":[]},"1136":{"title":"Caching Strategies","titles":["Performance, Scalability, and High Availability with NpgsqlRest"]},"1137":{"title":"HTTP Cache Headers: The Fastest Cache","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies"]},"1138":{"title":"Setting Cache Headers in Annotations","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies","HTTP Cache Headers: The Fastest Cache"]},"1139":{"title":"Cache Busting Technique","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies","HTTP Cache Headers: The Fastest Cache"]},"1140":{"title":"Server-Side Caching","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies"]},"1141":{"title":"Enabling Server Cache","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies","Server-Side Caching"]},"1142":{"title":"Cache Keys by Parameter","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies","Server-Side Caching"]},"1143":{"title":"Cache Expiration","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies","Server-Side Caching"]},"1144":{"title":"Cache Types","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies"]},"1145":{"title":"Memory Cache","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies","Cache Types"]},"1146":{"title":"Redis Cache","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies","Cache Types"]},"1147":{"title":"Hybrid Cache","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies","Cache Types"]},"1148":{"title":"Cache Invalidation Endpoints","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies"]},"1149":{"title":"Caching Set-Returning Functions","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies"]},"1150":{"title":"Cache Profiles","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Caching Strategies"]},"1151":{"title":"Retry Strategies","titles":["Performance, Scalability, and High Availability with NpgsqlRest"]},"1152":{"title":"Connection Retries","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Retry Strategies"]},"1153":{"title":"Command Retries","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Retry Strategies"]},"1154":{"title":"Multiple Retry Strategies","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Retry Strategies","Command Retries"]},"1155":{"title":"PostgreSQL Error Code Classes","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Retry Strategies"]},"1156":{"title":"Rate Limiting","titles":["Performance, Scalability, and High Availability with NpgsqlRest"]},"1157":{"title":"Enabling Rate Limiting","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Rate Limiting"]},"1158":{"title":"Fixed Window","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Rate Limiting"]},"1159":{"title":"Sliding Window","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Rate Limiting"]},"1160":{"title":"Token Bucket","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Rate Limiting"]},"1161":{"title":"Concurrency Limiting","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Rate Limiting"]},"1162":{"title":"Per-User Rate Limiting (Partitions)","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Rate Limiting"]},"1163":{"title":"Combining Policies","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Rate Limiting"]},"1164":{"title":"Thread Pool Optimization","titles":["Performance, Scalability, and High Availability with NpgsqlRest"]},"1165":{"title":"The Thread Injection Problem","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Thread Pool Optimization"]},"1166":{"title":"Configuring Minimum Threads","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Thread Pool Optimization"]},"1167":{"title":"Worker Threads vs Completion Port Threads","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Thread Pool Optimization"]},"1168":{"title":"High-Throughput Configuration","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Thread Pool Optimization"]},"1169":{"title":"Sizing Guidelines","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Thread Pool Optimization"]},"1170":{"title":"When NOT to Increase Thread Pool Size","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Thread Pool Optimization"]},"1171":{"title":"Example: Burst Traffic Handling","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Thread Pool Optimization"]},"1172":{"title":"High Availability","titles":["Performance, Scalability, and High Availability with NpgsqlRest"]},"1173":{"title":"Multi-Host Connections","titles":["Performance, Scalability, and High Availability with NpgsqlRest","High Availability"]},"1174":{"title":"Target Session Attributes","titles":["Performance, Scalability, and High Availability with NpgsqlRest","High Availability"]},"1175":{"title":"Load Balancing","titles":["Performance, Scalability, and High Availability with NpgsqlRest","High Availability"]},"1176":{"title":"Read Replica Routing","titles":["Performance, Scalability, and High Availability with NpgsqlRest","High Availability"]},"1177":{"title":"Production High-Availability Configuration","titles":["Performance, Scalability, and High Availability with NpgsqlRest","High Availability"]},"1178":{"title":"Same Schema Requirement","titles":["Performance, Scalability, and High Availability with NpgsqlRest","High Availability"]},"1179":{"title":"Putting It All Together","titles":["Performance, Scalability, and High Availability with NpgsqlRest"]},"1180":{"title":"Summary","titles":["Performance, Scalability, and High Availability with NpgsqlRest"]},"1181":{"title":"Development Time Saved","titles":["Performance, Scalability, and High Availability with NpgsqlRest","Summary"]},"1182":{"title":"Related Documentation","titles":["Performance, Scalability, and High Availability with NpgsqlRest"]},"1183":{"title":"Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","titles":[]},"1184":{"title":"The Architecture","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration"]},"1185":{"title":"Defense in Depth: The Principle of Least Privilege","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration"]},"1186":{"title":"Creating CSV Endpoints","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration"]},"1187":{"title":"Define a Reusable Type","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Creating CSV Endpoints"]},"1188":{"title":"The Secured Report Function","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Creating CSV Endpoints"]},"1189":{"title":"CSV Annotations","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Creating CSV Endpoints"]},"1190":{"title":"Type Reuse and Composition","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration"]},"1191":{"title":"The Problem: Schema Duplication","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Type Reuse and Composition"]},"1192":{"title":"The Solution: Composite Type Expansion","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Type Reuse and Composition"]},"1193":{"title":"Benefits for Applications","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Type Reuse and Composition"]},"1194":{"title":"Securing with Basic Authentication","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration"]},"1195":{"title":"Password Hashing","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Securing with Basic Authentication"]},"1196":{"title":"Multiple Users via Configuration","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Securing with Basic Authentication"]},"1197":{"title":"Database-Driven Authentication with ChallengeCommand","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Securing with Basic Authentication"]},"1198":{"title":"SSL Configuration","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration"]},"1199":{"title":"Setup Steps","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","SSL Configuration"]},"1200":{"title":"No Code Generation Required","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration"]},"1201":{"title":"Excel Power Query Integration","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration"]},"1202":{"title":"Connecting Excel to Your Endpoint","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Excel Power Query Integration"]},"1203":{"title":"The Power of Central Control","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Excel Power Query Integration"]},"1204":{"title":"Production Considerations","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Excel Power Query Integration"]},"1205":{"title":"When You Still Need ETL","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration","Excel Power Query Integration"]},"1206":{"title":"The Cost Comparison","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration"]},"1207":{"title":"Complete Example","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration"]},"1208":{"title":"Conclusion","titles":["Turn PostgreSQL into a BI Server: CSV Exports, Basic Auth & Excel Integration"]},"1209":{"title":"Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","titles":[]},"1210":{"title":"What Gets Stored (And What Doesn\'t)","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"]},"1211":{"title":"Architecture Overview","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"]},"1212":{"title":"Complete Example Walkthrough","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"]},"1213":{"title":"1. Database Schema","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Example Walkthrough"]},"1214":{"title":"2. Challenge Functions","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Example Walkthrough"]},"1215":{"title":"3. Completion Functions","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Example Walkthrough"]},"1216":{"title":"4. Authentication Function","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Example Walkthrough"]},"1217":{"title":"5. Configuration","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Example Walkthrough"]},"1218":{"title":"6. Client-Side Implementation","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Example Walkthrough"]},"1219":{"title":"Three Authentication Flows","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"]},"1220":{"title":"1. Registration (New User with Passkey)","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Three Authentication Flows"]},"1221":{"title":"2. Add Passkey (Existing User)","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Three Authentication Flows"]},"1222":{"title":"3. Login","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Three Authentication Flows"]},"1223":{"title":"Complete Configuration Reference","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"]},"1224":{"title":"General Settings","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference"]},"1225":{"title":"Relying Party Settings","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference"]},"1226":{"title":"Endpoint Paths","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference"]},"1227":{"title":"WebAuthn Settings","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference"]},"1228":{"title":"UserVerificationRequirement","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference","WebAuthn Settings"]},"1229":{"title":"ResidentKeyRequirement","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference","WebAuthn Settings"]},"1230":{"title":"AttestationConveyance","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference","WebAuthn Settings"]},"1231":{"title":"SQL Commands Reference","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference"]},"1232":{"title":"ChallengeAddExistingUserCommand","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference","SQL Commands Reference"]},"1233":{"title":"ChallengeRegistrationCommand","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference","SQL Commands Reference"]},"1234":{"title":"ChallengeAuthenticationCommand","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference","SQL Commands Reference"]},"1235":{"title":"VerifyChallengeCommand","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference","SQL Commands Reference"]},"1236":{"title":"AuthenticateDataCommand","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference","SQL Commands Reference"]},"1237":{"title":"CompleteAddExistingUserCommand","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference","SQL Commands Reference"]},"1238":{"title":"CompleteRegistrationCommand","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference","SQL Commands Reference"]},"1239":{"title":"CompleteAuthenticateCommand","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference","SQL Commands Reference"]},"1240":{"title":"Column Name Configuration","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference"]},"1241":{"title":"Analytics Data","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Complete Configuration Reference"]},"1242":{"title":"Security Considerations","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"]},"1243":{"title":"What NpgsqlRest Validates","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Security Considerations"]},"1244":{"title":"What You Control","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Security Considerations"]},"1245":{"title":"Rate Limiting","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Security Considerations"]},"1246":{"title":"Advantages of This Approach","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"]},"1247":{"title":"1. SQL-First Logic","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Advantages of This Approach"]},"1248":{"title":"2. No External Dependencies","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Advantages of This Approach"]},"1249":{"title":"3. Complete Control","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Advantages of This Approach"]},"1250":{"title":"4. Built-in Resilience","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Advantages of This Approach"]},"1251":{"title":"5. Privacy by Design","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest","Advantages of This Approach"]},"1252":{"title":"Getting Started","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"]},"1253":{"title":"Conclusion","titles":["Implementing WebAuthn Passkeys with Pure SQL and NpgsqlRest"]},"1254":{"title":"PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","titles":[]},"1255":{"title":"What We Tested","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"]},"1256":{"title":"What\'s New in This Benchmark","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"]},"1257":{"title":"Version Updates","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","What\'s New in This Benchmark"]},"1258":{"title":"New Test Scenarios","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","What\'s New in This Benchmark"]},"1259":{"title":"Infrastructure Changes","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","What\'s New in This Benchmark"]},"1260":{"title":"Comparing With Previous Results","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","What\'s New in This Benchmark"]},"1261":{"title":"Key Findings","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"]},"1262":{"title":"Swoole PHP Dominates Large Payload Scenarios","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Key Findings"]},"1263":{"title":"NpgsqlRest Leads High-Concurrency Low-Payload Scenarios","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Key Findings"]},"1264":{"title":"The Top Performers by Scenario","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Key Findings"]},"1265":{"title":"Performance Tiers at 100 VU, 1 Record","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Key Findings"]},"1266":{"title":"What Changed From 2025","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Key Findings"]},"1267":{"title":"Scaling Behavior","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Key Findings"]},"1268":{"title":"Large Payloads Level the Playing Field","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Key Findings"]},"1269":{"title":"Pure HTTP Overhead (Minimal Baseline)","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Key Findings"]},"1270":{"title":"POST Body Parsing Performance","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Key Findings"]},"1271":{"title":"Python Frameworks Continue to Struggle","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Key Findings"]},"1272":{"title":"JIT vs AOT in 2026","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Key Findings"]},"1273":{"title":"Why Certain Frameworks Excel","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"]},"1274":{"title":"Swoole PHP\'s Rise","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Why Certain Frameworks Excel"]},"1275":{"title":"Go\'s HTTP Dominance","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Why Certain Frameworks Excel"]},"1276":{"title":"NpgsqlRest\'s Architecture","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Why Certain Frameworks Excel"]},"1277":{"title":"Resource Usage","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"]},"1278":{"title":"Key Observations","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Resource Usage"]},"1279":{"title":"Important Note: JSON and Array Type Handling","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"]},"1280":{"title":"Conclusion","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"]},"1281":{"title":"Lines of Code Comparison","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Conclusion"]},"1282":{"title":"Full Benchmark Results","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared"]},"1283":{"title":"Summary Tables","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results"]},"1284":{"title":"Data Type Serialization","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","Summary Tables"]},"1285":{"title":"New Scenarios","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","Summary Tables"]},"1286":{"title":"Data Type Serialization Tests","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results"]},"1287":{"title":"1 Virtual User, 1 Record","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","Data Type Serialization Tests"]},"1288":{"title":"1 Virtual User, 10 Records","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","Data Type Serialization Tests"]},"1289":{"title":"100 Virtual Users, 1 Record","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","Data Type Serialization Tests"]},"1290":{"title":"100 Virtual Users, 100 Records","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","Data Type Serialization Tests"]},"1291":{"title":"100 Virtual Users, 500 Records","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","Data Type Serialization Tests"]},"1292":{"title":"Minimal Baseline (Pure HTTP Overhead)","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results"]},"1293":{"title":"100 Virtual Users","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","Minimal Baseline (Pure HTTP Overhead)"]},"1294":{"title":"POST Body Parsing","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results"]},"1295":{"title":"50 Virtual Users, 10 Records","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","POST Body Parsing"]},"1296":{"title":"Nested JSON Serialization","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results"]},"1297":{"title":"50 Virtual Users, Depth 1","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","Nested JSON Serialization"]},"1298":{"title":"Large Payload","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results"]},"1299":{"title":"25 Virtual Users, 100KB Payload","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","Large Payload"]},"1300":{"title":"Many Parameters (20 params)","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results"]},"1301":{"title":"50 Virtual Users","titles":["PostgreSQL REST API Benchmark 2026: 14 Frameworks Compared","Full Benchmark Results","Many Parameters (20 params)"]},"1302":{"title":"Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","titles":[]},"1303":{"title":"The Traditional Approach: Complex Infrastructure","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1304":{"title":"The NpgsqlRest Approach: PostgreSQL IS Your Real-Time Server","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1305":{"title":"How SSE Works in NpgsqlRest","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1306":{"title":"Building the Chat: Step by Step","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1307":{"title":"Step 1: Schema Setup","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Building the Chat: Step by Step"]},"1308":{"title":"Step 2: Login Function","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Building the Chat: Step by Step"]},"1309":{"title":"Step 3: The Magic - Send Message with SSE","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Building the Chat: Step by Step"]},"1310":{"title":"Step 4: Message History","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Building the Chat: Step by Step"]},"1311":{"title":"Understanding SSE Scopes","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1312":{"title":"sse_scope authorize","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Understanding SSE Scopes"]},"1313":{"title":"sse_scope authorize <roles/users>","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Understanding SSE Scopes"]},"1314":{"title":"sse_scope matching","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Understanding SSE Scopes"]},"1315":{"title":"sse_scope all","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Understanding SSE Scopes"]},"1316":{"title":"Dynamic Scopes with RAISE HINT","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Understanding SSE Scopes"]},"1317":{"title":"The Auto-Generated TypeScript Client","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1318":{"title":"The Frontend: Minimal Code Required","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1319":{"title":"Code Comparison: Traditional vs NpgsqlRest","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1320":{"title":"Traditional Real-Time Chat Architecture","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Code Comparison: Traditional vs NpgsqlRest"]},"1321":{"title":"NpgsqlRest Approach","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Code Comparison: Traditional vs NpgsqlRest"]},"1322":{"title":"The Numbers","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1323":{"title":"When to Use SSE vs WebSockets","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1324":{"title":"Why Not PostgreSQL LISTEN/NOTIFY?","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1325":{"title":"How NpgsqlRest Avoids This Problem","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events","Why Not PostgreSQL LISTEN/NOTIFY?"]},"1326":{"title":"Advanced: Execution-ID correlation as soft channels","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1327":{"title":"Conclusion","titles":["Build a Real-Time Chat App with PostgreSQL and Server-Sent Events"]},"1328":{"title":"Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","titles":[]},"1329":{"title":"The Problem: Connection Pool Exhaustion","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"]},"1330":{"title":"The NpgsqlRest Solution: Proxy Mode","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"]},"1331":{"title":"Passthrough Mode: Zero Database Connections","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","The NpgsqlRest Solution: Proxy Mode"]},"1332":{"title":"Transform Mode: Process Before Returning","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","The NpgsqlRest Solution: Proxy Mode"]},"1333":{"title":"Architecture: NpgsqlRest as API Gateway","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"]},"1334":{"title":"Building the AI Text Analysis Service","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"]},"1335":{"title":"The Upstream AI Service","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","Building the AI Text Analysis Service"]},"1336":{"title":"PostgreSQL Schema: Caching Layer","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","Building the AI Text Analysis Service"]},"1337":{"title":"Passthrough Proxy: Health Check","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","Building the AI Text Analysis Service"]},"1338":{"title":"Transform Proxy: Summarization with Caching","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","Building the AI Text Analysis Service"]},"1339":{"title":"Full Analysis: Complete Transform Example","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","Building the AI Text Analysis Service"]},"1340":{"title":"Configuration","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","Building the AI Text Analysis Service"]},"1341":{"title":"Proxy Response Parameters","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"]},"1342":{"title":"The Generated TypeScript Client","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"]},"1343":{"title":"Docker: Bun Runtime Image","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"]},"1344":{"title":"Use Cases for Reverse Proxy","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"]},"1345":{"title":"API Gateway Pattern","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","Use Cases for Reverse Proxy"]},"1346":{"title":"Caching Expensive Operations","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","Use Cases for Reverse Proxy"]},"1347":{"title":"Data Enrichment","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","Use Cases for Reverse Proxy"]},"1348":{"title":"Authentication Context Forwarding","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","Use Cases for Reverse Proxy"]},"1349":{"title":"The Numbers","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"]},"1350":{"title":"Code Comparison","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest","The Numbers"]},"1351":{"title":"Summary: When to Use Proxy Mode","titles":["Reverse Proxy in PostgreSQL: Gateway to External Services with NpgsqlRest"]},"1352":{"title":"Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript","titles":[]},"1353":{"title":"Storage Options","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1354":{"title":"When to Use Each Strategy","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript","Storage Options"]},"1355":{"title":"Step 1: Create the Schema","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1356":{"title":"Step 2: Configure Upload Handlers","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1357":{"title":"Step 3: Create the Upload Function","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1358":{"title":"Step 4: Add the Upload Annotation","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1359":{"title":"How the Metadata Works","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1360":{"title":"When Uploads Fail","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript","How the Metadata Works"]},"1361":{"title":"Step 5: Use the Generated Client","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1362":{"title":"Step 6: Serve Images from Large Objects","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1363":{"title":"Performance: Large Objects vs File System","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript","Step 6: Serve Images from Large Objects"]},"1364":{"title":"Displaying Images","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1365":{"title":"Backup Advantage","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1366":{"title":"Traditional Approach Comparison","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1367":{"title":"Summary","titles":["Secure Image Uploads with PostgreSQL: File System, Large Objects, and Type-Safe TypeScript"]},"1368":{"title":"SQL File Source: REST Endpoints from Plain .sql Files","titles":[]},"1369":{"title":"The Simplest Endpoint","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1370":{"title":"Multi-Command: Multiple Queries in One Request","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1371":{"title":"Authentication: Login, Logout, Who Am I","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1372":{"title":"Real-Time Chat with SSE","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1373":{"title":"CSV Export with Basic Auth","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1374":{"title":"Dynamic Excel Output","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1375":{"title":"Nested Custom Types","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1376":{"title":"External API Calls","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1377":{"title":"The Important Part","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1378":{"title":"SQL Files vs Routines: When to Use Which","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1379":{"title":"What Came After This Post","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1380":{"title":"Get Started","titles":["SQL File Source: REST Endpoints from Plain .sql Files"]},"1381":{"title":"The Backend That Writes Itself","titles":[]},"1382":{"title":"The narration","titles":["The Backend That Writes Itself"]},"1383":{"title":"Where to go next","titles":["The Backend That Writes Itself"]},"1384":{"title":"SQL REST API","titles":[]},"1385":{"title":"Introduction","titles":["SQL REST API"]},"1386":{"title":"SQL Script Files as REST API Endpoints","titles":["SQL REST API"]},"1387":{"title":"SQL Files vs Routines","titles":["SQL REST API"]},"1388":{"title":"1) No Migrations","titles":["SQL REST API","SQL Files vs Routines"]},"1389":{"title":"2) No Comment On Statements","titles":["SQL REST API","SQL Files vs Routines"]},"1390":{"title":"3) Mapping by Position vs No Mapping at All","titles":["SQL REST API","SQL Files vs Routines"]},"1391":{"title":"4) Multiple Result Sets","titles":["SQL REST API","SQL Files vs Routines"]},"1392":{"title":"5) Named Parameters","titles":["SQL REST API","SQL Files vs Routines"]},"1393":{"title":"6) Testability","titles":["SQL REST API","SQL Files vs Routines"]},"1394":{"title":"7) Complex Logic","titles":["SQL REST API","SQL Files vs Routines"]},"1395":{"title":"1) Parameters are not supported in DO blocks.","titles":["SQL REST API","SQL Files vs Routines","7) Complex Logic"]},"1396":{"title":"2) DO blocks can\'t return result sets.","titles":["SQL REST API","SQL Files vs Routines","7) Complex Logic"]},"1397":{"title":"Other Features in v3.12.0","titles":["SQL REST API"]},"1398":{"title":"Self-Referencing Endpoints","titles":["SQL REST API","Other Features in v3.12.0"]},"1399":{"title":"Future Improvements","titles":["SQL REST API","Other Features in v3.12.0","Self-Referencing Endpoints"]},"1400":{"title":"AI Tools","titles":["SQL REST API"]},"1401":{"title":"1) AI Tools with NpgsqlRest","titles":["SQL REST API","AI Tools"]},"1402":{"title":"2) AI Tools in NpgsqlRest Development","titles":["SQL REST API","AI Tools"]},"1403":{"title":"Philosophy of NpgsqlRest","titles":["SQL REST API"]},"1404":{"title":"Wrap It Up Chapter","titles":["SQL REST API"]},"1405":{"title":"The Power of Simplicity","titles":[]},"1406":{"title":"From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator","titles":[]},"1407":{"title":"The Pipeline","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator"]},"1408":{"title":"A Minimal Example","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator"]},"1409":{"title":"End-to-End Type Safety in Action","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator"]},"1410":{"title":"Uploads: When the Generated Wrapper Isn\'t Just fetch()","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator"]},"1411":{"title":"Per-Endpoint Control with @tsclient Annotations","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator"]},"1412":{"title":"Disable Generation: Binary Endpoints","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator","Per-Endpoint Control with @tsclient Annotations"]},"1413":{"title":"URL-Only: Browser-Navigation Endpoints","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator","Per-Endpoint Control with @tsclient Annotations"]},"1414":{"title":"Module Grouping: Logical Bundles Across Schemas","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator","Per-Endpoint Control with @tsclient Annotations"]},"1415":{"title":"Other Per-Endpoint Toggles","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator","Per-Endpoint Control with @tsclient Annotations"]},"1416":{"title":"Scaling Up: Real-World Configuration","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator"]},"1417":{"title":"Real-World Workflow: Dev Codegen, Prod No-Codegen","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator"]},"1418":{"title":"Two Processes, One Tight Loop","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator","Real-World Workflow: Dev Codegen, Prod No-Codegen"]},"1419":{"title":"Managing Change","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator","Real-World Workflow: Dev Codegen, Prod No-Codegen"]},"1420":{"title":"Production: No Codegen, Just the Server","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator","Real-World Workflow: Dev Codegen, Prod No-Codegen"]},"1421":{"title":"What This Means in Practice","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator","Real-World Workflow: Dev Codegen, Prod No-Codegen"]},"1422":{"title":"Workflow Summary","titles":["From SQL to Type-Safe TypeScript: A Walkthrough of NpgsqlRest\'s Code Generator"]},"1423":{"title":"Web Scraping with PostgreSQL: HTTP Types + XML Functions","titles":[]},"1424":{"title":"The recipe","titles":["Web Scraping with PostgreSQL: HTTP Types + XML Functions"]},"1425":{"title":"Example 17: average book price","titles":["Web Scraping with PostgreSQL: HTTP Types + XML Functions"]},"1426":{"title":"Fetch — the HTTP Custom Type","titles":["Web Scraping with PostgreSQL: HTTP Types + XML Functions","Example 17: average book price"]},"1427":{"title":"Parse — regex to isolate, XPath to read","titles":["Web Scraping with PostgreSQL: HTTP Types + XML Functions","Example 17: average book price"]},"1428":{"title":"Why regex and XPath?","titles":["Web Scraping with PostgreSQL: HTTP Types + XML Functions","Example 17: average book price"]},"1429":{"title":"Example 16: best-value laptop","titles":["Web Scraping with PostgreSQL: HTTP Types + XML Functions"]},"1430":{"title":"Be a good citizen: cache the page","titles":["Web Scraping with PostgreSQL: HTTP Types + XML Functions"]},"1431":{"title":"A different split: fetch in SQL, parse in a service","titles":["Web Scraping with PostgreSQL: HTTP Types + XML Functions"]},"1432":{"title":"When this works (and when it doesn\'t)","titles":["Web Scraping with PostgreSQL: HTTP Types + XML Functions"]},"1433":{"title":"Try it","titles":["Web Scraping with PostgreSQL: HTTP Types + XML Functions"]},"1434":{"title":"Related","titles":["Web Scraping with PostgreSQL: HTTP Types + XML Functions"]},"1435":{"title":"What Have PostgreSQL Functions Ever Done for Us?","titles":[]},"1436":{"title":"Type Safety?","titles":["What Have PostgreSQL Functions Ever Done for Us?"]},"1437":{"title":"Real Encapsulation?","titles":["What Have PostgreSQL Functions Ever Done for Us?"]},"1438":{"title":"Zero Downtime?","titles":["What Have PostgreSQL Functions Ever Done for Us?"]},"1439":{"title":"Performance?","titles":["What Have PostgreSQL Functions Ever Done for Us?"]},"1440":{"title":"Race Conditions Minimized?","titles":["What Have PostgreSQL Functions Ever Done for Us?"]},"1441":{"title":"Security?","titles":["What Have PostgreSQL Functions Ever Done for Us?"]},"1442":{"title":"A Short Test Loop?","titles":["What Have PostgreSQL Functions Ever Done for Us?"]},"1443":{"title":"So, DDD developers","titles":["What Have PostgreSQL Functions Ever Done for Us?"]},"1444":{"title":"Authentication","titles":[]},"1445":{"title":"Overview","titles":["Authentication"]},"1446":{"title":"Cookie Authentication","titles":["Authentication"]},"1447":{"title":"Cookie Settings Reference","titles":["Authentication","Cookie Authentication"]},"1448":{"title":"Cookie Security","titles":["Authentication","Cookie Authentication"]},"1449":{"title":"Cross-Origin Cookies (New in 3.15.0)","titles":["Authentication","Cookie Authentication"]},"1450":{"title":"Microsoft Bearer Token Authentication","titles":["Authentication"]},"1451":{"title":"Bearer Token Settings Reference","titles":["Authentication","Microsoft Bearer Token Authentication"]},"1452":{"title":"Token Refresh","titles":["Authentication","Microsoft Bearer Token Authentication"]},"1453":{"title":"JWT Authentication","titles":["Authentication"]},"1454":{"title":"JWT Settings Reference","titles":["Authentication","JWT Authentication"]},"1455":{"title":"Login Response","titles":["Authentication","JWT Authentication"]},"1456":{"title":"Token Refresh","titles":["Authentication","JWT Authentication"]},"1457":{"title":"JWT vs Microsoft Bearer Token","titles":["Authentication","JWT Authentication"]},"1458":{"title":"Additional Authentication Schemes","titles":["Authentication"]},"1459":{"title":"Per-Type Override Fields","titles":["Authentication","Additional Authentication Schemes"]},"1460":{"title":"Validation at Startup (Fail-Fast)","titles":["Authentication","Additional Authentication Schemes"]},"1461":{"title":"Complete Examples","titles":["Authentication"]},"1462":{"title":"Cookie Authentication","titles":["Authentication","Complete Examples"]},"1463":{"title":"JWT Authentication","titles":["Authentication","Complete Examples"]},"1464":{"title":"Combined Authentication","titles":["Authentication","Complete Examples"]},"1465":{"title":"Related","titles":["Authentication"]},"1466":{"title":"Next Steps","titles":["Authentication"]},"1467":{"title":"See Also","titles":["Authentication"]},"1468":{"title":"Authentication Options","titles":[]},"1469":{"title":"Overview","titles":["Authentication Options"]},"1470":{"title":"General Settings","titles":["Authentication Options"]},"1471":{"title":"Login Response Columns","titles":["Authentication Options"]},"1472":{"title":"Password Handling","titles":["Authentication Options"]},"1473":{"title":"Password Verification Command Parameters","titles":["Authentication Options","Password Handling"]},"1474":{"title":"Default Claim Types","titles":["Authentication Options"]},"1475":{"title":"User Context Settings","titles":["Authentication Options"]},"1476":{"title":"Default ContextKeyClaimsMapping","titles":["Authentication Options","User Context Settings"]},"1477":{"title":"User Parameters Settings","titles":["Authentication Options"]},"1478":{"title":"Default ParameterNameClaimsMapping","titles":["Authentication Options","User Parameters Settings"]},"1479":{"title":"Login and Logout Paths","titles":["Authentication Options"]},"1480":{"title":"Login Command Convention","titles":["Authentication Options","Login and Logout Paths"]},"1481":{"title":"Logout Command Convention","titles":["Authentication Options","Login and Logout Paths"]},"1482":{"title":"Basic Authentication","titles":["Authentication Options"]},"1483":{"title":"Complete Example","titles":["Authentication Options"]},"1484":{"title":"Related","titles":["Authentication Options"]},"1485":{"title":"Next Steps","titles":["Authentication Options"]},"1486":{"title":"See Also","titles":["Authentication Options"]},"1487":{"title":"Antiforgery","titles":[]},"1488":{"title":"Overview","titles":["Antiforgery"]},"1489":{"title":"Settings Reference","titles":["Antiforgery"]},"1490":{"title":"Token Submission","titles":["Antiforgery"]},"1491":{"title":"Form Field","titles":["Antiforgery","Token Submission"]},"1492":{"title":"HTTP Header","titles":["Antiforgery","Token Submission"]},"1493":{"title":"X-Frame-Options Header","titles":["Antiforgery"]},"1494":{"title":"Example Configuration","titles":["Antiforgery"]},"1495":{"title":"Related","titles":["Antiforgery"]},"1496":{"title":"Next Steps","titles":["Antiforgery"]},"1497":{"title":"Basic Auth Configuration","titles":[]},"1498":{"title":"Overview","titles":["Basic Auth Configuration"]},"1499":{"title":"Settings","titles":["Basic Auth Configuration"]},"1500":{"title":"SSL Requirement Values","titles":["Basic Auth Configuration"]},"1501":{"title":"Challenge Command Parameters","titles":["Basic Auth Configuration"]},"1502":{"title":"Static Users Example","titles":["Basic Auth Configuration"]},"1503":{"title":"Database Authentication Example","titles":["Basic Auth Configuration"]},"1504":{"title":"Challenge Function Example","titles":["Basic Auth Configuration","Database Authentication Example"]},"1505":{"title":"Complete Example","titles":["Basic Auth Configuration"]},"1506":{"title":"Related","titles":["Basic Auth Configuration"]},"1507":{"title":"Next Steps","titles":["Basic Auth Configuration"]},"1508":{"title":"See Also","titles":["Basic Auth Configuration"]},"1509":{"title":"Cache Options","titles":[]},"1510":{"title":"Overview","titles":["Cache Options"]},"1511":{"title":"Settings Reference","titles":["Cache Options"]},"1512":{"title":"Cache Types","titles":["Cache Options"]},"1513":{"title":"Memory Cache","titles":["Cache Options","Cache Types"]},"1514":{"title":"Redis Cache","titles":["Cache Options","Cache Types"]},"1515":{"title":"Hybrid Cache","titles":["Cache Options","Cache Types"]},"1516":{"title":"Cache Key Hashing","titles":["Cache Options"]},"1517":{"title":"Caching Set-Returning Functions","titles":["Cache Options"]},"1518":{"title":"Cache Invalidation Endpoints","titles":["Cache Options"]},"1519":{"title":"Cache Profiles","titles":["Cache Options"]},"1520":{"title":"Overview","titles":["Cache Options","Cache Profiles"]},"1521":{"title":"Profile fields","titles":["Cache Options","Cache Profiles"]},"1522":{"title":"Backend pooling","titles":["Cache Options","Cache Profiles"]},"1523":{"title":"When rules","titles":["Cache Options","Cache Profiles"]},"1524":{"title":"Pattern: skip-on-condition","titles":["Cache Options","Cache Profiles","When rules"]},"1525":{"title":"Pattern: dynamic TTL","titles":["Cache Options","Cache Profiles","When rules"]},"1526":{"title":"Pattern: array-of-values","titles":["Cache Options","Cache Profiles","When rules"]},"1527":{"title":"Validation","titles":["Cache Options","Cache Profiles"]},"1528":{"title":"Connection pooler note","titles":["Cache Options","Cache Profiles"]},"1529":{"title":"Complete example","titles":["Cache Options","Cache Profiles"]},"1530":{"title":"Routine Annotations","titles":["Cache Options"]},"1531":{"title":"cached","titles":["Cache Options","Routine Annotations"]},"1532":{"title":"cache_expires / cache_expires_in","titles":["Cache Options","Routine Annotations"]},"1533":{"title":"cache_profile","titles":["Cache Options","Routine Annotations"]},"1534":{"title":"Example Configuration","titles":["Cache Options"]},"1535":{"title":"Related","titles":["Cache Options"]},"1536":{"title":"Next Steps","titles":["Cache Options"]},"1537":{"title":"See Also","titles":["Cache Options"]},"1538":{"title":"Claims Mapping","titles":[]},"1539":{"title":"Overview","titles":["Claims Mapping"]},"1540":{"title":"User Context (PostgreSQL Context Variables)","titles":["Claims Mapping"]},"1541":{"title":"Default Context Mapping","titles":["Claims Mapping","User Context (PostgreSQL Context Variables)"]},"1542":{"title":"Custom Context Mapping Example","titles":["Claims Mapping","User Context (PostgreSQL Context Variables)"]},"1543":{"title":"Access in PostgreSQL","titles":["Claims Mapping","User Context (PostgreSQL Context Variables)"]},"1544":{"title":"User Parameters","titles":["Claims Mapping"]},"1545":{"title":"Default Parameter Mapping","titles":["Claims Mapping","User Parameters"]},"1546":{"title":"Custom Parameter Mapping Example","titles":["Claims Mapping","User Parameters"]},"1547":{"title":"Example Function Using Parameters","titles":["Claims Mapping","User Parameters"]},"1548":{"title":"Complete Example","titles":["Claims Mapping"]},"1549":{"title":"Related","titles":["Claims Mapping"]},"1550":{"title":"Next Steps","titles":["Claims Mapping"]},"1551":{"title":"See Also","titles":["Claims Mapping"]},"1552":{"title":"Code Generation","titles":[]},"1553":{"title":"Overview","titles":["Code Generation"]},"1554":{"title":"General Settings","titles":["Code Generation"]},"1555":{"title":"Host Configuration","titles":["Code Generation"]},"1556":{"title":"Comment Headers","titles":["Code Generation"]},"1557":{"title":"Comment Header Styles","titles":["Code Generation","Comment Headers"]},"1558":{"title":"Response Options","titles":["Code Generation"]},"1559":{"title":"Type Generation","titles":["Code Generation"]},"1560":{"title":"Import Configuration","titles":["Code Generation"]},"1561":{"title":"Function Parameters","titles":["Code Generation"]},"1562":{"title":"Skip Options","titles":["Code Generation"]},"1563":{"title":"Export Options","titles":["Code Generation"]},"1564":{"title":"Headers and Security","titles":["Code Generation"]},"1565":{"title":"File Headers","titles":["Code Generation"]},"1566":{"title":"What Gets Generated","titles":["Code Generation"]},"1567":{"title":"Default Function Shape","titles":["Code Generation","What Gets Generated"]},"1568":{"title":"IncludeStatusCode: false — Direct Response","titles":["Code Generation","What Gets Generated"]},"1569":{"title":"OmitAutomaticParameters: true","titles":["Code Generation","What Gets Generated"]},"1570":{"title":"CreateSeparateTypeFile: true — Type-Only Files","titles":["Code Generation","What Gets Generated"]},"1571":{"title":"ExportTypes: true — Importable Interfaces","titles":["Code Generation","What Gets Generated"]},"1572":{"title":"ExportUrls: true — URL Constants","titles":["Code Generation","What Gets Generated"]},"1573":{"title":"ExportEventSources: true — SSE Helpers","titles":["Code Generation","What Gets Generated"]},"1574":{"title":"ImportBaseUrlFrom & ImportParseQueryFrom","titles":["Code Generation","What Gets Generated"]},"1575":{"title":"Path Parameters","titles":["Code Generation","What Gets Generated"]},"1576":{"title":"UseRoutineNameInsteadOfEndpoint: true","titles":["Code Generation","What Gets Generated"]},"1577":{"title":"BySchema: true — One File Per Schema","titles":["Code Generation","What Gets Generated"]},"1578":{"title":"Example Configurations","titles":["Code Generation"]},"1579":{"title":"Minimal (Examples Repo Style)","titles":["Code Generation","Example Configurations"]},"1580":{"title":"Single JavaScript File (No Types)","titles":["Code Generation","Example Configurations"]},"1581":{"title":"Production SvelteKit / Vite Setup","titles":["Code Generation","Example Configurations"]},"1582":{"title":"With Custom Headers and Imports","titles":["Code Generation","Example Configurations"]},"1583":{"title":"Related","titles":["Code Generation"]},"1584":{"title":"Next Steps","titles":["Code Generation"]},"1585":{"title":"See Also","titles":["Code Generation"]},"1586":{"title":"Command Retry","titles":[]},"1587":{"title":"Overview","titles":["Command Retry"]},"1588":{"title":"Settings Reference","titles":["Command Retry"]},"1589":{"title":"Strategy Settings","titles":["Command Retry"]},"1590":{"title":"Retry Sequence","titles":["Command Retry","Strategy Settings"]},"1591":{"title":"Default Error Codes","titles":["Command Retry"]},"1592":{"title":"Serialization Failures","titles":["Command Retry","Default Error Codes"]},"1593":{"title":"Connection Issues (Class 08)","titles":["Command Retry","Default Error Codes"]},"1594":{"title":"Resource Constraints (Class 53)","titles":["Command Retry","Default Error Codes"]},"1595":{"title":"System Errors (Class 57/58)","titles":["Command Retry","Default Error Codes"]},"1596":{"title":"Lock Acquisition Issues (Class 55)","titles":["Command Retry","Default Error Codes"]},"1597":{"title":"Multiple Strategies","titles":["Command Retry"]},"1598":{"title":"Example Configuration","titles":["Command Retry"]},"1599":{"title":"Using Strategies in Annotations","titles":["Command Retry"]},"1600":{"title":"Related","titles":["Command Retry"]},"1601":{"title":"Next Steps","titles":["Command Retry"]},"1602":{"title":"See Also","titles":["Command Retry"]},"1603":{"title":"Config Section","titles":[]},"1604":{"title":"Settings Reference","titles":["Config Section"]},"1605":{"title":"Placeholder Forms: Optional and Required (3.17.0+)","titles":["Config Section"]},"1606":{"title":"Environment Variable Override","titles":["Config Section"]},"1607":{"title":"Environment Variable Parsing","titles":["Config Section"]},"1608":{"title":"Loading from .env File","titles":["Config Section"]},"1609":{"title":"Configuration Key Validation","titles":["Config Section"]},"1610":{"title":"Related","titles":["Config Section"]},"1611":{"title":"Next Steps","titles":["Config Section"]},"1612":{"title":"Connection Settings","titles":[]},"1613":{"title":"Connection Strings","titles":["Connection Settings"]},"1614":{"title":"Multiple Connections","titles":["Connection Settings","Connection Strings"]},"1615":{"title":"Using Environment Variables","titles":["Connection Settings","Connection Strings"]},"1616":{"title":"Connection String Parameters","titles":["Connection Settings","Connection Strings"]},"1617":{"title":"Connection Settings","titles":["Connection Settings"]},"1618":{"title":"Settings Reference","titles":["Connection Settings","Connection Settings"]},"1619":{"title":"Application Name in Connection","titles":["Connection Settings","Connection Settings"]},"1620":{"title":"JSON Application Name","titles":["Connection Settings","Connection Settings"]},"1621":{"title":"Connection Testing","titles":["Connection Settings","Connection Settings"]},"1622":{"title":"Retry Options","titles":["Connection Settings"]},"1623":{"title":"Retry Settings Reference","titles":["Connection Settings","Retry Options"]},"1624":{"title":"Default Error Codes","titles":["Connection Settings","Retry Options"]},"1625":{"title":"Custom Retry Configuration","titles":["Connection Settings","Retry Options"]},"1626":{"title":"Multi-Host Connection Support","titles":["Connection Settings"]},"1627":{"title":"Multi-Host Connection Strings","titles":["Connection Settings","Multi-Host Connection Support"]},"1628":{"title":"Target Session Attributes","titles":["Connection Settings","Multi-Host Connection Support"]},"1629":{"title":"Multi-Host Example","titles":["Connection Settings","Multi-Host Connection Support"]},"1630":{"title":"NpgsqlRest Connection Options","titles":["Connection Settings"]},"1631":{"title":"NpgsqlRest Connection Settings Reference","titles":["Connection Settings","NpgsqlRest Connection Options"]},"1632":{"title":"Using Multiple Connections","titles":["Connection Settings","NpgsqlRest Connection Options"]},"1633":{"title":"Complete Example","titles":["Connection Settings"]},"1634":{"title":"Related","titles":["Connection Settings"]},"1635":{"title":"Next Steps","titles":["Connection Settings"]},"1636":{"title":"See Also","titles":["Connection Settings"]},"1637":{"title":"CORS","titles":[]},"1638":{"title":"Overview","titles":["CORS"]},"1639":{"title":"Settings Reference","titles":["CORS"]},"1640":{"title":"Allowed Origins","titles":["CORS"]},"1641":{"title":"Allow All Origins","titles":["CORS","Allowed Origins"]},"1642":{"title":"Allowed Methods","titles":["CORS"]},"1643":{"title":"Allowed Headers","titles":["CORS"]},"1644":{"title":"Credentials","titles":["CORS"]},"1645":{"title":"Preflight Caching","titles":["CORS"]},"1646":{"title":"Example Configuration","titles":["CORS"]},"1647":{"title":"Related","titles":["CORS"]},"1648":{"title":"Next Steps","titles":["CORS"]},"1649":{"title":"Data Protection","titles":[]},"1650":{"title":"Overview","titles":["Data Protection"]},"1651":{"title":"Settings Reference","titles":["Data Protection"]},"1652":{"title":"Storage Options","titles":["Data Protection"]},"1653":{"title":"Default Storage","titles":["Data Protection","Storage Options"]},"1654":{"title":"File System Storage","titles":["Data Protection","Storage Options"]},"1655":{"title":"Database Storage","titles":["Data Protection","Storage Options"]},"1656":{"title":"Encryption Algorithms","titles":["Data Protection"]},"1657":{"title":"Validation Algorithms","titles":["Data Protection"]},"1658":{"title":"Application Name Scope","titles":["Data Protection"]},"1659":{"title":"Key Encryption Options","titles":["Data Protection"]},"1660":{"title":"No Encryption (Default)","titles":["Data Protection","Key Encryption Options"]},"1661":{"title":"Certificate Encryption","titles":["Data Protection","Key Encryption Options"]},"1662":{"title":"DPAPI Encryption (Windows Only)","titles":["Data Protection","Key Encryption Options"]},"1663":{"title":"Complete Example","titles":["Data Protection"]},"1664":{"title":"Column Encryption with Annotations","titles":["Data Protection"]},"1665":{"title":"Related","titles":["Data Protection"]},"1666":{"title":"Next Steps","titles":["Data Protection"]},"1667":{"title":"See Also","titles":["Data Protection"]},"1668":{"title":"Error Handling","titles":[]},"1669":{"title":"Overview","titles":["Error Handling"]},"1670":{"title":"Settings Reference","titles":["Error Handling"]},"1671":{"title":"Error Mapping Object","titles":["Error Handling"]},"1672":{"title":"Timeout Error Mapping","titles":["Error Handling"]},"1673":{"title":"Error Code Policies","titles":["Error Handling"]},"1674":{"title":"Default Error Code Mappings","titles":["Error Handling","Error Code Policies"]},"1675":{"title":"Response Fields","titles":["Error Handling"]},"1676":{"title":"Type URL","titles":["Error Handling","Response Fields"]},"1677":{"title":"TraceId","titles":["Error Handling","Response Fields"]},"1678":{"title":"Example Configuration","titles":["Error Handling"]},"1679":{"title":"Related","titles":["Error Handling"]},"1680":{"title":"Next Steps","titles":["Error Handling"]},"1681":{"title":"See Also","titles":["Error Handling"]},"1682":{"title":"External OAuth Authentication","titles":[]},"1683":{"title":"Overview","titles":["External OAuth Authentication"]},"1684":{"title":"Settings Reference","titles":["External OAuth Authentication"]},"1685":{"title":"SignInHtmlTemplate","titles":["External OAuth Authentication","Settings Reference"]},"1686":{"title":"Login Command","titles":["External OAuth Authentication"]},"1687":{"title":"Parameters","titles":["External OAuth Authentication","Login Command"]},"1688":{"title":"Result Set Conventions","titles":["External OAuth Authentication","Login Command"]},"1689":{"title":"Example Login Command Function","titles":["External OAuth Authentication","Login Command"]},"1690":{"title":"OAuth Providers","titles":["External OAuth Authentication"]},"1691":{"title":"Google","titles":["External OAuth Authentication","OAuth Providers"]},"1692":{"title":"LinkedIn","titles":["External OAuth Authentication","OAuth Providers"]},"1693":{"title":"GitHub","titles":["External OAuth Authentication","OAuth Providers"]},"1694":{"title":"Microsoft","titles":["External OAuth Authentication","OAuth Providers"]},"1695":{"title":"Facebook","titles":["External OAuth Authentication","OAuth Providers"]},"1696":{"title":"Provider Settings Reference","titles":["External OAuth Authentication"]},"1697":{"title":"Custom Providers","titles":["External OAuth Authentication","Provider Settings Reference"]},"1698":{"title":"Complete Example","titles":["External OAuth Authentication"]},"1699":{"title":"Related","titles":["External OAuth Authentication"]},"1700":{"title":"Next Steps","titles":["External OAuth Authentication"]},"1701":{"title":"Forwarded Headers","titles":[]},"1702":{"title":"Overview","titles":["Forwarded Headers"]},"1703":{"title":"Settings Reference","titles":["Forwarded Headers"]},"1704":{"title":"Why Forwarded Headers Matter","titles":["Forwarded Headers"]},"1705":{"title":"Processed Headers","titles":["Forwarded Headers"]},"1706":{"title":"Forward Limit","titles":["Forwarded Headers"]},"1707":{"title":"Known Proxies","titles":["Forwarded Headers"]},"1708":{"title":"Known Networks","titles":["Forwarded Headers"]},"1709":{"title":"Allowed Hosts","titles":["Forwarded Headers"]},"1710":{"title":"Example Configurations","titles":["Forwarded Headers"]},"1711":{"title":"Behind nginx","titles":["Forwarded Headers","Example Configurations"]},"1712":{"title":"AWS ALB / ELB","titles":["Forwarded Headers","Example Configurations"]},"1713":{"title":"Azure App Service","titles":["Forwarded Headers","Example Configurations"]},"1714":{"title":"Cloudflare + Origin Server","titles":["Forwarded Headers","Example Configurations"]},"1715":{"title":"Docker/Kubernetes with Internal Load Balancer","titles":["Forwarded Headers","Example Configurations"]},"1716":{"title":"Development (Trust All)","titles":["Forwarded Headers","Example Configurations"]},"1717":{"title":"Security Considerations","titles":["Forwarded Headers"]},"1718":{"title":"Related","titles":["Forwarded Headers"]},"1719":{"title":"Next Steps","titles":["Forwarded Headers"]},"1720":{"title":"HTTP Client Options","titles":[]},"1721":{"title":"Overview","titles":["HTTP Client Options"]},"1722":{"title":"Settings Reference","titles":["HTTP Client Options"]},"1723":{"title":"How HTTP Types Work","titles":["HTTP Client Options"]},"1724":{"title":"Creating an HTTP Type","titles":["HTTP Client Options"]},"1725":{"title":"Step 1: Create a Composite Type","titles":["HTTP Client Options","Creating an HTTP Type"]},"1726":{"title":"Step 2: Add HTTP Definition Comment","titles":["HTTP Client Options","Creating an HTTP Type"]},"1727":{"title":"Step 3: Use in a Function","titles":["HTTP Client Options","Creating an HTTP Type"]},"1728":{"title":"HTTP Definition Format","titles":["HTTP Client Options"]},"1729":{"title":"Supported Methods","titles":["HTTP Client Options","HTTP Definition Format"]},"1730":{"title":"Example Definitions","titles":["HTTP Client Options","HTTP Definition Format"]},"1731":{"title":"Timeout Directives","titles":["HTTP Client Options"]},"1732":{"title":"Response Fields","titles":["HTTP Client Options"]},"1733":{"title":"Placeholder Substitution","titles":["HTTP Client Options"]},"1734":{"title":"Complete Example","titles":["HTTP Client Options"]},"1735":{"title":"Configuration","titles":["HTTP Client Options","Complete Example"]},"1736":{"title":"SQL Setup","titles":["HTTP Client Options","Complete Example"]},"1737":{"title":"Usage","titles":["HTTP Client Options","Complete Example"]},"1738":{"title":"Resolved Parameter Expressions","titles":["HTTP Client Options"]},"1739":{"title":"Retry Logic","titles":["HTTP Client Options"]},"1740":{"title":"Syntax","titles":["HTTP Client Options","Retry Logic"]},"1741":{"title":"Behavior","titles":["HTTP Client Options","Retry Logic"]},"1742":{"title":"Example","titles":["HTTP Client Options","Retry Logic"]},"1743":{"title":"Response Caching","titles":["HTTP Client Options"]},"1744":{"title":"Self-Referencing Calls (Relative Paths)","titles":["HTTP Client Options"]},"1745":{"title":"Parallel Query Composition","titles":["HTTP Client Options","Self-Referencing Calls (Relative Paths)"]},"1746":{"title":"Zero HTTP Overhead","titles":["HTTP Client Options","Self-Referencing Calls (Relative Paths)"]},"1747":{"title":"Internal-Only Endpoints","titles":["HTTP Client Options","Self-Referencing Calls (Relative Paths)"]},"1748":{"title":"Related","titles":["HTTP Client Options"]},"1749":{"title":"Next Steps","titles":["HTTP Client Options"]},"1750":{"title":"See Also","titles":["HTTP Client Options"]},"1751":{"title":"HTTP File Options","titles":[]},"1752":{"title":"Overview","titles":["HTTP File Options"]},"1753":{"title":"Settings Reference","titles":["HTTP File Options"]},"1754":{"title":"Generation Options","titles":["HTTP File Options"]},"1755":{"title":"Comment Header Styles","titles":["HTTP File Options"]},"1756":{"title":"File Mode","titles":["HTTP File Options"]},"1757":{"title":"HTTP Files","titles":["HTTP File Options"]},"1758":{"title":"Example Configuration","titles":["HTTP File Options"]},"1759":{"title":"Omitting Automatic Parameters","titles":["HTTP File Options"]},"1760":{"title":"Related","titles":["HTTP File Options"]},"1761":{"title":"Next Steps","titles":["HTTP File Options"]},"1762":{"title":"Health Checks","titles":[]},"1763":{"title":"Overview","titles":["Health Checks"]},"1764":{"title":"Settings Reference","titles":["Health Checks"]},"1765":{"title":"Health Check Types","titles":["Health Checks"]},"1766":{"title":"Main Health (/health)","titles":["Health Checks","Health Check Types"]},"1767":{"title":"Readiness Probe (/health/ready)","titles":["Health Checks","Health Check Types"]},"1768":{"title":"Liveness Probe (/health/live)","titles":["Health Checks","Health Check Types"]},"1769":{"title":"Cache Duration","titles":["Health Checks"]},"1770":{"title":"Database Health Check","titles":["Health Checks"]},"1771":{"title":"Using a Different Connection","titles":["Health Checks","Database Health Check"]},"1772":{"title":"Kubernetes Integration","titles":["Health Checks"]},"1773":{"title":"Deployment Configuration","titles":["Health Checks","Kubernetes Integration"]},"1774":{"title":"Probe Behavior","titles":["Health Checks","Kubernetes Integration"]},"1775":{"title":"Docker Compose Health Check","titles":["Health Checks"]},"1776":{"title":"Custom Paths","titles":["Health Checks"]},"1777":{"title":"Example Configurations","titles":["Health Checks"]},"1778":{"title":"Basic Configuration","titles":["Health Checks","Example Configurations"]},"1779":{"title":"Production with Caching","titles":["Health Checks","Example Configurations"]},"1780":{"title":"API Gateway Integration","titles":["Health Checks","Example Configurations"]},"1781":{"title":"Without Database Check","titles":["Health Checks","Example Configurations"]},"1782":{"title":"Response Format","titles":["Health Checks"]},"1783":{"title":"Related","titles":["Health Checks"]},"1784":{"title":"Next Steps","titles":["Health Checks"]},"1785":{"title":"Configuration Reference","titles":[]},"1786":{"title":"Reference Sections","titles":["Configuration Reference"]},"1787":{"title":"Core Settings","titles":["Configuration Reference","Reference Sections"]},"1788":{"title":"Security","titles":["Configuration Reference","Reference Sections"]},"1789":{"title":"Features","titles":["Configuration Reference","Reference Sections"]},"1790":{"title":"Performance","titles":["Configuration Reference","Reference Sections"]},"1791":{"title":"Infrastructure","titles":["Configuration Reference","Reference Sections"]},"1792":{"title":"Latest Default Configuration Reference","titles":[]},"1793":{"title":"Related","titles":["Latest Default Configuration Reference"]},"1794":{"title":"Core Settings","titles":["Latest Default Configuration Reference","Related"]},"1795":{"title":"Security","titles":["Latest Default Configuration Reference","Related"]},"1796":{"title":"Features","titles":["Latest Default Configuration Reference","Related"]},"1797":{"title":"Performance","titles":["Latest Default Configuration Reference","Related"]},"1798":{"title":"Infrastructure","titles":["Latest Default Configuration Reference","Related"]},"1799":{"title":"Logging","titles":[]},"1800":{"title":"Overview","titles":["Logging"]},"1801":{"title":"Log Levels","titles":["Logging"]},"1802":{"title":"Minimal Levels","titles":["Logging"]},"1803":{"title":"Console Output","titles":["Logging"]},"1804":{"title":"File Output","titles":["Logging"]},"1805":{"title":"PostgreSQL Output","titles":["Logging"]},"1806":{"title":"PostgreSQL Command Parameters","titles":["Logging","PostgreSQL Output"]},"1807":{"title":"OpenTelemetry Output","titles":["Logging"]},"1808":{"title":"Resource Attributes","titles":["Logging","OpenTelemetry Output"]},"1809":{"title":"Output Template","titles":["Logging"]},"1810":{"title":"Complete Example","titles":["Logging"]},"1811":{"title":"Related","titles":["Logging"]},"1812":{"title":"Next Steps","titles":["Logging"]},"1813":{"title":"MCP Options","titles":[]},"1814":{"title":"Overview","titles":["MCP Options"]},"1815":{"title":"Options","titles":["MCP Options"]},"1816":{"title":"Enabled","titles":["MCP Options","Options"]},"1817":{"title":"UrlPath","titles":["MCP Options","Options"]},"1818":{"title":"ServerName","titles":["MCP Options","Options"]},"1819":{"title":"ServerVersion","titles":["MCP Options","Options"]},"1820":{"title":"Instructions","titles":["MCP Options","Options"]},"1821":{"title":"ToolDescriptionSuffix","titles":["MCP Options","Options"]},"1822":{"title":"RateLimiterPolicy","titles":["MCP Options","Options"]},"1823":{"title":"AllowedOrigins","titles":["MCP Options","Options"]},"1824":{"title":"How it works","titles":["MCP Options"]},"1825":{"title":"Authentication — OAuth 2.1 Resource Server","titles":["MCP Options"]},"1826":{"title":"Authorization options","titles":["MCP Options","Authentication — OAuth 2.1 Resource Server"]},"1827":{"title":"RequireAuthorization","titles":["MCP Options","Authentication — OAuth 2.1 Resource Server","Authorization options"]},"1828":{"title":"AuthorizationServers","titles":["MCP Options","Authentication — OAuth 2.1 Resource Server","Authorization options"]},"1829":{"title":"ScopesSupported","titles":["MCP Options","Authentication — OAuth 2.1 Resource Server","Authorization options"]},"1830":{"title":"Audience","titles":["MCP Options","Authentication — OAuth 2.1 Resource Server","Authorization options"]},"1831":{"title":"ProtectedResourceMetadataPath","titles":["MCP Options","Authentication — OAuth 2.1 Resource Server","Authorization options"]},"1832":{"title":"FilterToolsByRole","titles":["MCP Options","Authentication — OAuth 2.1 Resource Server","Authorization options"]},"1833":{"title":"Protected Resource Metadata (RFC 9728)","titles":["MCP Options","Authentication — OAuth 2.1 Resource Server"]},"1834":{"title":"Related","titles":["MCP Options"]},"1835":{"title":"NpgsqlRest Options","titles":[]},"1836":{"title":"Overview","titles":["NpgsqlRest Options"]},"1837":{"title":"Connection Settings","titles":["NpgsqlRest Options"]},"1838":{"title":"Schema and Name Filtering","titles":["NpgsqlRest Options"]},"1839":{"title":"Filtering Examples","titles":["NpgsqlRest Options","Schema and Name Filtering"]},"1840":{"title":"Comments Mode","titles":["NpgsqlRest Options"]},"1841":{"title":"URL and Naming","titles":["NpgsqlRest Options"]},"1842":{"title":"URL Examples","titles":["NpgsqlRest Options","URL and Naming"]},"1843":{"title":"Authorization","titles":["NpgsqlRest Options"]},"1844":{"title":"Logging","titles":["NpgsqlRest Options"]},"1845":{"title":"Notice Event Modes","titles":["NpgsqlRest Options","Logging"]},"1846":{"title":"HTTP Method and Parameters","titles":["NpgsqlRest Options"]},"1847":{"title":"Default Behavior","titles":["NpgsqlRest Options","HTTP Method and Parameters"]},"1848":{"title":"Request Headers","titles":["NpgsqlRest Options"]},"1849":{"title":"Request Headers Modes","titles":["NpgsqlRest Options","Request Headers"]},"1850":{"title":"Connection Pooler Compatibility","titles":["NpgsqlRest Options"]},"1851":{"title":"WrapInTransaction","titles":["NpgsqlRest Options","Connection Pooler Compatibility"]},"1852":{"title":"BeforeRoutineCommands","titles":["NpgsqlRest Options","Connection Pooler Compatibility"]},"1853":{"title":"NULL Handling","titles":["NpgsqlRest Options"]},"1854":{"title":"QueryStringNullHandling Values","titles":["NpgsqlRest Options","NULL Handling"]},"1855":{"title":"TextResponseNullHandling Values","titles":["NpgsqlRest Options","NULL Handling"]},"1856":{"title":"JSON Timestamp Handling","titles":["NpgsqlRest Options"]},"1857":{"title":"Server-Sent Events","titles":["NpgsqlRest Options"]},"1858":{"title":"Notice Level Behavior","titles":["NpgsqlRest Options","Server-Sent Events"]},"1859":{"title":"Example Configuration","titles":["NpgsqlRest Options","Server-Sent Events"]},"1860":{"title":"Related","titles":["NpgsqlRest Options","Server-Sent Events"]},"1861":{"title":"Unbound RAISE warning","titles":["NpgsqlRest Options","Server-Sent Events"]},"1862":{"title":"Environment Variables in Annotation Values","titles":["NpgsqlRest Options"]},"1863":{"title":"Complete Example","titles":["NpgsqlRest Options"]},"1864":{"title":"Related","titles":["NpgsqlRest Options"]},"1865":{"title":"Next Steps","titles":["NpgsqlRest Options"]},"1866":{"title":"Passkey Authentication","titles":[]},"1867":{"title":"Overview","titles":["Passkey Authentication"]},"1868":{"title":"How It Works","titles":["Passkey Authentication"]},"1869":{"title":"Three Authentication Flows","titles":["Passkey Authentication"]},"1870":{"title":"1. Registration (New User with Passkey)","titles":["Passkey Authentication","Three Authentication Flows"]},"1871":{"title":"2. Add Passkey (Existing User)","titles":["Passkey Authentication","Three Authentication Flows"]},"1872":{"title":"3. Login","titles":["Passkey Authentication","Three Authentication Flows"]},"1873":{"title":"Settings Reference","titles":["Passkey Authentication"]},"1874":{"title":"General Settings","titles":["Passkey Authentication","Settings Reference"]},"1875":{"title":"Relying Party Settings","titles":["Passkey Authentication","Settings Reference"]},"1876":{"title":"Endpoint Paths","titles":["Passkey Authentication","Settings Reference"]},"1877":{"title":"WebAuthn Settings","titles":["Passkey Authentication","Settings Reference"]},"1878":{"title":"UserVerificationRequirement","titles":["Passkey Authentication","Settings Reference","WebAuthn Settings"]},"1879":{"title":"ResidentKeyRequirement","titles":["Passkey Authentication","Settings Reference","WebAuthn Settings"]},"1880":{"title":"AttestationConveyance","titles":["Passkey Authentication","Settings Reference","WebAuthn Settings"]},"1881":{"title":"SQL Commands Reference","titles":["Passkey Authentication"]},"1882":{"title":"ChallengeAddExistingUserCommand","titles":["Passkey Authentication","SQL Commands Reference"]},"1883":{"title":"ChallengeRegistrationCommand","titles":["Passkey Authentication","SQL Commands Reference"]},"1884":{"title":"ChallengeAuthenticationCommand","titles":["Passkey Authentication","SQL Commands Reference"]},"1885":{"title":"VerifyChallengeCommand","titles":["Passkey Authentication","SQL Commands Reference"]},"1886":{"title":"AuthenticateDataCommand","titles":["Passkey Authentication","SQL Commands Reference"]},"1887":{"title":"CompleteAddExistingUserCommand / CompleteRegistrationCommand","titles":["Passkey Authentication","SQL Commands Reference"]},"1888":{"title":"CompleteAuthenticateCommand","titles":["Passkey Authentication","SQL Commands Reference"]},"1889":{"title":"Column Name Configuration","titles":["Passkey Authentication"]},"1890":{"title":"Analytics Data","titles":["Passkey Authentication"]},"1891":{"title":"Complete Example","titles":["Passkey Authentication"]},"1892":{"title":"Minimal Configuration","titles":["Passkey Authentication","Complete Example"]},"1893":{"title":"Full Configuration","titles":["Passkey Authentication","Complete Example"]},"1894":{"title":"Related","titles":["Passkey Authentication"]},"1895":{"title":"Next Steps","titles":["Passkey Authentication"]},"1896":{"title":"OpenAPI Options","titles":[]},"1897":{"title":"Overview","titles":["OpenAPI Options"]},"1898":{"title":"Settings Reference","titles":["OpenAPI Options"]},"1899":{"title":"Document Info","titles":["OpenAPI Options"]},"1900":{"title":"Servers","titles":["OpenAPI Options"]},"1901":{"title":"Security Schemes","titles":["OpenAPI Options"]},"1902":{"title":"Bearer Token Authentication","titles":["OpenAPI Options","Security Schemes"]},"1903":{"title":"Basic Authentication","titles":["OpenAPI Options","Security Schemes"]},"1904":{"title":"Cookie Authentication","titles":["OpenAPI Options","Security Schemes"]},"1905":{"title":"API Key in Header","titles":["OpenAPI Options","Security Schemes"]},"1906":{"title":"Security Scheme Settings","titles":["OpenAPI Options","Security Schemes"]},"1907":{"title":"Complete Example","titles":["OpenAPI Options"]},"1908":{"title":"Filters (New in 3.15.0)","titles":["OpenAPI Options"]},"1909":{"title":"Schema and name filters","titles":["OpenAPI Options","Filters (New in 3.15.0)"]},"1910":{"title":"Filter order","titles":["OpenAPI Options","Filters (New in 3.15.0)"]},"1911":{"title":"Partner-facing document example","titles":["OpenAPI Options","Filters (New in 3.15.0)"]},"1912":{"title":"Omitting Automatic Parameters","titles":["OpenAPI Options"]},"1913":{"title":"Related","titles":["OpenAPI Options"]},"1914":{"title":"Next Steps","titles":["OpenAPI Options"]},"1915":{"title":"Proxy Options","titles":[]},"1916":{"title":"Overview","titles":["Proxy Options"]},"1917":{"title":"Settings Reference","titles":["Proxy Options"]},"1918":{"title":"Response Parameter Names","titles":["Proxy Options"]},"1919":{"title":"Proxy Modes","titles":["Proxy Options"]},"1920":{"title":"Passthrough Mode","titles":["Proxy Options","Proxy Modes"]},"1921":{"title":"Transform Mode","titles":["Proxy Options","Proxy Modes"]},"1922":{"title":"Response Parameters","titles":["Proxy Options"]},"1923":{"title":"Automatic Parameter Forwarding","titles":["Proxy Options"]},"1924":{"title":"Placement follows the endpoint shape, not the HTTP verb","titles":["Proxy Options","Automatic Parameter Forwarding"]},"1925":{"title":"Query-string length guard","titles":["Proxy Options","Automatic Parameter Forwarding"]},"1926":{"title":"HTTP Headers (user_context)","titles":["Proxy Options","Automatic Parameter Forwarding"]},"1927":{"title":"Upload Forwarding","titles":["Proxy Options"]},"1928":{"title":"Key Features","titles":["Proxy Options"]},"1929":{"title":"Self-Referencing Calls (Relative Paths)","titles":["Proxy Options"]},"1930":{"title":"Internal-Only Endpoints","titles":["Proxy Options","Self-Referencing Calls (Relative Paths)"]},"1931":{"title":"Complete Example","titles":["Proxy Options"]},"1932":{"title":"Related","titles":["Proxy Options"]},"1933":{"title":"Next Steps","titles":["Proxy Options"]},"1934":{"title":"See Also","titles":["Proxy Options"]},"1935":{"title":"Response Compression","titles":[]},"1936":{"title":"Overview","titles":["Response Compression"]},"1937":{"title":"Settings Reference","titles":["Response Compression"]},"1938":{"title":"Compression Levels","titles":["Response Compression"]},"1939":{"title":"Compression Algorithms","titles":["Response Compression"]},"1940":{"title":"Brotli","titles":["Response Compression","Compression Algorithms"]},"1941":{"title":"Gzip Fallback","titles":["Response Compression","Compression Algorithms"]},"1942":{"title":"HTTPS Compression","titles":["Response Compression"]},"1943":{"title":"Default MIME Types","titles":["Response Compression"]},"1944":{"title":"Example Configuration","titles":["Response Compression"]},"1945":{"title":"Related","titles":["Response Compression"]},"1946":{"title":"Next Steps","titles":["Response Compression"]},"1947":{"title":"Rate Limiter","titles":[]},"1948":{"title":"Overview","titles":["Rate Limiter"]},"1949":{"title":"Settings Reference","titles":["Rate Limiter"]},"1950":{"title":"Policy Types","titles":["Rate Limiter"]},"1951":{"title":"Fixed Window Policy","titles":["Rate Limiter"]},"1952":{"title":"Sliding Window Policy","titles":["Rate Limiter"]},"1953":{"title":"Token Bucket Policy","titles":["Rate Limiter"]},"1954":{"title":"Concurrency Policy","titles":["Rate Limiter"]},"1955":{"title":"Per-User Rate Limiting (Partition)","titles":["Rate Limiter"]},"1956":{"title":"Partition Fields","titles":["Rate Limiter","Per-User Rate Limiting (Partition)"]},"1957":{"title":"Source Types","titles":["Rate Limiter","Per-User Rate Limiting (Partition)"]},"1958":{"title":"Per-Policy Status Code and Message","titles":["Rate Limiter"]},"1959":{"title":"Ready-to-use login_throttle policy","titles":["Rate Limiter","Per-Policy Status Code and Message"]},"1960":{"title":"Complete Example","titles":["Rate Limiter"]},"1961":{"title":"Rate Limiting Scope","titles":["Rate Limiter"]},"1962":{"title":"Related","titles":["Rate Limiter"]},"1963":{"title":"Next Steps","titles":["Rate Limiter"]},"1964":{"title":"See Also","titles":["Rate Limiter"]},"1965":{"title":"Routine Options","titles":[]},"1966":{"title":"Overview","titles":["Routine Options"]},"1967":{"title":"Settings","titles":["Routine Options"]},"1968":{"title":"Custom Type Parameter Separator","titles":["Routine Options"]},"1969":{"title":"Language Filtering","titles":["Routine Options"]},"1970":{"title":"Include Specific Languages","titles":["Routine Options","Language Filtering"]},"1971":{"title":"Exclude Additional Languages","titles":["Routine Options","Language Filtering"]},"1972":{"title":"Common PostgreSQL Languages","titles":["Routine Options","Language Filtering"]},"1973":{"title":"Nested JSON for Composite Types","titles":["Routine Options"]},"1974":{"title":"Resolve Nested Composite Types","titles":["Routine Options"]},"1975":{"title":"Complete Example","titles":["Routine Options"]},"1976":{"title":"Related","titles":["Routine Options"]},"1977":{"title":"Next Steps","titles":["Routine Options"]},"1978":{"title":"Server & SSL Settings","titles":[]},"1979":{"title":"SSL Configuration","titles":["Server & SSL Settings"]},"1980":{"title":"Settings Reference","titles":["Server & SSL Settings","SSL Configuration"]},"1981":{"title":"Enabling HTTPS","titles":["Server & SSL Settings","SSL Configuration"]},"1982":{"title":"HTTPS Redirection","titles":["Server & SSL Settings","SSL Configuration"]},"1983":{"title":"HTTP Strict Transport Security (HSTS)","titles":["Server & SSL Settings","SSL Configuration"]},"1984":{"title":"Kestrel Configuration","titles":["Server & SSL Settings"]},"1985":{"title":"Certificate Configuration","titles":["Server & SSL Settings","Kestrel Configuration"]},"1986":{"title":"PFX File","titles":["Server & SSL Settings","Kestrel Configuration","Certificate Configuration"]},"1987":{"title":"PEM/CRT with Key File","titles":["Server & SSL Settings","Kestrel Configuration","Certificate Configuration"]},"1988":{"title":"Certificate Store (Windows)","titles":["Server & SSL Settings","Kestrel Configuration","Certificate Configuration"]},"1989":{"title":"Default Certificate","titles":["Server & SSL Settings","Kestrel Configuration","Certificate Configuration"]},"1990":{"title":"Connection Limits","titles":["Server & SSL Settings","Kestrel Configuration"]},"1991":{"title":"Limits Reference","titles":["Server & SSL Settings","Kestrel Configuration","Connection Limits"]},"1992":{"title":"HTTP/2 Settings","titles":["Server & SSL Settings","Kestrel Configuration"]},"1993":{"title":"HTTP/3 Settings","titles":["Server & SSL Settings","Kestrel Configuration"]},"1994":{"title":"Additional Kestrel Options","titles":["Server & SSL Settings","Kestrel Configuration"]},"1995":{"title":"Complete Example","titles":["Server & SSL Settings"]},"1996":{"title":"Related","titles":["Server & SSL Settings"]},"1997":{"title":"Next Steps","titles":["Server & SSL Settings"]},"1998":{"title":"SQL File Source","titles":[]},"1999":{"title":"Overview","titles":["SQL File Source"]},"2000":{"title":"Settings","titles":["SQL File Source"]},"2001":{"title":"Enabled","titles":["SQL File Source"]},"2002":{"title":"FilePattern","titles":["SQL File Source"]},"2003":{"title":"Examples","titles":["SQL File Source","FilePattern"]},"2004":{"title":"CommentsMode","titles":["SQL File Source"]},"2005":{"title":"CommentScope","titles":["SQL File Source"]},"2006":{"title":"Example","titles":["SQL File Source","CommentScope"]},"2007":{"title":"ErrorMode","titles":["SQL File Source"]},"2008":{"title":"ResultPrefix","titles":["SQL File Source"]},"2009":{"title":"UnnamedSingleColumnSet","titles":["SQL File Source"]},"2010":{"title":"NestedJsonForCompositeTypes","titles":["SQL File Source"]},"2011":{"title":"LogCommandText","titles":["SQL File Source"]},"2012":{"title":"Quick Start Example","titles":["SQL File Source"]},"2013":{"title":"Related","titles":["SQL File Source"]},"2014":{"title":"Security Headers","titles":[]},"2015":{"title":"Overview","titles":["Security Headers"]},"2016":{"title":"Settings Reference","titles":["Security Headers"]},"2017":{"title":"X-Content-Type-Options","titles":["Security Headers"]},"2018":{"title":"X-Frame-Options","titles":["Security Headers"]},"2019":{"title":"Referrer-Policy","titles":["Security Headers"]},"2020":{"title":"Content-Security-Policy","titles":["Security Headers"]},"2021":{"title":"Permissions-Policy","titles":["Security Headers"]},"2022":{"title":"Cross-Origin Policies","titles":["Security Headers"]},"2023":{"title":"Cross-Origin-Opener-Policy","titles":["Security Headers","Cross-Origin Policies"]},"2024":{"title":"Cross-Origin-Embedder-Policy","titles":["Security Headers","Cross-Origin Policies"]},"2025":{"title":"Cross-Origin-Resource-Policy","titles":["Security Headers","Cross-Origin Policies"]},"2026":{"title":"Example Configurations","titles":["Security Headers"]},"2027":{"title":"Basic Security (Recommended Starting Point)","titles":["Security Headers","Example Configurations"]},"2028":{"title":"API-Only Application","titles":["Security Headers","Example Configurations"]},"2029":{"title":"Full Protection with CSP","titles":["Security Headers","Example Configurations"]},"2030":{"title":"Related","titles":["Security Headers"]},"2031":{"title":"Next Steps","titles":["Security Headers"]},"2032":{"title":"Static Files","titles":[]},"2033":{"title":"Overview","titles":["Static Files"]},"2034":{"title":"Settings Reference","titles":["Static Files"]},"2035":{"title":"Authorization","titles":["Static Files"]},"2036":{"title":"Path Patterns","titles":["Static Files","Authorization"]},"2037":{"title":"Content Parsing","titles":["Static Files"]},"2038":{"title":"Parse Content Settings Reference","titles":["Static Files","Content Parsing"]},"2039":{"title":"Tag Replacement","titles":["Static Files","Content Parsing"]},"2040":{"title":"Environment Variable Injection","titles":["Static Files","Content Parsing"]},"2041":{"title":"Default Headers","titles":["Static Files","Content Parsing"]},"2042":{"title":"Example Configuration","titles":["Static Files"]},"2043":{"title":"Related","titles":["Static Files"]},"2044":{"title":"Next Steps","titles":["Static Files"]},"2045":{"title":"PostgreSQL Stats","titles":[]},"2046":{"title":"Overview","titles":["PostgreSQL Stats"]},"2047":{"title":"Settings Reference","titles":["PostgreSQL Stats"]},"2048":{"title":"Available Endpoints","titles":["PostgreSQL Stats"]},"2049":{"title":"Routines Stats (/stats/routines)","titles":["PostgreSQL Stats","Available Endpoints"]},"2050":{"title":"Tables Stats (/stats/tables)","titles":["PostgreSQL Stats","Available Endpoints"]},"2051":{"title":"Indexes Stats (/stats/indexes)","titles":["PostgreSQL Stats","Available Endpoints"]},"2052":{"title":"Activity (/stats/activity)","titles":["PostgreSQL Stats","Available Endpoints"]},"2053":{"title":"Output Formats","titles":["PostgreSQL Stats"]},"2054":{"title":"HTML Format (Default)","titles":["PostgreSQL Stats","Output Formats"]},"2055":{"title":"JSON Format","titles":["PostgreSQL Stats","Output Formats"]},"2056":{"title":"Per-Request Format Override","titles":["PostgreSQL Stats","Output Formats"]},"2057":{"title":"Security","titles":["PostgreSQL Stats"]},"2058":{"title":"Require Authentication","titles":["PostgreSQL Stats","Security"]},"2059":{"title":"Role-Based Access","titles":["PostgreSQL Stats","Security"]},"2060":{"title":"Caching","titles":["PostgreSQL Stats"]},"2061":{"title":"Rate Limiting","titles":["PostgreSQL Stats"]},"2062":{"title":"Schema Filtering","titles":["PostgreSQL Stats"]},"2063":{"title":"Using a Different Connection","titles":["PostgreSQL Stats"]},"2064":{"title":"Custom Paths","titles":["PostgreSQL Stats"]},"2065":{"title":"Example Configurations","titles":["PostgreSQL Stats"]},"2066":{"title":"Development (Open Access)","titles":["PostgreSQL Stats","Example Configurations"]},"2067":{"title":"Production (Secured)","titles":["PostgreSQL Stats","Example Configurations"]},"2068":{"title":"Monitoring Integration","titles":["PostgreSQL Stats","Example Configurations"]},"2069":{"title":"Limited Schema Access","titles":["PostgreSQL Stats","Example Configurations"]},"2070":{"title":"Related","titles":["PostgreSQL Stats"]},"2071":{"title":"Next Steps","titles":["PostgreSQL Stats"]},"2072":{"title":"Table Format Options","titles":[]},"2073":{"title":"Overview","titles":["Table Format Options"]},"2074":{"title":"General Settings","titles":["Table Format Options"]},"2075":{"title":"HTML Table Handler","titles":["Table Format Options"]},"2076":{"title":"Example","titles":["Table Format Options","HTML Table Handler"]},"2077":{"title":"Excel Table Handler","titles":["Table Format Options"]},"2078":{"title":"Example","titles":["Table Format Options","Excel Table Handler"]},"2079":{"title":"Per-Endpoint Overrides","titles":["Table Format Options","Excel Table Handler"]},"2080":{"title":"Complete Example","titles":["Table Format Options"]},"2081":{"title":"Related","titles":["Table Format Options"]},"2082":{"title":"Next Steps","titles":["Table Format Options"]},"2083":{"title":"See Also","titles":["Table Format Options"]},"2084":{"title":"Thread Pool","titles":[]},"2085":{"title":"Overview","titles":["Thread Pool"]},"2086":{"title":"Settings Reference","titles":["Thread Pool"]},"2087":{"title":"Worker Threads vs Completion Port Threads","titles":["Thread Pool"]},"2088":{"title":"When to Configure","titles":["Thread Pool"]},"2089":{"title":"Example Configuration","titles":["Thread Pool"]},"2090":{"title":"Related","titles":["Thread Pool"]},"2091":{"title":"Next Steps","titles":["Thread Pool"]},"2092":{"title":"Test Runner","titles":[]},"2093":{"title":"Overview","titles":["Test Runner"]},"2094":{"title":"Settings","titles":["Test Runner"]},"2095":{"title":"FilePattern","titles":["Test Runner"]},"2096":{"title":"Filter","titles":["Test Runner"]},"2097":{"title":"Tag and ExcludeTag","titles":["Test Runner"]},"2098":{"title":"ConnectionName","titles":["Test Runner"]},"2099":{"title":"MaxParallelism","titles":["Test Runner"]},"2100":{"title":"FailFast","titles":["Test Runner"]},"2101":{"title":"PerTestTimeout","titles":["Test Runner"]},"2102":{"title":"JUnitOutput","titles":["Test Runner"]},"2103":{"title":"Keep","titles":["Test Runner"]},"2104":{"title":"DetailedReport","titles":["Test Runner"]},"2105":{"title":"AllowEmpty","titles":["Test Runner"]},"2106":{"title":"Watch mode","titles":["Test Runner"]},"2107":{"title":"Coverage and CoverageThreshold","titles":["Test Runner"]},"2108":{"title":"LoggerName","titles":["Test Runner"]},"2109":{"title":"ResponseTempTable","titles":["Test Runner"]},"2110":{"title":"DebugTable — inspect responses after the run","titles":["Test Runner","ResponseTempTable"]},"2111":{"title":"Steps","titles":["Test Runner"]},"2112":{"title":"Setup and Teardown","titles":["Test Runner"]},"2113":{"title":"Exit codes","titles":["Test Runner"]},"2114":{"title":"Related","titles":["Test Runner"]},"2115":{"title":"Top-Level Settings","titles":[]},"2116":{"title":"Application Settings","titles":["Top-Level Settings"]},"2117":{"title":"Settings Reference","titles":["Top-Level Settings","Application Settings"]},"2118":{"title":"Urls Configuration","titles":["Top-Level Settings","Application Settings"]},"2119":{"title":"Startup Message Placeholders","titles":["Top-Level Settings","Application Settings"]},"2120":{"title":"Related","titles":["Top-Level Settings"]},"2121":{"title":"Next Steps","titles":["Top-Level Settings"]},"2122":{"title":"Upload Options","titles":[]},"2123":{"title":"Overview","titles":["Upload Options"]},"2124":{"title":"General Settings","titles":["Upload Options"]},"2125":{"title":"Upload Handlers Common Settings","titles":["Upload Options"]},"2126":{"title":"Large Object Handler","titles":["Upload Options"]},"2127":{"title":"File System Handler","titles":["Upload Options"]},"2128":{"title":"CSV Upload Handler","titles":["Upload Options"]},"2129":{"title":"CSV Row Command Parameters","titles":["Upload Options","CSV Upload Handler"]},"2130":{"title":"Excel Upload Handler","titles":["Upload Options"]},"2131":{"title":"Excel Row Command Parameters","titles":["Upload Options","Excel Upload Handler"]},"2132":{"title":"Complete Example","titles":["Upload Options"]},"2133":{"title":"Related","titles":["Upload Options"]},"2134":{"title":"Blog Posts","titles":["Upload Options"]},"2135":{"title":"Next Steps","titles":["Upload Options"]},"2136":{"title":"See Also","titles":["Upload Options"]},"2137":{"title":"Validation Options","titles":[]},"2138":{"title":"Overview","titles":["Validation Options"]},"2139":{"title":"Settings Reference","titles":["Validation Options"]},"2140":{"title":"Validation Types","titles":["Validation Options"]},"2141":{"title":"Rule Properties","titles":["Validation Options"]},"2142":{"title":"Default Rules","titles":["Validation Options"]},"2143":{"title":"Adding Custom Rules","titles":["Validation Options"]},"2144":{"title":"Regex Pattern Rule","titles":["Validation Options","Adding Custom Rules"]},"2145":{"title":"Length Validation Rules","titles":["Validation Options","Adding Custom Rules"]},"2146":{"title":"Complete Example","titles":["Validation Options"]},"2147":{"title":"Usage with Annotations","titles":["Validation Options"]},"2148":{"title":"Programmatic Configuration","titles":["Validation Options"]},"2149":{"title":"Behavior","titles":["Validation Options"]},"2150":{"title":"Related","titles":["Validation Options"]},"2151":{"title":"Next Steps","titles":["Validation Options"]},"2152":{"title":"See Also","titles":["Validation Options"]},"2153":{"title":"Watch Mode","titles":[]},"2154":{"title":"Overview","titles":["Watch Mode"]},"2155":{"title":"Enabled","titles":["Watch Mode"]},"2156":{"title":"DatabasePollingInterval","titles":["Watch Mode"]},"2157":{"title":"Server watch behavior","titles":["Watch Mode"]},"2158":{"title":"Test watch behavior","titles":["Watch Mode"]},"2159":{"title":"Related","titles":["Watch Mode"]},"2160":{"title":"Examples","titles":[]},"2161":{"title":"Prerequisites","titles":["Examples"]},"2162":{"title":"Getting Started","titles":["Examples"]},"2163":{"title":"Available Examples","titles":["Examples"]},"2164":{"title":"Function-Based Examples (RoutineSource)","titles":["Examples","Available Examples"]},"2165":{"title":"SQL File Examples (SqlFileSource)","titles":["Examples","Available Examples"]},"2166":{"title":"MCP Server (SqlFileSource)","titles":["Examples","Available Examples"]},"2167":{"title":"SQL Test Runner","titles":["Examples","Available Examples"]},"2168":{"title":"Available Commands","titles":["Examples"]},"2169":{"title":"Next Steps","titles":["Examples"]},"2170":{"title":"Authentication","titles":[]},"2171":{"title":"The big picture","titles":["Authentication"]},"2172":{"title":"Step 1: Configure an authentication scheme","titles":["Authentication"]},"2173":{"title":"Cookie (the simplest)","titles":["Authentication","Step 1: Configure an authentication scheme"]},"2174":{"title":"Bearer token","titles":["Authentication","Step 1: Configure an authentication scheme"]},"2175":{"title":"JWT","titles":["Authentication","Step 1: Configure an authentication scheme"]},"2176":{"title":"Step 2: Write a login endpoint","titles":["Authentication"]},"2177":{"title":"Verifying the password","titles":["Authentication","Step 2: Write a login endpoint"]},"2178":{"title":"Choosing a scheme","titles":["Authentication","Step 2: Write a login endpoint"]},"2179":{"title":"How claims work","titles":["Authentication"]},"2180":{"title":"Claims are just the login columns","titles":["Authentication","How claims work"]},"2181":{"title":"Identity claims","titles":["Authentication","How claims work"]},"2182":{"title":"Accessing claims in your endpoints","titles":["Authentication"]},"2183":{"title":"As function parameters","titles":["Authentication","Accessing claims in your endpoints"]},"2184":{"title":"As PostgreSQL context variables","titles":["Authentication","Accessing claims in your endpoints"]},"2185":{"title":"As template placeholders","titles":["Authentication","Accessing claims in your endpoints"]},"2186":{"title":"Logging out","titles":["Authentication"]},"2187":{"title":"A complete worked example","titles":["Authentication"]},"2188":{"title":"See it in the examples","titles":["Authentication"]},"2189":{"title":"Related","titles":["Authentication"]},"2190":{"title":"Comment Annotations Guide","titles":[]},"2191":{"title":"How Annotations Work","titles":["Comment Annotations Guide"]},"2192":{"title":"Basic Rules","titles":["Comment Annotations Guide","How Annotations Work"]},"2193":{"title":"Optional @ Prefix","titles":["Comment Annotations Guide","How Annotations Work"]},"2194":{"title":"Simple Example","titles":["Comment Annotations Guide","How Annotations Work"]},"2195":{"title":"The HTTP Annotation","titles":["Comment Annotations Guide"]},"2196":{"title":"Syntax Variations","titles":["Comment Annotations Guide","The HTTP Annotation"]},"2197":{"title":"Default Behavior","titles":["Comment Annotations Guide","The HTTP Annotation"]},"2198":{"title":"Authorization Annotations","titles":["Comment Annotations Guide"]},"2199":{"title":"Require Authentication","titles":["Comment Annotations Guide","Authorization Annotations"]},"2200":{"title":"Role List Syntax","titles":["Comment Annotations Guide","Authorization Annotations"]},"2201":{"title":"Allow Anonymous Access","titles":["Comment Annotations Guide","Authorization Annotations"]},"2202":{"title":"Response Headers","titles":["Comment Annotations Guide"]},"2203":{"title":"Request Parameter Configuration","titles":["Comment Annotations Guide"]},"2204":{"title":"Query String vs Body","titles":["Comment Annotations Guide","Request Parameter Configuration"]},"2205":{"title":"Caching","titles":["Comment Annotations Guide"]},"2206":{"title":"Raw Output Mode","titles":["Comment Annotations Guide"]},"2207":{"title":"Combining Annotations","titles":["Comment Annotations Guide"]},"2208":{"title":"Debugging Annotations","titles":["Comment Annotations Guide"]},"2209":{"title":"Comments Mode","titles":["Comment Annotations Guide"]},"2210":{"title":"Time/Duration Formats","titles":["Comment Annotations Guide"]},"2211":{"title":"Quick Reference","titles":["Comment Annotations Guide","Time/Duration Formats"]},"2212":{"title":"Examples","titles":["Comment Annotations Guide","Time/Duration Formats"]},"2213":{"title":"Common Patterns","titles":["Comment Annotations Guide"]},"2214":{"title":"Public Read, Protected Write","titles":["Comment Annotations Guide","Common Patterns"]},"2215":{"title":"API Versioning with Custom Paths","titles":["Comment Annotations Guide","Common Patterns"]},"2216":{"title":"Secure Sensitive Operations","titles":["Comment Annotations Guide","Common Patterns"]},"2217":{"title":"Nested JSON for Composite Types","titles":["Comment Annotations Guide","Common Patterns"]},"2218":{"title":"Rate Limiting","titles":["Comment Annotations Guide","Common Patterns"]},"2219":{"title":"Next Steps","titles":["Comment Annotations Guide"]},"2220":{"title":"Changelog","titles":[]},"2221":{"title":"Version 3.19 (Latest)","titles":["Changelog"]},"2222":{"title":"Version 3.18","titles":["Changelog"]},"2223":{"title":"Version 3.17","titles":["Changelog"]},"2224":{"title":"Version 3.16","titles":["Changelog"]},"2225":{"title":"Version 3.15","titles":["Changelog"]},"2226":{"title":"Version 3.14","titles":["Changelog"]},"2227":{"title":"Version 3.13","titles":["Changelog"]},"2228":{"title":"Version 3.12","titles":["Changelog"]},"2229":{"title":"Version 3.11","titles":["Changelog"]},"2230":{"title":"Version 3.10","titles":["Changelog"]},"2231":{"title":"Version 3.9","titles":["Changelog"]},"2232":{"title":"Version 3.8","titles":["Changelog"]},"2233":{"title":"Version 3.7","titles":["Changelog"]},"2234":{"title":"Version 3.6","titles":["Changelog"]},"2235":{"title":"Version 3.5","titles":["Changelog"]},"2236":{"title":"Version 3.4","titles":["Changelog"]},"2237":{"title":"Version 3.3","titles":["Changelog"]},"2238":{"title":"Version 3.2","titles":["Changelog"]},"2239":{"title":"Version 3.1","titles":["Changelog"]},"2240":{"title":"Version 3.0","titles":["Changelog"]},"2241":{"title":"Changelog v3.0.1 (2025-11-28)","titles":[]},"2242":{"title":"Version","titles":["Changelog v3.0.1 (2025-11-28)"]},"2243":{"title":"Changelog v3.0.0 (2025-11-27)","titles":[]},"2244":{"title":"Version","titles":["Changelog v3.0.0 (2025-11-27)"]},"2245":{"title":"Docker JIT Version","titles":["Changelog v3.0.0 (2025-11-27)","Version"]},"2246":{"title":".NET 10 Target Framework","titles":["Changelog v3.0.0 (2025-11-27)","Version"]},"2247":{"title":"TsClient (Code Generation) Improvements","titles":["Changelog v3.0.0 (2025-11-27)","Version"]},"2248":{"title":"Info Events Streaming Changes (Server-Sent Events)","titles":["Changelog v3.0.0 (2025-11-27)","Version"]},"2249":{"title":"Name refactor: changed all "Info Events" related names to "SSE" to better reflect their purpose.","titles":["Changelog v3.0.0 (2025-11-27)","Version","Info Events Streaming Changes (Server-Sent Events)"]},"2250":{"title":"Removed Self scope level","titles":["Changelog v3.0.0 (2025-11-27)","Version","Info Events Streaming Changes (Server-Sent Events)"]},"2251":{"title":"New Feature: Support for custom notice level","titles":["Changelog v3.0.0 (2025-11-27)","Version","Info Events Streaming Changes (Server-Sent Events)"]},"2252":{"title":"Other Comment Annotations Changes","titles":["Changelog v3.0.0 (2025-11-27)","Version","Info Events Streaming Changes (Server-Sent Events)"]},"2253":{"title":"Timeout Handling","titles":["Changelog v3.0.0 (2025-11-27)","Version"]},"2254":{"title":"OpenAPI 3.0 Support","titles":["Changelog v3.0.0 (2025-11-27)","Version"]},"2255":{"title":"Error Handling Improvements","titles":["Changelog v3.0.0 (2025-11-27)","Version"]},"2256":{"title":"Metadata Query Improvements","titles":["Changelog v3.0.0 (2025-11-27)","Version"]},"2257":{"title":"Rate Limiter","titles":["Changelog v3.0.0 (2025-11-27)","Version"]},"2258":{"title":"Other Changes and Fixes","titles":["Changelog v3.0.0 (2025-11-27)","Version"]},"2259":{"title":"Login Endpoint Changes","titles":["Changelog v3.0.0 (2025-11-27)","Version","Other Changes and Fixes"]},"2260":{"title":"Changelog v3.1.1 (2025-12-15)","titles":[]},"2261":{"title":"Version","titles":["Changelog v3.1.1 (2025-12-15)"]},"2262":{"title":"Changelog v3.1.0 (2025-12-13)","titles":[]},"2263":{"title":"Version","titles":["Changelog v3.1.0 (2025-12-13)"]},"2264":{"title":"Http Types","titles":["Changelog v3.1.0 (2025-12-13)","Version"]},"2265":{"title":"Routine Caching Improvements","titles":["Changelog v3.1.0 (2025-12-13)","Version"]},"2266":{"title":"Multi-Host Connection Support","titles":["Changelog v3.1.0 (2025-12-13)","Version"]},"2267":{"title":"Other Changes and Fixes","titles":["Changelog v3.1.0 (2025-12-13)","Version"]},"2268":{"title":"Changelog v3.1.2 (2025-12-20)","titles":[]},"2269":{"title":"Version","titles":["Changelog v3.1.2 (2025-12-20)"]},"2270":{"title":"Performance: SIMD-Accelerated String Processing","titles":["Changelog v3.1.2 (2025-12-20)","Version"]},"2271":{"title":"Consistent JSON Error Responses","titles":["Changelog v3.1.2 (2025-12-20)","Version"]},"2272":{"title":"EnvFile Configuration Option","titles":["Changelog v3.1.2 (2025-12-20)","Version"]},"2273":{"title":"TsClient: Configurable Error Expression and Type","titles":["Changelog v3.1.2 (2025-12-20)","Version"]},"2274":{"title":"HybridCache Support","titles":["Changelog v3.1.2 (2025-12-20)","Version"]},"2275":{"title":"Changelog v3.1.3 (2025-12-21)","titles":[]},"2276":{"title":"Version","titles":["Changelog v3.1.3 (2025-12-21)"]},"2277":{"title":"Path Parameters Support","titles":["Changelog v3.1.3 (2025-12-21)","Version"]},"2278":{"title":"TsClient Improvements","titles":["Changelog v3.1.3 (2025-12-21)","Version"]},"2279":{"title":"HybridCache Configuration Keys Renamed","titles":["Changelog v3.1.3 (2025-12-21)","Version"]},"2280":{"title":"Changelog v3.10.0 (2026-02-25)","titles":[]},"2281":{"title":"Version","titles":["Changelog v3.10.0 (2026-02-25)"]},"2282":{"title":"New Feature: Resolved Parameter Expressions","titles":["Changelog v3.10.0 (2026-02-25)","Version"]},"2283":{"title":"How It Works","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: Resolved Parameter Expressions"]},"2284":{"title":"Behavior","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: Resolved Parameter Expressions"]},"2285":{"title":"Multiple Resolved Parameters","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: Resolved Parameter Expressions"]},"2286":{"title":"Resolved Parameters in URL, Headers, and Body","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: Resolved Parameter Expressions"]},"2287":{"title":"New Feature: HTTP Client Type Retry Logic","titles":["Changelog v3.10.0 (2026-02-25)","Version"]},"2288":{"title":"Syntax","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: HTTP Client Type Retry Logic"]},"2289":{"title":"Behavior","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: HTTP Client Type Retry Logic"]},"2290":{"title":"Example","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: HTTP Client Type Retry Logic"]},"2291":{"title":"New Feature: Data Protection Encrypt/Decrypt Annotations","titles":["Changelog v3.10.0 (2026-02-25)","Version"]},"2292":{"title":"Encrypt Parameters","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: Data Protection Encrypt/Decrypt Annotations"]},"2293":{"title":"Decrypt Result Columns","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: Data Protection Encrypt/Decrypt Annotations"]},"2294":{"title":"Full Roundtrip Example","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: Data Protection Encrypt/Decrypt Annotations"]},"2295":{"title":"Annotation Aliases","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: Data Protection Encrypt/Decrypt Annotations"]},"2296":{"title":"Behavior Notes","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: Data Protection Encrypt/Decrypt Annotations"]},"2297":{"title":"Key Management","titles":["Changelog v3.10.0 (2026-02-25)","Version","New Feature: Data Protection Encrypt/Decrypt Annotations"]},"2298":{"title":"Changelog v3.11.0 (2026-03-10)","titles":[]},"2299":{"title":"Version","titles":["Changelog v3.11.0 (2026-03-10)"]},"2300":{"title":"New Feature: proxy_out Annotation (Post-Execution Proxy)","titles":["Changelog v3.11.0 (2026-03-10)","Version"]},"2301":{"title":"Syntax","titles":["Changelog v3.11.0 (2026-03-10)","Version","New Feature: proxy_out Annotation (Post-Execution Proxy)"]},"2302":{"title":"How It Works","titles":["Changelog v3.11.0 (2026-03-10)","Version","New Feature: proxy_out Annotation (Post-Execution Proxy)"]},"2303":{"title":"Basic Usage","titles":["Changelog v3.11.0 (2026-03-10)","Version","New Feature: proxy_out Annotation (Post-Execution Proxy)"]},"2304":{"title":"Query String Forwarding","titles":["Changelog v3.11.0 (2026-03-10)","Version","New Feature: proxy_out Annotation (Post-Execution Proxy)"]},"2305":{"title":"HTTP Method Override","titles":["Changelog v3.11.0 (2026-03-10)","Version","New Feature: proxy_out Annotation (Post-Execution Proxy)"]},"2306":{"title":"Custom Host","titles":["Changelog v3.11.0 (2026-03-10)","Version","New Feature: proxy_out Annotation (Post-Execution Proxy)"]},"2307":{"title":"Error Handling","titles":["Changelog v3.11.0 (2026-03-10)","Version","New Feature: proxy_out Annotation (Post-Execution Proxy)"]},"2308":{"title":"Configuration","titles":["Changelog v3.11.0 (2026-03-10)","Version","New Feature: proxy_out Annotation (Post-Execution Proxy)"]},"2309":{"title":"Performance","titles":["Changelog v3.11.0 (2026-03-10)","Version","New Feature: proxy_out Annotation (Post-Execution Proxy)"]},"2310":{"title":"TsClient: proxy_out Endpoint Support","titles":["Changelog v3.11.0 (2026-03-10)","Version"]},"2311":{"title":"Changelog v3.11.1 (2026-03-13)","titles":[]},"2312":{"title":"Version","titles":["Changelog v3.11.1 (2026-03-13)"]},"2313":{"title":"TsClient: proxy Passthrough Endpoint Support","titles":["Changelog v3.11.1 (2026-03-13)","Version"]},"2314":{"title":"authorize Annotation Now Matches User ID and User Name Claims","titles":["Changelog v3.11.1 (2026-03-13)","Version"]},"2315":{"title":"Changelog v3.12.0 (2026-03-23)","titles":[]},"2316":{"title":"Version","titles":["Changelog v3.12.0 (2026-03-23)"]},"2317":{"title":"New Endpoint Source Plugin: NpgsqlRest.SqlFileSource","titles":["Changelog v3.12.0 (2026-03-23)","Version"]},"2318":{"title":"How It Works","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2319":{"title":"Single-Command Files","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2320":{"title":"Multi-Command Files","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2321":{"title":"Parameters","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2322":{"title":"Virtual Parameters","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2323":{"title":"Comments and Annotations","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2324":{"title":"Wire Protocol Introspection","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2325":{"title":"Custom / Composite Type Support","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2326":{"title":"Unnamed and Duplicate Columns","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2327":{"title":"URL Path Derivation","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2328":{"title":"Error Handling","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2329":{"title":"Feature Parity","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2330":{"title":"Configuration Reference","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Endpoint Source Plugin: NpgsqlRest.SqlFileSource"]},"2331":{"title":"New Annotations","titles":["Changelog v3.12.0 (2026-03-23)","Version"]},"2332":{"title":"New Core Annotation: @param / @parameter — Rename and Retype Parameters","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations"]},"2333":{"title":"@param Default Values for SQL File Parameters","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations"]},"2334":{"title":"@param Rename Validation","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations"]},"2335":{"title":"@param Default Value: = Alias for default","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations"]},"2336":{"title":"@param Type Hints for SQL File Describe","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations"]},"2337":{"title":"New Positional Annotation: @returns — Skip Describe and Declare Return Type","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations"]},"2338":{"title":"New Annotation: @void — Force Void Response","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations"]},"2339":{"title":"New Comment Annotation: @single","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations"]},"2340":{"title":"Positional @result Annotation for Multi-Command Files","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations"]},"2341":{"title":"SkipNonQueryCommands Setting and @skip Annotation","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations"]},"2342":{"title":"SkipNonQueryCommands (default: true)","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations","SkipNonQueryCommands Setting and @skip Annotation"]},"2343":{"title":"@skip Annotation (aliases: @skip_result, @no_result)","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations","SkipNonQueryCommands Setting and @skip Annotation"]},"2344":{"title":"New Core Annotation: @internal / @internal_only","titles":["Changelog v3.12.0 (2026-03-23)","Version","New Annotations"]},"2345":{"title":"HTTP Custom Types & Self-Referencing Calls","titles":["Changelog v3.12.0 (2026-03-23)","Version"]},"2346":{"title":"Self-Referencing Calls: Relative Path Support for Proxy and HTTP Client Types","titles":["Changelog v3.12.0 (2026-03-23)","Version","HTTP Custom Types & Self-Referencing Calls"]},"2347":{"title":"Internal Self-Call Optimization: Zero HTTP Overhead","titles":["Changelog v3.12.0 (2026-03-23)","Version","HTTP Custom Types & Self-Referencing Calls"]},"2348":{"title":"Composite Type Parameters in SQL Files — No SQL Rewriting","titles":["Changelog v3.12.0 (2026-03-23)","Version","HTTP Custom Types & Self-Referencing Calls"]},"2349":{"title":"Configuration Changes","titles":["Changelog v3.12.0 (2026-03-23)","Version"]},"2350":{"title":"RoutineSource: Enabled Configuration Option","titles":["Changelog v3.12.0 (2026-03-23)","Version","Configuration Changes"]},"2351":{"title":"CrudSource Disabled by Default","titles":["Changelog v3.12.0 (2026-03-23)","Version","Configuration Changes"]},"2352":{"title":"CrudSource No Longer Blocks SqlFileSource","titles":["Changelog v3.12.0 (2026-03-23)","Version","Configuration Changes"]},"2353":{"title":"DataProtection Disabled by Default","titles":["Changelog v3.12.0 (2026-03-23)","Version","Configuration Changes"]},"2354":{"title":"SqlFileSource:LogCommandText Setting","titles":["Changelog v3.12.0 (2026-03-23)","Version","Configuration Changes"]},"2355":{"title":"TsClient Improvements","titles":["Changelog v3.12.0 (2026-03-23)","Version"]},"2356":{"title":"TsClient: Composite Type Support for SQL Files","titles":["Changelog v3.12.0 (2026-03-23)","Version","TsClient Improvements"]},"2357":{"title":"TsClient: Multi-Command SQL File Support","titles":["Changelog v3.12.0 (2026-03-23)","Version","TsClient Improvements"]},"2358":{"title":"TsClient: SQL File Comment Headers","titles":["Changelog v3.12.0 (2026-03-23)","Version","TsClient Improvements"]},"2359":{"title":"TsClient: Type Alias Extraction for Error and Result Types","titles":["Changelog v3.12.0 (2026-03-23)","Version","TsClient Improvements"]},"2360":{"title":"TsClient: Fix SkipTypes Generating Invalid JavaScript","titles":["Changelog v3.12.0 (2026-03-23)","Version","TsClient Improvements"]},"2361":{"title":"Bug Fixes & Log Improvements","titles":["Changelog v3.12.0 (2026-03-23)","Version"]},"2362":{"title":"Graceful Shutdown with Active SSE Connections","titles":["Changelog v3.12.0 (2026-03-23)","Version","Bug Fixes & Log Improvements"]},"2363":{"title":"Downgrade Basic Auth Missing Header Log to Debug","titles":["Changelog v3.12.0 (2026-03-23)","Version","Bug Fixes & Log Improvements"]},"2364":{"title":"Improved Log Level Classification","titles":["Changelog v3.12.0 (2026-03-23)","Version","Bug Fixes & Log Improvements"]},"2365":{"title":"Fix @separator and @new_line Annotations Not Working with @ Prefix","titles":["Changelog v3.12.0 (2026-03-23)","Version","Bug Fixes & Log Improvements"]},"2366":{"title":"Aggregated Comment Annotation Logging","titles":["Changelog v3.12.0 (2026-03-23)","Version","Bug Fixes & Log Improvements"]},"2367":{"title":"Fix: OnlyWithHttpTag Mode Skips Files Before Describe","titles":["Changelog v3.12.0 (2026-03-23)","Version","Bug Fixes & Log Improvements"]},"2368":{"title":"Internal & Breaking Changes","titles":["Changelog v3.12.0 (2026-03-23)","Version"]},"2369":{"title":"Interface Refactoring: IEndpointSource / IRoutineSource","titles":["Changelog v3.12.0 (2026-03-23)","Version","Internal & Breaking Changes"]},"2370":{"title":"Composite Type Cache: Public API","titles":["Changelog v3.12.0 (2026-03-23)","Version","Internal & Breaking Changes"]},"2371":{"title":"Glob Pattern Enhancement: ** Recursive Matching","titles":["Changelog v3.12.0 (2026-03-23)","Version","Internal & Breaking Changes"]},"2372":{"title":"Internal Changes","titles":["Changelog v3.12.0 (2026-03-23)","Version","Internal & Breaking Changes"]},"2373":{"title":"Changelog v3.13.0 (2026-04-24)","titles":[]},"2374":{"title":"Version","titles":["Changelog v3.13.0 (2026-04-24)"]},"2375":{"title":"New: Auth Schemes (Named Additional Authentication Schemes)","titles":["Changelog v3.13.0 (2026-04-24)","Version"]},"2376":{"title":"Breaking: legacy auth time-integer fields removed","titles":["Changelog v3.13.0 (2026-04-24)","Version"]},"2377":{"title":"New: interval notation for auth time fields","titles":["Changelog v3.13.0 (2026-04-24)","Version"]},"2378":{"title":"Breaking: RateLimiterOptions:Policies is now a dict, not an array","titles":["Changelog v3.13.0 (2026-04-24)","Version"]},"2379":{"title":"New: Per-User Rate Limiting (Partition on a policy)","titles":["Changelog v3.13.0 (2026-04-24)","Version"]},"2380":{"title":"New: Caching Profiles (CacheOptions.Profiles + @cache_profile annotation)","titles":["Changelog v3.13.0 (2026-04-24)","Version"]},"2381":{"title":"Never-expiring (infinite) cache entries","titles":["Changelog v3.13.0 (2026-04-24)","Version","New: Caching Profiles (CacheOptions.Profiles + @cache_profile annotation)"]},"2382":{"title":"New: WrapInTransaction Option (Connection Pooler Compatibility)","titles":["Changelog v3.13.0 (2026-04-24)","Version"]},"2383":{"title":"New: BeforeRoutineCommands Option","titles":["Changelog v3.13.0 (2026-04-24)","Version"]},"2384":{"title":"Fix: 400 Bad Request responses are no longer silent in logs","titles":["Changelog v3.13.0 (2026-04-24)","Version"]},"2385":{"title":"Docker Images: Ubuntu 26.04 LTS Base","titles":["Changelog v3.13.0 (2026-04-24)","Version"]},"2386":{"title":"NuGet Package Upgrades","titles":["Changelog v3.13.0 (2026-04-24)","Version"]},"2387":{"title":"Changelog v3.14.0 (2026-05-09)","titles":[]},"2388":{"title":"Version","titles":["Changelog v3.14.0 (2026-05-09)"]},"2389":{"title":"Removed: auto-CRUD endpoint generation from the standalone client","titles":["Changelog v3.14.0 (2026-05-09)"]},"2390":{"title":"What\'s new","titles":["Changelog v3.14.0 (2026-05-09)"]},"2391":{"title":"Two new SSE annotations: @sse_publish and @sse_subscribe","titles":["Changelog v3.14.0 (2026-05-09)","What\'s new"]},"2392":{"title":"Warning when a RAISE looks like a missed @sse_publish","titles":["Changelog v3.14.0 (2026-05-09)","What\'s new"]},"2393":{"title":"Reliable SSE connection handshake","titles":["Changelog v3.14.0 (2026-05-09)","What\'s new"]},"2394":{"title":"Startup error when claim-mapped parameters use a non-text type","titles":["Changelog v3.14.0 (2026-05-09)","What\'s new"]},"2395":{"title":"Warning when a request value is overridden by claim auto-bind","titles":["Changelog v3.14.0 (2026-05-09)","What\'s new"]},"2396":{"title":"Performance","titles":["Changelog v3.14.0 (2026-05-09)"]},"2397":{"title":"Lower-allocation JSON conversion for arrays and composites","titles":["Changelog v3.14.0 (2026-05-09)","Performance"]},"2398":{"title":"Estimated impact on the","titles":["Changelog v3.14.0 (2026-05-09)","Performance","Lower-allocation JSON conversion for arrays and composites"]},"2399":{"title":"UTF-8 literals for JSON markup constants","titles":["Changelog v3.14.0 (2026-05-09)","Performance"]},"2400":{"title":"Tighter PipeWriter writes","titles":["Changelog v3.14.0 (2026-05-09)","Performance"]},"2401":{"title":"Hardening (silent-failure fixes)","titles":["Changelog v3.14.0 (2026-05-09)"]},"2402":{"title":"ArrayPool rent now in try/finally","titles":["Changelog v3.14.0 (2026-05-09)","Hardening (silent-failure fixes)"]},"2403":{"title":"Multi-command StringBuilder rentals always released","titles":["Changelog v3.14.0 (2026-05-09)","Hardening (silent-failure fixes)"]},"2404":{"title":"proxy_out buffer released on exception path","titles":["Changelog v3.14.0 (2026-05-09)","Hardening (silent-failure fixes)"]},"2405":{"title":"Column-decryption failures now logged at Trace","titles":["Changelog v3.14.0 (2026-05-09)","Hardening (silent-failure fixes)"]},"2406":{"title":"Configuration","titles":["Changelog v3.14.0 (2026-05-09)"]},"2407":{"title":"Test suite","titles":["Changelog v3.14.0 (2026-05-09)"]},"2408":{"title":"Changelog v3.15.1 (2026-05-11)","titles":[]},"2409":{"title":"Version","titles":["Changelog v3.15.1 (2026-05-11)"]},"2410":{"title":"Fix: named auth schemes are validated by Type, not by name","titles":["Changelog v3.15.1 (2026-05-11)"]},"2411":{"title":"Root cause","titles":["Changelog v3.15.1 (2026-05-11)","Fix: named auth schemes are validated by Type, not by name"]},"2412":{"title":"What changed","titles":["Changelog v3.15.1 (2026-05-11)","Fix: named auth schemes are validated by Type, not by name"]},"2413":{"title":"Behavior after the fix","titles":["Changelog v3.15.1 (2026-05-11)","Fix: named auth schemes are validated by Type, not by name"]},"2414":{"title":"Fix: --config and --validate CLI commands now honor ValidateConfigKeys mode","titles":["Changelog v3.15.1 (2026-05-11)"]},"2415":{"title":"What changed","titles":["Changelog v3.15.1 (2026-05-11)","Fix: --config and --validate CLI commands now honor ValidateConfigKeys mode"]},"2416":{"title":"Behavior after the fix","titles":["Changelog v3.15.1 (2026-05-11)","Fix: --config and --validate CLI commands now honor ValidateConfigKeys mode"]},"2417":{"title":"Tests","titles":["Changelog v3.15.1 (2026-05-11)"]},"2418":{"title":"Changelog v3.15.0","titles":[]},"2419":{"title":"Version","titles":["Changelog v3.15.0"]},"2420":{"title":"Fix: named cookie schemes now actually authenticate requests","titles":["Changelog v3.15.0"]},"2421":{"title":"Root cause","titles":["Changelog v3.15.0","Fix: named cookie schemes now actually authenticate requests"]},"2422":{"title":"What changed","titles":["Changelog v3.15.0","Fix: named cookie schemes now actually authenticate requests"]},"2423":{"title":"Behavior after the fix","titles":["Changelog v3.15.0","Fix: named cookie schemes now actually authenticate requests"]},"2424":{"title":"Cookie-precedence order when both are present","titles":["Changelog v3.15.0","Fix: named cookie schemes now actually authenticate requests"]},"2425":{"title":"Feature: CookieSameSite and CookieSecure config","titles":["Changelog v3.15.0"]},"2426":{"title":"Root-level (main cookie scheme)","titles":["Changelog v3.15.0","Feature: CookieSameSite and CookieSecure config"]},"2427":{"title":"Per-scheme override under Auth:Schemes","titles":["Changelog v3.15.0","Feature: CookieSameSite and CookieSecure config"]},"2428":{"title":"Validation and warnings","titles":["Changelog v3.15.0","Feature: CookieSameSite and CookieSecure config"]},"2429":{"title":"Cross-origin checklist for an external Web API setup","titles":["Changelog v3.15.0","Feature: CookieSameSite and CookieSecure config"]},"2430":{"title":"Feature: OpenAPI filtering for partner-facing documents","titles":["Changelog v3.15.0"]},"2431":{"title":"Config-level filters","titles":["Changelog v3.15.0","Feature: OpenAPI filtering for partner-facing documents"]},"2432":{"title":"Per-routine @openapi comment annotation","titles":["Changelog v3.15.0","Feature: OpenAPI filtering for partner-facing documents"]},"2433":{"title":"Filter order and composition","titles":["Changelog v3.15.0","Feature: OpenAPI filtering for partner-facing documents"]},"2434":{"title":"Partner-facing config example","titles":["Changelog v3.15.0","Feature: OpenAPI filtering for partner-facing documents"]},"2435":{"title":"Tests","titles":["Changelog v3.15.0"]},"2436":{"title":"Configuration summary","titles":["Changelog v3.15.0"]},"2437":{"title":"Out of scope","titles":["Changelog v3.15.0"]},"2438":{"title":"Partner-system integration readiness — what\'s still missing","titles":["Changelog v3.15.0"]},"2439":{"title":"Changelog v3.15.2 (2026-05-11)","titles":[]},"2440":{"title":"Version","titles":["Changelog v3.15.2 (2026-05-11)"]},"2441":{"title":"Fix: RateLimiterOptions:Policies validates by Type, not by name","titles":["Changelog v3.15.2 (2026-05-11)"]},"2442":{"title":"Root cause","titles":["Changelog v3.15.2 (2026-05-11)","Fix: RateLimiterOptions:Policies validates by Type, not by name"]},"2443":{"title":"What changed","titles":["Changelog v3.15.2 (2026-05-11)","Fix: RateLimiterOptions:Policies validates by Type, not by name"]},"2444":{"title":"Behavior after the fix","titles":["Changelog v3.15.2 (2026-05-11)","Fix: RateLimiterOptions:Policies validates by Type, not by name"]},"2445":{"title":"Fix: CacheOptions:Profiles validates by shape","titles":["Changelog v3.15.2 (2026-05-11)"]},"2446":{"title":"Improvement: ValidationOptions:Rules now validates rule bodies","titles":["Changelog v3.15.2 (2026-05-11)"]},"2447":{"title":"Tests","titles":["Changelog v3.15.2 (2026-05-11)"]},"2448":{"title":"Files touched","titles":["Changelog v3.15.2 (2026-05-11)"]},"2449":{"title":"Changelog v3.16.0 (2026-05-20)","titles":[]},"2450":{"title":"Version","titles":["Changelog v3.16.0 (2026-05-20)"]},"2451":{"title":"Fix: datetime parsers are now host-TZ-independent","titles":["Changelog v3.16.0 (2026-05-20)"]},"2452":{"title":"Why this was hidden so long","titles":["Changelog v3.16.0 (2026-05-20)"]},"2453":{"title":"TryParseDate left alone","titles":["Changelog v3.16.0 (2026-05-20)"]},"2454":{"title":"Breaking change","titles":["Changelog v3.16.0 (2026-05-20)"]},"2455":{"title":"Opt-out: NpgsqlRestOptions.JsonTimestampsAreUtc","titles":["Changelog v3.16.0 (2026-05-20)"]},"2456":{"title":"Tests","titles":["Changelog v3.16.0 (2026-05-20)"]},"2457":{"title":"Files touched","titles":["Changelog v3.16.0 (2026-05-20)"]},"2458":{"title":"Changelog v3.16.1 (2026-06-01)","titles":[]},"2459":{"title":"Version","titles":["Changelog v3.16.1 (2026-06-01)"]},"2460":{"title":"What changed","titles":["Changelog v3.16.1 (2026-06-01)"]},"2461":{"title":"IRoutineCache gains GetOrCreateAsync (additive)","titles":["Changelog v3.16.1 (2026-06-01)","What changed"]},"2462":{"title":"Stampede protection per backend","titles":["Changelog v3.16.1 (2026-06-01)","What changed"]},"2463":{"title":"Middleware paths","titles":["Changelog v3.16.1 (2026-06-01)","What changed"]},"2464":{"title":"Effect","titles":["Changelog v3.16.1 (2026-06-01)"]},"2465":{"title":"Test coverage (read this honestly)","titles":["Changelog v3.16.1 (2026-06-01)"]},"2466":{"title":"Known limitations","titles":["Changelog v3.16.1 (2026-06-01)"]},"2467":{"title":"Changelog v3.16.2 (2026-06-02)","titles":[]},"2468":{"title":"Version","titles":["Changelog v3.16.2 (2026-06-02)"]},"2469":{"title":"What changed","titles":["Changelog v3.16.2 (2026-06-02)"]},"2470":{"title":"Per-policy StatusCode / StatusMessage overrides","titles":["Changelog v3.16.2 (2026-06-02)","What changed"]},"2471":{"title":"New ready-to-use login_throttle default policy","titles":["Changelog v3.16.2 (2026-06-02)","What changed"]},"2472":{"title":"Test coverage","titles":["Changelog v3.16.2 (2026-06-02)"]},"2473":{"title":"Changelog v3.16.3 (2026-06-03)","titles":[]},"2474":{"title":"Version","titles":["Changelog v3.16.3 (2026-06-03)"]},"2475":{"title":"What changed","titles":["Changelog v3.16.3 (2026-06-03)"]},"2476":{"title":"AvailableEnvVars under StaticFiles:ParseContentOptions","titles":["Changelog v3.16.3 (2026-06-03)","What changed"]},"2477":{"title":"Security note","titles":["Changelog v3.16.3 (2026-06-03)","What changed"]},"2478":{"title":"Changelog v3.17.0","titles":[]},"2479":{"title":"Version","titles":["Changelog v3.17.0"]},"2480":{"title":"New Features","titles":["Changelog v3.17.0"]},"2481":{"title":"MCP (Model Context Protocol) server — new NpgsqlRest.Mcp plugin","titles":["Changelog v3.17.0","New Features"]},"2482":{"title":"Plugin extension points on RoutineEndpoint","titles":["Changelog v3.17.0","New Features"]},"2483":{"title":"{name} annotation substitution can resolve allowlisted environment variables","titles":["Changelog v3.17.0","New Features"]},"2484":{"title":"TsClient: ExportTypes — emit request/response interfaces with the export keyword","titles":["Changelog v3.17.0","New Features"]},"2485":{"title":"Breaking Changes","titles":["Changelog v3.17.0"]},"2486":{"title":"⚠️ Safer configuration defaults: CORS credentials, passkey requirements, connection testing","titles":["Changelog v3.17.0","Breaking Changes"]},"2487":{"title":"⚠️ OpenAPI annotation handling moved out of core (C# API only)","titles":["Changelog v3.17.0","Breaking Changes"]},"2488":{"title":"Fixes","titles":["Changelog v3.17.0"]},"2489":{"title":"Internal-only endpoints are excluded from generated client artifacts and API docs","titles":["Changelog v3.17.0","Fixes"]},"2490":{"title":"🔴 Security: SSE scope hints were not enforced — hint-scoped events were delivered to every subscriber","titles":["Changelog v3.17.0","Fixes"]},"2491":{"title":"Malformed JSON request body now returns 400 Bad Request (was 404 Not Found)","titles":["Changelog v3.17.0","Fixes"]},"2492":{"title":"Passkey/WebAuthn diagnostics: CBOR decode failures are no longer silent","titles":["Changelog v3.17.0","Fixes"]},"2493":{"title":"{name} parameter-value placeholders: case-insensitive matching + typo warning","titles":["Changelog v3.17.0","Fixes"]},"2494":{"title":"Bare @cached (no parameter list) used only the routine name as the cache key","titles":["Changelog v3.17.0","Fixes"]},"2495":{"title":"HybridCache Cache key contains invalid content on nullable cached params","titles":["Changelog v3.17.0","Fixes"]},"2496":{"title":"JSON command parameters accept json, jsonb, or text","titles":["Changelog v3.17.0","Fixes"]},"2497":{"title":"Optional {NAME} and required {!NAME} environment-variable placeholders","titles":["Changelog v3.17.0","Fixes"]},"2498":{"title":"Tests","titles":["Changelog v3.17.0"]},"2499":{"title":"Changelog v3.18.0","titles":[]},"2500":{"title":"Version","titles":["Changelog v3.18.0"]},"2501":{"title":"New Features","titles":["Changelog v3.18.0"]},"2502":{"title":"HTTP Custom Type response caching — @cache directive","titles":["Changelog v3.18.0","New Features"]},"2503":{"title":"Fixes","titles":["Changelog v3.18.0"]},"2504":{"title":"HTTP Custom Type request fired once per composite field on database-function endpoints","titles":["Changelog v3.18.0","Fixes"]},"2505":{"title":"HTTP type directives after the headers were silently ignored","titles":["Changelog v3.18.0","Fixes"]},"2506":{"title":"Tests","titles":["Changelog v3.18.0"]},"2507":{"title":"Changelog v3.18.1","titles":[]},"2508":{"title":"Version","titles":["Changelog v3.18.1"]},"2509":{"title":"What changed","titles":["Changelog v3.18.1"]},"2510":{"title":"Why","titles":["Changelog v3.18.1","What changed"]},"2511":{"title":"Behavior change to note","titles":["Changelog v3.18.1","What changed"]},"2512":{"title":"Notes","titles":["Changelog v3.18.1","What changed"]},"2513":{"title":"Tests","titles":["Changelog v3.18.1"]},"2514":{"title":"Changelog v3.18.2","titles":[]},"2515":{"title":"Version","titles":["Changelog v3.18.2"]},"2516":{"title":"What changed","titles":["Changelog v3.18.2"]},"2517":{"title":"1. Large auto-filled values no longer break the proxy query string","titles":["Changelog v3.18.2","What changed"]},"2518":{"title":"2. @body_parameter_name reliably matches HTTP Custom Type fields","titles":["Changelog v3.18.2","What changed"]},"2519":{"title":"3. TypeScript client generation for @body_parameter_name","titles":["Changelog v3.18.2","What changed"]},"2520":{"title":"4. Opt-in: omit automatic (server-filled) parameters from generated request shapes","titles":["Changelog v3.18.2","What changed"]},"2521":{"title":"Why these go together","titles":["Changelog v3.18.2","What changed"]},"2522":{"title":"Notes","titles":["Changelog v3.18.2"]},"2523":{"title":"Tests","titles":["Changelog v3.18.2"]},"2524":{"title":"Changelog v3.19.0","titles":[]},"2525":{"title":"Version","titles":["Changelog v3.19.0"]},"2526":{"title":"1. SQL test runner (--test)","titles":["Changelog v3.19.0"]},"2527":{"title":"How it works","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2528":{"title":"Test file anatomy","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2529":{"title":"HTTP blocks — invoking endpoints","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2530":{"title":"The response temp table","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2531":{"title":"Reusing scripts: \\\\i and \\\\ir includes","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2532":{"title":"Setup and Teardown, and named steps","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2533":{"title":"Per-file setup, teardown, and connection (header annotations)","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2534":{"title":"A dedicated test database","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2535":{"title":"Reporting","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2536":{"title":"Logging","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2537":{"title":"Configuration reference (TestRunner section)","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2538":{"title":"Project layout","titles":["Changelog v3.19.0","1. SQL test runner (--test)"]},"2539":{"title":"2. SqlFileSource.SkipPattern — exclude files from endpoint discovery","titles":["Changelog v3.19.0"]},"2540":{"title":"3. Named parameters in SQL files: :name","titles":["Changelog v3.19.0"]},"2541":{"title":"4. Watch mode: --watch","titles":["Changelog v3.19.0"]},"2542":{"title":"Watching the routine source — database polling","titles":["Changelog v3.19.0","4. Watch mode: --watch"]},"2543":{"title":"Server watch","titles":["Changelog v3.19.0","4. Watch mode: --watch"]},"2544":{"title":"5. Mute an individual logger with "Off" in Log:MinimalLevels","titles":["Changelog v3.19.0"]},"2545":{"title":"Notes","titles":["Changelog v3.19.0"]},"2546":{"title":"Tests","titles":["Changelog v3.19.0"]},"2547":{"title":"Changelog v3.2.0 (2025-12-22)","titles":[]},"2548":{"title":"Version","titles":["Changelog v3.2.0 (2025-12-22)"]},"2549":{"title":"Reverse Proxy Feature","titles":["Changelog v3.2.0 (2025-12-22)","Version"]},"2550":{"title":"Docker Image with Bun Runtime","titles":["Changelog v3.2.0 (2025-12-22)","Version"]},"2551":{"title":"Configuration Default Fixes","titles":["Changelog v3.2.0 (2025-12-22)","Version"]},"2552":{"title":"Changelog v3.2.1 (2025-12-23)","titles":[]},"2553":{"title":"Version","titles":["Changelog v3.2.1 (2025-12-23)"]},"2554":{"title":"JWT (JSON Web Token) Authentication Support","titles":["Changelog v3.2.1 (2025-12-23)","Version"]},"2555":{"title":"Path Parameters Support for HttpFiles and OpenApi Plugins","titles":["Changelog v3.2.1 (2025-12-23)","Version"]},"2556":{"title":"Changelog v3.2.2 (2025-12-24)","titles":[]},"2557":{"title":"Version","titles":["Changelog v3.2.2 (2025-12-24)"]},"2558":{"title":"Bug Fixes","titles":["Changelog v3.2.2 (2025-12-24)","Version"]},"2559":{"title":"Performance Improvements","titles":["Changelog v3.2.2 (2025-12-24)","Version"]},"2560":{"title":"Changelog v3.2.3 (2025-12-30)","titles":[]},"2561":{"title":"Version","titles":["Changelog v3.2.3 (2025-12-30)"]},"2562":{"title":"TsClient Plugin","titles":["Changelog v3.2.3 (2025-12-30)","Version"]},"2563":{"title":"Changelog v3.2.4 (2025-01-03)","titles":[]},"2564":{"title":"Version","titles":["Changelog v3.2.4 (2025-01-03)"]},"2565":{"title":"DataProtection Key Encryption Options","titles":["Changelog v3.2.4 (2025-01-03)","Version"]},"2566":{"title":"TsClient Plugin","titles":["Changelog v3.2.4 (2025-01-03)","Version"]},"2567":{"title":"NpgsqlRestClient","titles":["Changelog v3.2.4 (2025-01-03)","Version"]},"2568":{"title":"Changelog v3.2.6 (2025-01-04)","titles":[]},"2569":{"title":"Version","titles":["Changelog v3.2.6 (2025-01-04)"]},"2570":{"title":"Changelog v3.2.7 (2025-01-05)","titles":[]},"2571":{"title":"Version","titles":["Changelog v3.2.7 (2025-01-05)"]},"2572":{"title":"Upload Handlers: User Context and Claims Support","titles":["Changelog v3.2.7 (2025-01-05)","Version"]},"2573":{"title":"Changelog v3.3.0 (2025-01-08)","titles":[]},"2574":{"title":"Version","titles":["Changelog v3.3.0 (2025-01-08)"]},"2575":{"title":"Parameter Validation","titles":["Changelog v3.3.0 (2025-01-08)","Version"]},"2576":{"title":"Linux ARM64 Build and Docker Image","titles":["Changelog v3.3.0 (2025-01-08)","Version"]},"2577":{"title":"Config Command Shows Default Values","titles":["Changelog v3.3.0 (2025-01-08)","Version"]},"2578":{"title":"Changelog v3.3.1 (2025-01-14)","titles":[]},"2579":{"title":"Version","titles":["Changelog v3.3.1 (2025-01-14)"]},"2580":{"title":"Proxy Response Caching","titles":["Changelog v3.3.1 (2025-01-14)","Version"]},"2581":{"title":"Optional @ Prefix for Comment Annotations","titles":["Changelog v3.3.1 (2025-01-14)","Version"]},"2582":{"title":"Added a logo on client app commands","titles":["Changelog v3.3.1 (2025-01-14)","Version"]},"2583":{"title":"Changelog v3.4.0 (2025-01-16)","titles":[]},"2584":{"title":"Version","titles":["Changelog v3.4.0 (2025-01-16)"]},"2585":{"title":"Composite Type Support","titles":["Changelog v3.4.0 (2025-01-16)","Version"]},"2586":{"title":"1. Arrays of Composite Types","titles":["Changelog v3.4.0 (2025-01-16)","Version","Composite Type Support"]},"2587":{"title":"2. Nested JSON for Composite Type Columns (Opt-in)","titles":["Changelog v3.4.0 (2025-01-16)","Version","Composite Type Support"]},"2588":{"title":"Multidimensional Array Support","titles":["Changelog v3.4.0 (2025-01-16)","Version"]},"2589":{"title":"JSON Escaping Fix for Arrays and Tuple Strings","titles":["Changelog v3.4.0 (2025-01-16)","Version"]},"2590":{"title":"TsClient Plugin: Composite Type Interface Generation","titles":["Changelog v3.4.0 (2025-01-16)","Version"]},"2591":{"title":"Optional @ Prefix Extended to Annotation Parameters","titles":["Changelog v3.4.0 (2025-01-16)","Version"]},"2592":{"title":"Changelog v3.4.1 (2025-01-15)","titles":[]},"2593":{"title":"Version","titles":["Changelog v3.4.1 (2025-01-15)"]},"2594":{"title":"Configuration Options for Null Handling","titles":["Changelog v3.4.1 (2025-01-15)","Version"]},"2595":{"title":"QueryStringNullHandling","titles":["Changelog v3.4.1 (2025-01-15)","Version","Configuration Options for Null Handling"]},"2596":{"title":"TextResponseNullHandling","titles":["Changelog v3.4.1 (2025-01-15)","Version","Configuration Options for Null Handling"]},"2597":{"title":"Bug Fixes","titles":["Changelog v3.4.1 (2025-01-15)","Version"]},"2598":{"title":"Changelog v3.4.2 (2025-01-15)","titles":[]},"2599":{"title":"Version","titles":["Changelog v3.4.2 (2025-01-15)"]},"2600":{"title":"Bug Fixes","titles":["Changelog v3.4.2 (2025-01-15)","Version"]},"2601":{"title":"Changelog v3.4.3 (2025-01-16)","titles":[]},"2602":{"title":"Version","titles":["Changelog v3.4.3 (2025-01-16)"]},"2603":{"title":"Bug Fixes","titles":["Changelog v3.4.3 (2025-01-16)","Version"]},"2604":{"title":"Performance Improvements","titles":["Changelog v3.4.3 (2025-01-16)","Version"]},"2605":{"title":"Changelog v3.4.4 (2025-01-17)","titles":[]},"2606":{"title":"Version","titles":["Changelog v3.4.4 (2025-01-17)"]},"2607":{"title":"Deep Nested Composite Type Resolution (ResolveNestedCompositeTypes)","titles":["Changelog v3.4.4 (2025-01-17)","Version"]},"2608":{"title":"Bug Fixes","titles":["Changelog v3.4.4 (2025-01-17)","Version"]},"2609":{"title":"Changelog v3.4.5 (2025-01-19)","titles":[]},"2610":{"title":"Version","titles":["Changelog v3.4.5 (2025-01-19)"]},"2611":{"title":"NpgsqlRest.TsClient: Deep Nested Composite Type Support","titles":["Changelog v3.4.5 (2025-01-19)","Version"]},"2612":{"title":"Changelog v3.4.6 (2025-01-21)","titles":[]},"2613":{"title":"Version","titles":["Changelog v3.4.6 (2025-01-21)"]},"2614":{"title":"Endpoint Execution Performance Optimizations","titles":["Changelog v3.4.6 (2025-01-21)","Version"]},"2615":{"title":"Comprehensive CancellationToken Propagation","titles":["Changelog v3.4.6 (2025-01-21)","Version"]},"2616":{"title":"Changelog v3.4.8 (2025-01-26)","titles":[]},"2617":{"title":"Version","titles":["Changelog v3.4.8 (2025-01-26)"]},"2618":{"title":"Fix: Single-Field Composite Type Returns","titles":["Changelog v3.4.8 (2025-01-26)","Version"]},"2619":{"title":"Changelog v3.4.7 (2025-01-21)","titles":[]},"2620":{"title":"Version","titles":["Changelog v3.4.7 (2025-01-21)"]},"2621":{"title":"Type Category Lookup Optimization","titles":["Changelog v3.4.7 (2025-01-21)","Version"]},"2622":{"title":"Additional Allocation Optimizations","titles":["Changelog v3.4.7 (2025-01-21)","Version"]},"2623":{"title":"Changelog v3.5.0 (2025-01-28)","titles":[]},"2624":{"title":"Version","titles":["Changelog v3.5.0 (2025-01-28)"]},"2625":{"title":"New Feature: PasskeyAuth (WebAuthn/FIDO2)","titles":["Changelog v3.5.0 (2025-01-28)","Version"]},"2626":{"title":"Bugfix: Response Compression for Static Files","titles":["Changelog v3.5.0 (2025-01-28)","Version"]},"2627":{"title":"Added Client Integration Tests","titles":["Changelog v3.5.0 (2025-01-28)","Version"]},"2628":{"title":"Separate Core and Client Logging","titles":["Changelog v3.5.0 (2025-01-28)","Version"]},"2629":{"title":"Debug Log Filtering Options","titles":["Changelog v3.5.0 (2025-01-28)","Version"]},"2630":{"title":"Changelog v3.6.0 (2025-02-01)","titles":[]},"2631":{"title":"Version","titles":["Changelog v3.6.0 (2025-02-01)"]},"2632":{"title":"New Feature: Security Headers Middleware","titles":["Changelog v3.6.0 (2025-02-01)","Version"]},"2633":{"title":"New Feature: Forwarded Headers Middleware","titles":["Changelog v3.6.0 (2025-02-01)","Version"]},"2634":{"title":"New Feature: Health Check Endpoints","titles":["Changelog v3.6.0 (2025-02-01)","Version"]},"2635":{"title":"New Feature: PostgreSQL Statistics Endpoints","titles":["Changelog v3.6.0 (2025-02-01)","Version"]},"2636":{"title":"Changelog v3.6.1 (2025-02-02)","titles":[]},"2637":{"title":"Version","titles":["Changelog v3.6.1 (2025-02-02)"]},"2638":{"title":"Fixes","titles":["Changelog v3.6.1 (2025-02-02)","Version"]},"2639":{"title":"Changelog v3.6.2 (2025-02-02)","titles":[]},"2640":{"title":"Version","titles":["Changelog v3.6.2 (2025-02-02)"]},"2641":{"title":"Fixes","titles":["Changelog v3.6.2 (2025-02-02)","Version"]},"2642":{"title":"Breaking Changes","titles":["Changelog v3.6.2 (2025-02-02)","Version"]},"2643":{"title":"Changelog v3.6.3 (2025-02-03)","titles":[]},"2644":{"title":"Version","titles":["Changelog v3.6.3 (2025-02-03)"]},"2645":{"title":"Fixes","titles":["Changelog v3.6.3 (2025-02-03)","Version"]},"2646":{"title":"Changelog v3.7.0 (2025-02-07)","titles":[]},"2647":{"title":"Version","titles":["Changelog v3.7.0 (2025-02-07)"]},"2648":{"title":"Fixes","titles":["Changelog v3.7.0 (2025-02-07)","Version"]},"2649":{"title":"New Features","titles":["Changelog v3.7.0 (2025-02-07)","Version"]},"2650":{"title":"New Feature: Pluggable Table Format Renderers","titles":["Changelog v3.7.0 (2025-02-07)","Version"]},"2651":{"title":"HTML Table Format","titles":["Changelog v3.7.0 (2025-02-07)","Version","New Feature: Pluggable Table Format Renderers"]},"2652":{"title":"Excel Table Format","titles":["Changelog v3.7.0 (2025-02-07)","Version","New Feature: Pluggable Table Format Renderers"]},"2653":{"title":"Per-Endpoint Custom Parameters","titles":["Changelog v3.7.0 (2025-02-07)","Version","New Feature: Pluggable Table Format Renderers"]},"2654":{"title":"TsClient: Per-Endpoint URL Export Control","titles":["Changelog v3.7.0 (2025-02-07)","Version"]},"2655":{"title":"tsclient_export_url","titles":["Changelog v3.7.0 (2025-02-07)","Version","TsClient: Per-Endpoint URL Export Control"]},"2656":{"title":"tsclient_url_only","titles":["Changelog v3.7.0 (2025-02-07)","Version","TsClient: Per-Endpoint URL Export Control"]},"2657":{"title":"Changelog v3.8.0 (2025-02-11)","titles":[]},"2658":{"title":"Version","titles":["Changelog v3.8.0 (2025-02-11)"]},"2659":{"title":"New Feature: Configuration Key Validation","titles":["Changelog v3.8.0 (2025-02-11)","Version"]},"2660":{"title":"Removed","titles":["Changelog v3.8.0 (2025-02-11)","Version"]},"2661":{"title":"Kestrel Configuration Validation","titles":["Changelog v3.8.0 (2025-02-11)","Version"]},"2662":{"title":"Syntax Highlighted --config Output","titles":["Changelog v3.8.0 (2025-02-11)","Version"]},"2663":{"title":"Improved CLI Error Handling","titles":["Changelog v3.8.0 (2025-02-11)","Version"]},"2664":{"title":"Universal fallback_handler for All Upload Handlers","titles":["Changelog v3.8.0 (2025-02-11)","Version"]},"2665":{"title":"Optional Path Parameters","titles":["Changelog v3.8.0 (2025-02-11)","Version"]},"2666":{"title":"Fixes","titles":["Changelog v3.8.0 (2025-02-11)","Version"]},"2667":{"title":"Machine-Readable CLI Commands for Tool Integration","titles":["Changelog v3.8.0 (2025-02-11)","Version"]},"2668":{"title":"--version --json","titles":["Changelog v3.8.0 (2025-02-11)","Version","Machine-Readable CLI Commands for Tool Integration"]},"2669":{"title":"--validate [--json]","titles":["Changelog v3.8.0 (2025-02-11)","Version","Machine-Readable CLI Commands for Tool Integration"]},"2670":{"title":"--config-schema","titles":["Changelog v3.8.0 (2025-02-11)","Version","Machine-Readable CLI Commands for Tool Integration"]},"2671":{"title":"--annotations","titles":["Changelog v3.8.0 (2025-02-11)","Version","Machine-Readable CLI Commands for Tool Integration"]},"2672":{"title":"--endpoints","titles":["Changelog v3.8.0 (2025-02-11)","Version","Machine-Readable CLI Commands for Tool Integration"]},"2673":{"title":"--config (updated)","titles":["Changelog v3.8.0 (2025-02-11)","Version","Machine-Readable CLI Commands for Tool Integration"]},"2674":{"title":"Stats Endpoints: format Query String Override","titles":["Changelog v3.8.0 (2025-02-11)","Version"]},"2675":{"title":"Changelog v3.9.0 (2026-02-23)","titles":[]},"2676":{"title":"Version","titles":["Changelog v3.9.0 (2026-02-23)"]},"2677":{"title":"Commented Configuration Output (--config)","titles":["Changelog v3.9.0 (2026-02-23)","Version"]},"2678":{"title":"Configuration Search and Filter (--config [filter])","titles":["Changelog v3.9.0 (2026-02-23)","Version"]},"2679":{"title":"CLI Improvements","titles":["Changelog v3.9.0 (2026-02-23)","Version"]},"2680":{"title":"Configuration Guide","titles":[]},"2681":{"title":"Configuration Sources","titles":["Configuration Guide"]},"2682":{"title":"Default Values","titles":["Configuration Guide"]},"2683":{"title":"Configuration Files","titles":["Configuration Guide"]},"2684":{"title":"Default Configuration Files","titles":["Configuration Guide","Configuration Files"]},"2685":{"title":"Optional Configuration Files","titles":["Configuration Guide","Configuration Files"]},"2686":{"title":"Configuration File Format","titles":["Configuration Guide","Configuration Files"]},"2687":{"title":"Environment Variables","titles":["Configuration Guide"]},"2688":{"title":"Optional and Required Placeholders","titles":["Configuration Guide","Environment Variables"]},"2689":{"title":"Enabling Environment Variable Binding","titles":["Configuration Guide","Environment Variables"]},"2690":{"title":"Environment Variable Naming Rules","titles":["Configuration Guide","Environment Variables"]},"2691":{"title":"Command-Line Arguments","titles":["Configuration Guide"]},"2692":{"title":"Command-Line Syntax Rules","titles":["Configuration Guide","Command-Line Arguments"]},"2693":{"title":"Exploring Configuration","titles":["Configuration Guide"]},"2694":{"title":"Generating a Default Configuration File","titles":["Configuration Guide","Exploring Configuration"]},"2695":{"title":"Searching for Settings","titles":["Configuration Guide","Exploring Configuration"]},"2696":{"title":"Configuration Validation","titles":["Configuration Guide","Exploring Configuration"]},"2697":{"title":"Configuration Precedence Example","titles":["Configuration Guide"]},"2698":{"title":"Quick Reference","titles":["Configuration Guide"]},"2699":{"title":"Common Command-Line Overrides","titles":["Configuration Guide","Quick Reference"]},"2700":{"title":"Exploring Configuration","titles":["Configuration Guide","Quick Reference"]},"2701":{"title":"Configuration Structure Overview","titles":["Configuration Guide"]},"2702":{"title":"Top-Level Settings","titles":["Configuration Guide"]},"2703":{"title":"Urls Configuration","titles":["Configuration Guide","Top-Level Settings"]},"2704":{"title":"Startup Message","titles":["Configuration Guide","Top-Level Settings"]},"2705":{"title":"Config Section Options","titles":["Configuration Guide"]},"2706":{"title":"Next Steps","titles":["Configuration Guide"]},"2707":{"title":"FAQ & Troubleshooting","titles":[]},"2708":{"title":"General","titles":["FAQ & Troubleshooting"]},"2709":{"title":"What is NpgsqlRest?","titles":["FAQ & Troubleshooting","General"]},"2710":{"title":"What PostgreSQL versions are supported?","titles":["FAQ & Troubleshooting","General"]},"2711":{"title":"What .NET version is required?","titles":["FAQ & Troubleshooting","General"]},"2712":{"title":"Is it safe from SQL injection?","titles":["FAQ & Troubleshooting","General"]},"2713":{"title":"How does NpgsqlRest compare to PostgREST or Supabase?","titles":["FAQ & Troubleshooting","General"]},"2714":{"title":"Can I use it inside an existing ASP.NET Core application?","titles":["FAQ & Troubleshooting","General"]},"2715":{"title":"Installation & Setup","titles":["FAQ & Troubleshooting"]},"2716":{"title":"How do I install NpgsqlRest?","titles":["FAQ & Troubleshooting","Installation & Setup"]},"2717":{"title":"How do I run it in Docker?","titles":["FAQ & Troubleshooting","Installation & Setup"]},"2718":{"title":"How do I connect to my database?","titles":["FAQ & Troubleshooting","Installation & Setup"]},"2719":{"title":"Can I use environment variables for configuration?","titles":["FAQ & Troubleshooting","Installation & Setup"]},"2720":{"title":"Endpoints","titles":["FAQ & Troubleshooting"]},"2721":{"title":"My function doesn\'t appear as an endpoint","titles":["FAQ & Troubleshooting","Endpoints"]},"2722":{"title":"My SQL file doesn\'t appear as an endpoint","titles":["FAQ & Troubleshooting","Endpoints"]},"2723":{"title":"An endpoint exists but I get 404 — why?","titles":["FAQ & Troubleshooting","Endpoints"]},"2724":{"title":"Why are parameter and column names camelCased? How do I turn that off?","titles":["FAQ & Troubleshooting","Endpoints"]},"2725":{"title":"My query returns one row — why do I get an array?","titles":["FAQ & Troubleshooting","Endpoints"]},"2726":{"title":"How do I return plain text, HTML, or CSV instead of JSON?","titles":["FAQ & Troubleshooting","Endpoints"]},"2727":{"title":"How do I customize the endpoint URL path?","titles":["FAQ & Troubleshooting","Endpoints"]},"2728":{"title":"How do I restrict access to an endpoint?","titles":["FAQ & Troubleshooting","Endpoints"]},"2729":{"title":"Can I expose tables and views directly, without writing any SQL?","titles":["FAQ & Troubleshooting","Endpoints"]},"2730":{"title":"Parameters","titles":["FAQ & Troubleshooting"]},"2731":{"title":"Named or positional parameters in SQL files — which should I use?","titles":["FAQ & Troubleshooting","Parameters"]},"2732":{"title":"How do I make a parameter optional?","titles":["FAQ & Troubleshooting","Parameters"]},"2733":{"title":"How do I get the authenticated user\'s ID into a query?","titles":["FAQ & Troubleshooting","Parameters"]},"2734":{"title":"Error: "could not determine data type of parameter"","titles":["FAQ & Troubleshooting","Parameters"]},"2735":{"title":"Authentication","titles":["FAQ & Troubleshooting"]},"2736":{"title":"What authentication methods are supported?","titles":["FAQ & Troubleshooting","Authentication"]},"2737":{"title":"How do I set up JWT authentication?","titles":["FAQ & Troubleshooting","Authentication"]},"2738":{"title":"Testing","titles":["FAQ & Troubleshooting"]},"2739":{"title":"How do I test my endpoints?","titles":["FAQ & Troubleshooting","Testing"]},"2740":{"title":"Can tests run against a temporary database instead of my real one?","titles":["FAQ & Troubleshooting","Testing"]},"2741":{"title":"My test fixtures need half the database inserted first — is there a better way?","titles":["FAQ & Troubleshooting","Testing"]},"2742":{"title":"Is there a watch mode?","titles":["FAQ & Troubleshooting","Testing"]},"2743":{"title":"Performance","titles":["FAQ & Troubleshooting"]},"2744":{"title":"How fast is it?","titles":["FAQ & Troubleshooting","Performance"]},"2745":{"title":"How do I enable caching?","titles":["FAQ & Troubleshooting","Performance"]},"2746":{"title":"How do I enable response compression?","titles":["FAQ & Troubleshooting","Performance"]},"2747":{"title":"How do I set up rate limiting?","titles":["FAQ & Troubleshooting","Performance"]},"2748":{"title":"Debugging & Logging","titles":["FAQ & Troubleshooting"]},"2749":{"title":"How do I see which endpoints are created and what options they have?","titles":["FAQ & Troubleshooting","Debugging & Logging"]},"2750":{"title":"How do I log the SQL each endpoint executes at runtime?","titles":["FAQ & Troubleshooting","Debugging & Logging"]},"2751":{"title":"How do I see the metadata queries NpgsqlRest runs at startup?","titles":["FAQ & Troubleshooting","Debugging & Logging"]},"2752":{"title":"How do I completely silence a logger?","titles":["FAQ & Troubleshooting","Debugging & Logging"]},"2753":{"title":"Troubleshooting","titles":["FAQ & Troubleshooting"]},"2754":{"title":"Startup warning: "Unknown configuration key"","titles":["FAQ & Troubleshooting","Troubleshooting"]},"2755":{"title":"Error: "permission denied for schema"","titles":["FAQ & Troubleshooting","Troubleshooting"]},"2756":{"title":"Timeout errors (504 Gateway Timeout)","titles":["FAQ & Troubleshooting","Troubleshooting"]},"2757":{"title":"Encrypted data is unreadable after restart","titles":["FAQ & Troubleshooting","Troubleshooting"]},"2758":{"title":"Leftover *_abcde test databases","titles":["FAQ & Troubleshooting","Troubleshooting"]},"2759":{"title":"HTTP Custom Types","titles":[]},"2760":{"title":"How it works","titles":["HTTP Custom Types"]},"2761":{"title":"Enabling the HTTP client","titles":["HTTP Custom Types"]},"2762":{"title":"Defining and using a type","titles":["HTTP Custom Types"]},"2763":{"title":"Reading the response","titles":["HTTP Custom Types"]},"2764":{"title":"Dynamic requests with placeholders","titles":["HTTP Custom Types"]},"2765":{"title":"Timeouts, retries, and caching","titles":["HTTP Custom Types"]},"2766":{"title":"Multiple calls in parallel","titles":["HTTP Custom Types"]},"2767":{"title":"Self-calls: composing your own endpoints","titles":["HTTP Custom Types"]},"2768":{"title":"Secrets and server-side values","titles":["HTTP Custom Types"]},"2769":{"title":"Configuration","titles":["HTTP Custom Types"]},"2770":{"title":"See it in the examples","titles":["HTTP Custom Types"]},"2771":{"title":"Related","titles":["HTTP Custom Types"]},"2772":{"title":"Overview","titles":[]},"2773":{"title":"Declarative Approach","titles":["Overview"]},"2774":{"title":"Plain SQL Files","titles":["Overview","Declarative Approach"]},"2775":{"title":"PostgreSQL Routines (Functions and Procedures)","titles":["Overview","Declarative Approach"]},"2776":{"title":"Technology & Distribution","titles":["Overview"]},"2777":{"title":"NpgsqlRest Installation Guide","titles":[]},"2778":{"title":"Download Executable","titles":["NpgsqlRest Installation Guide"]},"2779":{"title":"Manual Installation","titles":["NpgsqlRest Installation Guide","Download Executable"]},"2780":{"title":"Command Line Download","titles":["NpgsqlRest Installation Guide","Download Executable"]},"2781":{"title":"Windows (x64)","titles":["NpgsqlRest Installation Guide","Download Executable","Command Line Download"]},"2782":{"title":"Linux (x64)","titles":["NpgsqlRest Installation Guide","Download Executable","Command Line Download"]},"2783":{"title":"Linux (ARM64)","titles":["NpgsqlRest Installation Guide","Download Executable","Command Line Download"]},"2784":{"title":"macOS (ARM64)","titles":["NpgsqlRest Installation Guide","Download Executable","Command Line Download"]},"2785":{"title":"Command Line Basic Commands","titles":["NpgsqlRest Installation Guide","Download Executable"]},"2786":{"title":"NPM Installation","titles":["NpgsqlRest Installation Guide"]},"2787":{"title":"Docker Installation","titles":["NpgsqlRest Installation Guide"]},"2788":{"title":"Standard Image (AOT)","titles":["NpgsqlRest Installation Guide","Docker Installation"]},"2789":{"title":"JIT Image","titles":["NpgsqlRest Installation Guide","Docker Installation"]},"2790":{"title":"ARM64 Image","titles":["NpgsqlRest Installation Guide","Docker Installation"]},"2791":{"title":"Bun Runtime Image","titles":["NpgsqlRest Installation Guide","Docker Installation"]},"2792":{"title":"Building From Source","titles":["NpgsqlRest Installation Guide"]},"2793":{"title":"Next Steps","titles":["NpgsqlRest Installation Guide"]},"2794":{"title":"Logging","titles":[]},"2795":{"title":"The channel map","titles":["Logging"]},"2796":{"title":"Recipes","titles":["Logging"]},"2797":{"title":"See which endpoints exist and why","titles":["Logging","Recipes"]},"2798":{"title":"See every SQL command endpoints execute","titles":["Logging","Recipes"]},"2799":{"title":"Debug discovery: "why isn\'t my function/file picked up?"","titles":["Logging","Recipes"]},"2800":{"title":"Watch the test runner, mute everything else","titles":["Logging","Recipes"]},"2801":{"title":"Silence a channel completely","titles":["Logging","Recipes"]},"2802":{"title":"PostgreSQL messages in your logs","titles":["Logging"]},"2803":{"title":"Logging into PostgreSQL","titles":["Logging"]},"2804":{"title":"Files, OpenTelemetry, and production","titles":["Logging"]},"2805":{"title":"Related","titles":["Logging"]},"2806":{"title":"Proxy Endpoints","titles":[]},"2807":{"title":"How it works","titles":["Proxy Endpoints"]},"2808":{"title":"Enabling the proxy","titles":["Proxy Endpoints"]},"2809":{"title":"Passthrough mode","titles":["Proxy Endpoints"]},"2810":{"title":"Transform mode","titles":["Proxy Endpoints"]},"2811":{"title":"Where the request goes: target URL","titles":["Proxy Endpoints"]},"2812":{"title":"Forwarding headers, claims, and IP","titles":["Proxy Endpoints"]},"2813":{"title":"Forward proxy: send a function result upstream","titles":["Proxy Endpoints"]},"2814":{"title":"Configuration","titles":["Proxy Endpoints"]},"2815":{"title":"A complete example: cached AI gateway","titles":["Proxy Endpoints"]},"2816":{"title":"See it in the examples","titles":["Proxy Endpoints"]},"2817":{"title":"Related","titles":["Proxy Endpoints"]},"2818":{"title":"Quick Start","titles":[]},"2819":{"title":"Prerequisites","titles":["Quick Start"]},"2820":{"title":"Step 1: Create Your First Endpoint","titles":["Quick Start"]},"2821":{"title":"Option A: SQL File (Recommended)","titles":["Quick Start","Step 1: Create Your First Endpoint"]},"2822":{"title":"Option B: PostgreSQL Function","titles":["Quick Start","Step 1: Create Your First Endpoint"]},"2823":{"title":"Step 2: Run NpgsqlRest","titles":["Quick Start"]},"2824":{"title":"Step 3: Anonymous Endpoint And Verbose Logging","titles":["Quick Start"]},"2825":{"title":"Step 4: Create Configuration File","titles":["Quick Start"]},"2826":{"title":"Next Steps","titles":["Quick Start"]},"2827":{"title":"Server-Sent Events (SSE)","titles":[]},"2828":{"title":"How SSE works","titles":["Server-Sent Events (SSE)"]},"2829":{"title":"Creating a publisher endpoint","titles":["Server-Sent Events (SSE)"]},"2830":{"title":"Subscribing from the browser","titles":["Server-Sent Events (SSE)"]},"2831":{"title":"Who receives events: scope","titles":["Server-Sent Events (SSE)"]},"2832":{"title":"Which RAISE level fires: event level","titles":["Server-Sent Events (SSE)"]},"2833":{"title":"Targeting specific recipients","titles":["Server-Sent Events (SSE)"]},"2834":{"title":"Splitting publish from subscribe","titles":["Server-Sent Events (SSE)"]},"2835":{"title":"Configuration","titles":["Server-Sent Events (SSE)"]},"2836":{"title":"A complete example: real-time chat","titles":["Server-Sent Events (SSE)"]},"2837":{"title":"See it in the examples","titles":["Server-Sent Events (SSE)"]},"2838":{"title":"Related","titles":["Server-Sent Events (SSE)"]},"2839":{"title":"SQL File Endpoints","titles":[]},"2840":{"title":"How It Works","titles":["SQL File Endpoints"]},"2841":{"title":"Configuration","titles":["SQL File Endpoints"]},"2842":{"title":"Single-Command Files","titles":["SQL File Endpoints"]},"2843":{"title":"HTTP Verb Detection","titles":["SQL File Endpoints","Single-Command Files"]},"2844":{"title":"Parameters","titles":["SQL File Endpoints"]},"2845":{"title":"Named Parameters (:name)","titles":["SQL File Endpoints","Parameters"]},"2846":{"title":"Positional Parameters ($N)","titles":["SQL File Endpoints","Parameters"]},"2847":{"title":"Type Hints","titles":["SQL File Endpoints","Parameters"]},"2848":{"title":"Default Values","titles":["SQL File Endpoints","Parameters"]},"2849":{"title":"Virtual Parameters (@define_param)","titles":["SQL File Endpoints","Parameters"]},"2850":{"title":"Multi-Command Files","titles":["SQL File Endpoints"]},"2851":{"title":"Result Rules","titles":["SQL File Endpoints","Multi-Command Files"]},"2852":{"title":"Positional Annotations","titles":["SQL File Endpoints","Multi-Command Files"]},"2853":{"title":"@void","titles":["SQL File Endpoints","Multi-Command Files"]},"2854":{"title":"@returns — Skip Describe","titles":["SQL File Endpoints"]},"2855":{"title":"DO Blocks and Limitations","titles":["SQL File Endpoints"]},"2856":{"title":"Existing Features Work Unchanged","titles":["SQL File Endpoints"]},"2857":{"title":"The Dev Loop: Watch Mode","titles":["SQL File Endpoints"]},"2858":{"title":"SQL Files vs Functions","titles":["SQL File Endpoints"]},"2859":{"title":"Related","titles":["SQL File Endpoints"]},"2860":{"title":"Testing","titles":[]},"2861":{"title":"Quick start","titles":["Testing"]},"2862":{"title":"How it works","titles":["Testing"]},"2863":{"title":"Test file anatomy","titles":["Testing"]},"2864":{"title":"Assertions","titles":["Testing","Test file anatomy"]},"2865":{"title":"HTTP blocks: invoking endpoints","titles":["Testing","Test file anatomy"]},"2866":{"title":"The response table","titles":["Testing","Test file anatomy"]},"2867":{"title":"Transactions: when to begin/rollback","titles":["Testing","Test file anatomy"]},"2868":{"title":"Fixtures without inserting the whole database: deferrable constraints","titles":["Testing","Test file anatomy"]},"2869":{"title":"Reusing SQL: includes","titles":["Testing"]},"2870":{"title":"Per-file annotations","titles":["Testing"]},"2871":{"title":"Setup, Teardown, and named steps","titles":["Testing"]},"2872":{"title":"Scenario: dedicated test database per run","titles":["Testing"]},"2873":{"title":"Scenario: template database and per-test isolation","titles":["Testing"]},"2874":{"title":"Scenario: external migration runners","titles":["Testing"]},"2875":{"title":"Scenario: Docker","titles":["Testing"]},"2876":{"title":"Scenario: testing least-privilege (PoLP) setups","titles":["Testing"]},"2877":{"title":"Filtering and tags","titles":["Testing"]},"2878":{"title":"Watch mode","titles":["Testing"]},"2879":{"title":"Endpoint coverage","titles":["Testing"]},"2880":{"title":"Reporting, logging, CI","titles":["Testing"]},"2881":{"title":"Troubleshooting","titles":["Testing"]},"2882":{"title":"Reference","titles":["Testing"]}},"dirtCount":0,"index":[["≤512",{"2":{"2604":1}}],["−8",{"2":{"2398":1}}],["−12",{"2":{"2398":1}}],["−15",{"2":{"2398":2}}],["−5",{"2":{"2398":4}}],["−50",{"2":{"2397":1}}],["−2",{"2":{"2398":2}}],["−29",{"2":{"2397":1}}],["−39",{"2":{"2397":1}}],["δ",{"2":{"2397":1,"2398":2}}],["≥32",{"2":{"1460":1,"1792":1,"2375":1}}],["£",{"2":{"1431":1}}],["£51",{"2":{"1427":1}}],["▶",{"2":{"1381":1}}],["←",{"2":{"1381":1,"1570":2,"1571":2,"1577":2,"1792":1,"2762":4}}],["≠",{"2":{"1232":1,"1234":1,"1236":1,"1237":1,"1882":1,"1884":1,"1886":1,"1887":1}}],["③",{"2":{"1222":1}}],["🔴",{"0":{"2490":1},"2":{"2223":1}}],["🔐",{"2":{"1221":2}}],["🔧",{"2":{"1044":3}}],["②",{"2":{"1220":1,"1221":1,"1222":1}}],["①",{"2":{"1220":1,"1221":1,"1222":1}}],["≈",{"2":{"1169":1}}],["¹",{"2":{"1084":3}}],["🥉",{"2":{"1284":5,"1285":5}}],["🥈",{"2":{"1284":5,"1285":5}}],["🥇",{"2":{"1284":5,"1285":5}}],["🤖",{"2":{"1044":1}}],["🧑",{"2":{"1044":1}}],["────────────────────────────",{"2":{"1220":4,"1221":4,"1222":4}}],["──",{"2":{"1044":3}}],["↓",{"2":{"1005":3}}],["└──",{"2":{"976":4}}],["│",{"2":{"976":6}}],["├──",{"2":{"976":6}}],["пароль密码🔐",{"2":{"930":2}}],["×",{"2":{"872":1,"874":1,"1165":1,"1974":1,"2397":1,"2398":3,"2607":1}}],["~75",{"2":{"1401":1}}],["~74",{"2":{"868":1,"1037":1}}],["~60",{"2":{"1027":1}}],["~40",{"2":{"1350":1,"2270":1}}],["~4",{"2":{"910":1,"2309":1}}],["~80",{"2":{"1021":1,"1027":2,"1350":1,"2245":1}}],["~80kb",{"2":{"953":1,"968":1,"969":1,"971":1,"1099":1}}],["~8",{"2":{"910":1,"1064":1}}],["~",{"2":{"897":1}}],["~352",{"2":{"2372":1}}],["~35",{"2":{"1366":1}}],["~30mb",{"2":{"1084":1,"1088":1,"1127":1}}],["~300",{"2":{"873":1,"1181":2}}],["~30",{"2":{"872":1,"911":1,"1350":2,"2270":1,"2789":1}}],["~3",{"2":{"869":3,"873":2,"876":1}}],["~36",{"2":{"867":1}}],["~50",{"2":{"1064":1,"1181":3,"1350":1}}],["~550",{"2":{"869":1}}],["~5",{"2":{"868":1,"1349":2,"2397":1,"2398":1}}],["~18",{"2":{"2614":1}}],["~1s",{"2":{"2153":1,"2541":1,"2543":1,"2857":1}}],["~120",{"2":{"1366":1}}],["~125",{"2":{"872":1}}],["~170",{"2":{"1350":1}}],["~1mb",{"2":{"1169":1}}],["~160",{"2":{"1064":1}}],["~100",{"2":{"1181":1}}],["~10",{"2":{"1064":1,"2270":1}}],["~150",{"2":{"1181":1}}],["~15",{"2":{"910":1,"911":1,"1027":1,"1064":3}}],["~1",{"2":{"867":1,"2397":1,"2398":1}}],["~2s",{"2":{"2546":1}}],["~2866",{"2":{"2372":1}}],["~28",{"2":{"1991":1}}],["~25",{"2":{"1064":1}}],["~250",{"2":{"1027":1}}],["~200",{"2":{"1100":1,"1181":4,"2245":1,"2789":1}}],["~20mb",{"2":{"1084":1}}],["~20",{"2":{"1027":1,"1064":1,"1350":1}}],["~2",{"2":{"867":1,"869":1,"1349":1}}],["⚠️",{"0":{"2486":1,"2487":1},"2":{"835":2,"1094":3,"1097":2,"1098":2,"1100":2,"1101":2,"1102":3,"1104":2,"1109":2,"1111":3,"1279":7,"1875":1}}],["❌",{"2":{"835":11,"918":3,"1094":17,"1095":13,"1096":6,"1097":6,"1098":19,"1099":17,"1100":5,"1101":22,"1102":4,"1103":11,"1104":34,"1109":24,"1110":6,"1111":12,"1279":10}}],["✅",{"2":{"832":16,"835":14,"918":3,"1092":24,"1094":20,"1095":23,"1096":12,"1097":22,"1098":28,"1099":16,"1100":8,"1101":25,"1102":12,"1103":7,"1104":19,"1109":28,"1110":15,"1111":7,"1279":30,"2832":3}}],["^>",{"2":{"1427":1}}],["^",{"2":{"817":1,"897":1,"1386":1,"1792":4,"2142":4,"2144":3,"2146":6,"2148":1,"2328":1,"2575":5,"2840":1}}],["≡",{"2":{"687":1}}],["8+",{"2":{"2622":1}}],["89",{"2":{"1291":1,"1299":1}}],["899",{"2":{"1285":1,"1293":1}}],["8707",{"2":{"1792":1,"1830":1,"2223":1,"2481":1}}],["878",{"2":{"1293":1}}],["87",{"2":{"1287":1}}],["879",{"2":{"1285":1,"1295":1}}],["8192",{"2":{"1792":5,"1990":1,"1992":1,"1993":1,"2123":1,"2125":1}}],["813",{"2":{"1301":1}}],["816",{"2":{"1297":1}}],["81",{"2":{"1289":1,"1291":1,"1297":1}}],["817",{"2":{"1287":1,"2825":1}}],["818",{"2":{"1267":1,"2825":1}}],["869",{"2":{"1293":1}}],["86ms",{"2":{"1291":1}}],["863",{"2":{"1287":1}}],["86",{"2":{"1284":1,"1297":1,"2397":1}}],["8443",{"2":{"2118":2,"2703":2}}],["847",{"2":{"1299":1}}],["842",{"2":{"1289":1}}],["84ms",{"2":{"1287":1,"1288":1}}],["843",{"2":{"1284":1}}],["84",{"2":{"1277":3,"1278":1}}],["85",{"2":{"1268":1,"1291":1,"1322":1}}],["850",{"2":{"1265":1}}],["854542",{"2":{"1023":1}}],["83ms",{"2":{"1297":1}}],["836",{"2":{"1290":1}}],["835",{"2":{"1288":1}}],["832",{"2":{"1270":1}}],["83",{"2":{"1257":1,"1289":1,"1299":2}}],["821",{"2":{"2825":1}}],["826",{"2":{"1299":1}}],["822",{"2":{"1291":1}}],["824",{"2":{"1277":1,"1285":1,"1297":1}}],["82",{"2":{"1091":1,"1268":1,"1284":2,"1291":1,"1295":1,"2398":1}}],["8x",{"2":{"1090":1}}],["8px",{"2":{"965":1,"1061":1,"1792":1,"2073":1,"2075":1,"2080":1}}],["882",{"2":{"1289":1}}],["883",{"2":{"1288":1}}],["88ms",{"2":{"1090":1,"1289":1}}],["88",{"2":{"868":1,"1091":1,"1262":1,"1264":1,"1268":1,"1291":1}}],["889",{"2":{"867":1}}],["80ms",{"2":{"1288":1,"1291":1}}],["803",{"2":{"1285":1,"1293":1}}],["806",{"2":{"1277":1}}],["807",{"2":{"1269":1,"1278":1}}],["80",{"2":{"867":1,"869":2,"911":1,"1036":1,"1277":2,"1299":1,"1322":1,"1366":1}}],["8080",{"2":{"451":2,"970":1,"995":1,"1047":1,"1117":2,"1199":2,"1202":1,"1207":2,"1343":2,"1345":2,"1380":1,"1386":1,"1420":1,"1433":2,"1711":1,"1773":3,"1775":1,"1792":1,"2011":1,"2116":1,"2117":1,"2118":2,"2162":1,"2354":1,"2699":1,"2701":1,"2702":1,"2703":2,"2717":2,"2788":2,"2789":2,"2790":2,"2791":2,"2809":3,"2823":2,"2824":3,"2825":1}}],["8",{"0":{"2232":1,"2399":1,"2616":1,"2657":1},"1":{"2617":1,"2618":1,"2658":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1,"2665":1,"2666":1,"2667":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1,"2674":1},"2":{"408":2,"469":2,"817":2,"848":2,"892":1,"904":1,"913":1,"930":2,"1044":1,"1152":1,"1165":2,"1192":1,"1255":2,"1257":3,"1267":1,"1272":1,"1285":2,"1293":2,"1297":5,"1299":5,"1301":1,"1302":1,"1307":4,"1308":3,"1309":3,"1310":3,"1317":1,"1321":3,"1372":8,"1609":2,"1625":1,"1685":1,"1708":1,"1712":1,"1715":1,"1792":7,"1991":2,"2056":2,"2125":1,"2144":1,"2145":2,"2146":2,"2164":1,"2165":2,"2232":1,"2236":1,"2309":1,"2386":1,"2399":1,"2588":2,"2621":1,"2622":1,"2633":1,"2837":1}}],["9a",{"2":{"2144":5}}],["9a7wiy",{"2":{"1051":2}}],["95",{"2":{"1293":1,"1297":1}}],["956",{"2":{"1291":1}}],["9822970+02",{"2":{"1408":1}}],["984",{"2":{"1301":1}}],["988",{"2":{"1293":1,"1295":1,"1297":1}}],["98ms",{"2":{"1290":1}}],["98",{"2":{"1288":1,"1291":1}}],["989",{"2":{"1285":2}}],["928",{"2":{"2824":1}}],["92ms",{"2":{"1290":1,"1297":1}}],["921",{"2":{"1285":1,"1297":1}}],["92",{"2":{"1277":1}}],["941",{"2":{"1299":1}}],["947",{"2":{"1297":1}}],["949",{"2":{"1290":1,"1295":1}}],["94",{"2":{"1277":1,"1287":1,"1288":1,"2621":1}}],["940",{"2":{"1090":1,"1284":1}}],["9728",{"0":{"1833":1},"2":{"1792":2,"1827":1,"1831":1,"2223":1,"2481":2}}],["970",{"2":{"1293":1,"1297":1}}],["97",{"2":{"1293":1,"1299":2,"2621":1}}],["977",{"2":{"1289":1,"1291":1}}],["977ms",{"2":{"1268":1,"1271":1}}],["97ms",{"2":{"1289":1}}],["971",{"2":{"1285":1}}],["974",{"2":{"1269":1}}],["916",{"2":{"1301":1}}],["914",{"2":{"1290":1}}],["917",{"2":{"1287":1}}],["912",{"2":{"1285":1,"1297":1}}],["919",{"2":{"1285":1,"1299":1}}],["91",{"2":{"1255":1,"1257":1,"1264":1,"1284":1,"1287":2,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":2,"2397":1}}],["937",{"2":{"2824":3}}],["930",{"2":{"1299":1}}],["93ms",{"2":{"1290":1,"1299":1}}],["939",{"2":{"1289":1,"2824":2}}],["93",{"2":{"1023":1,"1268":1,"1289":1,"1291":1,"1293":1,"1299":2,"1714":1}}],["93561",{"2":{"1023":1}}],["961",{"2":{"2824":1}}],["966",{"2":{"1301":1}}],["964",{"2":{"1287":1,"1288":1}}],["96ms",{"2":{"1287":1,"1291":1}}],["960",{"2":{"1285":1,"1301":1}}],["96",{"2":{"874":1,"1277":2,"1289":1,"1295":1,"1301":1,"1714":1}}],["998",{"2":{"2824":2}}],["990",{"2":{"1293":1}}],["99ms",{"2":{"1291":1}}],["991",{"2":{"1291":1}}],["994",{"2":{"1290":1}}],["999",{"2":{"992":1,"1079":1,"2824":1,"2868":1}}],["9999",{"2":{"956":1,"1374":1}}],["99999",{"2":{"956":1,"1374":1}}],["9999999999",{"2":{"956":1,"1374":1}}],["99",{"2":{"562":2,"773":1,"956":2,"1189":2,"1192":1,"1277":1,"1374":2,"1442":1}}],["9",{"0":{"2231":1,"2675":1},"1":{"2676":1,"2677":1,"2678":1,"2679":1},"2":{"383":2,"817":1,"867":1,"869":2,"871":1,"913":2,"927":2,"1010":1,"1019":4,"1020":1,"1021":6,"1071":1,"1074":1,"1090":4,"1255":1,"1257":2,"1264":1,"1267":2,"1270":1,"1277":1,"1284":1,"1285":5,"1293":2,"1295":1,"1297":2,"1299":2,"1301":2,"1376":9,"1382":1,"1427":2,"1429":2,"1792":2,"2098":1,"2107":1,"2144":2,"2146":3,"2148":1,"2164":1,"2165":2,"2231":1,"2348":2,"2385":1,"2435":2,"2526":2,"2534":1,"2535":1,"2537":1,"2575":1,"2621":1,"2762":4,"2766":1,"2770":1,"2860":2,"2871":1}}],["907",{"2":{"1299":1}}],["90ms",{"2":{"1297":1}}],["906",{"2":{"1295":1}}],["908",{"2":{"1285":1}}],["900",{"2":{"622":1,"868":1,"1265":1}}],["90",{"2":{"188":1,"911":2,"1044":3,"1054":1,"1268":1,"1291":1,"1299":3,"1322":1,"1650":1,"1651":1,"1663":2,"1792":1,"2296":1,"2297":2}}],["90s",{"2":{"138":1,"1435":1,"1443":1}}],["✗",{"2":{"382":2,"650":1,"996":1,"2334":2,"2535":1}}],["✓",{"2":{"382":2,"996":1,"1220":5,"1221":4,"1222":4,"2104":1,"2334":2,"2535":1,"2537":1}}],["`+`",{"2":{"1792":1}}],["`|`",{"2":{"1792":1}}],["`authorization",{"2":{"1792":1}}],["`authorize`",{"2":{"1792":2}}],["`wrapintransaction",{"2":{"1792":1}}],["`requestheadersmode`",{"2":{"1792":1}}],["`requestheadersparametername`",{"2":{"1792":1}}],["`rate",{"2":{"1792":2}}],["`raise",{"2":{"1792":2}}],["`bodyjson`",{"2":{"1792":2}}],["`bearertoken`",{"2":{"1792":1}}],["`bearer",{"2":{"1063":1}}],["`querystring`",{"2":{"1792":2}}],["`get",{"2":{"1792":1}}],["`get`",{"2":{"1792":3}}],["`trace`",{"2":{"1792":1}}],["`type`",{"2":{"1792":2}}],["`openapi",{"2":{"1792":2}}],["`options`",{"2":{"1792":1}}],["`onlywithhttptag`",{"2":{"1792":1}}],["`onlyannotated`",{"2":{"1792":2}}],["`head`",{"2":{"1792":1}}],["`http`",{"2":{"1792":1}}],["`public`",{"2":{"2256":3}}],["`put`",{"2":{"1792":1}}],["`parserequest",{"2":{"1792":1}}],["`parseurl",{"2":{"1792":1}}],["`parseall`",{"2":{"1792":1}}],["`parameters`",{"2":{"1792":1}}],["`parameter`",{"2":{"1792":2}}],["`patch`",{"2":{"1792":1}}],["`post`",{"2":{"1792":2}}],["`logcommands`",{"2":{"1792":1}}],["`live`",{"2":{"1529":1}}],["`mcp`",{"2":{"1792":2}}],["`is",{"2":{"1792":1}}],["`ignore`",{"2":{"1792":3}}],["`import",{"2":{"1571":1,"1792":1}}],["`imported",{"2":{"894":1}}],["`nocontent`",{"2":{"1792":1}}],["`nullliteral`",{"2":{"1792":2}}],["`null`",{"2":{"1792":10}}],["`name`",{"2":{"1792":3}}],["`validationoptions",{"2":{"1792":1}}],["`signinasync",{"2":{"1792":1}}],["`search",{"2":{"1792":1}}],["`set",{"2":{"1792":3}}],["`source`",{"2":{"1792":1}}],["`sql`",{"2":{"1792":1}}],["`statusmessage`",{"2":{"1792":1}}],["`statuscode`",{"2":{"1792":1}}],["`scheme`",{"2":{"1792":1}}],["`keep`",{"2":{"1792":1}}],["`emptystring`",{"2":{"1792":2}}],["`endpointcreated`",{"2":{"1792":7}}],["`enabled`",{"2":{"1792":2}}],["`enabled",{"2":{"1792":1}}],["`export`",{"2":{"1792":1}}],["`export",{"2":{"1571":1}}],["`jwt`",{"2":{"1792":1}}],["`claimsidentity`",{"2":{"1792":1}}],["`context",{"2":{"1792":1}}],["`context`",{"2":{"1792":1}}],["`connect`",{"2":{"1792":1}}],["`cookiename`",{"2":{"1792":1}}],["`cookies`",{"2":{"1792":1}}],["`create",{"2":{"1792":1}}],["`cacheoptions",{"2":{"1792":1}}],["`cached",{"2":{"1792":1}}],["`cache",{"2":{"1342":1,"1792":3}}],["`user",{"2":{"1320":2}}],["`1",{"2":{"1024":1}}],["`delete`",{"2":{"1792":2}}],["`defaultpolicy`",{"2":{"1792":1}}],["`default`",{"2":{"370":1,"378":1}}],["`do",{"2":{"1792":1}}],["`data",{"2":{"961":2}}],["`",{"2":{"894":1,"961":1,"996":8,"1024":2,"1026":1,"1063":1,"1320":1,"1361":1,"1364":2,"1409":1,"1410":1,"1571":2,"1574":2,"1575":1,"1792":36,"2277":1,"2431":1,"2830":1}}],["`$",{"2":{"894":1,"1024":1,"1026":1,"1361":1,"1410":1,"1574":3,"1575":1,"2277":1,"2830":1}}],["``",{"2":{"388":1}}],["`=`",{"2":{"370":1,"378":1}}],["z0",{"2":{"2144":1,"2146":2}}],["zagreb",{"2":{"2453":1}}],["za",{"2":{"2144":1}}],["zone",{"2":{"995":1,"1050":1,"1792":1,"1856":1,"2451":2}}],["zk",{"2":{"927":2}}],["z",{"2":{"927":4,"1792":3,"1856":4,"2224":2,"2450":1,"2451":2,"2453":1,"2454":3,"2455":2,"2456":4,"2528":2,"2861":2,"2864":2,"2866":1}}],["zipcode",{"2":{"332":2,"1973":2,"2587":2,"2590":1}}],["zip",{"2":{"332":1,"1973":1,"2010":3,"2587":1}}],["zero",{"0":{"866":1,"947":1,"951":1,"1331":1,"1438":1,"1746":1,"2347":1},"1":{"867":1,"868":1,"869":1,"870":1,"871":1,"872":1,"873":1,"874":1,"875":1,"876":1,"877":1,"948":1,"949":1,"950":1,"951":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1},"2":{"258":1,"388":1,"421":1,"445":1,"529":1,"587":1,"834":1,"854":1,"868":1,"894":1,"947":1,"969":1,"1004":1,"1008":1,"1027":1,"1037":5,"1043":1,"1048":1,"1074":1,"1099":1,"1108":1,"1117":1,"1127":1,"1137":1,"1180":1,"1275":1,"1280":1,"1322":1,"1327":1,"1366":1,"1377":1,"1382":1,"1383":1,"1398":1,"1405":1,"1414":2,"1421":1,"1438":2,"1439":2,"1440":1,"1441":1,"1442":1,"1792":1,"1861":1,"1929":1,"2277":1,"2284":1,"2309":1,"2372":1,"2389":1,"2392":1,"2399":1,"2528":1,"2532":1,"2537":1,"2540":1,"2546":1,"2776":1,"2802":1,"2845":1,"2864":1}}],["q=members",{"2":{"1692":1,"1792":1}}],["q2",{"2":{"964":2}}],["q",{"2":{"964":2}}],["q1",{"2":{"325":2,"2319":1}}],["queues",{"2":{"1351":1}}],["queuelimit",{"2":{"1158":1,"1161":1,"1792":6,"1951":2,"1952":2,"1953":2,"1954":2,"1959":1,"1960":5,"2257":4,"2443":4,"2471":1,"2551":1}}],["queue",{"2":{"948":1,"1105":1,"1107":1,"1158":1,"1161":1,"1165":1,"1324":1}}],["queued",{"2":{"868":1,"1951":1,"1952":1,"1953":1,"1954":2}}],["questionable",{"2":{"1096":1}}],["questions",{"2":{"838":1,"2795":1}}],["question",{"2":{"831":1,"859":2,"861":1,"864":2,"1104":1,"1324":1}}],["queries",{"0":{"1370":1,"2751":1},"2":{"577":1,"837":1,"845":1,"848":1,"856":1,"859":1,"919":1,"920":1,"948":2,"966":1,"975":1,"1006":1,"1049":1,"1066":1,"1080":1,"1084":1,"1096":5,"1101":3,"1121":1,"1122":1,"1126":1,"1127":2,"1149":1,"1150":1,"1167":1,"1176":2,"1177":1,"1205":1,"1255":1,"1398":3,"1399":1,"1401":1,"1405":1,"1519":3,"1525":1,"1529":1,"1599":1,"1618":1,"1632":3,"1746":1,"1769":1,"1792":5,"1802":1,"1974":1,"2000":1,"2009":1,"2047":1,"2052":3,"2060":1,"2063":1,"2087":1,"2256":2,"2330":1,"2346":1,"2347":1,"2607":1,"2615":2,"2635":4,"2712":1,"2751":1,"2795":1,"2799":1,"2824":1,"2825":1,"2841":1,"2842":1,"2851":1}}],["queried",{"2":{"188":1,"2296":1}}],["query2",{"2":{"2008":1}}],["query1",{"2":{"2008":1}}],["querystring",{"2":{"1846":1,"1847":1,"1924":3,"1925":1,"2509":1,"2511":1,"2812":1}}],["querystringnullhandlinghandler",{"2":{"2597":1}}],["querystringnullhandling",{"0":{"1854":1,"2595":1},"2":{"470":1,"1792":1,"1836":1,"1853":1,"2594":1,"2595":1,"2597":1,"2666":1}}],["querytext",{"2":{"1370":1,"2850":1}}],["querying",{"2":{"851":1,"1174":1,"2063":1,"2350":1}}],["query=test",{"2":{"1033":1}}],["query=null",{"2":{"468":1}}],["query=",{"2":{"468":1}}],["query",{"0":{"137":1,"256":1,"423":1,"458":1,"520":1,"523":1,"1096":1,"1201":1,"1745":1,"1925":1,"2204":1,"2256":1,"2304":1,"2517":1,"2674":1,"2725":1,"2733":1},"1":{"459":1,"460":1,"461":1,"462":1,"463":1,"464":1,"465":1,"466":1,"467":1,"468":1,"469":1,"470":1,"471":1,"472":1,"1202":1,"1203":1,"1204":1,"1205":1},"2":{"75":2,"90":1,"106":2,"132":1,"139":1,"149":1,"152":1,"165":4,"167":1,"168":4,"186":1,"212":1,"226":3,"231":1,"250":2,"253":1,"258":1,"277":1,"281":1,"313":2,"385":1,"387":1,"408":2,"409":1,"414":3,"415":1,"423":3,"436":5,"446":2,"448":2,"452":2,"454":1,"458":6,"459":2,"460":1,"462":1,"463":1,"466":2,"467":1,"468":6,"469":1,"515":4,"516":2,"517":4,"518":1,"520":2,"522":1,"523":1,"524":2,"526":1,"558":2,"573":1,"579":1,"582":1,"585":1,"587":1,"615":1,"616":1,"624":2,"639":1,"844":1,"848":4,"851":1,"856":1,"857":1,"860":1,"861":1,"868":1,"873":2,"874":1,"918":3,"919":2,"920":2,"948":2,"956":1,"967":1,"968":1,"974":1,"1019":1,"1023":1,"1026":6,"1033":2,"1038":1,"1044":1,"1060":1,"1066":1,"1067":2,"1078":1,"1080":1,"1084":1,"1096":2,"1098":1,"1102":1,"1106":1,"1122":1,"1125":1,"1127":1,"1129":2,"1130":1,"1132":1,"1153":1,"1176":1,"1180":1,"1183":1,"1184":1,"1185":1,"1197":1,"1202":2,"1205":1,"1207":1,"1214":1,"1215":1,"1216":1,"1232":1,"1234":2,"1236":2,"1239":1,"1255":1,"1258":1,"1304":1,"1324":1,"1325":1,"1326":2,"1368":1,"1370":2,"1378":1,"1382":1,"1385":2,"1398":3,"1405":1,"1408":2,"1412":1,"1427":1,"1431":3,"1435":1,"1477":1,"1504":2,"1525":1,"1559":1,"1569":4,"1571":1,"1574":3,"1575":1,"1582":1,"1618":1,"1672":1,"1674":2,"1679":1,"1684":1,"1689":1,"1742":1,"1759":2,"1769":1,"1771":1,"1792":28,"1844":1,"1853":1,"1854":1,"1855":1,"1864":4,"1898":1,"1901":1,"1906":2,"1912":1,"1917":2,"1924":5,"1925":5,"1928":1,"1974":2,"2008":1,"2034":1,"2047":1,"2056":2,"2059":1,"2060":1,"2063":1,"2104":1,"2106":1,"2108":1,"2110":1,"2156":2,"2177":1,"2185":1,"2204":3,"2222":4,"2247":1,"2250":1,"2254":1,"2255":5,"2256":6,"2277":3,"2278":1,"2283":2,"2290":1,"2293":1,"2302":2,"2303":1,"2304":1,"2318":1,"2321":3,"2322":2,"2324":2,"2339":1,"2342":1,"2346":1,"2347":1,"2369":1,"2395":1,"2398":1,"2459":1,"2481":1,"2494":2,"2498":1,"2509":1,"2510":1,"2511":4,"2513":4,"2517":2,"2518":2,"2519":2,"2520":2,"2521":1,"2523":4,"2529":1,"2530":1,"2542":2,"2549":2,"2555":2,"2558":1,"2559":1,"2586":1,"2595":2,"2596":1,"2607":2,"2608":2,"2614":2,"2634":1,"2635":3,"2665":2,"2666":1,"2674":1,"2701":1,"2712":1,"2713":1,"2751":1,"2807":1,"2811":3,"2812":2,"2814":1,"2833":1,"2839":1,"2840":1,"2849":1,"2850":2,"2858":1,"2865":1,"2866":1,"2878":1}}],["quits",{"2":{"2106":1,"2532":1,"2537":1}}],["quic",{"2":{"1993":1}}],["quickly",{"2":{"919":1,"1123":1,"1171":1,"2772":1}}],["quick",{"0":{"2012":1,"2211":1,"2698":1,"2818":1,"2861":1},"1":{"2699":1,"2700":1,"2819":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":1,"2825":1,"2826":1},"2":{"136":3,"277":1,"523":3,"577":1,"836":1,"912":1,"959":1,"1037":1,"1073":1,"1074":1,"1154":2,"1385":1,"1405":1,"1599":1,"2054":1,"2793":1}}],["quietest",{"2":{"2801":1}}],["quietly",{"2":{"847":1,"860":1,"861":1,"872":1,"874":1,"1081":1}}],["quiet",{"2":{"633":1,"1171":1,"1792":1,"2094":1,"2107":1,"2536":1,"2537":3}}],["quarter=2",{"2":{"964":1}}],["quarter",{"2":{"964":3,"1792":2}}],["quarterly",{"2":{"325":7,"964":2}}],["quantified",{"0":{"872":1}}],["quantity",{"2":{"845":1,"863":1,"1044":2,"1187":1,"1188":1,"1189":1,"1191":3,"1192":2,"1373":1}}],["qualification",{"2":{"933":1}}],["qualified",{"2":{"582":1,"1792":1}}],["qualifying",{"2":{"933":1}}],["quality",{"0":{"875":1}}],["qualitative",{"2":{"872":1}}],["qualitatively",{"2":{"869":1,"872":1,"873":1}}],["quagmire",{"2":{"840":2,"857":1}}],["quoting",{"2":{"2270":1}}],["quotetext",{"2":{"2270":1}}],["quote",{"2":{"847":1,"851":2,"2040":1,"2270":1,"2476":1,"2603":1}}],["quotestyle=quotestyle",{"2":{"1202":1}}],["quotes",{"2":{"768":2,"786":3,"891":2,"1582":1,"1608":1,"1792":1,"2007":1,"2040":1,"2128":1,"2270":1,"2272":1,"2328":1,"2476":1,"2546":1,"2589":1,"2603":3}}],["quoted",{"2":{"378":3,"379":1,"869":1,"1608":1,"1792":1,"2272":1,"2333":3,"2496":1,"2528":1,"2531":1,"2540":1,"2687":1,"2845":1,"2863":1}}],["quota",{"2":{"479":1,"1069":1,"1955":1,"2379":1,"2438":1}}],["quot",{"0":{"375":2,"467":2,"564":2,"2249":4,"2544":2,"2734":2,"2754":2,"2755":2,"2799":2},"2":{"0":4,"63":2,"101":4,"102":2,"106":2,"108":2,"157":8,"184":6,"186":2,"220":2,"257":6,"289":2,"290":4,"322":8,"323":2,"361":12,"376":8,"383":4,"388":2,"408":2,"423":2,"436":2,"460":2,"464":4,"469":2,"551":2,"553":2,"565":2,"613":2,"615":2,"621":8,"623":8,"656":2,"704":2,"734":2,"762":2,"765":2,"772":2,"826":10,"831":2,"834":2,"835":2,"836":2,"838":6,"840":2,"843":8,"844":2,"845":2,"847":2,"848":2,"851":12,"852":4,"854":4,"855":6,"857":2,"859":2,"860":8,"863":4,"864":4,"865":4,"868":6,"871":2,"872":8,"876":12,"877":2,"904":4,"905":2,"937":2,"948":4,"952":2,"994":6,"1009":4,"1038":2,"1039":2,"1041":4,"1052":2,"1061":2,"1066":2,"1067":14,"1068":2,"1069":6,"1070":8,"1071":4,"1079":2,"1098":6,"1101":4,"1111":2,"1135":10,"1148":4,"1150":2,"1157":2,"1208":2,"1217":14,"1224":2,"1225":6,"1226":12,"1227":6,"1228":6,"1229":6,"1230":8,"1232":6,"1233":8,"1235":4,"1237":4,"1239":2,"1255":6,"1258":2,"1280":2,"1338":4,"1373":2,"1382":2,"1384":2,"1401":2,"1409":2,"1412":2,"1414":2,"1421":2,"1427":2,"1441":2,"1447":30,"1451":12,"1454":20,"1459":2,"1464":16,"1471":10,"1472":2,"1474":6,"1475":2,"1477":4,"1489":4,"1499":10,"1504":2,"1511":18,"1518":4,"1519":2,"1521":14,"1523":8,"1524":4,"1527":2,"1540":4,"1544":4,"1556":8,"1558":4,"1559":2,"1565":4,"1569":2,"1577":2,"1582":6,"1588":2,"1604":2,"1609":6,"1639":4,"1641":2,"1642":2,"1643":2,"1644":4,"1651":22,"1670":2,"1684":14,"1685":4,"1687":4,"1689":2,"1722":12,"1753":32,"1759":2,"1764":8,"1766":6,"1769":10,"1802":12,"1803":2,"1804":4,"1805":4,"1807":10,"1808":6,"1809":2,"1818":2,"1819":4,"1822":2,"1823":6,"1824":8,"1825":2,"1827":2,"1837":4,"1840":2,"1841":2,"1844":2,"1848":8,"1853":6,"1854":6,"1855":2,"1856":8,"1857":2,"1858":2,"1874":2,"1875":6,"1876":12,"1877":6,"1878":6,"1879":6,"1880":8,"1882":6,"1885":4,"1887":4,"1898":6,"1906":22,"1908":2,"1911":2,"1912":2,"1917":16,"1918":12,"1937":2,"1948":2,"1949":2,"1951":4,"1952":2,"1953":2,"1954":2,"1956":4,"1957":4,"1958":2,"1959":2,"1974":2,"2000":10,"2006":4,"2016":10,"2017":2,"2034":6,"2038":18,"2040":10,"2047":16,"2060":10,"2075":2,"2077":2,"2094":20,"2095":2,"2101":8,"2105":2,"2106":4,"2107":2,"2108":2,"2109":14,"2110":2,"2111":18,"2114":2,"2117":6,"2124":6,"2125":8,"2126":2,"2127":4,"2128":6,"2129":2,"2130":10,"2131":2,"2141":2,"2154":2,"2156":8,"2166":2,"2179":4,"2221":8,"2223":2,"2225":2,"2253":12,"2265":14,"2267":2,"2273":4,"2283":2,"2292":6,"2293":2,"2297":12,"2319":10,"2320":4,"2323":4,"2324":2,"2330":16,"2337":2,"2338":10,"2339":32,"2340":6,"2342":4,"2343":2,"2348":4,"2351":4,"2353":6,"2359":4,"2363":2,"2364":4,"2365":2,"2375":2,"2376":18,"2378":6,"2379":8,"2380":68,"2381":6,"2385":2,"2389":6,"2391":2,"2393":4,"2399":2,"2400":2,"2406":2,"2414":8,"2416":4,"2419":4,"2424":2,"2425":2,"2428":2,"2429":2,"2430":6,"2434":2,"2437":2,"2438":10,"2440":2,"2442":4,"2445":2,"2452":10,"2453":2,"2454":2,"2455":6,"2463":2,"2468":2,"2471":2,"2476":6,"2479":2,"2481":10,"2484":2,"2486":6,"2493":2,"2494":4,"2496":2,"2497":2,"2519":2,"2521":2,"2530":2,"2531":2,"2532":18,"2533":2,"2535":2,"2536":2,"2537":2,"2539":8,"2540":2,"2542":8,"2544":14,"2551":28,"2554":4,"2555":6,"2565":6,"2566":4,"2572":2,"2575":2,"2586":18,"2588":16,"2589":2,"2595":6,"2596":2,"2603":4,"2607":12,"2608":2,"2618":6,"2629":2,"2648":6,"2659":6,"2665":2,"2687":2,"2697":4,"2702":6,"2721":4,"2722":6,"2724":2,"2725":4,"2750":4,"2752":6,"2769":12,"2794":2,"2795":6,"2798":2,"2801":6,"2803":2,"2814":12,"2823":2,"2828":2,"2835":2,"2840":4,"2841":10,"2842":8,"2861":2,"2868":2,"2871":20,"2872":2,"2879":2,"2880":2}}],["|",{"2":{"306":2,"491":1,"603":1,"723":3,"872":1,"894":5,"920":50,"938":9,"961":3,"995":14,"996":7,"1024":11,"1026":5,"1317":2,"1318":1,"1342":5,"1366":3,"1386":6,"1408":10,"1410":1,"1413":3,"1416":2,"1553":2,"1558":2,"1567":9,"1569":3,"1570":6,"1571":5,"1792":5,"1909":1,"2038":2,"2171":2,"2247":2,"2252":16,"2273":4,"2359":4,"2426":7,"2451":1,"2457":1,"2540":1,"2590":12,"2611":11,"2760":4,"2807":3,"2828":2,"2845":1}}],["|||",{"2":{"344":1}}],["||",{"2":{"250":2,"520":4,"532":1,"834":1,"885":1,"894":1,"1021":5,"1026":2,"1038":4,"1338":2,"1339":4,"1366":2,"1376":1,"1410":1,"1427":3,"2285":1,"2452":1,"2762":1,"2815":1}}],[">default",{"2":{"1792":1}}],[">download",{"2":{"961":1,"1200":1}}],[">get",{"2":{"1061":1}}],[">view",{"2":{"961":1}}],[">logout",{"2":{"938":1,"1061":1}}],[">login",{"2":{"938":1,"1061":2}}],[">who",{"2":{"938":1,"1061":1}}],[">+",{"2":{"836":1}}],[">customer",{"2":{"836":1}}],[">admin",{"2":{"836":1}}],[">internal",{"2":{"836":1}}],[">>",{"2":{"695":1,"700":1,"764":1,"765":2,"766":1,"774":2,"883":2,"884":3,"888":3,"903":6,"904":3,"905":2,"1021":1,"1078":1,"1214":4,"1215":3,"1216":1,"1232":4,"1239":2,"1338":6,"1339":7,"1357":13,"1376":1,"1386":1,"1408":2,"1410":6,"1416":1,"1571":1,"1792":1,"2461":1,"2530":1,"2572":1,"2815":4,"2861":1,"2866":2,"2868":1,"2873":1}}],[">broadcaster",{"2":{"663":1}}],[">browser",{"2":{"663":1}}],[">using",{"2":{"663":1}}],[">eventsource",{"2":{"663":1}}],[">=",{"2":{"310":1,"894":1,"930":1,"1366":1,"1410":1,"2110":1}}],[">|filtered",{"2":{"663":1}}],[">|post|",{"2":{"663":1}}],[">|raise",{"2":{"663":1}}],[">|raise|",{"2":{"650":2}}],[">|registers",{"2":{"663":1}}],[">|opens",{"2":{"663":1}}],[">|",{"2":{"306":2,"2171":2,"2760":4,"2807":3,"2828":2}}],[">",{"2":{"297":4,"306":1,"310":1,"566":2,"650":11,"663":3,"765":1,"833":4,"836":4,"881":5,"883":1,"884":1,"888":2,"894":1,"904":1,"905":2,"922":2,"928":1,"929":3,"930":3,"938":7,"949":3,"995":2,"1021":3,"1024":1,"1061":8,"1074":1,"1078":2,"1086":2,"1087":2,"1088":1,"1130":1,"1148":3,"1184":3,"1185":2,"1211":2,"1214":1,"1220":6,"1221":6,"1222":6,"1234":1,"1235":1,"1305":3,"1317":1,"1333":7,"1339":9,"1342":1,"1366":2,"1376":3,"1386":1,"1408":1,"1427":3,"1431":1,"1491":3,"1518":3,"1567":1,"1569":1,"1685":1,"1792":16,"1868":2,"2039":1,"2171":3,"2187":1,"2247":1,"2255":9,"2265":3,"2321":1,"2359":1,"2461":1,"2526":1,"2572":1,"2677":1,"2682":1,"2694":1,"2700":1,"2760":1,"2807":4,"2824":2,"2825":2,"2828":2,"2860":1,"2868":1,"2869":1}}],["768",{"2":{"1991":1}}],["765",{"2":{"1299":1}}],["760",{"2":{"1293":1}}],["763",{"2":{"1293":1}}],["76ms",{"2":{"1288":1,"1297":1}}],["761",{"2":{"1285":1,"1295":1}}],["76",{"2":{"1278":1,"1293":2}}],["764",{"2":{"1269":1,"1285":1}}],["778",{"2":{"2825":1}}],["772",{"2":{"1291":1}}],["774",{"2":{"1290":1}}],["77",{"2":{"1277":1,"1288":1,"1299":1,"1301":1,"1427":1}}],["738",{"2":{"2825":1}}],["737",{"2":{"1293":1}}],["73",{"2":{"1277":1,"1284":1,"1287":1,"1291":1,"1293":1,"1295":1,"1299":1}}],["792",{"2":{"1297":1}}],["79ms",{"2":{"1290":1}}],["79",{"2":{"1268":1,"1277":2,"1284":2,"1287":1,"1290":1,"1291":1,"1299":1}}],["79851",{"2":{"1023":1}}],["7519",{"2":{"1445":1,"1453":1,"1457":1,"2554":1}}],["759",{"2":{"1295":1}}],["753",{"2":{"1291":1,"2825":2}}],["75ms",{"2":{"1287":1,"1299":1}}],["75",{"2":{"1277":1,"1291":1,"1299":1,"2879":1}}],["758",{"2":{"1270":1}}],["750",{"2":{"1181":1,"2825":3}}],["756",{"2":{"867":1,"874":1,"875":1,"1285":1,"1297":1}}],["788",{"2":{"1295":1}}],["781",{"2":{"1289":1}}],["787",{"2":{"1289":1}}],["785",{"2":{"1101":1}}],["78",{"2":{"1091":1,"1277":1,"1291":2,"1299":1,"2435":1}}],["7807",{"2":{"835":1,"1109":1,"1111":4,"1127":1,"1218":1,"2240":1,"2255":1,"2271":1}}],["7x",{"2":{"1090":1}}],["701",{"2":{"1301":1}}],["70ms",{"2":{"1290":1,"1299":1}}],["702",{"2":{"1285":1,"1291":1}}],["705",{"2":{"1269":1}}],["70",{"2":{"1027":1,"1277":1,"1290":1,"1366":1,"1401":2,"1429":1,"2621":1}}],["700",{"2":{"867":1,"1414":1}}],["71ms",{"2":{"1293":1}}],["715",{"2":{"1293":1}}],["711",{"2":{"1285":1,"1289":1}}],["710",{"2":{"1285":1,"1295":1,"1301":1}}],["71",{"2":{"1284":1,"1288":2,"1291":2}}],["71828",{"2":{"956":1,"1374":1}}],["7128",{"2":{"333":2}}],["7+",{"2":{"869":1,"1084":1,"1088":1,"1094":1,"1119":1,"1127":1}}],["74ms",{"2":{"1297":1}}],["743",{"2":{"1288":1}}],["749",{"2":{"1084":1,"1090":2,"1267":1,"1284":1,"1289":1}}],["740946",{"2":{"1023":1}}],["74",{"0":{"866":1},"1":{"867":1,"868":1,"869":1,"870":1,"871":1,"872":1,"873":1,"874":1,"875":1,"876":1,"877":1},"2":{"333":2,"867":1,"869":2,"872":2,"1037":1,"1295":1,"1299":2,"1383":1}}],["720",{"2":{"1289":1}}],["7230",{"2":{"1017":1,"1726":1,"2264":1}}],["72",{"0":{"927":1},"1":{"928":1,"929":1,"930":1},"2":{"308":1,"921":1,"927":1,"928":3,"929":1,"930":1,"944":1,"1049":1,"1284":3,"1289":1,"1291":2,"1301":1,"1714":1,"2177":1}}],["7",{"0":{"1394":1,"2233":1,"2570":1,"2619":1,"2646":1},"1":{"1395":1,"1396":1,"2571":1,"2572":1,"2620":1,"2621":1,"2622":1,"2647":1,"2648":1,"2649":1,"2650":1,"2651":1,"2652":1,"2653":1,"2654":1,"2655":1,"2656":1},"2":{"257":2,"869":3,"873":1,"876":1,"878":1,"883":2,"884":2,"886":4,"894":1,"902":2,"904":5,"913":2,"930":2,"947":1,"956":1,"966":1,"1037":1,"1053":1,"1090":1,"1236":1,"1237":1,"1255":3,"1257":2,"1263":1,"1270":2,"1285":6,"1287":3,"1288":3,"1289":3,"1290":3,"1291":3,"1293":4,"1295":6,"1297":4,"1299":4,"1301":6,"1374":1,"1382":1,"1429":2,"1453":1,"1454":3,"1463":1,"1464":2,"1792":4,"1886":1,"1887":1,"2164":1,"2165":2,"2233":1,"2236":1,"2238":1,"2277":2,"2376":2,"2377":1,"2385":1,"2386":2,"2398":3,"2435":1,"2546":1,"2554":2,"2571":1,"2588":2,"2621":2}}],["65535",{"2":{"1792":2,"1992":2}}],["65536",{"2":{"1792":1,"1990":1}}],["651",{"2":{"1295":1}}],["65",{"2":{"1293":1,"1299":1,"1991":1}}],["642",{"2":{"1301":1}}],["64",{"2":{"1289":1,"1290":1,"1297":1,"1299":1,"1301":1,"1516":1,"1618":1,"1620":1,"1714":2,"1792":2,"1991":1,"2265":1,"2614":1}}],["649",{"2":{"1288":1}}],["64ms",{"2":{"1287":1,"1297":1}}],["69ms",{"2":{"1301":1}}],["69",{"2":{"1295":1}}],["694",{"2":{"1291":2}}],["690",{"2":{"1289":1,"1301":1}}],["698",{"2":{"1288":1}}],["692",{"2":{"1287":2}}],["691",{"2":{"1284":1,"1290":1,"1291":1}}],["697",{"2":{"1270":1}}],["619",{"2":{"1301":1}}],["619455",{"2":{"1023":1}}],["613",{"2":{"1291":1,"1293":1}}],["61ms",{"2":{"1290":1,"1293":1,"1295":1}}],["610",{"2":{"1289":1,"1291":1}}],["615",{"2":{"1285":1,"1297":1}}],["618",{"2":{"1285":1,"1299":1}}],["61",{"2":{"1284":1}}],["687",{"2":{"1295":1}}],["683",{"2":{"1291":1}}],["685",{"2":{"1291":1}}],["68ms",{"2":{"1287":1}}],["68",{"2":{"1277":1,"2397":1}}],["620",{"2":{"1297":1}}],["623",{"2":{"1293":1}}],["62ms",{"2":{"1290":2}}],["624",{"2":{"1272":1,"1285":1}}],["629",{"2":{"1270":1,"1285":1}}],["628",{"2":{"1264":1,"1295":1}}],["66ms",{"2":{"1299":1}}],["661",{"2":{"1297":1}}],["663",{"2":{"1267":1}}],["6666666666666667",{"2":{"916":1,"917":1}}],["63ms",{"2":{"1301":1}}],["63",{"2":{"1297":1,"1301":1,"2546":1}}],["637",{"2":{"1291":1}}],["6379",{"2":{"121":1,"1067":1,"1146":1,"1147":1,"1177":1,"1510":1,"1514":1,"1515":1,"1534":1,"1792":1,"2274":1}}],["636",{"2":{"1291":1}}],["636ms",{"2":{"1091":1}}],["631",{"2":{"1285":1,"1295":1}}],["6x",{"2":{"1090":1,"1121":1,"1127":1}}],["6c",{"2":{"930":1}}],["6b",{"2":{"930":1}}],["6a",{"2":{"930":1}}],["6×",{"2":{"872":1,"874":2,"1382":1}}],["672",{"2":{"1301":1}}],["673",{"2":{"1301":1}}],["676",{"2":{"1297":1}}],["6750",{"2":{"2481":1}}],["675",{"2":{"1297":1}}],["67",{"2":{"1289":1,"1297":1}}],["677",{"2":{"1285":1}}],["67ms",{"2":{"1090":1,"1287":1,"1289":1,"1290":1}}],["679",{"2":{"867":1,"868":1,"872":1,"873":1,"1301":1}}],["67890",{"2":{"893":1}}],["6789",{"2":{"184":1,"186":1,"2292":1,"2293":1}}],["6",{"0":{"1218":1,"1362":1,"1393":1,"2234":1,"2568":1,"2612":1,"2630":1,"2636":1,"2639":1,"2643":1},"1":{"1363":1,"2569":1,"2613":1,"2614":1,"2615":1,"2631":1,"2632":1,"2633":1,"2634":1,"2635":1,"2637":1,"2638":1,"2640":1,"2641":1,"2642":1,"2644":1,"2645":1},"2":{"478":1,"851":1,"852":1,"863":1,"869":2,"873":2,"913":1,"915":1,"930":1,"1090":2,"1107":1,"1152":2,"1159":2,"1177":1,"1255":2,"1257":5,"1262":1,"1267":1,"1270":1,"1274":1,"1277":2,"1285":3,"1290":1,"1291":1,"1293":1,"1295":4,"1297":1,"1301":1,"1352":1,"1355":2,"1357":3,"1358":3,"1362":2,"1366":1,"1410":3,"1412":1,"1429":1,"1617":1,"1622":1,"1623":1,"1676":1,"1677":1,"1701":2,"1762":2,"1792":2,"1952":2,"1960":1,"1991":1,"2014":2,"2045":2,"2164":1,"2165":2,"2222":2,"2234":4,"2236":1,"2238":1,"2257":1,"2398":1,"2504":2,"2506":3,"2588":5,"2621":4,"2622":1,"2789":1,"2790":1,"2791":1,"2824":1,"2825":1}}],["606",{"2":{"1291":1}}],["60ms",{"2":{"1289":1}}],["603",{"2":{"1289":1,"1293":1}}],["604800",{"2":{"1455":1,"2554":1}}],["604",{"2":{"1287":1}}],["607ms",{"2":{"1091":1,"1268":1}}],["60",{"2":{"476":1,"477":1,"478":1,"479":1,"1053":1,"1062":1,"1069":2,"1071":1,"1145":1,"1158":2,"1159":1,"1162":2,"1177":1,"1245":1,"1255":1,"1277":1,"1278":1,"1288":1,"1291":1,"1401":1,"1453":1,"1454":3,"1463":1,"1464":3,"1510":1,"1511":1,"1513":1,"1721":1,"1722":1,"1792":9,"1893":1,"1951":2,"1952":2,"1955":2,"1958":1,"1959":1,"1960":3,"2175":1,"2257":2,"2270":1,"2376":2,"2377":1,"2379":2,"2441":1,"2470":1,"2471":1,"2502":1,"2554":2,"2737":1,"2769":2}}],["600+",{"2":{"1402":2}}],["6000000000000000",{"2":{"916":1,"917":1}}],["600",{"2":{"309":1,"363":1,"869":1,"873":1,"1049":1,"1171":3,"1265":2,"1638":1,"1639":1,"1646":1,"1792":2,"2073":1,"2075":1,"2080":1}}],["+7",{"2":{"2398":1}}],["+7dai62pqaybwjqihu96xpzmzyu",{"2":{"1051":2}}],["+5",{"2":{"2398":2}}],["+2",{"2":{"2398":1}}],["+0",{"2":{"2398":2}}],["+0000",{"2":{"1023":1}}],["+3",{"2":{"2398":3}}],["+10",{"2":{"2398":2}}],["+1",{"2":{"2398":1}}],["+$",{"2":{"1792":1,"2142":1,"2146":1,"2575":1}}],["+x",{"2":{"1117":1,"2782":1,"2783":1,"2784":1}}],["+=",{"2":{"996":1}}],["+",{"0":{"1114":1,"1115":2,"1423":1,"1714":1,"2380":1,"2493":1},"1":{"1424":1,"1425":1,"1426":1,"1427":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"1434":1,"2381":1},"2":{"109":1,"214":4,"297":1,"308":1,"310":2,"313":1,"320":3,"378":1,"395":1,"414":2,"423":2,"429":1,"436":2,"446":5,"622":1,"723":2,"764":1,"765":1,"766":1,"774":1,"817":1,"833":1,"835":1,"860":2,"869":7,"871":1,"873":1,"874":1,"881":1,"883":1,"884":1,"885":2,"888":1,"894":2,"904":1,"911":1,"928":2,"929":3,"933":2,"938":1,"961":2,"969":1,"995":2,"1005":1,"1027":2,"1037":4,"1047":1,"1064":1,"1084":1,"1102":1,"1106":2,"1108":1,"1127":1,"1180":1,"1181":20,"1184":2,"1211":1,"1214":1,"1232":1,"1234":1,"1255":4,"1257":4,"1317":2,"1320":2,"1322":1,"1325":1,"1333":1,"1338":1,"1339":2,"1342":1,"1351":1,"1366":3,"1379":1,"1386":1,"1408":1,"1410":2,"1413":2,"1427":2,"1429":4,"1431":2,"1458":1,"1515":1,"1522":2,"1567":2,"1568":2,"1569":1,"1571":1,"1572":3,"1573":2,"1574":1,"1581":1,"1743":4,"1774":1,"1792":10,"1830":2,"1831":1,"1868":1,"1909":1,"2106":1,"2142":2,"2144":1,"2146":5,"2148":1,"2158":1,"2166":2,"2167":2,"2177":1,"2188":2,"2225":1,"2247":1,"2265":2,"2310":1,"2313":1,"2323":1,"2330":2,"2332":2,"2333":4,"2347":1,"2372":1,"2375":1,"2380":1,"2416":1,"2421":1,"2435":4,"2438":1,"2479":1,"2481":3,"2482":2,"2492":1,"2498":1,"2502":4,"2506":1,"2523":1,"2531":1,"2537":2,"2538":1,"2540":1,"2545":1,"2575":3,"2655":1,"2745":1,"2762":5,"2765":3,"2795":1,"2807":1,"2811":6,"2828":1,"2830":1,"2832":1,"2836":2,"2845":1,"2869":1,"2870":1}}],["→",{"0":{"854":1,"855":1,"856":1,"857":1},"2":{"105":2,"106":2,"107":3,"187":1,"212":2,"254":1,"255":1,"256":1,"257":1,"263":2,"291":2,"298":3,"299":1,"301":4,"303":2,"304":2,"306":3,"376":1,"379":3,"388":1,"390":1,"395":2,"405":1,"406":1,"408":3,"414":5,"439":3,"462":4,"463":3,"464":4,"469":2,"524":2,"553":1,"554":1,"555":1,"611":1,"612":1,"613":1,"691":1,"699":2,"849":2,"854":3,"869":1,"871":4,"872":3,"874":1,"876":1,"904":1,"975":3,"1008":8,"1015":2,"1037":1,"1041":3,"1043":2,"1044":9,"1045":3,"1067":5,"1104":1,"1111":2,"1359":3,"1381":1,"1405":21,"1408":1,"1458":3,"1521":3,"1525":3,"1576":3,"1580":1,"1605":2,"1706":2,"1745":2,"1747":2,"1792":8,"1824":3,"1862":1,"1924":2,"2040":3,"2111":1,"2171":1,"2176":3,"2177":2,"2183":1,"2184":1,"2186":1,"2187":3,"2222":1,"2277":4,"2282":3,"2294":1,"2302":5,"2319":1,"2320":3,"2321":3,"2324":2,"2327":2,"2333":3,"2346":2,"2357":2,"2375":3,"2380":1,"2381":4,"2384":1,"2386":5,"2397":1,"2433":1,"2435":4,"2461":2,"2465":5,"2476":2,"2481":14,"2483":2,"2497":2,"2498":1,"2504":2,"2509":2,"2513":1,"2532":1,"2534":2,"2536":1,"2537":2,"2540":1,"2544":2,"2588":2,"2590":2,"2607":7,"2611":3,"2664":1,"2665":3,"2688":2,"2733":1,"2815":1,"2832":2,"2840":2,"2843":6,"2845":1,"2848":4,"2851":3,"2867":2,"2872":3}}],["4px",{"2":{"1792":1,"2073":1,"2075":1,"2080":1}}],["498",{"2":{"1301":1}}],["499",{"2":{"1299":1}}],["49ms",{"2":{"1295":1,"2535":1}}],["491",{"2":{"1288":1,"1299":1}}],["492",{"2":{"1285":1}}],["49",{"2":{"1277":1,"1301":1,"2824":11}}],["47",{"2":{"1408":1,"2824":2}}],["476",{"2":{"1297":1}}],["47ms",{"2":{"1288":1,"1293":1,"1301":1}}],["478",{"2":{"1284":1,"1287":1,"1295":1}}],["479",{"2":{"1270":1,"1285":1}}],["470",{"2":{"1270":1,"1284":1,"1285":1,"1295":1}}],["471",{"2":{"1267":1,"1284":1,"1287":1}}],["414",{"2":{"1431":1,"1792":1,"1917":1,"1925":1,"2222":1,"2517":1}}],["41ms",{"2":{"1289":1,"1299":1,"1301":1}}],["411",{"2":{"1277":1}}],["41",{"2":{"1277":1,"1297":1,"1714":1,"2435":1}}],["410",{"2":{"1269":1,"1285":1,"1293":1}}],["419",{"2":{"867":1,"1267":1}}],["48",{"2":{"1293":1,"1714":1}}],["48ms",{"2":{"1291":1}}],["481",{"2":{"1287":1,"1293":1}}],["483",{"2":{"1287":1}}],["487",{"2":{"1285":1,"1295":1}}],["482",{"2":{"1284":1}}],["484",{"2":{"1284":1}}],["485",{"2":{"1267":1}}],["480",{"2":{"1090":1,"1267":1,"1284":1,"1287":1,"1290":1}}],["462",{"2":{"1301":1}}],["463",{"2":{"1291":1}}],["468",{"2":{"1291":1,"1293":1}}],["468ms",{"2":{"1091":1,"1268":1}}],["464",{"2":{"1284":1,"1287":1}}],["466",{"2":{"1284":1,"1287":1}}],["469",{"2":{"1262":1,"1264":1,"1290":1}}],["46",{"2":{"1165":1,"1301":1}}],["4x",{"2":{"948":1,"1090":1,"1269":1}}],["4mb",{"2":{"919":1}}],["4+",{"2":{"919":1,"1097":1,"2607":1,"2611":1}}],["4317",{"2":{"1792":1,"1800":1,"1807":2,"2804":1}}],["431",{"2":{"1431":1,"1792":1,"1917":1,"1925":1,"2222":1,"2517":1}}],["430",{"2":{"1301":1}}],["437",{"2":{"1295":1}}],["43ms",{"2":{"1290":1}}],["435",{"2":{"1269":1}}],["43",{"2":{"867":1,"1277":1,"1299":1}}],["4",{"0":{"858":1,"943":1,"1003":1,"1022":1,"1070":1,"1216":1,"1250":1,"1310":1,"1358":1,"1391":1,"2236":1,"2520":1,"2541":1,"2563":1,"2583":1,"2592":1,"2598":1,"2601":1,"2605":2,"2609":1,"2612":1,"2616":1,"2619":1,"2825":1},"1":{"859":1,"860":1,"861":1,"2542":1,"2543":1,"2564":1,"2565":1,"2566":1,"2567":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2591":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2599":1,"2600":1,"2602":1,"2603":1,"2604":1,"2606":2,"2607":2,"2608":2,"2610":1,"2611":1,"2613":1,"2614":1,"2615":1,"2617":1,"2618":1,"2620":1,"2621":1,"2622":1},"2":{"695":1,"746":1,"760":1,"770":1,"843":1,"865":1,"867":2,"874":1,"875":1,"888":2,"897":1,"913":10,"916":2,"917":3,"918":4,"919":11,"930":2,"956":4,"1007":1,"1048":1,"1050":2,"1051":1,"1053":3,"1054":7,"1055":4,"1056":7,"1057":6,"1058":3,"1059":1,"1060":6,"1062":6,"1084":1,"1090":4,"1097":1,"1102":1,"1105":2,"1152":1,"1181":1,"1193":2,"1255":4,"1257":5,"1263":2,"1264":1,"1265":5,"1267":9,"1269":1,"1270":1,"1272":2,"1277":7,"1280":1,"1281":1,"1284":8,"1285":5,"1287":2,"1288":8,"1289":10,"1290":2,"1291":11,"1293":5,"1295":10,"1297":2,"1299":2,"1301":2,"1336":2,"1374":3,"1429":1,"1625":1,"1714":1,"1792":4,"2094":1,"2095":1,"2105":1,"2113":1,"2125":1,"2144":3,"2164":1,"2165":2,"2171":1,"2236":10,"2238":1,"2386":1,"2398":4,"2465":2,"2504":2,"2535":1,"2537":2,"2586":2,"2588":9,"2590":1,"2621":2,"2821":1,"2873":1,"2879":1,"2880":1}}],["447",{"2":{"1301":1}}],["448",{"2":{"1295":1}}],["442",{"2":{"1293":1}}],["449",{"2":{"1290":1}}],["44ms",{"2":{"1289":1,"1290":1}}],["445",{"2":{"1270":1}}],["4460",{"2":{"1101":1}}],["44",{"2":{"308":1,"1297":1,"2177":1,"2671":1}}],["42p18",{"2":{"2336":1}}],["42883",{"2":{"2242":1,"2255":2,"2496":1}}],["428",{"2":{"1297":1}}],["42703",{"2":{"1386":1,"2328":1,"2840":1}}],["427",{"2":{"1295":1}}],["424",{"2":{"1289":1,"1293":1}}],["42ms",{"2":{"1288":1,"1291":1}}],["426",{"2":{"1285":1,"1297":2}}],["425",{"2":{"1284":2,"1287":1}}],["42501",{"2":{"1111":2,"1669":1,"1673":1,"1674":1,"1678":1,"1792":1,"2255":2}}],["421",{"2":{"1267":1}}],["423",{"2":{"1090":1,"1267":1,"1284":1,"1289":1}}],["42",{"2":{"256":2,"378":2,"405":2,"406":2,"408":2,"527":1,"565":2,"566":1,"585":2,"615":1,"691":2,"956":1,"1041":1,"1069":1,"1257":1,"1277":1,"1290":1,"1291":1,"1374":1,"1738":1,"1824":1,"2277":2,"2283":2,"2320":2,"2321":1,"2333":3,"2335":2,"2337":2,"2339":1,"2665":2,"2823":1,"2848":1}}],["429",{"2":{"213":2,"214":1,"480":1,"1032":3,"1104":1,"1105":1,"1157":1,"1739":1,"1740":2,"1741":1,"1742":2,"1792":2,"1948":1,"1949":1,"1958":2,"1960":1,"2257":1,"2287":1,"2288":2,"2289":1,"2290":2,"2470":1,"2765":2}}],["457",{"2":{"1301":1}}],["459",{"2":{"1291":1}}],["45ms",{"2":{"1288":1,"1291":1}}],["452",{"2":{"1285":1,"1301":1}}],["458",{"2":{"1285":1}}],["450",{"2":{"887":2}}],["45678",{"2":{"887":1}}],["45",{"2":{"184":1,"186":1,"872":1,"900":1,"919":10,"956":1,"977":1,"980":1,"990":1,"995":1,"1287":1,"1374":1,"1464":1,"2292":1,"2293":1,"2376":1}}],["4th",{"2":{"50":1,"51":1,"1403":1}}],["40y",{"2":{"2861":1}}],["402",{"2":{"1293":1}}],["40ms",{"2":{"1290":2,"1293":1}}],["405",{"2":{"1290":1,"1824":1,"2258":1,"2481":1}}],["406",{"2":{"1284":1}}],["409",{"2":{"1111":3,"1678":1}}],["4096",{"2":{"747":1,"1792":3,"1992":1,"2123":1,"2125":1}}],["400s",{"2":{"2384":2}}],["400",{"0":{"2384":1,"2491":1},"2":{"817":1,"819":1,"1026":1,"1071":2,"1111":2,"1169":2,"1181":4,"1234":1,"1236":1,"1265":3,"1285":1,"1366":2,"1669":2,"1673":2,"1674":2,"1676":1,"1677":1,"1678":3,"1742":1,"1792":10,"1824":1,"2110":1,"2138":1,"2141":1,"2142":4,"2144":3,"2145":2,"2146":8,"2148":1,"2149":1,"2223":1,"2255":13,"2267":1,"2290":1,"2384":6,"2481":1,"2491":1,"2498":1,"2575":6,"2723":1}}],["40001",{"2":{"576":1,"577":3,"1152":2,"1153":1,"1154":3,"1155":1,"1177":1,"1587":1,"1592":1,"1597":3,"1598":1,"1617":1,"1622":1,"1624":1,"1633":1,"1792":2,"2824":1,"2825":1}}],["40p01",{"2":{"576":1,"577":3,"1153":1,"1154":3,"1155":1,"1177":1,"1587":1,"1592":1,"1597":3,"1598":1,"1792":1}}],["40",{"2":{"333":2,"869":1,"1155":1,"1277":1,"1288":1,"1297":1,"1401":3}}],["404",{"0":{"2491":1,"2723":1},"2":{"210":1,"261":1,"263":1,"302":1,"309":1,"377":1,"447":1,"524":3,"1042":1,"1055":1,"1111":1,"1335":1,"1341":1,"1732":1,"1747":1,"1792":2,"1922":1,"1930":1,"2178":1,"2223":1,"2242":1,"2255":3,"2258":1,"2264":1,"2267":2,"2271":1,"2333":1,"2344":1,"2489":1,"2491":1,"2529":1,"2537":1,"2549":1,"2566":1,"2723":2,"2732":1,"2865":1,"2876":1,"2881":1}}],["403",{"2":{"25":1,"691":1,"1045":1,"1057":1,"1061":1,"1111":2,"1669":1,"1673":1,"1674":1,"1678":1,"1792":4,"1823":1,"1824":1,"1825":1,"2181":1,"2187":1,"2255":3,"2271":1,"2481":2,"2498":2}}],["401",{"2":{"16":1,"25":1,"35":1,"39":1,"60":1,"63":1,"64":1,"297":1,"298":1,"299":2,"301":2,"313":1,"690":1,"710":1,"934":1,"1045":1,"1055":1,"1077":1,"1111":1,"1269":1,"1480":1,"1688":1,"1792":2,"1825":2,"1827":1,"1830":1,"2176":1,"2187":1,"2271":2,"2420":2,"2481":3,"2498":2,"2529":1,"2823":1}}],["x00",{"2":{"2265":1,"2495":2}}],["x00null",{"2":{"2265":1}}],["x1f",{"2":{"2265":1,"2495":1}}],["xcontenttypeoptions",{"2":{"1792":1,"2015":1,"2016":1,"2017":1,"2027":1,"2028":1,"2029":1,"2632":1}}],["xsrf",{"2":{"1564":1,"1582":1,"1792":2}}],["xsrftokenheadername",{"2":{"1553":1,"1564":1,"1582":1,"1792":1}}],["xss",{"2":{"1448":1,"1792":1,"2016":1,"2020":1,"2632":1}}],["x86",{"2":{"1255":1}}],["xframeoptions",{"2":{"1792":1,"2015":1,"2016":1,"2018":1,"2027":1,"2028":1,"2029":1,"2632":1}}],["xf",{"2":{"1118":1}}],["xz",{"2":{"1118":2}}],["x64",{"0":{"2781":1,"2782":1},"2":{"1117":1,"1118":2,"2270":1,"2779":1,"2792":4}}],["x+e",{"2":{"1051":2}}],["xpath",{"0":{"1427":1,"1428":1},"2":{"1037":1,"1423":2,"1424":1,"1427":2,"1428":1,"1429":5,"1432":1,"2164":1,"2762":4,"2770":1}}],["xt",{"2":{"927":2}}],["xyz",{"2":{"915":2}}],["xmlparse",{"2":{"1423":1,"1427":1,"1428":1,"2762":2}}],["xml",{"0":{"1423":1},"1":{"1424":1,"1425":1,"1426":1,"1427":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"1434":1},"2":{"918":1,"953":1,"1037":1,"1094":1,"1423":1,"1424":1,"1427":2,"1428":2,"1655":1,"1792":3,"1936":2,"1943":3,"2094":1,"2102":2,"2164":1,"2221":1,"2394":2,"2526":1,"2535":2,"2537":1,"2880":4}}],["xmlhttprequest",{"2":{"894":1,"1366":1,"1410":3}}],["xmin",{"2":{"854":1}}],["xhr",{"2":{"894":7,"1366":7,"1410":5}}],["xunit",{"2":{"876":1,"2535":1}}],["xls",{"2":{"769":1}}],["xlsx`",{"2":{"961":1}}],["xlsx",{"2":{"675":1,"678":1,"679":1,"769":1,"772":1,"773":2,"887":2,"893":1,"904":1,"947":1,"949":2,"959":1,"960":1,"964":2,"971":1,"1037":1,"1099":2,"1127":1,"1374":2,"1792":1,"2077":1,"2078":1,"2079":1,"2652":1,"2653":1}}],["x26",{"2":{"209":1,"864":2,"881":2,"894":4,"922":1,"930":2,"956":1,"995":4,"996":1,"1019":1,"1023":3,"1305":1,"1335":8,"1364":1,"1366":4,"1374":1,"1380":4,"1386":2,"1398":1,"1408":2,"1410":2,"1416":2,"1567":2,"1574":2,"1697":3,"1792":20,"2321":1,"2701":5,"2766":1}}],["x",{"0":{"1493":1,"2017":1,"2018":1},"2":{"101":1,"209":1,"297":2,"369":1,"375":1,"540":1,"546":1,"650":3,"668":1,"701":1,"834":1,"836":1,"868":1,"869":1,"903":3,"927":2,"930":1,"1100":3,"1317":1,"1326":2,"1416":1,"1489":1,"1493":1,"1494":1,"1521":1,"1582":3,"1620":1,"1643":1,"1651":1,"1659":1,"1661":1,"1703":2,"1705":3,"1706":2,"1711":4,"1788":2,"1792":21,"1836":1,"1848":1,"1859":2,"1863":1,"1905":1,"1957":2,"1974":1,"2018":1,"2030":1,"2106":1,"2202":2,"2247":1,"2297":1,"2332":3,"2379":2,"2380":1,"2391":1,"2399":1,"2438":1,"2526":2,"2528":2,"2529":1,"2536":1,"2537":1,"2539":1,"2565":2,"2586":2,"2607":1,"2632":6,"2633":8,"2701":1,"2739":1,"2795":2,"2833":1,"2835":2,"2860":2,"2861":1,"2864":2,"2865":1,"2866":1,"2881":1}}],["xxxxx",{"2":{"2872":1}}],["xxx=test",{"2":{"2679":1,"2696":1}}],["xxx",{"2":{"40":2}}],["x3c",{"2":{"14":3,"30":2,"45":2,"56":2,"69":1,"79":4,"92":1,"102":1,"113":3,"133":4,"145":2,"155":2,"175":2,"179":2,"193":2,"243":4,"268":2,"318":4,"340":1,"348":5,"358":4,"370":42,"399":1,"429":1,"459":2,"474":2,"498":2,"508":1,"516":2,"528":2,"537":2,"539":12,"550":3,"560":2,"570":4,"582":2,"599":1,"628":2,"637":5,"650":7,"651":3,"663":6,"674":3,"685":2,"719":8,"745":1,"809":6,"836":6,"894":3,"927":2,"929":2,"938":17,"956":1,"961":4,"965":9,"995":2,"996":38,"1024":1,"1026":3,"1038":1,"1042":1,"1061":33,"1086":2,"1087":2,"1088":1,"1150":1,"1200":2,"1211":2,"1214":1,"1234":1,"1317":1,"1342":1,"1366":5,"1374":1,"1386":4,"1408":6,"1409":2,"1410":4,"1416":2,"1427":8,"1491":4,"1567":1,"1568":1,"1569":1,"1571":2,"1574":1,"1685":10,"1792":45,"1868":2,"2039":5,"2040":2,"2073":2,"2075":2,"2080":2,"2148":1,"2247":1,"2255":9,"2256":4,"2257":2,"2265":8,"2266":3,"2310":1,"2313":1,"2357":1,"2359":4,"2405":1,"2461":3,"2476":2,"2575":1,"2632":4,"2832":2}}],["$schema",{"2":{"2670":1}}],["$scheme",{"2":{"1711":1}}],["$credential",{"2":{"1792":3}}],["$host",{"2":{"1711":1}}],["$proxy",{"2":{"1711":1}}],["$lib",{"2":{"1416":3,"1417":2,"1574":5,"1581":4}}],["$8",{"2":{"1217":1,"1237":1,"1792":3,"1887":1,"1893":2}}],["$7=usercontext",{"2":{"1220":1,"1221":1}}],["$7",{"2":{"1217":1,"1237":1,"1792":3,"1887":1,"1893":2}}],["$6=backupeligible",{"2":{"1220":1,"1221":1}}],["$6",{"2":{"1217":1,"1237":1,"1376":3,"1792":3,"1887":1,"1893":2}}],["$wrz7",{"2":{"927":2}}],["$",{"2":{"382":1,"817":1,"894":1,"897":1,"926":6,"961":2,"996":2,"1024":2,"1026":1,"1063":1,"1320":2,"1342":1,"1366":1,"1409":1,"1429":2,"1575":1,"1661":1,"1792":1,"2144":3,"2146":2,"2148":1,"2277":1,"2334":1,"2565":1,"2575":1,"2622":2,"2830":1}}],["$$",{"2":{"184":2,"186":2,"207":2,"208":2,"209":2,"263":4,"264":4,"292":2,"298":2,"308":4,"309":2,"310":4,"312":2,"313":2,"322":2,"351":2,"386":2,"415":2,"423":2,"426":2,"427":2,"428":2,"439":2,"449":2,"452":2,"454":2,"584":2,"621":2,"641":2,"646":2,"658":2,"659":2,"664":4,"665":2,"750":2,"751":2,"752":2,"755":2,"756":2,"764":2,"765":2,"766":2,"774":2,"777":2,"812":2,"813":2,"814":2,"815":2,"826":2,"883":2,"884":2,"888":2,"904":2,"928":2,"929":2,"930":2,"979":2,"980":2,"986":2,"988":2,"989":2,"990":6,"991":2,"992":2,"994":2,"1005":2,"1021":2,"1024":1,"1029":2,"1056":4,"1060":2,"1068":2,"1076":4,"1105":6,"1179":2,"1193":4,"1197":2,"1214":2,"1215":2,"1216":2,"1232":2,"1234":2,"1235":2,"1236":2,"1239":2,"1309":2,"1321":2,"1332":2,"1338":2,"1339":2,"1347":2,"1348":2,"1372":2,"1376":2,"1387":2,"1390":2,"1393":4,"1394":2,"1395":4,"1396":2,"1419":2,"1427":2,"1431":2,"1442":2,"1458":6,"1504":2,"1567":2,"1689":2,"1727":2,"1736":2,"1742":2,"1745":2,"1792":2,"1921":2,"1924":2,"1926":2,"2147":2,"2176":2,"2177":4,"2183":2,"2184":2,"2186":2,"2187":6,"2264":2,"2283":2,"2290":2,"2292":2,"2293":2,"2303":2,"2304":2,"2319":2,"2337":2,"2338":2,"2343":2,"2344":4,"2346":2,"2375":6,"2528":4,"2549":6,"2572":2,"2575":2,"2580":4,"2586":2,"2587":2,"2588":2,"2589":2,"2607":2,"2762":2,"2764":2,"2766":2,"2767":2,"2802":2,"2803":2,"2809":2,"2810":2,"2812":2,"2813":2,"2815":2,"2829":4,"2834":6,"2836":4,"2855":2,"2863":2,"2864":2}}],["$n",{"0":{"2846":1},"2":{"165":1,"168":1,"170":1,"306":1,"528":1,"529":1,"1372":1,"1386":1,"2284":1,"2319":1,"2321":3,"2323":3,"2540":4,"2845":2,"2855":1}}],["$5=source",{"2":{"1792":1}}],["$5=transports",{"2":{"1220":1,"1221":1}}],["$59",{"2":{"1044":1}}],["$5",{"2":{"31":1,"37":2,"38":1,"39":1,"40":1,"50":1,"1059":1,"1062":1,"1217":1,"1237":1,"1376":3,"1501":1,"1547":2,"1683":1,"1684":1,"1687":1,"1689":2,"1698":1,"1792":8,"1800":1,"1805":2,"1806":1,"1810":1,"1887":1,"1893":2,"2496":1,"2803":1,"2804":1}}],["$4=exception",{"2":{"1792":1}}],["$4=algorithm",{"2":{"1220":1,"1221":1}}],["$4=meta",{"2":{"881":3}}],["$4",{"0":{"762":1,"772":1},"2":{"31":1,"37":2,"38":1,"39":1,"40":1,"50":2,"760":1,"761":1,"764":1,"767":1,"770":1,"771":1,"774":1,"775":1,"787":1,"789":1,"882":1,"886":1,"893":2,"899":1,"900":1,"902":1,"904":2,"1059":1,"1062":1,"1217":2,"1237":1,"1239":1,"1376":2,"1398":2,"1501":1,"1547":2,"1683":1,"1684":1,"1687":1,"1689":2,"1698":1,"1792":15,"1800":1,"1805":2,"1806":1,"1810":1,"1887":1,"1888":1,"1893":3,"2123":2,"2125":1,"2128":2,"2129":1,"2130":2,"2131":1,"2132":2,"2496":1,"2572":1,"2803":1,"2804":1}}],["$3=timestamp",{"2":{"1792":1}}],["$3=usercontext",{"2":{"1222":1}}],["$3=publickey",{"2":{"1220":1,"1221":1}}],["$3=prev",{"2":{"881":3}}],["$3",{"0":{"885":1},"2":{"31":1,"37":2,"38":2,"39":1,"40":2,"41":1,"50":1,"305":1,"310":3,"312":1,"360":2,"380":2,"622":3,"760":2,"761":5,"764":1,"767":1,"770":2,"771":6,"774":1,"775":1,"787":1,"789":1,"797":2,"882":1,"883":1,"885":1,"886":1,"899":1,"900":1,"902":1,"904":1,"1056":2,"1059":1,"1062":3,"1150":2,"1197":2,"1217":2,"1237":1,"1239":1,"1371":2,"1372":2,"1376":2,"1398":4,"1473":1,"1501":1,"1503":1,"1504":2,"1505":1,"1547":2,"1567":3,"1683":1,"1684":1,"1687":1,"1689":3,"1698":1,"1727":4,"1792":16,"1800":1,"1805":2,"1806":1,"1810":1,"1887":1,"1888":1,"1893":3,"2123":2,"2128":2,"2129":1,"2130":2,"2131":1,"2132":2,"2147":2,"2333":2,"2803":1,"2804":1,"2829":1}}],["$2=42",{"2":{"2321":1}}],["$2=message",{"2":{"1792":1}}],["$2=newsigncount",{"2":{"1222":1}}],["$2=userhandle",{"2":{"1220":1,"1221":1}}],["$2=",{"2":{"1220":1,"1221":1,"1222":1}}],["$2=data",{"2":{"881":3}}],["$2=2024",{"2":{"372":1,"2846":1}}],["$2",{"2":{"31":1,"37":2,"38":1,"39":1,"40":1,"50":1,"71":2,"157":1,"184":2,"298":2,"305":1,"310":3,"312":2,"360":1,"369":1,"370":1,"372":3,"373":2,"376":3,"377":1,"380":2,"382":1,"503":2,"510":2,"520":2,"584":2,"586":2,"592":2,"622":3,"665":2,"760":1,"761":1,"764":1,"767":1,"770":1,"771":1,"774":1,"775":2,"787":1,"789":1,"797":2,"826":2,"827":2,"849":1,"882":1,"886":1,"899":1,"900":2,"902":1,"904":1,"1038":3,"1040":1,"1045":2,"1054":1,"1056":2,"1059":1,"1062":3,"1073":2,"1150":3,"1154":1,"1179":3,"1197":2,"1217":3,"1220":1,"1221":3,"1222":3,"1232":1,"1234":1,"1235":1,"1237":1,"1239":1,"1371":4,"1372":2,"1376":2,"1386":1,"1395":1,"1398":3,"1410":3,"1458":2,"1473":1,"1501":1,"1503":1,"1504":3,"1505":1,"1547":2,"1567":3,"1650":1,"1651":2,"1655":2,"1663":1,"1664":2,"1683":1,"1684":1,"1687":1,"1689":3,"1698":1,"1727":1,"1792":23,"1800":1,"1805":2,"1806":1,"1810":1,"1882":1,"1884":1,"1885":1,"1887":1,"1888":1,"1893":6,"2123":2,"2128":2,"2129":1,"2130":2,"2131":1,"2132":2,"2147":2,"2176":2,"2297":1,"2319":2,"2320":1,"2321":4,"2326":2,"2332":1,"2333":3,"2334":1,"2337":2,"2338":2,"2540":1,"2551":2,"2649":1,"2664":1,"2731":1,"2767":1,"2803":1,"2804":1,"2829":1,"2834":1,"2844":1,"2846":2,"2847":1,"2848":1,"2851":1}}],["$100",{"2":{"1044":2}}],["$1=value",{"2":{"2332":1}}],["$1=hello",{"2":{"2321":1}}],["$1=level",{"2":{"1792":1}}],["$1=credentialid",{"2":{"1220":1,"1221":1,"1222":2}}],["$1=challengeid",{"2":{"1220":1,"1221":1,"1222":1}}],["$1=n",{"2":{"881":1}}],["$1=2",{"2":{"881":1}}],["$1=2024",{"2":{"372":1,"2846":1}}],["$1=123",{"2":{"1386":1}}],["$1=1",{"2":{"881":1}}],["$1",{"2":{"31":1,"37":4,"38":1,"39":1,"40":1,"50":1,"61":2,"71":2,"136":2,"157":1,"167":2,"168":3,"184":2,"206":2,"298":2,"310":3,"312":2,"360":2,"369":1,"370":2,"372":3,"373":2,"375":4,"376":3,"377":1,"378":12,"380":2,"382":5,"383":5,"384":1,"415":2,"466":2,"503":2,"510":2,"520":2,"565":4,"584":2,"586":3,"592":2,"612":2,"613":2,"614":4,"621":2,"622":3,"623":3,"659":1,"665":2,"722":2,"750":2,"760":1,"761":1,"762":1,"764":1,"767":1,"770":1,"771":1,"772":1,"774":1,"775":1,"787":1,"789":1,"797":2,"811":2,"826":2,"827":2,"849":4,"882":1,"886":1,"893":1,"899":1,"900":1,"902":1,"904":1,"1038":4,"1045":2,"1054":1,"1056":2,"1059":1,"1062":3,"1070":3,"1073":2,"1102":1,"1142":2,"1150":2,"1154":3,"1179":5,"1197":2,"1217":5,"1220":3,"1221":3,"1222":4,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1239":1,"1368":2,"1371":4,"1372":2,"1373":2,"1375":3,"1376":2,"1378":1,"1379":1,"1386":10,"1387":2,"1391":3,"1395":5,"1396":2,"1398":8,"1405":2,"1410":2,"1412":3,"1458":2,"1473":1,"1501":1,"1503":1,"1504":3,"1505":1,"1547":2,"1567":3,"1650":1,"1651":2,"1655":2,"1663":1,"1664":4,"1683":1,"1684":1,"1687":1,"1689":4,"1698":1,"1727":1,"1738":1,"1792":28,"1800":1,"1805":2,"1806":1,"1810":1,"1852":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1893":8,"2010":4,"2011":1,"2012":2,"2123":2,"2128":2,"2129":1,"2130":2,"2131":1,"2132":2,"2147":2,"2176":2,"2221":1,"2283":2,"2297":1,"2319":2,"2320":5,"2321":5,"2322":2,"2323":3,"2326":2,"2329":1,"2332":5,"2333":15,"2334":5,"2335":5,"2336":3,"2337":3,"2338":2,"2339":6,"2342":3,"2348":6,"2354":1,"2383":1,"2540":2,"2551":2,"2649":1,"2664":1,"2731":1,"2733":2,"2734":1,"2762":2,"2767":1,"2774":6,"2803":1,"2804":1,"2813":2,"2829":3,"2834":2,"2844":1,"2846":2,"2847":3,"2848":1,"2851":1,"2852":1,"2855":1}}],["5th",{"2":{"1792":1}}],["54329",{"2":{"1792":1,"2111":1,"2532":1,"2875":1}}],["5432",{"2":{"1616":1,"1792":1,"2111":1,"2161":1,"2532":1,"2875":1}}],["54ms",{"2":{"1297":2,"1301":1}}],["545",{"2":{"1289":1}}],["54",{"2":{"1289":1,"1299":1,"1301":1}}],["540",{"2":{"1267":1,"1284":1}}],["512",{"2":{"1657":1,"2402":1}}],["518",{"2":{"1299":1}}],["514",{"2":{"1299":1}}],["511",{"2":{"1291":1}}],["519",{"2":{"1290":1}}],["515",{"2":{"1284":1,"1285":1,"1289":1}}],["51",{"2":{"1278":1,"1288":1}}],["572",{"2":{"2621":1}}],["576",{"2":{"1991":1}}],["57014",{"2":{"1669":1,"1673":1,"1674":1,"1678":1,"1792":1,"2255":6}}],["577",{"2":{"1295":1}}],["578",{"2":{"1290":1}}],["573",{"2":{"1269":1}}],["57",{"0":{"1595":1},"2":{"1155":1,"1290":1,"1297":1}}],["57p02",{"2":{"1153":1,"1587":1,"1595":1,"1792":1}}],["57p01",{"2":{"1153":1,"1155":1,"1587":1,"1595":1,"1792":1}}],["57p03",{"2":{"576":1,"577":1,"1152":3,"1153":1,"1154":1,"1155":1,"1177":1,"1587":1,"1595":1,"1597":1,"1598":1,"1617":1,"1622":1,"1624":1,"1625":1,"1633":1,"1792":2,"2824":1,"2825":1}}],["58030",{"2":{"1587":1,"1595":1,"1792":1}}],["58000",{"2":{"1587":1,"1595":1,"1792":1}}],["583",{"2":{"1291":1,"1299":1}}],["583ms",{"2":{"1268":1}}],["587",{"2":{"1288":1}}],["58",{"0":{"1595":1},"2":{"1262":1,"1264":1,"1277":1,"1288":1,"1290":1,"1295":1,"1297":1,"1792":1}}],["58ms",{"2":{"1090":1,"1289":1,"1295":1,"1299":1}}],["588",{"2":{"1007":1,"1084":1,"1090":2,"1263":1,"1264":1,"1267":1,"1272":1,"1280":1,"1284":1,"1289":1,"2398":1}}],["52428800",{"2":{"1995":1}}],["526",{"2":{"1289":1}}],["52",{"2":{"1287":1,"1290":1,"1295":1,"1301":1,"2397":1}}],["527",{"2":{"1090":1,"1272":1,"1284":1,"1287":1}}],["52ms",{"2":{"1074":1,"1288":2,"1293":1,"2526":1,"2860":1}}],["5x",{"2":{"1090":4,"1267":3}}],["5xx",{"2":{"424":1,"2307":1}}],["59ms",{"2":{"1288":1,"1291":1}}],["594",{"2":{"1288":1}}],["593",{"2":{"1269":1}}],["59",{"2":{"956":4,"1044":2,"1091":1,"1277":3,"1291":1,"1374":4,"2452":2}}],["5b",{"2":{"930":1}}],["5a",{"2":{"930":1}}],["567",{"2":{"1301":1}}],["5678",{"2":{"772":1,"773":2}}],["56",{"2":{"1290":1,"1293":2,"1609":1,"2659":1}}],["56ms",{"2":{"1289":1}}],["565",{"2":{"1289":1}}],["563",{"2":{"1267":1}}],["560972",{"2":{"919":10}}],["553",{"2":{"1301":1}}],["557",{"2":{"1297":1}}],["55ms",{"2":{"1293":1}}],["558",{"2":{"1285":1}}],["55p03",{"2":{"1152":1,"1153":1,"1155":1,"1587":1,"1596":1,"1617":1,"1622":1,"1624":1,"1633":1,"1792":2,"2824":1,"2825":1}}],["550ms",{"2":{"1268":1}}],["55000",{"2":{"1153":1,"1587":1,"1596":1,"1792":1}}],["55006",{"2":{"1152":1,"1153":1,"1155":1,"1587":1,"1596":1,"1617":1,"1622":1,"1624":1,"1633":1,"1792":2,"2824":1,"2825":1}}],["550",{"2":{"873":1,"1291":1}}],["55",{"0":{"1596":1},"2":{"872":1,"919":10,"1155":1,"1277":1,"1291":1,"1299":2,"1792":1,"2824":1,"2825":10}}],["555",{"2":{"333":2}}],["5×",{"2":{"871":1,"872":1}}],["536",{"2":{"1991":1}}],["53ms",{"2":{"1288":1}}],["535",{"2":{"1285":1,"1293":1}}],["539",{"2":{"1264":1,"1287":1,"1299":1}}],["53400",{"2":{"1153":1,"1155":1,"1587":1,"1594":1,"1792":1}}],["53200",{"2":{"1153":1,"1587":1,"1594":1,"1792":1}}],["53100",{"2":{"1153":1,"1587":1,"1594":1,"1792":1}}],["53000",{"2":{"1153":1,"1155":1,"1587":1,"1594":1,"1792":1}}],["53",{"0":{"1594":1},"2":{"867":1,"1155":1,"1287":1,"1301":1,"1792":1,"2824":1}}],["53300",{"2":{"576":1,"577":1,"1152":2,"1153":1,"1154":1,"1587":1,"1594":1,"1597":1,"1598":1,"1617":1,"1622":1,"1624":1,"1633":1,"1792":2,"2824":1,"2825":1}}],["5d",{"2":{"274":1}}],["5h",{"2":{"274":1,"280":1,"2212":1}}],["508",{"2":{"1299":1}}],["501",{"2":{"1297":1}}],["50ms",{"2":{"1288":1,"1299":1,"2535":1}}],["506",{"2":{"1287":1}}],["509",{"2":{"1285":1,"1301":1,"1651":1,"1659":1,"1661":1,"1792":2,"2297":1,"2565":2}}],["507",{"2":{"1284":1}}],["50+",{"2":{"834":1}}],["50",{"0":{"1295":1,"1297":1,"1301":1},"2":{"658":1,"659":1,"773":2,"869":5,"911":1,"1010":1,"1169":4,"1171":2,"1189":2,"1192":2,"1255":2,"1258":2,"1267":1,"1270":2,"1277":2,"1285":3,"1322":1,"1349":2,"1366":3,"1382":1,"1442":1,"2146":2,"2270":1,"2397":1,"2465":2,"2537":1,"2789":1,"2848":1}}],["502",{"2":{"424":1,"2307":1,"2813":1}}],["503",{"2":{"213":2,"214":1,"1032":3,"1104":1,"1105":1,"1301":1,"1739":1,"1740":2,"1741":1,"1742":1,"1766":1,"1767":1,"1770":1,"1782":1,"1792":2,"1958":2,"2287":1,"2288":2,"2289":1,"2290":1,"2470":1,"2472":1,"2634":2,"2765":2}}],["504",{"0":{"2756":1},"2":{"140":2,"424":1,"1285":1,"1669":1,"1672":2,"1678":1,"1792":2,"1928":1,"2253":1,"2255":3,"2307":1,"2398":1,"2549":1,"2813":1}}],["5004",{"2":{"1792":1}}],["5003",{"2":{"1792":1}}],["5002",{"2":{"1792":1}}],["5001",{"2":{"1792":1,"1984":1,"1986":1,"1987":1,"1988":1,"1989":1,"1995":2}}],["500+",{"2":{"872":1,"877":1,"1281":1}}],["500",{"0":{"1091":1,"1291":1},"2":{"271":1,"274":2,"301":1,"436":1,"869":3,"871":1,"873":1,"874":1,"876":1,"903":1,"968":1,"1026":2,"1037":1,"1111":1,"1164":1,"1169":5,"1171":1,"1181":2,"1255":3,"1258":1,"1262":1,"1264":1,"1265":1,"1268":2,"1269":1,"1271":1,"1284":1,"1285":1,"1299":1,"1402":1,"2089":2,"2242":1,"2271":1,"2384":1,"2398":3,"2405":1}}],["500mb",{"2":{"969":1,"1169":1}}],["500milliseconds",{"2":{"133":1}}],["500msec",{"2":{"133":1}}],["500ms",{"2":{"133":1,"271":1,"1165":1,"1590":1,"1792":1,"2156":1,"2212":1,"2542":1}}],["50000000",{"2":{"1810":1,"2804":1}}],["5000",{"2":{"38":1,"40":1,"61":1,"62":2,"85":1,"1792":1,"1984":1,"1995":2}}],["5seconds",{"2":{"269":1}}],["5sec",{"2":{"269":2}}],["5s",{"2":{"136":2,"213":5,"269":2,"277":1,"1030":1,"1032":1,"1105":1,"1165":1,"1740":4,"1742":2,"1769":1,"2060":1,"2288":4,"2290":2,"2765":2}}],["5months",{"2":{"280":1}}],["5ms",{"2":{"274":1}}],["5minutes",{"2":{"133":1,"272":1}}],["5min",{"2":{"133":1,"1792":1,"2212":2}}],["5m",{"2":{"92":1,"95":1,"119":1,"133":1,"213":1,"214":4,"271":1,"274":1,"278":1,"279":2,"1143":2,"1179":1,"1430":1,"1532":1,"1740":1,"1743":2,"1792":1,"2094":1,"2101":1,"2205":1,"2212":1,"2288":1,"2502":2,"2537":1,"2765":2}}],["5",{"0":{"95":1,"862":1,"944":1,"1004":1,"1217":1,"1251":1,"1361":1,"1392":1,"2235":1,"2544":1,"2609":1,"2623":1},"1":{"863":1,"864":1,"865":1,"2610":1,"2611":1,"2624":1,"2625":1,"2626":1,"2627":1,"2628":1,"2629":1},"2":{"31":1,"92":1,"106":2,"107":2,"255":2,"268":1,"271":1,"272":1,"273":2,"274":1,"275":2,"280":2,"310":1,"408":2,"469":2,"577":3,"747":1,"772":1,"844":1,"865":1,"867":1,"869":7,"871":1,"872":7,"873":1,"874":2,"893":1,"911":2,"913":13,"916":1,"917":1,"919":8,"930":1,"967":1,"980":1,"990":1,"1044":2,"1067":3,"1069":2,"1071":1,"1076":1,"1098":1,"1101":1,"1147":1,"1149":1,"1150":1,"1152":1,"1153":1,"1154":3,"1161":2,"1177":5,"1183":1,"1185":2,"1187":1,"1188":3,"1189":1,"1192":5,"1193":1,"1196":1,"1199":2,"1200":1,"1202":1,"1203":2,"1207":2,"1214":1,"1227":1,"1232":1,"1234":1,"1254":1,"1255":1,"1257":2,"1269":2,"1272":1,"1277":1,"1285":2,"1288":2,"1291":2,"1293":4,"1295":4,"1316":1,"1320":1,"1329":1,"1335":1,"1337":1,"1339":1,"1342":1,"1366":1,"1373":2,"1382":1,"1386":2,"1414":1,"1429":2,"1430":1,"1453":1,"1454":1,"1458":2,"1511":1,"1515":2,"1519":1,"1520":1,"1521":1,"1523":1,"1525":2,"1529":1,"1587":1,"1589":1,"1590":3,"1597":3,"1598":2,"1625":1,"1633":2,"1676":1,"1677":1,"1740":1,"1763":1,"1764":1,"1769":2,"1773":3,"1778":1,"1792":17,"1827":1,"1866":2,"1877":1,"1893":1,"1954":2,"1960":1,"2011":1,"2046":1,"2047":1,"2060":1,"2123":1,"2125":1,"2164":1,"2165":2,"2235":1,"2236":1,"2257":1,"2267":1,"2274":1,"2277":2,"2279":1,"2288":1,"2354":1,"2375":2,"2377":1,"2380":2,"2385":1,"2386":3,"2407":1,"2481":1,"2531":1,"2551":1,"2554":2,"2569":1,"2580":1,"2588":5,"2621":3,"2622":1,"2634":2,"2635":2,"2665":2,"2745":1,"2833":1,"2869":1}}],["3d",{"2":{"2588":1,"2589":1}}],["3rd",{"2":{"1394":1}}],["3ms",{"2":{"1349":1}}],["396",{"2":{"1299":1}}],["39ms",{"2":{"1295":1,"1299":1}}],["399",{"2":{"1295":1}}],["391",{"2":{"1291":1}}],["392",{"2":{"1287":1}}],["395",{"2":{"1287":1}}],["397",{"2":{"1285":1}}],["345",{"2":{"1297":1}}],["34",{"2":{"1297":1,"1609":1,"2659":1}}],["34ms",{"2":{"1287":1,"1291":1,"1301":1}}],["342",{"2":{"1284":1,"1290":1}}],["347",{"2":{"1281":2}}],["33ms",{"2":{"1295":1,"1301":1}}],["335",{"2":{"1293":1}}],["330",{"2":{"1284":1}}],["331",{"2":{"1284":2,"1290":2}}],["36ms",{"2":{"1299":1}}],["365",{"2":{"1295":1}}],["366",{"2":{"1295":1}}],["363",{"2":{"1291":1,"1295":1}}],["361",{"2":{"1287":1,"1293":1}}],["362",{"2":{"1284":2,"1289":1}}],["36",{"2":{"1268":1,"1277":1,"1287":1,"1291":1}}],["3600",{"2":{"275":2,"1138":1,"1455":1,"1646":1,"2554":1}}],["32700",{"2":{"1824":1}}],["32768",{"2":{"1792":1,"1990":1}}],["32+chars",{"2":{"1458":2,"2375":2}}],["323",{"2":{"1301":1}}],["329",{"2":{"1290":1}}],["32602",{"2":{"1824":1}}],["32601",{"2":{"1824":1}}],["326",{"2":{"1285":1,"1299":1}}],["321",{"2":{"1277":1}}],["324",{"2":{"1269":1,"1285":1,"1295":1}}],["32",{"2":{"1053":1,"1062":1,"1152":1,"1214":4,"1232":3,"1234":1,"1255":1,"1287":1,"1453":1,"1454":1,"1625":1,"1792":3,"1882":1,"1991":2,"2175":1,"2435":1,"2554":2,"2737":1,"2823":1}}],["3226",{"2":{"1023":1}}],["3x",{"2":{"2359":1}}],["3xbvw23yn6j8b8srqmoerovsylfosxurry0g",{"2":{"1051":1}}],["3xam",{"2":{"927":2}}],["3+",{"2":{"930":1,"1097":1,"1322":1}}],["381",{"2":{"1289":1}}],["389",{"2":{"1288":1}}],["385",{"2":{"1285":1}}],["388",{"2":{"1284":1}}],["38",{"2":{"1277":1,"1287":1,"1301":1,"2621":1}}],["386",{"2":{"1277":1}}],["384",{"2":{"1243":1,"1293":1}}],["380",{"2":{"887":2,"1267":1}}],["387",{"2":{"852":1,"1290":1}}],["37ms",{"2":{"1291":1,"1293":1}}],["374",{"2":{"1290":1}}],["378",{"2":{"1290":1}}],["376",{"2":{"1287":1}}],["375",{"2":{"1272":1,"1284":1}}],["37",{"2":{"1091":1,"1268":1,"1288":1,"1291":1,"1295":1}}],["370",{"2":{"873":1,"1289":1}}],["377",{"2":{"852":1,"1267":1,"1272":1,"1284":3,"1289":1,"1290":1,"2398":1}}],["3×",{"2":{"872":2}}],["359",{"2":{"1301":1}}],["35ms",{"2":{"1297":1}}],["355",{"2":{"1291":1}}],["352",{"2":{"1290":1,"1293":1}}],["351",{"2":{"1284":1,"1290":1}}],["353",{"2":{"1284":1}}],["35",{"2":{"872":1,"874":1,"1277":1,"1427":1}}],["31t18",{"2":{"1408":1}}],["31t12",{"2":{"995":1}}],["319",{"2":{"1297":1}}],["31ms",{"2":{"1293":1,"1299":1}}],["313",{"2":{"1290":1,"1299":1}}],["317",{"2":{"1288":1}}],["314",{"2":{"1285":1}}],["31",{"2":{"372":2,"675":1,"956":2,"1023":1,"1067":1,"1277":1,"1289":1,"1290":1,"1374":2,"1400":1,"1714":1,"2319":1,"2845":1,"2846":2}}],["30m",{"2":{"2207":1}}],["30ms",{"2":{"1291":1,"1301":1}}],["30mb",{"2":{"1086":1,"1117":1,"2792":1}}],["302",{"2":{"1291":1}}],["307",{"2":{"1284":1,"1290":1}}],["309",{"2":{"1269":1}}],["30+",{"2":{"872":1}}],["305",{"2":{"868":3}}],["300s",{"2":{"2212":1}}],["3001",{"2":{"1335":1,"1338":1,"1340":1,"1433":1,"2808":1,"2814":1}}],["30000000",{"2":{"1792":2,"1800":1,"1804":2,"1990":1}}],["3000",{"2":{"1118":2,"1320":1}}],["300",{"2":{"835":1,"869":4,"873":2,"876":1,"894":1,"911":1,"1037":1,"1113":1,"1169":2,"1181":2,"1366":1,"1410":1,"1616":1}}],["30seconds",{"2":{"133":1}}],["30sec",{"2":{"133":1}}],["30s",{"2":{"133":1,"207":1,"211":3,"214":2,"279":1,"1034":1,"1426":1,"1430":1,"1431":1,"1726":1,"1731":2,"1733":1,"1743":1,"1769":1,"1775":1,"1792":5,"1837":1,"1917":1,"2060":1,"2093":1,"2094":2,"2101":1,"2193":3,"2212":1,"2253":2,"2264":3,"2502":1,"2537":2,"2581":1,"2591":2,"2634":1,"2635":1,"2762":3,"2765":1}}],["30",{"0":{"2560":1},"1":{"2561":1,"2562":1},"2":{"101":1,"133":1,"134":1,"211":3,"213":1,"268":1,"271":1,"272":1,"273":1,"274":2,"275":1,"430":1,"455":1,"577":1,"869":6,"911":1,"956":2,"977":2,"980":2,"990":2,"1034":2,"1154":1,"1254":1,"1255":2,"1259":1,"1277":2,"1287":1,"1295":1,"1322":1,"1340":1,"1366":3,"1374":2,"1382":1,"1429":1,"1447":1,"1451":1,"1454":1,"1458":1,"1462":1,"1464":1,"1520":1,"1523":1,"1534":1,"1597":1,"1598":1,"1698":1,"1731":6,"1740":1,"1792":14,"1800":1,"1804":3,"1837":1,"1863":1,"1916":1,"1917":1,"1931":1,"1990":1,"1991":2,"1992":1,"1995":1,"2067":1,"2212":3,"2238":1,"2253":2,"2264":2,"2288":1,"2308":1,"2375":1,"2376":2,"2380":2,"2427":1,"2549":1,"2765":2,"2814":2,"2824":1}}],["3",{"0":{"850":1,"942":1,"958":1,"1002":1,"1021":1,"1066":1,"1069":1,"1215":1,"1222":1,"1249":1,"1309":1,"1357":1,"1390":1,"1449":1,"1605":1,"1727":1,"1872":1,"1908":1,"1993":1,"2221":1,"2222":1,"2223":1,"2224":1,"2225":1,"2226":1,"2227":1,"2228":1,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":2,"2238":1,"2239":1,"2240":1,"2254":1,"2275":1,"2473":1,"2519":1,"2540":1,"2560":1,"2573":1,"2578":1,"2601":1,"2643":1,"2824":1},"1":{"851":1,"852":1,"853":1,"854":1,"855":1,"856":1,"857":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1909":1,"1910":1,"1911":1,"2276":1,"2277":1,"2278":1,"2279":1,"2474":1,"2475":1,"2476":1,"2477":1,"2561":1,"2562":1,"2574":1,"2575":1,"2576":1,"2577":1,"2579":1,"2580":1,"2581":1,"2582":1,"2602":1,"2603":1,"2604":1,"2644":1,"2645":1},"2":{"19":1,"20":1,"22":1,"35":1,"74":3,"213":1,"310":1,"317":2,"347":2,"408":2,"412":1,"415":1,"469":2,"559":1,"581":1,"618":1,"701":1,"823":1,"852":1,"865":1,"869":2,"871":1,"872":2,"873":1,"876":1,"885":3,"888":2,"892":1,"897":2,"898":1,"904":1,"911":3,"913":5,"916":1,"917":2,"918":4,"919":4,"921":1,"922":2,"924":7,"925":2,"926":3,"928":4,"929":3,"930":19,"932":3,"934":5,"935":3,"936":3,"937":7,"938":6,"941":1,"947":1,"948":1,"956":2,"966":1,"971":1,"977":1,"979":2,"986":3,"988":2,"990":1,"997":1,"1026":3,"1032":1,"1037":5,"1038":1,"1042":2,"1053":1,"1066":1,"1067":1,"1068":1,"1069":1,"1070":2,"1073":5,"1076":2,"1077":1,"1078":1,"1082":5,"1090":3,"1094":2,"1097":1,"1098":1,"1102":1,"1117":1,"1152":2,"1157":1,"1181":1,"1191":1,"1193":1,"1255":5,"1257":5,"1265":3,"1270":1,"1272":1,"1277":2,"1284":3,"1285":7,"1287":5,"1288":9,"1289":6,"1290":3,"1291":4,"1293":7,"1295":6,"1297":7,"1299":3,"1301":8,"1322":1,"1368":2,"1371":3,"1374":2,"1375":1,"1379":2,"1382":1,"1384":1,"1385":2,"1405":1,"1407":1,"1420":2,"1427":1,"1429":2,"1430":1,"1431":1,"1434":1,"1453":2,"1458":1,"1464":3,"1522":1,"1569":2,"1609":2,"1617":1,"1622":1,"1623":1,"1639":1,"1644":1,"1701":2,"1740":1,"1759":2,"1762":2,"1773":2,"1775":1,"1780":1,"1785":1,"1792":12,"1801":1,"1802":1,"1813":2,"1824":1,"1840":2,"1850":1,"1852":1,"1856":2,"1866":2,"1875":1,"1912":2,"1924":2,"1925":2,"1948":1,"1955":1,"1958":1,"1993":1,"2014":2,"2045":2,"2056":2,"2111":1,"2113":1,"2144":2,"2164":1,"2165":2,"2171":1,"2220":1,"2224":2,"2225":4,"2234":1,"2236":1,"2237":2,"2238":1,"2239":1,"2240":1,"2245":1,"2254":1,"2288":1,"2303":1,"2328":1,"2376":3,"2378":2,"2379":1,"2381":1,"2383":1,"2389":1,"2391":1,"2398":4,"2410":1,"2419":1,"2421":1,"2430":1,"2437":1,"2438":1,"2440":1,"2442":1,"2455":2,"2481":1,"2528":1,"2532":1,"2534":1,"2535":3,"2540":1,"2550":1,"2555":2,"2569":1,"2571":2,"2576":2,"2586":1,"2588":9,"2590":1,"2591":2,"2622":1,"2719":1,"2721":1,"2731":1,"2739":1,"2752":1,"2760":1,"2765":1,"2789":2,"2790":2,"2791":2,"2794":1,"2801":1,"2815":1,"2823":1,"2824":3,"2825":2,"2836":1,"2840":1,"2841":1,"2844":1,"2845":1,"2864":1,"2875":1,"2879":1,"2880":1}}],["=rule",{"2":{"1792":1,"2141":1,"2575":1}}],["=converted",{"2":{"1792":1,"2141":1,"2575":1}}],["=original",{"2":{"1792":1,"2141":1,"2575":1}}],["=`",{"2":{"1574":1}}],["=$",{"2":{"1574":2}}],["==",{"2":{"995":2,"996":2,"1366":4,"1386":1,"1408":1,"1409":1,"1416":2,"1567":1,"2247":2,"2452":2,"2562":1,"2566":1}}],["===",{"2":{"894":2,"1335":8,"1342":1,"1361":1,"1366":1,"1410":2,"2040":1,"2476":1,"2562":1}}],["=>",{"2":{"62":2,"666":1,"723":1,"894":4,"961":2,"1026":1,"1107":1,"1317":3,"1318":1,"1320":9,"1321":1,"1361":1,"1366":3,"1410":4,"1413":1,"1416":4,"1431":3,"1442":1,"1572":2,"1573":1,"1574":3,"1792":3,"2247":4,"2655":1,"2830":1,"2836":1}}],["=",{"0":{"2335":1},"2":{"16":2,"18":1,"19":1,"20":1,"30":2,"33":2,"35":1,"37":4,"38":1,"39":2,"40":1,"41":1,"45":2,"48":2,"49":1,"50":2,"60":1,"61":1,"62":1,"79":2,"115":2,"116":1,"133":2,"136":2,"155":4,"157":4,"158":1,"159":1,"162":1,"167":2,"168":1,"184":2,"186":1,"215":3,"216":1,"254":1,"255":2,"256":2,"257":2,"288":2,"292":1,"298":2,"301":2,"302":1,"308":2,"309":1,"310":6,"312":2,"313":2,"366":1,"370":5,"373":2,"374":1,"378":5,"387":2,"393":1,"395":1,"396":1,"401":1,"405":1,"406":2,"414":1,"415":2,"423":1,"426":2,"427":1,"428":1,"429":1,"436":1,"452":1,"462":4,"463":3,"464":4,"466":2,"467":3,"468":3,"469":2,"520":2,"527":4,"528":1,"531":1,"532":4,"534":1,"535":1,"542":1,"565":4,"570":2,"592":3,"611":1,"612":1,"613":1,"614":4,"621":1,"622":6,"623":2,"637":2,"646":3,"664":1,"665":3,"666":2,"673":1,"674":3,"677":2,"678":3,"679":7,"689":1,"691":2,"695":1,"700":2,"705":1,"710":1,"711":1,"715":1,"718":1,"719":8,"720":1,"722":5,"723":8,"724":2,"750":1,"751":2,"755":1,"756":5,"758":3,"764":2,"767":2,"770":1,"771":2,"773":1,"774":3,"775":3,"777":2,"780":1,"783":1,"785":4,"787":2,"789":2,"798":3,"811":2,"812":2,"815":3,"826":1,"835":1,"845":1,"849":8,"851":1,"864":1,"868":1,"886":3,"887":1,"888":1,"894":8,"896":1,"898":3,"899":2,"900":3,"902":1,"903":3,"904":5,"914":2,"916":4,"918":2,"928":5,"929":4,"930":8,"933":1,"934":2,"935":1,"936":4,"938":1,"941":1,"945":2,"949":1,"956":2,"957":8,"959":1,"960":4,"961":7,"964":3,"965":1,"967":1,"971":1,"979":1,"980":2,"982":1,"986":1,"988":1,"989":2,"990":8,"991":2,"994":1,"995":3,"996":15,"1017":2,"1021":16,"1024":2,"1026":22,"1033":2,"1038":1,"1042":1,"1045":2,"1054":1,"1055":2,"1056":5,"1057":2,"1058":2,"1060":7,"1063":3,"1067":1,"1068":1,"1074":1,"1076":3,"1078":2,"1094":1,"1097":3,"1098":1,"1099":1,"1102":1,"1104":1,"1105":4,"1107":4,"1111":1,"1113":1,"1114":1,"1135":2,"1141":2,"1142":2,"1150":1,"1154":1,"1179":1,"1185":1,"1188":1,"1192":1,"1197":3,"1202":3,"1214":3,"1215":1,"1216":5,"1217":4,"1218":3,"1220":1,"1221":2,"1222":3,"1232":7,"1233":1,"1234":5,"1235":4,"1236":2,"1237":3,"1239":5,"1279":3,"1284":2,"1308":2,"1309":2,"1316":2,"1317":8,"1318":8,"1320":11,"1321":4,"1326":3,"1332":1,"1335":12,"1338":6,"1339":13,"1342":3,"1347":1,"1354":1,"1357":3,"1358":18,"1360":3,"1361":3,"1364":2,"1366":24,"1368":2,"1371":1,"1372":5,"1374":4,"1375":1,"1376":15,"1379":1,"1386":8,"1387":2,"1390":1,"1391":2,"1393":2,"1394":2,"1395":3,"1396":2,"1398":3,"1399":1,"1405":1,"1408":5,"1409":2,"1410":12,"1412":4,"1413":6,"1414":2,"1415":5,"1416":7,"1419":1,"1427":3,"1429":1,"1431":3,"1442":2,"1458":2,"1471":1,"1480":4,"1481":2,"1504":7,"1523":2,"1561":2,"1565":1,"1567":1,"1568":1,"1569":1,"1571":1,"1572":2,"1573":2,"1574":3,"1575":1,"1582":1,"1655":1,"1664":2,"1688":2,"1689":2,"1696":3,"1738":4,"1743":1,"1753":2,"1792":45,"1822":1,"1823":1,"1851":1,"1882":2,"1883":1,"1884":2,"1885":2,"1886":1,"1887":3,"2010":2,"2011":1,"2012":1,"2040":1,"2049":2,"2075":2,"2076":2,"2077":2,"2078":1,"2079":6,"2094":3,"2098":1,"2148":15,"2176":2,"2177":1,"2178":1,"2179":3,"2183":3,"2184":1,"2185":1,"2187":4,"2193":8,"2221":1,"2247":9,"2251":1,"2252":5,"2255":17,"2256":2,"2257":2,"2265":4,"2267":1,"2277":7,"2283":5,"2285":4,"2292":1,"2293":1,"2303":1,"2310":1,"2313":1,"2320":4,"2321":1,"2322":2,"2330":7,"2333":1,"2335":5,"2338":1,"2339":5,"2342":3,"2354":1,"2359":2,"2360":2,"2372":1,"2382":1,"2424":1,"2431":4,"2436":2,"2437":2,"2438":2,"2452":1,"2455":1,"2461":2,"2476":1,"2481":2,"2490":2,"2502":1,"2526":1,"2527":1,"2528":3,"2530":2,"2531":1,"2534":1,"2535":3,"2537":6,"2540":6,"2546":1,"2575":11,"2591":8,"2622":1,"2635":3,"2648":1,"2649":3,"2651":1,"2652":1,"2653":6,"2655":2,"2656":3,"2664":3,"2733":1,"2739":1,"2768":2,"2774":5,"2775":1,"2811":1,"2813":2,"2815":3,"2829":4,"2830":3,"2833":4,"2834":3,"2836":5,"2845":3,"2848":1,"2849":1,"2860":1,"2861":2,"2862":1,"2864":3,"2865":1,"2866":2,"2868":1,"2869":1,"2871":1,"2873":1,"2876":1}}],["vb",{"2":{"2792":1}}],["vbilopav",{"2":{"1117":1,"1343":2,"1420":1,"1773":1,"1775":1,"2550":3,"2576":2,"2717":1,"2788":4,"2789":4,"2790":4,"2791":4}}],["vpc",{"2":{"1712":1}}],["vllm",{"2":{"1335":1}}],["v4",{"2":{"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["v0",{"2":{"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["v5",{"2":{"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["vcpus",{"2":{"1255":1}}],["v",{"2":{"1139":2,"1343":2,"2451":2,"2567":1,"2717":1,"2785":1,"2786":1,"2788":1,"2789":1,"2790":1,"2791":1}}],["v=2",{"2":{"1139":2}}],["v=1",{"2":{"1139":2}}],["v8",{"2":{"1107":1}}],["vms",{"2":{"2576":1,"2779":1,"2790":1}}],["vm",{"2":{"1094":1}}],["vus",{"2":{"1254":1,"1255":4,"1258":1}}],["vu",{"0":{"1091":1,"1265":1},"2":{"1084":2,"1258":1,"1262":1,"1264":4,"1266":1,"1267":4,"1268":2,"1269":3,"1270":2,"1271":1,"1272":2,"1284":2,"1285":5,"2398":1}}],["vulnerabilities",{"2":{"1064":1,"1792":1,"2014":1,"2632":2}}],["vulnerability",{"2":{"933":2}}],["v6",{"2":{"1019":1,"1023":1,"1026":1,"1032":1,"1287":2,"1288":2,"1289":2,"1290":2,"1291":2,"1293":2,"1295":2,"1297":2,"1299":2,"1301":2,"2764":2,"2766":1}}],["v3+json",{"2":{"1736":1}}],["v3",{"0":{"1397":1,"2241":1,"2243":1,"2260":1,"2262":1,"2268":1,"2275":1,"2280":1,"2298":1,"2311":1,"2315":1,"2373":1,"2387":1,"2408":1,"2418":1,"2439":1,"2449":1,"2458":1,"2467":1,"2473":1,"2478":1,"2499":1,"2507":1,"2514":1,"2524":1,"2547":1,"2552":1,"2556":1,"2560":1,"2563":1,"2568":1,"2570":1,"2573":1,"2578":1,"2583":1,"2592":1,"2598":1,"2601":1,"2605":1,"2609":1,"2612":1,"2616":1,"2619":1,"2623":1,"2630":1,"2636":1,"2639":1,"2643":1,"2646":1,"2657":1,"2675":1},"1":{"1398":1,"1399":1,"2242":1,"2244":1,"2245":1,"2246":1,"2247":1,"2248":1,"2249":1,"2250":1,"2251":1,"2252":1,"2253":1,"2254":1,"2255":1,"2256":1,"2257":1,"2258":1,"2259":1,"2261":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2269":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1,"2276":1,"2277":1,"2278":1,"2279":1,"2281":1,"2282":1,"2283":1,"2284":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1,"2299":1,"2300":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2312":1,"2313":1,"2314":1,"2316":1,"2317":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1,"2368":1,"2369":1,"2370":1,"2371":1,"2372":1,"2374":1,"2375":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2398":1,"2399":1,"2400":1,"2401":1,"2402":1,"2403":1,"2404":1,"2405":1,"2406":1,"2407":1,"2409":1,"2410":1,"2411":1,"2412":1,"2413":1,"2414":1,"2415":1,"2416":1,"2417":1,"2419":1,"2420":1,"2421":1,"2422":1,"2423":1,"2424":1,"2425":1,"2426":1,"2427":1,"2428":1,"2429":1,"2430":1,"2431":1,"2432":1,"2433":1,"2434":1,"2435":1,"2436":1,"2437":1,"2438":1,"2440":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":1,"2446":1,"2447":1,"2448":1,"2450":1,"2451":1,"2452":1,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1,"2459":1,"2460":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2474":1,"2475":1,"2476":1,"2477":1,"2479":1,"2480":1,"2481":1,"2482":1,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2489":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":1,"2497":1,"2498":1,"2500":1,"2501":1,"2502":1,"2503":1,"2504":1,"2505":1,"2506":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2545":1,"2546":1,"2548":1,"2549":1,"2550":1,"2551":1,"2553":1,"2554":1,"2555":1,"2557":1,"2558":1,"2559":1,"2561":1,"2562":1,"2564":1,"2565":1,"2566":1,"2567":1,"2569":1,"2571":1,"2572":1,"2574":1,"2575":1,"2576":1,"2577":1,"2579":1,"2580":1,"2581":1,"2582":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2591":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2599":1,"2600":1,"2602":1,"2603":1,"2604":1,"2606":1,"2607":1,"2608":1,"2610":1,"2611":1,"2613":1,"2614":1,"2615":1,"2617":1,"2618":1,"2620":1,"2621":1,"2622":1,"2624":1,"2625":1,"2626":1,"2627":1,"2628":1,"2629":1,"2631":1,"2632":1,"2633":1,"2634":1,"2635":1,"2637":1,"2638":1,"2640":1,"2641":1,"2642":1,"2644":1,"2645":1,"2647":1,"2648":1,"2649":1,"2650":1,"2651":1,"2652":1,"2653":1,"2654":1,"2655":1,"2656":1,"2658":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1,"2665":1,"2666":1,"2667":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1,"2674":1,"2676":1,"2677":1,"2678":1,"2679":1},"2":{"919":1,"975":1,"1019":1,"1023":1,"1026":1,"1038":1,"1066":2,"1071":1,"1072":1,"1086":1,"1096":1,"1263":1,"1287":2,"1288":2,"1289":2,"1290":2,"1291":2,"1293":2,"1295":2,"1297":2,"1299":2,"1301":2,"1368":1,"1380":1,"1384":1,"1397":1,"1398":2,"1420":1,"1691":1,"1792":2,"2013":1,"2221":1,"2222":3,"2223":1,"2224":4,"2225":3,"2226":1,"2227":1,"2228":1,"2229":2,"2230":1,"2231":1,"2232":1,"2233":1,"2234":4,"2235":1,"2236":9,"2237":2,"2238":7,"2239":4,"2240":2,"2515":1,"2766":1,"2859":2,"2882":1}}],["vnd",{"2":{"772":1,"773":1,"893":1,"1736":1}}],["v20",{"2":{"1695":2,"1792":2}}],["v2",{"2":{"403":2,"1606":1,"1691":1,"1692":4,"1694":2,"1792":7,"2215":2,"2385":1,"2438":1,"2689":1,"2691":1,"2697":2,"2727":1}}],["vscurrencies",{"2":{"1026":7}}],["vscurrenciescsv",{"2":{"1024":2}}],["vscurrenciescsv=usd",{"2":{"1023":1}}],["vs",{"0":{"330":1,"609":1,"831":1,"893":1,"968":1,"1067":2,"1083":2,"1167":1,"1272":1,"1319":1,"1323":1,"1363":1,"1378":1,"1387":1,"1390":1,"1457":1,"2087":1,"2204":1,"2858":1},"1":{"832":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1,"969":1,"1084":2,"1085":2,"1086":2,"1087":2,"1088":2,"1089":2,"1090":2,"1091":2,"1092":2,"1093":2,"1094":2,"1095":2,"1096":2,"1097":2,"1098":2,"1099":2,"1100":2,"1101":2,"1102":2,"1103":2,"1104":2,"1105":2,"1106":2,"1107":2,"1108":2,"1109":2,"1110":2,"1111":2,"1112":2,"1113":2,"1114":2,"1115":2,"1116":2,"1117":2,"1118":2,"1119":2,"1120":2,"1121":2,"1122":2,"1123":2,"1124":2,"1125":2,"1126":2,"1127":2,"1320":1,"1321":1,"1388":1,"1389":1,"1390":1,"1391":1,"1392":1,"1393":1,"1394":1,"1395":1,"1396":1},"2":{"226":1,"385":1,"587":1,"833":1,"836":1,"868":1,"873":1,"930":1,"1019":2,"1021":1,"1023":1,"1026":1,"1037":3,"1058":1,"1086":1,"1094":1,"1121":1,"1278":1,"1376":2,"1382":2,"1383":2,"1398":4,"1417":1,"1757":1,"1840":1,"1864":1,"1894":2,"1910":1,"2184":1,"2193":1,"2265":1,"2347":1,"2370":1,"2398":2,"2421":1,"2433":1,"2438":1,"2607":2,"2621":1,"2766":3,"2789":1}}],["vacuously",{"2":{"2528":1,"2864":1}}],["vacuum",{"2":{"966":1,"1792":1,"2050":1,"2635":2}}],["vanished",{"2":{"2157":1,"2543":1}}],["vanish",{"2":{"2110":1,"2530":1,"2866":1}}],["vast",{"2":{"1401":1}}],["vault",{"2":{"1100":1}}],["vaughn",{"2":{"851":3,"863":2}}],["varchar",{"2":{"447":1,"841":2,"952":1,"1922":1,"2258":1,"2394":2}}],["vars",{"2":{"390":1,"395":1,"2040":1,"2224":1,"2474":1}}],["var",{"2":{"390":3,"393":1,"894":1,"926":1,"1366":6,"1376":5,"1395":2,"1396":2,"1604":2,"1607":1,"1608":1,"1654":1,"1792":1,"1810":1,"2040":1,"2132":1,"2185":1,"2272":1,"2297":1,"2451":1,"2456":1,"2476":1,"2705":1,"2719":2,"2757":1,"2804":2}}],["varies",{"2":{"2398":1,"2445":1}}],["variations",{"0":{"2196":1}}],["variadic",{"2":{"1092":1}}],["variants",{"2":{"1380":1,"2389":1,"2457":1,"2498":1,"2859":1}}],["variant",{"2":{"531":1,"1433":1,"2550":1,"2789":2,"2790":2,"2791":2}}],["variables",{"0":{"390":1,"766":1,"1540":1,"1615":1,"1862":1,"2184":1,"2483":1,"2687":1,"2719":1},"1":{"1541":1,"1542":1,"1543":1,"2688":1,"2689":1,"2690":1},"2":{"306":1,"316":1,"388":1,"390":1,"728":1,"737":1,"766":1,"805":1,"926":1,"1067":1,"1394":2,"1457":1,"1475":2,"1538":1,"1540":1,"1551":1,"1574":1,"1604":2,"1606":1,"1607":1,"1608":2,"1661":1,"1785":1,"1787":1,"1792":7,"1794":1,"2170":1,"2184":1,"2185":1,"2188":1,"2223":2,"2272":3,"2483":1,"2572":1,"2680":1,"2681":1,"2687":1,"2689":2,"2697":1,"2705":1,"2772":1}}],["variable",{"0":{"502":1,"1606":1,"1607":1,"2040":1,"2497":1,"2689":1,"2690":1},"2":{"212":1,"306":1,"390":5,"394":1,"395":1,"499":1,"534":1,"926":1,"1394":1,"1395":2,"1416":1,"1475":3,"1540":1,"1604":1,"1605":3,"1615":1,"1661":1,"1738":1,"1792":15,"1848":1,"1849":1,"1862":2,"2038":3,"2040":3,"2184":1,"2223":1,"2224":1,"2474":1,"2476":3,"2497":4,"2540":1,"2543":1,"2645":2,"2681":1,"2687":3,"2688":3,"2689":1,"2690":1,"2697":1,"2705":3,"2764":1,"2768":1,"2845":1}}],["various",{"2":{"378":1,"1239":1,"1385":3,"1386":1,"2264":1,"2333":1,"2389":1}}],["vary",{"2":{"214":1,"1084":1,"1138":1,"2502":1}}],["valuable",{"2":{"974":1}}],["valuetask",{"2":{"2461":1,"2559":1}}],["value=",{"2":{"938":2,"1061":3,"1491":1,"1792":1,"2039":1}}],["valued",{"2":{"690":1}}],["value2",{"2":{"646":1,"650":1}}],["value2>",{"2":{"14":1,"637":1}}],["value1",{"2":{"646":1,"650":1}}],["value1>",{"2":{"14":1,"637":1}}],["value4|value5|value6",{"2":{"491":1}}],["value>",{"2":{"155":1,"370":10,"537":1}}],["value",{"0":{"32":1,"46":1,"80":1,"134":1,"379":1,"386":1,"533":1,"541":1,"1429":1,"2335":1,"2395":1,"2493":1},"1":{"33":1,"34":1,"35":1,"387":1,"388":1,"389":1,"390":1,"391":1,"392":1,"393":1,"394":1,"395":1,"396":1},"2":{"22":1,"50":1,"51":1,"52":1,"58":1,"74":1,"75":1,"80":1,"81":1,"88":1,"106":1,"107":3,"133":1,"154":1,"155":3,"156":3,"158":1,"159":1,"162":1,"168":1,"170":1,"186":1,"187":7,"188":2,"203":1,"210":1,"212":2,"215":1,"240":1,"268":1,"297":2,"301":1,"302":1,"303":2,"304":2,"306":1,"309":1,"357":1,"358":2,"361":1,"362":2,"377":1,"378":4,"379":3,"383":3,"384":1,"386":2,"387":4,"388":2,"390":2,"395":2,"396":2,"408":2,"427":1,"436":1,"447":1,"448":1,"452":1,"454":3,"458":1,"460":2,"463":2,"466":1,"467":1,"468":1,"479":1,"499":1,"512":1,"515":1,"517":1,"527":2,"528":1,"529":3,"533":1,"534":4,"535":2,"540":1,"544":1,"551":1,"553":1,"583":1,"585":1,"586":1,"613":1,"615":1,"629":1,"638":1,"646":1,"675":1,"720":1,"760":1,"761":2,"763":1,"770":1,"771":2,"773":1,"775":1,"780":1,"801":1,"816":4,"827":1,"841":1,"848":1,"851":1,"873":1,"883":1,"885":1,"903":1,"948":1,"951":1,"956":1,"983":2,"1017":2,"1041":1,"1045":1,"1067":2,"1069":2,"1070":2,"1134":1,"1138":1,"1150":2,"1162":2,"1199":1,"1228":1,"1229":1,"1230":1,"1318":2,"1341":1,"1374":1,"1382":1,"1395":2,"1398":1,"1423":1,"1460":1,"1477":1,"1480":2,"1491":1,"1499":1,"1500":1,"1520":1,"1523":2,"1524":1,"1525":2,"1526":1,"1529":2,"1540":1,"1544":1,"1569":1,"1574":4,"1582":2,"1605":3,"1620":1,"1628":1,"1656":1,"1657":1,"1664":11,"1685":1,"1688":2,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1706":1,"1722":1,"1728":1,"1732":1,"1733":2,"1738":2,"1759":1,"1769":1,"1792":71,"1818":1,"1819":2,"1824":2,"1825":1,"1830":2,"1849":1,"1851":1,"1854":2,"1855":1,"1856":3,"1862":1,"1878":1,"1879":1,"1880":1,"1912":1,"1917":1,"1918":1,"1922":1,"1925":4,"1927":1,"1948":1,"1951":2,"1952":2,"1953":2,"1954":2,"1955":2,"1956":1,"1957":3,"1958":1,"1960":1,"1968":3,"2017":1,"2018":1,"2019":1,"2023":1,"2024":1,"2025":1,"2038":1,"2040":3,"2060":1,"2096":1,"2107":1,"2140":7,"2156":1,"2164":1,"2180":2,"2181":1,"2183":2,"2185":1,"2193":5,"2202":3,"2222":1,"2226":1,"2247":1,"2252":2,"2256":2,"2259":1,"2264":4,"2266":1,"2267":2,"2277":1,"2283":3,"2284":3,"2293":1,"2294":7,"2296":2,"2310":1,"2326":1,"2329":1,"2333":6,"2335":1,"2339":1,"2348":2,"2372":3,"2375":1,"2378":1,"2379":5,"2380":8,"2382":1,"2395":5,"2402":1,"2405":1,"2427":2,"2428":1,"2432":1,"2435":1,"2437":1,"2443":1,"2445":1,"2451":7,"2455":1,"2456":1,"2463":3,"2466":1,"2470":1,"2476":4,"2481":2,"2483":3,"2497":3,"2517":2,"2518":1,"2520":1,"2528":1,"2529":1,"2534":1,"2537":2,"2540":1,"2542":1,"2544":1,"2546":1,"2549":1,"2575":7,"2581":1,"2591":4,"2595":1,"2632":1,"2634":1,"2635":1,"2638":1,"2648":1,"2665":2,"2681":1,"2682":2,"2687":1,"2688":3,"2689":1,"2697":1,"2725":1,"2733":1,"2734":4,"2763":1,"2764":1,"2768":1,"2771":2,"2812":1,"2814":1,"2845":1,"2848":2,"2852":1,"2864":1,"2865":1}}],["values",{"0":{"81":1,"156":1,"274":1,"279":1,"286":1,"377":1,"460":1,"490":1,"499":1,"517":1,"551":1,"629":1,"638":1,"644":1,"798":1,"1500":1,"1526":1,"1854":1,"1855":1,"1862":1,"2333":1,"2517":1,"2577":1,"2682":1,"2768":1,"2848":1},"1":{"157":1,"378":1,"379":1,"380":1,"381":1},"2":{"22":1,"25":1,"34":2,"41":2,"87":1,"88":2,"116":1,"156":1,"182":2,"184":2,"188":3,"212":1,"213":1,"214":1,"237":2,"248":1,"253":1,"267":1,"286":4,"292":1,"308":1,"310":1,"337":1,"348":1,"360":2,"361":1,"365":1,"368":1,"377":1,"387":1,"388":1,"390":1,"395":1,"404":1,"439":1,"448":1,"452":1,"458":2,"460":1,"462":1,"470":1,"488":1,"490":1,"535":1,"544":2,"556":1,"582":1,"589":1,"595":1,"641":1,"644":1,"675":1,"680":1,"715":1,"725":1,"760":1,"761":3,"764":1,"765":1,"766":1,"768":1,"770":1,"771":3,"774":1,"776":3,"786":1,"788":3,"790":1,"801":6,"809":1,"813":1,"814":1,"826":1,"843":2,"852":3,"880":1,"881":1,"882":1,"883":1,"884":1,"885":1,"888":3,"891":1,"892":3,"898":1,"904":1,"913":3,"915":1,"934":1,"938":1,"956":1,"963":1,"977":2,"989":1,"990":1,"992":1,"994":1,"997":1,"1016":1,"1033":1,"1051":1,"1054":1,"1074":1,"1079":1,"1100":1,"1102":2,"1142":1,"1150":1,"1214":1,"1215":2,"1232":1,"1234":1,"1239":1,"1255":1,"1307":1,"1309":1,"1321":1,"1332":1,"1338":1,"1339":1,"1360":1,"1370":1,"1372":1,"1374":1,"1376":1,"1378":1,"1393":1,"1395":1,"1419":1,"1442":1,"1449":1,"1460":1,"1470":1,"1471":1,"1475":2,"1477":4,"1481":1,"1517":1,"1523":2,"1526":1,"1547":2,"1557":1,"1582":1,"1590":1,"1604":2,"1605":1,"1607":2,"1608":1,"1620":1,"1645":1,"1655":1,"1664":3,"1689":2,"1703":1,"1723":1,"1733":1,"1738":1,"1740":1,"1755":1,"1792":46,"1823":1,"1824":2,"1844":1,"1852":2,"1853":1,"1854":2,"1856":1,"1857":1,"1862":2,"1917":1,"1923":1,"1924":2,"1926":1,"1928":1,"1958":2,"2009":1,"2016":1,"2037":1,"2039":2,"2040":5,"2056":1,"2089":1,"2128":1,"2129":1,"2130":3,"2131":1,"2140":1,"2147":2,"2149":1,"2183":2,"2200":2,"2210":1,"2216":1,"2222":1,"2223":1,"2224":3,"2258":1,"2261":1,"2264":2,"2265":4,"2272":1,"2277":1,"2282":3,"2286":1,"2288":1,"2291":2,"2292":1,"2296":3,"2297":1,"2330":1,"2333":1,"2335":1,"2338":1,"2348":1,"2372":1,"2375":1,"2377":1,"2380":3,"2383":2,"2394":2,"2397":1,"2405":1,"2428":1,"2432":1,"2435":3,"2436":2,"2450":2,"2452":1,"2455":1,"2468":1,"2470":1,"2474":2,"2476":2,"2477":1,"2483":2,"2493":2,"2496":1,"2497":2,"2502":1,"2509":1,"2510":1,"2526":1,"2544":1,"2549":3,"2551":3,"2572":2,"2575":3,"2577":4,"2586":2,"2588":1,"2589":1,"2595":3,"2597":1,"2632":5,"2633":1,"2645":2,"2674":1,"2678":1,"2681":1,"2684":1,"2687":2,"2689":1,"2692":1,"2695":1,"2712":2,"2719":1,"2723":1,"2726":1,"2739":1,"2750":1,"2759":1,"2779":1,"2798":1,"2803":1,"2812":4,"2815":1,"2822":1,"2829":2,"2836":1,"2850":1,"2855":4,"2860":1,"2868":1,"2869":1}}],["value3>",{"2":{"14":1}}],["val2",{"2":{"383":1,"584":5,"2337":4,"2348":1}}],["val1",{"2":{"383":1,"584":5,"2337":4,"2348":1}}],["val$1",{"2":{"382":1,"2334":1}}],["val",{"2":{"334":1,"378":1,"679":3,"723":3,"956":10,"1374":10,"1974":1,"2333":1,"2607":1,"2852":2}}],["validaudience",{"2":{"1825":1}}],["validating",{"2":{"1487":1,"1792":2,"2137":1,"2575":1}}],["validationmode",{"2":{"2415":1}}],["validationtype",{"2":{"2148":3,"2575":2}}],["validationrule",{"2":{"2148":3,"2575":2}}],["validationrule>",{"2":{"2148":1,"2575":1}}],["validationresult",{"2":{"1026":2}}],["validationalgorithm",{"2":{"1650":1,"1651":1,"1657":1,"1663":1,"1792":1}}],["validationoptions",{"0":{"2446":1},"2":{"809":1,"817":2,"819":1,"820":1,"1792":1,"1948":1,"2138":1,"2142":1,"2144":1,"2145":1,"2146":1,"2148":2,"2225":1,"2378":1,"2384":1,"2440":1,"2442":2,"2446":1,"2448":1,"2575":3}}],["validation",{"0":{"109":1,"382":1,"811":1,"897":1,"1460":1,"1527":1,"1609":1,"1657":1,"2137":1,"2140":1,"2145":1,"2334":1,"2428":1,"2575":1,"2659":1,"2661":1,"2696":1},"1":{"2138":1,"2139":1,"2140":1,"2141":1,"2142":1,"2143":1,"2144":1,"2145":1,"2146":1,"2147":1,"2148":1,"2149":1,"2150":1,"2151":1,"2152":1},"2":{"31":1,"37":1,"51":1,"54":1,"66":1,"225":1,"226":1,"747":3,"779":1,"781":2,"807":1,"809":1,"812":1,"815":1,"816":1,"817":1,"818":3,"819":1,"820":1,"822":2,"852":2,"864":1,"865":1,"868":3,"869":4,"873":1,"879":1,"880":1,"892":1,"910":2,"979":1,"1037":1,"1044":1,"1067":1,"1069":1,"1071":1,"1073":2,"1086":1,"1099":2,"1100":1,"1109":1,"1150":1,"1197":1,"1220":1,"1225":1,"1382":1,"1390":1,"1407":1,"1422":1,"1454":1,"1489":2,"1501":1,"1609":2,"1651":1,"1657":1,"1788":2,"1792":13,"1795":2,"1825":2,"1830":1,"1875":1,"2137":2,"2139":2,"2140":1,"2141":3,"2142":1,"2143":1,"2146":1,"2147":3,"2148":1,"2149":4,"2150":1,"2152":1,"2232":1,"2237":1,"2375":1,"2380":1,"2384":1,"2389":2,"2409":1,"2412":1,"2414":1,"2415":1,"2417":1,"2445":1,"2446":2,"2447":2,"2472":1,"2481":1,"2492":1,"2575":7,"2627":1,"2659":2,"2661":1,"2664":1,"2666":1,"2679":1,"2705":2}}],["validator",{"2":{"1026":1,"1027":1,"2410":1,"2411":1,"2412":2,"2415":1,"2440":1,"2441":1,"2442":1,"2443":1}}],["validateparametersasync",{"2":{"2615":1}}],["validateconfigkeys=error",{"2":{"2416":1}}],["validateconfigkeys",{"0":{"2414":1},"1":{"2415":1,"2416":1},"2":{"1603":1,"1604":1,"1609":2,"1792":1,"2225":2,"2389":1,"2414":2,"2416":2,"2441":1,"2442":1,"2445":1,"2659":2}}],["validatedashboardrequest",{"2":{"1026":2}}],["validated",{"0":{"38":1,"2410":1},"1":{"2411":1,"2412":1,"2413":1},"2":{"382":1,"1080":1,"1197":1,"1382":1,"1460":1,"1504":4,"1717":1,"1792":2,"1957":1,"2225":2,"2334":1,"2375":1,"2379":1,"2411":2,"2413":1,"2446":1,"2481":1,"2754":1,"2840":1}}],["validatesigncount",{"2":{"1227":1,"1792":1,"1877":1,"1893":1}}],["validates",{"0":{"1243":1,"2441":1,"2445":1,"2446":1},"1":{"2442":1,"2443":1,"2444":1},"2":{"30":1,"781":1,"786":1,"975":1,"982":1,"984":1,"986":1,"1045":1,"1080":1,"1243":3,"1358":2,"1378":1,"1436":1,"1618":1,"1621":1,"1792":2,"1824":1,"2171":1,"2444":1,"2445":1,"2669":1,"2679":1,"2696":1}}],["validate",{"0":{"807":1,"2414":1,"2669":1},"1":{"808":1,"809":1,"810":1,"811":1,"812":1,"813":1,"814":1,"815":1,"816":1,"817":1,"818":1,"819":1,"820":1,"821":1,"822":1,"2415":1,"2416":1},"2":{"29":1,"50":1,"60":1,"226":1,"564":2,"565":3,"747":3,"768":1,"807":1,"808":2,"809":3,"811":2,"812":2,"813":3,"814":2,"815":1,"817":2,"868":1,"869":1,"897":2,"1003":1,"1196":1,"1197":1,"1227":1,"1303":1,"1332":1,"1366":3,"1386":1,"1406":1,"1439":1,"1454":4,"1504":1,"1604":1,"1609":2,"1717":1,"1792":8,"1877":1,"2126":2,"2127":2,"2143":1,"2147":7,"2150":1,"2152":1,"2225":2,"2320":5,"2323":2,"2357":1,"2414":1,"2415":4,"2416":1,"2417":1,"2440":1,"2444":1,"2554":4,"2575":5,"2581":1,"2669":2,"2774":1,"2785":2}}],["validity",{"2":{"1447":1,"1459":1,"1792":1,"2375":1,"2377":1}}],["valid",{"2":{"14":1,"37":1,"38":4,"39":1,"40":1,"51":1,"101":1,"113":1,"212":1,"252":1,"382":2,"637":1,"747":1,"817":1,"819":1,"843":1,"855":1,"863":1,"864":2,"865":1,"904":1,"1227":1,"1360":1,"1386":1,"1394":3,"1396":1,"1410":1,"1580":1,"1621":1,"1792":6,"1857":1,"1877":1,"1983":1,"2020":6,"2056":1,"2142":1,"2144":2,"2146":3,"2148":1,"2187":1,"2192":1,"2200":1,"2326":1,"2334":2,"2413":1,"2415":1,"2491":1,"2495":1,"2498":1,"2529":1,"2575":2,"2589":1,"2634":1,"2674":1,"2678":1,"2865":1}}],["v1=",{"2":{"2438":1}}],["v14",{"2":{"1090":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["v1",{"2":{"207":1,"390":1,"394":1,"436":2,"452":3,"531":1,"924":3,"1044":1,"1050":1,"1105":1,"1107":1,"1138":1,"1287":3,"1288":3,"1289":3,"1290":3,"1291":3,"1293":3,"1295":3,"1297":3,"1299":3,"1301":3,"1335":3,"1347":1,"1726":1,"1733":2,"1773":1,"1842":1,"2062":1,"2215":2,"2264":3,"2438":1,"2483":1,"2719":1,"2768":1,"2880":1}}],["vocabulary",{"2":{"1435":1}}],["vocal",{"2":{"847":1}}],["volume",{"2":{"872":1,"1654":1,"1792":1,"2157":1,"2297":1}}],["volumes",{"2":{"847":1}}],["voluntarily",{"2":{"865":1}}],["volatility",{"2":{"175":1,"683":2,"684":1,"708":1,"1792":1}}],["volatile",{"0":{"1129":1},"2":{"175":4,"179":1,"180":1,"245":1,"684":2,"686":1,"1037":1,"1128":1,"1129":3,"1792":1,"1847":1,"2197":1,"2858":1}}],["void",{"0":{"285":1,"288":1,"586":1,"823":1,"827":1,"2338":2,"2853":1},"1":{"824":1,"825":1,"826":1,"827":1,"828":1,"829":1,"830":1},"2":{"18":1,"72":1,"157":1,"184":1,"187":1,"227":1,"285":1,"288":1,"292":1,"299":1,"351":1,"436":1,"438":1,"451":2,"453":1,"567":1,"582":2,"583":1,"586":3,"587":9,"588":2,"614":1,"646":1,"658":1,"659":1,"665":2,"761":1,"771":1,"823":1,"824":2,"826":3,"827":1,"828":1,"829":1,"894":1,"934":1,"983":1,"994":1,"1105":1,"1317":1,"1331":1,"1337":2,"1345":2,"1366":1,"1372":2,"1410":1,"1416":1,"1424":1,"1427":1,"1429":1,"1558":1,"1664":1,"1824":1,"1920":1,"2186":1,"2247":1,"2258":1,"2292":1,"2294":1,"2313":2,"2320":2,"2337":6,"2338":5,"2339":1,"2357":2,"2549":1,"2580":2,"2802":1,"2809":1,"2812":1,"2829":1,"2834":2,"2853":1,"2854":3,"2859":1}}],["vite",{"0":{"1581":1},"2":{"1416":1,"1422":1,"1574":2}}],["vibe",{"2":{"1402":1}}],["video",{"2":{"1323":1}}],["videos",{"2":{"849":1}}],["violation",{"2":{"992":1,"1111":2,"1593":1,"1792":1}}],["virginia",{"2":{"913":1}}],["virtually",{"2":{"845":1,"848":1}}],["virtual",{"0":{"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"2322":1,"2849":1},"2":{"165":1,"168":2,"238":1,"1255":1,"2323":1,"2859":1}}],["visitor",{"2":{"1430":1}}],["visit",{"2":{"1059":1,"1380":1,"1792":5,"2162":1}}],["visibility",{"2":{"868":1}}],["visible",{"0":{"1043":1},"2":{"390":1,"668":1,"874":1,"943":1,"945":1,"1015":1,"1069":1,"1792":1,"1851":1,"2185":1,"2382":1,"2384":1,"2393":1,"2416":1,"2537":1,"2577":1}}],["visualstudio",{"2":{"1792":1}}],["visually",{"2":{"1123":1,"1382":1}}],["visual",{"2":{"908":1,"1086":1,"1088":1,"1094":4,"1115":1,"1123":2,"1127":2,"1751":1,"1757":1,"2193":1,"2581":1}}],["visualization",{"2":{"866":1,"872":1,"1037":1,"1572":1,"1573":1}}],["vice",{"2":{"841":1}}],["vietnam",{"0":{"839":1},"1":{"840":1,"841":1,"842":1,"843":1,"844":1,"845":1,"846":1,"847":1,"848":1,"849":1,"850":1,"851":1,"852":1,"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"859":1,"860":1,"861":1,"862":1,"863":1,"864":1,"865":1},"2":{"840":1}}],["view=aspnetcore",{"2":{"1792":6}}],["viewing",{"2":{"965":1,"2075":1,"2651":1}}],["viewer",{"2":{"691":1}}],["view",{"0":{"1096":1},"2":{"351":3,"959":1,"966":1,"970":1,"1068":1,"1084":1,"1114":1,"1122":1,"1125":1,"1126":1,"1127":1,"1385":4,"1439":1,"1792":1,"2220":1,"2729":1,"2760":1}}],["views",{"0":{"2729":1},"2":{"351":4,"957":1,"967":1,"1074":1,"1095":2,"1096":3,"1100":1,"1127":1,"2184":1,"2317":1,"2344":1,"2351":1,"2388":1,"2389":1,"2432":1,"2531":1,"2590":1,"2607":1,"2710":1}}],["via",{"0":{"646":1,"711":1,"1196":1},"2":{"41":1,"63":1,"101":1,"134":1,"167":1,"168":1,"173":1,"210":1,"212":1,"223":1,"261":2,"309":1,"320":1,"327":1,"336":1,"337":1,"377":1,"379":1,"390":1,"408":1,"426":1,"428":1,"458":1,"469":1,"480":1,"499":1,"502":1,"515":1,"529":1,"567":1,"639":1,"650":1,"655":1,"663":1,"669":1,"679":2,"711":1,"720":1,"723":1,"737":3,"745":1,"746":2,"752":1,"759":1,"766":1,"769":1,"801":1,"805":1,"829":1,"868":2,"875":1,"881":1,"902":1,"907":1,"964":1,"1033":1,"1049":1,"1050":1,"1059":1,"1094":1,"1097":1,"1098":5,"1100":2,"1101":2,"1102":2,"1104":3,"1105":3,"1107":1,"1111":1,"1115":1,"1135":2,"1137":1,"1139":1,"1150":2,"1167":1,"1204":1,"1276":1,"1304":2,"1309":1,"1320":1,"1338":1,"1370":1,"1372":1,"1413":1,"1420":1,"1447":1,"1475":1,"1511":1,"1519":1,"1529":1,"1576":1,"1632":1,"1649":1,"1689":2,"1704":1,"1732":1,"1746":1,"1747":2,"1792":10,"1802":1,"1825":1,"1840":1,"1843":1,"1849":1,"1909":1,"1923":1,"1926":1,"1929":1,"1930":1,"1957":1,"2018":1,"2040":1,"2079":1,"2097":1,"2111":1,"2122":1,"2124":2,"2125":1,"2128":1,"2130":1,"2164":1,"2167":1,"2175":1,"2185":1,"2187":2,"2190":2,"2221":1,"2222":2,"2223":1,"2227":1,"2252":1,"2264":1,"2265":1,"2282":1,"2284":1,"2297":1,"2309":1,"2318":1,"2320":2,"2321":1,"2322":1,"2324":2,"2333":2,"2334":1,"2344":1,"2346":1,"2347":2,"2372":1,"2379":1,"2380":1,"2381":1,"2392":1,"2405":1,"2413":1,"2456":1,"2461":1,"2481":1,"2490":1,"2496":1,"2506":1,"2509":1,"2513":1,"2522":1,"2532":1,"2536":1,"2537":1,"2545":2,"2549":1,"2572":1,"2587":2,"2611":1,"2621":1,"2653":1,"2656":1,"2664":1,"2665":1,"2670":1,"2691":1,"2719":1,"2772":1,"2774":1,"2795":1,"2816":1,"2823":1,"2835":1,"2840":1,"2842":1,"2850":1,"2876":1}}],["vectorized",{"2":{"2270":1}}],["vector",{"2":{"2270":1}}],["vendor",{"2":{"1792":3}}],["vendors",{"2":{"848":1,"859":1,"918":1}}],["ventured",{"2":{"1403":1}}],["velocity",{"2":{"1385":1}}],["ve",{"2":{"177":1,"838":1,"877":1,"934":1,"947":1,"1382":1,"1404":1,"1409":1,"2391":2}}],["vedran",{"2":{"2":1,"1096":1}}],["verdict",{"2":{"859":1}}],["vernon",{"2":{"851":3,"863":3,"865":1}}],["versus",{"2":{"852":1}}],["versa",{"2":{"841":1}}],["versioning",{"0":{"2215":1},"2":{"2438":2,"2727":1}}],["versioned",{"0":{"403":1},"2":{"924":3,"925":1,"1385":1}}],["versions",{"0":{"2710":1},"2":{"175":1,"872":1,"1013":1,"1096":1,"1157":1,"1254":1,"1263":1,"1272":1,"1792":1,"2220":1,"2607":1,"2668":1,"2680":1,"2710":1,"2785":2,"2786":2,"2788":1}}],["version",{"0":{"1257":1,"2221":1,"2222":1,"2223":1,"2224":1,"2225":1,"2226":1,"2227":1,"2228":1,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2240":1,"2242":1,"2244":1,"2245":1,"2261":1,"2263":1,"2269":1,"2276":1,"2281":1,"2299":1,"2312":1,"2316":1,"2374":1,"2388":1,"2409":1,"2419":1,"2440":1,"2450":1,"2459":1,"2468":1,"2474":1,"2479":1,"2500":1,"2508":1,"2515":1,"2525":1,"2548":1,"2553":1,"2557":1,"2561":1,"2564":1,"2569":1,"2571":1,"2574":1,"2579":1,"2584":1,"2593":1,"2599":1,"2602":1,"2606":1,"2610":1,"2613":1,"2617":1,"2620":1,"2624":1,"2631":1,"2637":1,"2640":1,"2644":1,"2647":1,"2658":1,"2668":1,"2676":1,"2711":1},"1":{"2245":1,"2246":1,"2247":1,"2248":1,"2249":1,"2250":1,"2251":1,"2252":1,"2253":1,"2254":1,"2255":1,"2256":1,"2257":1,"2258":1,"2259":1,"2264":1,"2265":1,"2266":1,"2267":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1,"2277":1,"2278":1,"2279":1,"2282":1,"2283":1,"2284":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1,"2300":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2313":1,"2314":1,"2317":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1,"2368":1,"2369":1,"2370":1,"2371":1,"2372":1,"2375":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2549":1,"2550":1,"2551":1,"2554":1,"2555":1,"2558":1,"2559":1,"2562":1,"2565":1,"2566":1,"2567":1,"2572":1,"2575":1,"2576":1,"2577":1,"2580":1,"2581":1,"2582":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2591":1,"2594":1,"2595":1,"2596":1,"2597":1,"2600":1,"2603":1,"2604":1,"2607":1,"2608":1,"2611":1,"2614":1,"2615":1,"2618":1,"2621":1,"2622":1,"2625":1,"2626":1,"2627":1,"2628":1,"2629":1,"2632":1,"2633":1,"2634":1,"2635":1,"2638":1,"2641":1,"2642":1,"2645":1,"2648":1,"2649":1,"2650":1,"2651":1,"2652":1,"2653":1,"2654":1,"2655":1,"2656":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1,"2665":1,"2666":1,"2667":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1,"2674":1,"2677":1,"2678":1,"2679":1},"2":{"1":1,"7":2,"19":1,"20":1,"22":1,"203":1,"317":1,"327":1,"347":1,"408":1,"412":1,"469":1,"559":1,"581":1,"618":1,"823":1,"837":1,"838":1,"843":1,"852":1,"854":1,"855":1,"860":2,"911":1,"920":1,"924":1,"946":1,"966":1,"971":1,"1017":1,"1036":1,"1065":1,"1073":3,"1086":1,"1102":1,"1113":1,"1127":1,"1139":1,"1208":1,"1247":1,"1253":1,"1255":1,"1257":2,"1327":1,"1335":1,"1336":1,"1338":1,"1339":1,"1351":1,"1367":1,"1368":1,"1378":1,"1384":1,"1398":1,"1402":2,"1405":1,"1407":1,"1453":1,"1582":2,"1609":1,"1701":1,"1728":1,"1762":1,"1785":1,"1792":11,"1800":1,"1807":1,"1808":2,"1813":1,"1819":1,"1824":3,"1866":1,"1898":1,"2014":1,"2045":1,"2056":1,"2116":2,"2117":2,"2119":4,"2220":1,"2221":1,"2222":1,"2223":1,"2224":1,"2225":1,"2226":1,"2227":1,"2228":1,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2240":1,"2245":3,"2254":1,"2261":3,"2264":1,"2389":2,"2438":3,"2440":1,"2448":1,"2481":2,"2529":1,"2550":2,"2555":1,"2567":2,"2569":1,"2571":2,"2576":1,"2586":1,"2607":1,"2668":2,"2679":2,"2701":2,"2702":2,"2704":4,"2713":1,"2779":1,"2785":2,"2786":1,"2788":1,"2789":3,"2790":2,"2791":2,"2819":1,"2823":1,"2824":2,"2825":1}}],["verbosity",{"2":{"2628":1,"2629":1}}],["verbose",{"0":{"2824":1},"2":{"631":1,"1792":10,"1800":4,"1801":2,"1802":2,"1803":2,"1804":2,"1805":2,"1806":1,"1807":2,"1863":1,"2104":1,"2108":1,"2364":1,"2536":2,"2544":2,"2750":2,"2751":1,"2794":1,"2795":1,"2798":2,"2799":1,"2800":1,"2803":1,"2824":1,"2825":1,"2880":2}}],["verb",{"0":{"1924":1,"2843":1},"2":{"868":1,"2222":1,"2319":2,"2509":1,"2513":1,"2811":1,"2843":1}}],["verbatim",{"2":{"324":1,"388":1,"436":1,"452":1,"1368":1,"1408":1,"1566":1,"1924":2,"2451":1,"2509":1,"2512":1,"2529":1,"2726":1,"2865":1}}],["very",{"2":{"277":1,"843":1,"847":1,"848":1,"911":1,"918":1,"930":3,"1104":1,"1139":1,"1254":1,"1386":1,"1393":1,"1401":1,"1402":1,"1404":1,"2376":1,"2532":1}}],["verifiable",{"2":{"2175":1}}],["verifies",{"2":{"298":1,"309":2,"364":1,"368":1,"453":1,"1049":1,"1055":3,"1210":1,"1215":1,"1216":1,"1243":1,"1410":1,"1770":1,"2187":1,"2435":1,"2438":1}}],["verified",{"2":{"0":1,"41":1,"63":1,"366":1,"1046":1,"1214":1,"1220":1,"1253":1,"1870":1,"2453":1,"2465":1,"2481":1,"2546":2}}],["verification",{"0":{"307":1,"310":1,"1055":1,"1056":1,"1473":1},"1":{"308":1,"309":1,"310":1,"1056":1},"2":{"33":1,"63":1,"298":1,"300":1,"305":1,"310":6,"312":2,"942":1,"1037":1,"1048":3,"1049":2,"1055":1,"1056":10,"1062":2,"1064":3,"1098":1,"1209":1,"1211":1,"1214":2,"1220":2,"1228":3,"1235":1,"1236":3,"1237":1,"1238":1,"1239":1,"1243":1,"1248":1,"1252":1,"1471":2,"1472":5,"1480":1,"1792":6,"1867":1,"1868":2,"1870":1,"1878":3,"1882":1,"1885":1,"1886":1,"1887":1,"1888":1,"2164":1,"2165":1,"2177":2,"2181":1,"2342":3}}],["verifytoken",{"2":{"1320":1}}],["verifychallengecommand",{"0":{"1235":1,"1885":1},"2":{"1792":1,"1893":1}}],["verifying",{"0":{"2177":1},"2":{"307":1,"1211":1,"1792":1}}],["verify",{"0":{"308":1,"929":1},"2":{"1":2,"298":4,"307":2,"308":4,"309":1,"313":1,"922":1,"929":2,"930":22,"934":1,"988":1,"989":1,"990":3,"1068":1,"1217":1,"1220":1,"1221":1,"1222":1,"1228":1,"1230":2,"1232":1,"1235":1,"1366":1,"1371":1,"1382":1,"1792":7,"1878":1,"1880":2,"1893":1,"2176":2,"2177":6,"2187":1,"2456":1,"2627":3}}],["u8",{"2":{"2399":1}}],["u3",{"2":{"1792":1,"1800":1,"1809":2,"1810":1}}],["uv",{"2":{"1792":4}}],["u2",{"2":{"1333":2}}],["u1",{"2":{"1333":1}}],["uri=",{"2":{"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1697":1,"1792":5}}],["uri",{"2":{"1111":1,"1671":1,"1696":1,"1792":2,"1830":1,"1925":1,"1994":1,"2255":1,"2781":1}}],["url=jdbc",{"2":{"2874":1}}],["url=>url`",{"2":{"1792":1}}],["urlpath",{"0":{"1817":1},"2":{"1792":4,"1814":1,"1830":1,"1831":1,"1897":1,"1898":1,"1907":1,"1911":1,"2254":1,"2434":1,"2481":2}}],["urlpathprefix=",{"2":{"1606":1,"2689":1,"2691":1,"2692":3,"2697":1,"2719":1}}],["urlpathprefix",{"2":{"1606":1,"1792":1,"1836":1,"1841":1,"1842":1,"1863":1,"2529":1,"2686":1,"2690":2,"2697":2,"2701":1,"2723":1,"2865":1,"2881":1}}],["urls=",{"2":{"2699":1}}],["urls",{"0":{"2118":1,"2703":1},"2":{"669":1,"876":1,"1010":1,"1105":2,"1115":1,"1199":1,"1416":3,"1417":2,"1555":1,"1563":1,"1574":5,"1575":1,"1581":3,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1733":1,"1744":1,"1787":1,"1792":6,"1794":1,"1995":1,"2116":2,"2117":4,"2118":4,"2119":3,"2264":1,"2277":1,"2576":1,"2645":1,"2701":2,"2702":4,"2703":4,"2704":3,"2712":1}}],["urlencoded",{"2":{"209":1}}],["url",{"0":{"422":1,"436":1,"446":1,"533":1,"723":1,"961":1,"1413":1,"1572":1,"1676":1,"1841":1,"1842":1,"2286":1,"2327":1,"2654":1,"2655":1,"2656":1,"2727":1,"2811":1},"1":{"1842":1,"2655":1,"2656":1},"2":{"203":1,"212":1,"214":2,"215":1,"243":1,"245":1,"253":2,"259":1,"387":2,"394":1,"395":2,"396":1,"399":1,"404":1,"408":1,"409":1,"410":1,"413":2,"414":2,"422":3,"434":2,"436":5,"446":3,"452":1,"454":1,"469":1,"517":1,"527":1,"533":1,"650":5,"663":5,"664":2,"666":2,"667":1,"669":5,"679":5,"681":1,"719":3,"720":6,"723":3,"726":1,"835":2,"872":1,"957":3,"961":3,"1017":2,"1043":1,"1047":1,"1095":1,"1104":1,"1105":1,"1107":1,"1121":1,"1139":4,"1199":1,"1200":1,"1305":2,"1309":1,"1335":4,"1340":1,"1364":1,"1374":1,"1382":1,"1407":1,"1411":1,"1413":4,"1415":4,"1416":3,"1479":2,"1521":1,"1555":1,"1561":1,"1562":1,"1572":2,"1574":1,"1576":2,"1581":2,"1670":2,"1676":1,"1684":2,"1690":1,"1696":4,"1697":2,"1728":1,"1738":1,"1741":1,"1743":1,"1759":1,"1787":1,"1792":31,"1794":1,"1807":1,"1817":1,"1828":1,"1841":2,"1844":1,"1898":1,"1900":2,"1907":1,"1911":1,"1917":4,"1925":1,"1929":3,"1961":2,"1984":2,"1986":1,"1987":1,"1988":1,"1989":1,"1995":2,"2019":6,"2034":1,"2081":2,"2146":1,"2197":1,"2233":1,"2254":3,"2255":2,"2264":1,"2270":2,"2277":2,"2278":1,"2282":1,"2286":2,"2289":1,"2301":1,"2302":2,"2304":1,"2318":1,"2346":1,"2372":1,"2380":1,"2389":2,"2391":5,"2407":2,"2434":1,"2483":1,"2493":1,"2502":2,"2513":1,"2517":1,"2520":1,"2523":1,"2555":1,"2558":1,"2597":1,"2632":2,"2648":1,"2655":2,"2656":4,"2665":1,"2699":1,"2701":1,"2724":1,"2762":1,"2764":1,"2765":1,"2767":1,"2806":1,"2808":1,"2814":1,"2828":2,"2829":1,"2830":2,"2834":1,"2838":1,"2840":1}}],["ubuntu",{"0":{"2385":1},"2":{"1071":1,"2385":2}}],["ubiquitous",{"2":{"841":1,"851":1}}],["uqqw",{"2":{"927":2}}],["utf",{"0":{"2399":1},"2":{"1685":1,"1792":1,"2309":1,"2399":1}}],["utf8null",{"2":{"2399":1}}],["utf8colon",{"2":{"2399":1}}],["utf8comma",{"2":{"2399":1}}],["utf8closebracket",{"2":{"2399":1}}],["utf8closebrace",{"2":{"2399":1}}],["utf8openbracket",{"2":{"2399":1}}],["utf8openbrace",{"2":{"2399":1}}],["utf8",{"2":{"1202":1}}],["utils",{"2":{"1582":2}}],["utility",{"2":{"2367":1,"2531":1,"2841":1}}],["utilities",{"2":{"1582":1}}],["utilization",{"2":{"1167":1,"1324":1}}],["utc",{"2":{"1021":1,"1026":1,"1376":1,"1792":5,"1806":1,"1856":5,"2224":3,"2450":4,"2451":6,"2452":3,"2453":2,"2454":6,"2455":1,"2456":7,"2803":1}}],["ut",{"2":{"922":1}}],["ux",{"2":{"872":1,"1385":1,"1386":1,"2438":1}}],["ultimately",{"2":{"871":1}}],["uid",{"2":{"1114":1,"1620":2,"1792":1}}],["uis",{"2":{"831":1,"2670":1}}],["ui",{"0":{"834":1},"2":{"352":2,"833":3,"834":4,"836":1,"837":2,"838":1,"868":1,"872":1,"996":1,"1037":1,"1038":1,"1043":1,"1123":1,"1232":2,"1318":1,"1385":1,"1386":2,"1401":1,"1405":5,"1419":1,"1792":2,"1882":2,"2395":1,"2430":1,"2432":2,"2438":1}}],["uuid4",{"2":{"1366":1}}],["uuid",{"2":{"258":1,"585":1,"1232":1,"1234":1,"1235":1,"1255":1,"1358":1,"1366":2,"1792":2,"1882":1,"1884":1,"2144":2,"2277":1}}],["unfinished",{"2":{"2531":1}}],["unfortunately",{"2":{"918":1}}],["unforgettable",{"2":{"913":1}}],["unfolds",{"2":{"865":1}}],["un",{"2":{"2267":1}}],["unbound",{"0":{"1861":1}}],["unpartitioned",{"2":{"1792":1,"1956":1,"2379":1}}],["unprotected",{"2":{"182":1,"2295":1}}],["unprotect",{"2":{"182":1,"2295":1,"2297":1,"2405":1}}],["unhandled",{"2":{"2663":1}}],["unhandledcommentlines",{"2":{"2223":1,"2482":1,"2487":1}}],["unhealthy",{"2":{"1766":1,"1782":1,"1792":2,"2634":2}}],["unhold",{"2":{"864":1}}],["unglamorous",{"2":{"1382":1}}],["unusable",{"2":{"1792":1,"1917":1,"2222":1,"2812":1}}],["unusual",{"2":{"1279":1}}],["unused",{"2":{"388":1,"1792":1}}],["unencrypted",{"2":{"1664":1,"2291":1}}],["uneven",{"2":{"1254":1}}],["unexpected",{"2":{"1171":1,"1741":1,"2289":1}}],["unexpectedly",{"2":{"1149":1}}],["unwind",{"2":{"2532":1}}],["unwrapped",{"2":{"1077":1}}],["unwanted",{"2":{"849":1,"1792":1}}],["unmatched",{"2":{"1266":1,"1280":1,"1957":1,"2379":1}}],["unmodified",{"2":{"866":1}}],["unmistakably",{"2":{"848":1}}],["unqualified",{"2":{"582":1}}],["unquoted",{"2":{"378":1,"379":2,"388":1,"2333":3}}],["unscoped",{"2":{"2498":1}}],["unspecified",{"2":{"1447":1,"1792":1,"2426":1,"2428":1,"2436":1,"2451":1}}],["unsafe",{"0":{"1130":1},"2":{"1130":1,"1792":5,"2019":1,"2020":2,"2023":1,"2024":1,"2029":1,"2632":5}}],["unsurvivable",{"2":{"2532":1}}],["unsuccessful",{"2":{"840":1}}],["unsupported",{"2":{"280":2,"1460":1,"2113":1,"2375":1,"2535":1,"2881":1}}],["unset",{"2":{"395":1,"1460":1,"1605":2,"1792":2,"2038":1,"2375":1,"2435":1,"2497":2,"2498":1,"2688":2,"2719":1}}],["untestable",{"2":{"2879":1}}],["untested",{"2":{"1792":1,"2107":1,"2537":1,"2879":1}}],["untyped",{"2":{"2496":1}}],["untrusted",{"2":{"1824":1,"1972":1,"2040":1,"2481":1}}],["untouched",{"2":{"388":1,"843":1,"1605":1,"2497":1,"2498":1,"2531":1,"2534":1,"2540":1,"2688":1,"2845":1,"2862":1,"2869":1}}],["until",{"2":{"106":1,"214":2,"310":1,"851":1,"861":1,"865":1,"992":2,"994":1,"1046":1,"1076":2,"1081":1,"1101":1,"1150":1,"1161":1,"1519":1,"1524":1,"1743":2,"2106":1,"2402":1,"2461":1,"2466":1,"2494":1,"2502":2,"2869":1,"2875":1,"2878":1}}],["uncached",{"2":{"2466":1}}],["uncomment",{"2":{"1792":1}}],["uncommitted",{"2":{"1078":1,"2099":1,"2110":1,"2527":1,"2530":1,"2739":1,"2862":1,"2881":1}}],["uncontrolled",{"2":{"843":1}}],["unconditionally",{"2":{"179":1,"687":1,"1925":1,"2353":1}}],["unconditional",{"2":{"175":1}}],["unclosed",{"2":{"389":1,"2007":1,"2328":1}}],["unchanged",{"0":{"2856":1},"2":{"362":1,"389":1,"848":2,"1069":1,"1323":1,"1368":1,"1385":1,"1569":1,"1571":1,"1759":1,"1802":1,"1912":1,"1924":1,"1957":1,"2110":1,"2193":1,"2226":1,"2379":1,"2381":1,"2391":2,"2415":1,"2416":1,"2422":2,"2435":1,"2440":1,"2481":1,"2484":1,"2491":1,"2493":1,"2496":1,"2498":1,"2513":1,"2520":1,"2530":1,"2532":1,"2540":1,"2544":1,"2545":1,"2581":1,"2809":1}}],["unintentionally",{"2":{"1401":1}}],["universal",{"0":{"2664":1},"2":{"1169":1,"2232":1}}],["unified",{"2":{"1100":1,"1355":1,"1924":1}}],["uniformly",{"2":{"2222":1,"2509":1}}],["uniform",{"2":{"868":1}}],["unicode",{"2":{"930":2,"2589":1,"2607":1}}],["union",{"2":{"852":2}}],["unimpaired",{"2":{"848":1}}],["uniquely",{"2":{"2740":1}}],["uniquemodels",{"2":{"1553":1,"1559":1,"1792":1}}],["unique",{"2":{"756":3,"757":4,"784":3,"785":1,"852":2,"864":3,"961":1,"1053":1,"1095":1,"1111":1,"1129":1,"1139":1,"1213":2,"1214":1,"1237":1,"1307":1,"1336":1,"1358":3,"1363":1,"1366":3,"1384":1,"1460":1,"1487":1,"1655":1,"1792":9,"1887":1,"1894":1,"1906":1,"2127":1,"2167":1,"2326":1,"2375":1,"2590":1,"2871":1}}],["unix",{"0":{"342":1},"2":{"342":1}}],["unitprice",{"2":{"814":1}}],["units",{"0":{"269":1},"2":{"280":1,"1378":1,"1393":1,"2210":1}}],["unit",{"0":{"275":1,"987":1},"1":{"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1},"2":{"133":2,"268":5,"269":2,"280":3,"814":2,"832":1,"840":1,"849":1,"852":1,"863":1,"865":1,"875":1,"986":1,"989":1,"1005":2,"1074":1,"1076":1,"1077":1,"1132":1,"1181":1,"1187":1,"1188":1,"1189":1,"1192":2,"1373":1,"1378":1,"2211":1,"2212":1,"2417":1,"2546":2,"2858":1}}],["unnoticed",{"2":{"1436":1}}],["unnecessarily",{"2":{"2278":1}}],["unnecessary",{"2":{"108":1,"1136":1,"1206":1,"1399":1,"1439":1,"1533":1,"2258":1,"2350":1,"2353":1,"2540":1}}],["unnest",{"2":{"1427":1,"1429":1,"2762":2}}],["unnesting",{"2":{"1097":2}}],["unnested",{"2":{"915":1}}],["unnamedsinglecolumnset",{"0":{"2009":1},"2":{"1792":1,"1999":1,"2000":1,"2009":2,"2330":2,"2357":2,"2725":1,"2841":1,"2842":1,"2851":1}}],["unnamed",{"0":{"613":1,"2326":1},"2":{"299":1,"613":1,"615":1,"2339":1}}],["unreadable",{"0":{"2757":1}}],["unreachable",{"2":{"1767":1,"1770":1,"1792":2,"2634":2}}],["unreferenced",{"2":{"2380":1}}],["unregistered",{"2":{"1792":1,"1822":1}}],["unrecoverable",{"2":{"1664":1,"2297":1}}],["unrecognized",{"0":{"252":1},"2":{"2192":1,"2412":1,"2482":1,"2544":1}}],["unremarkable",{"2":{"1410":1}}],["unrestricted",{"2":{"1015":1}}],["unresolved",{"2":{"102":1,"109":1,"1150":1,"1527":1,"2380":1,"2497":1}}],["unrelated",{"2":{"319":1,"387":1,"395":1,"874":1,"1070":1,"1792":1,"1851":1,"2156":1,"2382":1,"2392":1,"2481":1,"2542":1,"2546":2,"2878":1}}],["unable",{"2":{"1593":1,"1624":1,"1792":1}}],["unavailable",{"2":{"452":1,"1338":1,"1339":1,"1766":1,"1767":1,"1770":1,"1782":1,"1792":1,"2634":1,"2815":1}}],["unaffected",{"2":{"188":1,"347":1,"614":1,"1068":1,"1792":1,"1908":1,"2157":1,"2223":1,"2296":1,"2428":1,"2435":1,"2466":1,"2482":1,"2494":1,"2505":1}}],["unauthorizedreturntoqueryparameter",{"2":{"1792":1,"2033":1,"2034":1,"2035":1,"2042":1}}],["unauthorizedredirectpath",{"2":{"1792":1,"2033":1,"2034":1,"2035":1,"2042":1}}],["unauthorized",{"2":{"16":1,"25":1,"39":1,"60":1,"63":1,"64":1,"297":1,"298":1,"299":2,"301":1,"934":1,"1480":1,"1688":1,"1792":2,"2034":1,"2176":1,"2271":2,"2608":1,"2823":1}}],["unauthenticated",{"0":{"798":1},"2":{"4":1,"25":1,"27":1,"224":1,"298":1,"934":2,"1162":1,"1465":1,"1475":1,"1477":1,"1827":1,"2039":1,"2176":1,"2490":1}}],["undefined",{"2":{"894":2,"938":2,"995":6,"997":1,"1024":1,"1317":3,"1318":1,"1321":1,"1326":1,"1342":3,"1366":2,"1386":3,"1408":3,"1410":1,"1416":6,"1553":1,"1558":1,"1567":3,"1792":1,"2242":1,"2247":4,"2255":1,"2273":2,"2359":2}}],["underline",{"2":{"1792":1}}],["underlying",{"2":{"848":1,"874":1,"983":1,"1139":1,"1851":1,"1984":1,"2382":1,"2459":1,"2751":1}}],["underexecutionidheadername",{"2":{"1620":1}}],["underscore",{"2":{"1792":2,"1967":1}}],["underscores",{"2":{"1606":1,"2144":1,"2689":1}}],["understates",{"2":{"872":1,"873":1}}],["understands",{"2":{"2528":1,"2863":1}}],["understanding",{"0":{"932":1,"1311":1},"1":{"1312":1,"1313":1,"1314":1,"1315":1,"1316":1},"2":{"872":1,"1155":1,"1716":1,"2577":1}}],["understand",{"2":{"436":1,"1942":1,"2677":1,"2693":1}}],["underappreciated",{"2":{"974":1}}],["underneath",{"2":{"848":1,"857":1}}],["under",{"0":{"352":1,"2427":1,"2476":1},"2":{"108":1,"214":1,"352":1,"448":1,"659":1,"848":1,"852":3,"854":1,"855":1,"860":1,"864":1,"865":1,"872":1,"953":1,"1044":2,"1046":1,"1064":1,"1079":1,"1089":1,"1121":1,"1162":1,"1164":1,"1168":1,"1171":1,"1180":2,"1266":1,"1324":2,"1329":1,"1460":1,"1464":1,"1522":1,"1609":1,"1697":1,"1792":6,"1826":1,"1924":1,"1925":1,"1955":1,"2010":1,"2104":1,"2106":1,"2108":1,"2112":1,"2125":1,"2129":1,"2131":1,"2157":1,"2222":1,"2224":1,"2225":1,"2330":1,"2375":1,"2376":1,"2377":1,"2378":1,"2380":1,"2381":1,"2385":1,"2389":1,"2398":2,"2407":1,"2409":1,"2412":1,"2413":1,"2419":1,"2422":1,"2423":1,"2424":1,"2425":1,"2431":1,"2432":1,"2436":2,"2438":1,"2456":1,"2466":2,"2470":1,"2481":1,"2498":1,"2521":1,"2532":1,"2533":1,"2535":1,"2536":1,"2537":1,"2540":4,"2543":2,"2544":1,"2546":1,"2661":1,"2769":1,"2794":1,"2802":2,"2814":1,"2824":1,"2835":1,"2845":2,"2857":1,"2869":1,"2873":1,"2878":2}}],["undo",{"2":{"177":1,"989":2}}],["unlocks",{"2":{"1081":1,"2375":1,"2380":1}}],["unlimited",{"2":{"928":1,"1511":1,"1616":1,"1792":1,"1991":2,"2265":1,"2379":1}}],["unlike",{"2":{"168":1,"377":1,"762":1,"924":1,"1054":1,"1094":1,"1200":1,"1363":1,"1391":1,"1453":1,"1823":1,"1867":1,"2333":1,"2712":1,"2848":1}}],["unless",{"2":{"108":2,"745":1,"1435":1,"1569":1,"1759":1,"1840":1,"1856":1,"1912":1,"2175":1,"2181":1,"2195":1,"2389":1,"2416":1,"2520":1,"2528":2,"2537":1,"2728":1,"2863":1,"2864":1}}],["unknown",{"0":{"2754":1},"2":{"102":1,"109":1,"212":1,"388":1,"390":1,"395":1,"704":1,"996":1,"1041":1,"1150":1,"1449":1,"1527":1,"1593":1,"1609":4,"1792":4,"1824":2,"1957":1,"2106":1,"2111":1,"2178":1,"2223":1,"2324":1,"2336":1,"2348":2,"2379":1,"2380":1,"2394":1,"2410":2,"2414":1,"2416":1,"2428":1,"2441":1,"2442":1,"2481":1,"2493":2,"2496":1,"2529":1,"2532":1,"2533":4,"2537":1,"2659":4,"2663":1,"2679":1,"2696":1,"2878":1}}],["um4k594nl6pbqx2el0lcbkkladof1k9atryky+g14f6bqptsckwo6qz1wj1d9tx",{"2":{"62":2}}],["usr",{"2":{"2782":1,"2783":1,"2784":1}}],["usable",{"2":{"1792":1,"1957":1,"2098":1,"2379":1}}],["usage",{"0":{"104":1,"276":1,"332":1,"415":1,"437":1,"953":1,"1277":1,"1737":1,"2147":1,"2303":1},"1":{"277":1,"278":1,"438":1,"439":1,"1278":1},"2":{"87":1,"88":2,"912":1,"914":1,"916":2,"918":1,"919":1,"926":2,"932":1,"947":1,"961":1,"1137":1,"1168":1,"1254":1,"1278":2,"1342":1,"1349":1,"1351":1,"1401":1,"1435":1,"1511":1,"1516":1,"1517":1,"1518":1,"1573":1,"1792":3,"2089":1,"2261":2,"2265":3,"2270":1,"2277":1,"2339":1,"2549":1,"2562":1,"2572":1,"2575":1,"2580":1,"2608":1,"2721":1,"2755":2}}],["usd",{"2":{"1023":4,"1024":4,"1823":1}}],["usual",{"2":{"436":1,"448":1,"453":1,"1382":1,"1423":1,"2533":1}}],["usually",{"2":{"307":1,"683":1,"845":1,"854":1,"1302":1,"1385":1,"1394":1,"1684":1,"1792":2,"2452":1,"2454":1,"2680":1}}],["us",{"0":{"1435":1},"1":{"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1},"2":{"269":1,"845":1,"849":1,"851":1,"852":1,"860":1,"912":1,"918":1,"920":2,"1037":2,"1386":4,"1388":1,"1391":1,"1401":1,"1435":2,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1792":16,"2257":4,"2632":2,"2633":1,"2634":1}}],["using",{"0":{"138":1,"306":1,"466":1,"467":1,"662":1,"766":1,"814":1,"915":1,"1547":1,"1599":1,"1615":1,"1632":1,"1771":1,"2063":1,"2762":1},"2":{"37":1,"41":1,"51":1,"56":1,"63":1,"79":1,"121":1,"133":1,"156":1,"168":1,"182":1,"184":1,"237":1,"245":1,"253":1,"286":1,"299":1,"309":1,"312":1,"357":1,"362":1,"364":1,"385":1,"404":1,"454":1,"470":1,"479":1,"480":1,"507":1,"522":2,"544":1,"556":1,"570":1,"637":1,"646":4,"650":1,"663":1,"664":1,"665":1,"666":1,"674":1,"718":1,"746":1,"749":1,"780":1,"809":2,"811":2,"812":2,"813":3,"814":2,"815":1,"817":2,"841":1,"851":1,"864":1,"868":2,"869":1,"876":1,"881":1,"903":1,"909":1,"911":1,"914":1,"915":1,"916":5,"918":4,"919":3,"920":2,"980":1,"982":2,"990":1,"1005":1,"1007":1,"1010":1,"1026":2,"1031":1,"1037":3,"1048":1,"1050":1,"1052":1,"1054":1,"1056":2,"1076":1,"1098":4,"1114":1,"1122":1,"1138":2,"1147":1,"1159":1,"1174":1,"1178":2,"1193":1,"1205":1,"1220":1,"1243":1,"1316":2,"1318":1,"1321":1,"1338":1,"1355":2,"1366":2,"1375":1,"1377":1,"1385":1,"1390":1,"1398":1,"1400":1,"1401":3,"1402":4,"1408":1,"1414":1,"1446":1,"1450":1,"1514":1,"1516":1,"1523":1,"1528":1,"1530":1,"1532":1,"1540":1,"1544":1,"1588":1,"1599":1,"1618":1,"1626":1,"1632":1,"1641":1,"1651":3,"1655":1,"1659":1,"1661":1,"1670":1,"1688":1,"1731":1,"1739":1,"1792":44,"1799":1,"1837":1,"1851":1,"1855":1,"1858":1,"1866":1,"1870":1,"1935":1,"1947":1,"1949":1,"1952":1,"1953":1,"1968":1,"2008":1,"2040":1,"2047":1,"2056":1,"2062":1,"2063":1,"2077":1,"2126":1,"2147":6,"2148":1,"2164":3,"2165":10,"2167":1,"2183":1,"2193":2,"2195":1,"2197":1,"2202":1,"2212":1,"2223":1,"2252":2,"2253":2,"2255":1,"2256":2,"2258":1,"2261":1,"2264":3,"2265":1,"2266":1,"2267":1,"2270":1,"2271":1,"2277":1,"2282":1,"2287":1,"2291":1,"2292":1,"2297":2,"2327":1,"2353":1,"2364":1,"2365":2,"2382":1,"2389":1,"2391":1,"2413":1,"2420":1,"2438":1,"2466":1,"2476":1,"2490":5,"2533":1,"2554":1,"2565":3,"2575":5,"2588":1,"2590":1,"2591":1,"2596":1,"2614":1,"2621":1,"2625":2,"2635":1,"2652":1,"2681":1,"2684":1,"2687":1,"2759":1,"2763":1,"2772":1,"2775":1,"2776":1,"2781":1,"2789":1,"2795":1,"2824":4,"2825":4,"2833":6,"2834":2,"2836":1}}],["usenpgsqlrest",{"2":{"2394":1,"2714":1}}],["useless",{"2":{"2391":1}}],["usegzipfallback",{"2":{"1792":1,"1936":1,"1937":1,"1941":1,"1944":2}}],["usebrotli",{"2":{"1792":1,"1936":1,"1937":1,"1940":1,"1944":2}}],["usekestrelhttpsconfiguration",{"2":{"1792":2,"1980":1}}],["useusehttpsredirection",{"2":{"1980":1}}],["useuserparameters",{"2":{"801":1,"937":1,"1469":1,"1477":2,"1483":1,"1539":1,"1544":2,"1548":1,"1792":3,"2183":2,"2185":1,"2187":1,"2394":2}}],["useusercontext",{"2":{"737":1,"766":1,"1058":1,"1062":1,"1469":1,"1475":2,"1483":1,"1539":1,"1540":2,"1548":1,"1792":4,"2184":2,"2185":1}}],["useurls",{"2":{"1792":1}}],["usejsonapplicationname",{"2":{"1617":1,"1618":1,"1620":1,"1633":1,"1792":3,"1848":1}}],["usehsts",{"2":{"1199":1,"1792":2,"1979":1,"1980":2,"1981":1,"1983":1,"1995":1,"2558":1}}],["usehttpsredirection",{"2":{"1199":1,"1792":2,"1979":1,"1980":1,"1981":1,"1982":1,"1995":1,"2558":1}}],["usehashedcachekeys",{"2":{"1067":2,"1510":1,"1511":2,"1516":1,"1792":2,"2265":3,"2495":1}}],["usec",{"2":{"269":1}}],["usemultipleconnections",{"2":{"150":1,"1176":1,"1177":1,"1630":1,"1631":1,"1632":1,"1633":1,"1792":1,"1836":1,"1837":1,"1863":1,"2701":1}}],["use",{"0":{"147":1,"221":1,"572":1,"573":1,"583":1,"1012":1,"1035":1,"1323":1,"1344":1,"1351":1,"1354":1,"1361":1,"1378":1,"1727":1,"1959":1,"2394":1,"2471":1,"2714":1,"2719":1,"2731":1},"1":{"1013":1,"1014":1,"1015":1,"1345":1,"1346":1,"1347":1,"1348":1},"2":{"51":1,"57":1,"58":1,"75":2,"120":1,"121":1,"133":1,"150":1,"168":1,"184":1,"186":1,"188":1,"206":1,"213":1,"258":1,"277":2,"280":1,"301":1,"302":1,"307":1,"309":1,"310":1,"313":1,"364":1,"366":1,"372":2,"384":1,"407":1,"408":1,"409":1,"419":1,"421":1,"436":1,"445":1,"453":1,"480":1,"493":1,"494":3,"518":2,"534":1,"537":1,"545":1,"567":1,"577":3,"586":1,"587":2,"653":1,"654":1,"663":1,"669":1,"679":3,"681":1,"683":1,"696":1,"722":1,"723":1,"724":1,"726":1,"757":1,"762":1,"767":2,"782":1,"784":1,"801":1,"809":1,"814":1,"817":1,"829":1,"832":1,"838":2,"847":1,"848":2,"851":2,"859":2,"860":1,"864":1,"893":1,"914":1,"917":1,"918":2,"920":1,"922":1,"934":2,"937":1,"943":1,"985":1,"995":1,"997":1,"1005":1,"1029":1,"1035":1,"1036":1,"1037":1,"1045":1,"1049":1,"1051":1,"1053":1,"1055":1,"1056":1,"1060":1,"1065":1,"1067":1,"1071":1,"1074":1,"1096":1,"1097":1,"1098":1,"1105":1,"1107":1,"1111":2,"1121":1,"1133":1,"1135":1,"1138":1,"1147":1,"1148":1,"1150":1,"1161":1,"1162":1,"1163":1,"1176":1,"1189":2,"1196":1,"1197":1,"1198":1,"1202":1,"1204":2,"1209":1,"1216":1,"1217":2,"1218":1,"1225":1,"1228":1,"1229":1,"1230":1,"1235":1,"1240":1,"1249":1,"1252":1,"1255":1,"1315":1,"1320":1,"1324":1,"1327":1,"1351":5,"1353":1,"1354":3,"1357":1,"1358":2,"1363":1,"1367":1,"1378":1,"1381":1,"1382":1,"1385":5,"1386":5,"1391":1,"1392":1,"1394":3,"1395":4,"1396":5,"1398":1,"1399":2,"1400":1,"1401":3,"1404":1,"1408":1,"1431":1,"1441":1,"1447":1,"1448":1,"1457":2,"1458":1,"1464":1,"1502":1,"1503":1,"1511":1,"1515":2,"1517":1,"1520":2,"1521":2,"1531":1,"1543":1,"1554":1,"1563":1,"1568":1,"1569":1,"1575":1,"1577":1,"1580":1,"1581":2,"1582":1,"1588":1,"1596":1,"1597":1,"1599":3,"1606":1,"1607":1,"1609":1,"1624":2,"1631":1,"1632":1,"1634":1,"1636":1,"1653":1,"1656":1,"1657":1,"1661":1,"1662":1,"1664":1,"1670":1,"1697":1,"1716":1,"1717":3,"1740":1,"1746":1,"1759":1,"1764":1,"1771":3,"1774":1,"1792":71,"1808":1,"1820":1,"1823":1,"1824":1,"1825":1,"1837":1,"1862":1,"1867":1,"1868":1,"1875":1,"1878":1,"1879":1,"1880":1,"1889":1,"1909":1,"1912":1,"1924":1,"1925":1,"1937":2,"1940":1,"1955":1,"1956":1,"1968":1,"1973":1,"1982":1,"2004":1,"2007":2,"2047":1,"2147":2,"2149":1,"2157":1,"2164":2,"2165":1,"2190":1,"2192":1,"2193":2,"2200":1,"2207":2,"2212":2,"2224":1,"2226":2,"2255":2,"2256":1,"2257":1,"2265":1,"2274":1,"2277":1,"2279":1,"2288":1,"2292":1,"2293":1,"2296":1,"2297":3,"2305":1,"2313":1,"2321":2,"2322":3,"2328":1,"2338":1,"2343":1,"2347":1,"2375":4,"2376":2,"2379":2,"2380":1,"2389":2,"2392":2,"2428":1,"2436":1,"2438":1,"2451":2,"2463":1,"2476":1,"2481":1,"2483":1,"2487":1,"2511":1,"2517":1,"2520":1,"2529":1,"2531":1,"2533":2,"2540":2,"2543":1,"2551":1,"2554":1,"2575":2,"2576":1,"2577":2,"2581":1,"2586":1,"2597":1,"2604":1,"2621":1,"2635":2,"2638":1,"2660":1,"2665":1,"2667":1,"2681":1,"2682":2,"2684":1,"2685":1,"2686":1,"2687":1,"2689":1,"2691":1,"2692":2,"2694":1,"2706":1,"2719":1,"2726":1,"2727":1,"2728":1,"2733":1,"2754":1,"2759":1,"2762":1,"2763":1,"2786":1,"2793":1,"2812":1,"2813":1,"2825":1,"2826":1,"2830":1,"2834":1,"2844":1,"2845":1,"2854":1,"2855":3,"2858":3,"2865":1,"2869":1,"2876":1}}],["uses",{"2":{"43":1,"105":1,"118":1,"133":1,"168":1,"202":1,"211":1,"214":1,"305":1,"307":1,"309":2,"319":1,"363":1,"384":1,"385":1,"395":1,"408":2,"417":1,"419":1,"430":1,"441":1,"443":1,"448":1,"449":1,"504":2,"511":1,"527":1,"646":1,"848":1,"851":1,"868":1,"875":1,"921":1,"933":2,"937":1,"951":1,"954":1,"980":1,"984":1,"987":1,"996":2,"1016":1,"1017":1,"1049":1,"1054":1,"1058":1,"1060":1,"1084":1,"1098":2,"1102":1,"1103":1,"1105":1,"1106":1,"1110":1,"1111":1,"1114":1,"1115":1,"1132":1,"1139":1,"1148":1,"1150":1,"1170":1,"1172":1,"1176":1,"1193":2,"1224":1,"1225":1,"1254":1,"1278":1,"1304":1,"1316":1,"1323":1,"1325":2,"1337":1,"1385":1,"1409":1,"1412":1,"1420":1,"1447":6,"1451":1,"1454":2,"1489":1,"1499":1,"1511":1,"1515":2,"1522":1,"1529":1,"1579":1,"1618":1,"1631":1,"1651":3,"1658":1,"1671":1,"1684":1,"1686":1,"1723":1,"1732":1,"1743":1,"1753":1,"1764":1,"1769":1,"1792":21,"1825":1,"1837":2,"1874":1,"1875":1,"1898":1,"1957":2,"1967":1,"2038":2,"2040":1,"2047":1,"2060":1,"2077":5,"2086":4,"2096":1,"2156":1,"2157":1,"2167":1,"2177":1,"2190":1,"2205":1,"2245":1,"2264":1,"2274":2,"2283":1,"2308":1,"2320":1,"2324":1,"2372":1,"2379":1,"2380":1,"2392":1,"2406":1,"2466":1,"2476":1,"2481":1,"2492":1,"2495":1,"2496":1,"2519":1,"2530":3,"2535":3,"2537":1,"2539":1,"2542":1,"2543":1,"2607":1,"2634":2,"2635":1,"2645":1,"2648":1,"2665":2,"2673":1,"2682":1,"2689":1,"2710":1,"2773":1,"2823":1,"2836":1,"2841":1,"2880":1}}],["usedefaultuploadmetadatacontextkey",{"2":{"1792":1,"2123":1,"2124":1}}],["usedefaultuploadmetadataparameter",{"2":{"1356":1,"1792":1,"2123":1,"2124":1,"2132":1}}],["usedefaultpasswordhasher",{"2":{"1196":1,"1469":1,"1482":1,"1498":1,"1499":2,"1502":2,"1503":1,"1505":1,"1792":2,"2551":1}}],["used",{"0":{"1076":1,"2494":1},"2":{"29":1,"40":1,"60":1,"108":3,"188":1,"251":1,"267":1,"279":1,"298":1,"302":1,"303":1,"305":1,"308":1,"310":1,"319":1,"356":1,"357":1,"362":2,"370":2,"378":1,"390":2,"409":1,"422":1,"423":1,"436":1,"446":2,"452":1,"582":1,"585":1,"646":1,"650":1,"726":1,"745":1,"747":2,"748":1,"781":1,"782":2,"784":2,"786":2,"841":2,"843":2,"847":1,"851":1,"904":1,"915":1,"926":1,"966":1,"1129":1,"1133":2,"1147":1,"1213":1,"1216":2,"1235":1,"1239":2,"1249":1,"1254":1,"1355":1,"1385":3,"1398":1,"1401":1,"1404":1,"1405":1,"1445":1,"1453":1,"1464":1,"1471":1,"1473":1,"1511":2,"1520":1,"1521":1,"1522":1,"1527":1,"1531":1,"1547":1,"1558":2,"1564":1,"1575":1,"1613":1,"1618":2,"1671":2,"1767":1,"1768":1,"1792":71,"1818":1,"1831":1,"1847":2,"1848":1,"1885":1,"1888":1,"1917":1,"1929":1,"1951":1,"1989":1,"2016":1,"2021":1,"2040":1,"2075":1,"2077":1,"2098":1,"2143":1,"2156":1,"2181":1,"2183":1,"2197":2,"2247":2,"2254":1,"2255":2,"2256":5,"2266":1,"2273":2,"2282":1,"2284":1,"2296":1,"2297":1,"2304":1,"2321":1,"2336":1,"2337":1,"2359":1,"2365":2,"2369":2,"2372":1,"2380":1,"2381":1,"2392":1,"2394":1,"2395":1,"2397":1,"2401":1,"2404":1,"2422":1,"2429":1,"2451":1,"2452":1,"2459":1,"2476":1,"2495":1,"2518":1,"2528":1,"2540":1,"2542":1,"2546":1,"2554":1,"2632":1,"2634":1,"2670":1,"2731":1,"2769":1,"2814":1,"2845":1,"2847":1,"2864":1}}],["userclaims=",{"2":{"1924":1,"2549":1}}],["usercount",{"2":{"1386":2}}],["usercontextcolumnname",{"2":{"1240":1}}],["usercontext",{"2":{"1220":2,"1221":2,"1792":3}}],["useredisbackend",{"2":{"1792":1,"2274":2,"2279":1,"2551":2}}],["useratelimiter",{"2":{"1792":1,"1822":1}}],["useragent",{"2":{"1792":2}}],["userapitypes",{"2":{"1570":1}}],["userapi",{"2":{"1570":1}}],["userinfo",{"2":{"1691":1,"1694":1,"1697":1,"1792":2}}],["userid=123",{"2":{"1386":1}}],["userid=",{"2":{"454":2,"1398":3,"1924":1,"2549":1,"2812":1}}],["userid",{"2":{"332":2,"376":1,"388":4,"389":2,"407":1,"938":1,"995":1,"996":3,"1215":1,"1216":1,"1239":1,"1320":4,"1366":1,"1369":1,"1386":9,"1387":1,"1391":2,"1395":2,"1396":1,"1398":3,"1408":2,"1409":1,"1567":2,"1570":1,"1973":2,"2040":1,"2476":1,"2493":3,"2540":2,"2587":2,"2590":1,"2842":1,"2845":1}}],["useroutinenameinsteadofendpoint",{"0":{"1576":1},"2":{"1416":1,"1417":1,"1553":1,"1563":1,"1576":1,"1581":1,"1792":1,"2274":1}}],["userdisplaynamecolumnname",{"2":{"1240":1,"1792":1,"1889":1}}],["userhandlecolumnname",{"2":{"1240":1,"1792":1,"1889":1}}],["userhandle",{"2":{"1222":1,"1792":1}}],["userverification",{"2":{"1222":1}}],["userverificationrequirement",{"0":{"1228":1,"1878":1},"2":{"1217":1,"1227":1,"1792":1,"1877":1,"1893":1,"2223":1,"2486":1}}],["user2",{"2":{"62":3}}],["user1",{"2":{"62":3,"1502":1,"2252":6}}],["user123",{"2":{"20":2,"22":1,"376":2,"643":1,"1620":1,"2314":2}}],["usernamecolumnname",{"2":{"1240":1,"1792":1,"1889":1}}],["username=postgres",{"2":{"2718":1,"2823":2,"2824":3,"2825":2,"2872":2}}],["username=user",{"2":{"2686":1,"2699":1}}],["username=readonly",{"2":{"2063":1}}],["username=report",{"2":{"1614":1}}],["username=myuser",{"2":{"1613":1}}],["username=app",{"2":{"1173":1,"1176":2,"1177":2,"1614":2,"1627":1,"1629":2,"2063":1,"2266":1}}],["username=api",{"2":{"1117":2}}],["username=alice",{"2":{"297":2}}],["username=",{"2":{"937":1,"1607":1,"1615":1,"1633":2,"1792":1,"1924":1,"2549":1,"2687":1,"2812":1}}],["usernames",{"2":{"864":1,"2831":2}}],["username>",{"2":{"56":1}}],["username",{"2":{"31":1,"37":2,"40":1,"56":2,"63":4,"297":2,"298":10,"302":3,"304":1,"305":1,"308":2,"309":5,"310":1,"312":8,"313":2,"332":2,"361":6,"376":1,"380":2,"593":1,"613":2,"738":1,"802":1,"864":1,"893":2,"905":2,"924":1,"934":6,"936":4,"937":2,"938":5,"977":2,"979":2,"980":3,"982":6,"983":1,"986":1,"988":2,"989":2,"990":7,"994":4,"995":4,"996":8,"1050":1,"1051":1,"1055":5,"1056":1,"1058":4,"1060":4,"1061":2,"1062":3,"1068":1,"1197":6,"1202":1,"1213":2,"1214":2,"1215":2,"1216":4,"1217":2,"1218":3,"1220":1,"1222":3,"1229":2,"1232":3,"1233":1,"1234":3,"1239":5,"1307":3,"1308":4,"1309":2,"1310":2,"1320":2,"1321":2,"1368":3,"1369":2,"1371":5,"1372":2,"1386":10,"1387":3,"1390":2,"1391":2,"1393":4,"1394":4,"1395":4,"1396":1,"1398":1,"1399":2,"1408":4,"1409":5,"1414":1,"1419":4,"1458":5,"1473":1,"1474":1,"1482":1,"1497":1,"1499":1,"1501":1,"1504":10,"1567":6,"1570":2,"1616":2,"1736":2,"1792":13,"1879":2,"1882":1,"1884":1,"1973":2,"2040":1,"2144":1,"2176":9,"2178":3,"2179":1,"2180":2,"2181":2,"2183":6,"2184":4,"2187":14,"2333":2,"2375":3,"2587":2,"2590":1,"2655":1,"2829":3,"2830":1,"2833":1,"2836":3,"2842":2}}],["user",{"0":{"16":1,"19":1,"20":1,"22":1,"107":1,"304":1,"360":1,"361":1,"453":1,"454":1,"479":1,"643":1,"728":1,"732":1,"733":1,"765":1,"766":1,"794":1,"797":1,"800":1,"803":1,"1058":1,"1066":1,"1069":1,"1162":1,"1220":1,"1221":1,"1287":1,"1288":1,"1475":1,"1477":1,"1540":1,"1544":1,"1870":1,"1871":1,"1926":1,"1955":1,"2314":2,"2379":1,"2572":1,"2733":1},"1":{"305":1,"306":1,"729":1,"730":1,"731":1,"732":1,"733":1,"734":1,"735":1,"736":1,"737":1,"738":1,"739":1,"740":1,"741":1,"742":1,"795":1,"796":1,"797":1,"798":1,"799":1,"800":1,"801":1,"802":1,"803":1,"804":1,"805":1,"806":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1476":1,"1478":1,"1541":1,"1542":1,"1543":1,"1545":1,"1546":1,"1547":1,"1956":1,"1957":1},"2":{"13":2,"14":2,"16":2,"18":2,"19":3,"20":4,"22":3,"25":3,"29":1,"30":1,"37":7,"38":5,"39":5,"40":3,"41":3,"43":2,"48":2,"50":4,"60":4,"61":9,"62":3,"63":1,"66":2,"105":4,"116":6,"165":1,"168":13,"169":3,"170":1,"208":5,"212":4,"215":5,"236":4,"248":3,"251":2,"288":4,"292":5,"297":4,"298":6,"302":1,"304":1,"305":5,"306":11,"308":1,"309":2,"310":13,"312":4,"313":2,"316":2,"332":4,"351":1,"357":1,"361":2,"369":1,"372":1,"373":1,"374":10,"375":4,"376":10,"378":5,"380":4,"382":1,"384":2,"388":1,"393":2,"401":4,"405":5,"406":5,"407":1,"428":2,"436":1,"452":2,"453":6,"454":16,"456":4,"479":5,"480":1,"488":2,"527":7,"529":1,"532":2,"535":1,"592":1,"611":2,"612":4,"613":2,"614":1,"621":2,"623":4,"638":4,"641":2,"643":3,"663":6,"664":7,"665":5,"666":7,"689":1,"690":1,"691":5,"692":1,"695":1,"705":2,"728":1,"729":2,"730":1,"732":1,"733":17,"734":3,"735":1,"736":7,"737":1,"738":8,"740":1,"741":2,"742":1,"762":3,"765":4,"766":3,"772":3,"794":2,"795":2,"797":20,"798":12,"799":6,"800":3,"801":1,"802":9,"803":2,"804":1,"805":2,"806":1,"811":8,"812":3,"813":2,"815":4,"817":1,"821":2,"826":4,"834":1,"835":5,"844":2,"866":1,"868":1,"872":1,"880":1,"882":1,"883":3,"884":2,"888":5,"893":2,"904":2,"905":4,"907":1,"910":1,"911":1,"915":1,"916":1,"918":1,"922":4,"924":1,"926":4,"932":2,"934":7,"936":6,"937":5,"941":1,"949":1,"966":3,"977":4,"979":2,"980":1,"982":1,"983":1,"986":1,"988":2,"989":4,"990":2,"992":3,"994":5,"995":1,"996":12,"1001":1,"1011":1,"1017":2,"1029":6,"1033":5,"1037":2,"1050":1,"1051":3,"1052":1,"1055":2,"1056":13,"1057":3,"1058":10,"1060":10,"1061":2,"1062":3,"1064":1,"1066":1,"1068":6,"1069":7,"1070":1,"1074":3,"1078":1,"1079":2,"1086":1,"1090":2,"1094":1,"1098":5,"1101":3,"1105":6,"1113":4,"1121":2,"1127":1,"1138":2,"1139":1,"1142":11,"1148":4,"1150":4,"1162":4,"1163":1,"1179":5,"1185":5,"1188":6,"1189":4,"1192":2,"1193":4,"1196":1,"1197":5,"1204":1,"1209":1,"1210":1,"1211":1,"1213":5,"1214":17,"1215":17,"1216":10,"1217":1,"1218":2,"1220":7,"1221":5,"1222":3,"1226":4,"1228":1,"1232":23,"1233":4,"1234":16,"1236":4,"1237":4,"1238":4,"1239":12,"1240":4,"1244":1,"1303":1,"1307":3,"1308":3,"1309":8,"1310":2,"1313":1,"1318":1,"1320":7,"1321":8,"1326":1,"1347":2,"1348":4,"1355":1,"1357":3,"1366":5,"1368":3,"1369":1,"1370":3,"1371":8,"1372":19,"1373":2,"1378":2,"1385":3,"1386":15,"1387":9,"1390":8,"1391":5,"1393":12,"1394":4,"1395":10,"1396":7,"1398":27,"1399":9,"1402":1,"1408":3,"1409":6,"1410":2,"1414":1,"1419":4,"1435":2,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":2,"1442":1,"1447":1,"1458":8,"1469":16,"1473":1,"1474":5,"1475":6,"1476":6,"1477":7,"1478":6,"1480":1,"1483":17,"1484":1,"1504":10,"1506":1,"1518":4,"1519":1,"1520":1,"1529":5,"1538":1,"1539":13,"1540":4,"1541":6,"1542":8,"1543":4,"1544":4,"1545":6,"1546":7,"1547":22,"1548":14,"1549":4,"1551":2,"1567":6,"1569":2,"1570":1,"1609":1,"1620":1,"1651":1,"1662":2,"1664":1,"1674":1,"1687":2,"1689":6,"1693":1,"1696":1,"1736":4,"1737":2,"1738":6,"1759":2,"1788":1,"1792":125,"1842":2,"1867":1,"1870":2,"1876":3,"1878":1,"1882":7,"1883":2,"1884":3,"1886":1,"1887":3,"1888":1,"1889":3,"1912":2,"1923":2,"1924":7,"1926":6,"1928":4,"1932":4,"1951":1,"1952":1,"1953":1,"1954":1,"1955":3,"1957":1,"1960":1,"1973":3,"2010":4,"2036":1,"2039":1,"2040":6,"2045":3,"2047":1,"2049":1,"2050":1,"2051":1,"2058":1,"2125":1,"2129":1,"2131":1,"2147":3,"2167":1,"2170":1,"2171":2,"2176":5,"2177":1,"2178":1,"2179":2,"2180":2,"2181":7,"2183":10,"2184":7,"2185":5,"2186":2,"2187":11,"2189":2,"2199":2,"2204":1,"2205":3,"2217":1,"2222":1,"2229":2,"2258":2,"2265":6,"2283":8,"2284":3,"2285":2,"2291":1,"2314":5,"2320":1,"2321":2,"2322":4,"2323":4,"2327":2,"2332":4,"2333":10,"2334":1,"2335":4,"2338":4,"2339":2,"2348":1,"2375":6,"2379":5,"2380":1,"2384":1,"2391":3,"2392":1,"2394":1,"2395":6,"2411":1,"2414":1,"2421":1,"2423":2,"2424":1,"2438":1,"2442":3,"2466":1,"2474":1,"2476":4,"2490":3,"2495":1,"2496":1,"2509":1,"2510":1,"2511":1,"2513":1,"2520":2,"2526":2,"2529":3,"2540":5,"2545":1,"2549":19,"2565":1,"2572":9,"2575":2,"2580":4,"2587":5,"2591":2,"2608":6,"2634":1,"2635":10,"2661":1,"2687":1,"2721":1,"2723":1,"2733":7,"2739":1,"2745":1,"2755":3,"2768":5,"2775":5,"2812":6,"2817":2,"2828":1,"2829":15,"2831":2,"2833":4,"2834":15,"2836":10,"2842":1,"2845":4,"2847":1,"2850":3,"2851":1,"2855":3,"2860":2,"2865":2,"2866":1,"2868":5,"2869":2,"2873":1,"2876":1,"2879":1}}],["users",{"0":{"62":1,"979":1,"1090":1,"1196":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1313":1,"1502":1},"2":{"9":1,"16":2,"18":2,"19":1,"35":1,"37":1,"51":1,"62":5,"63":1,"116":1,"119":3,"128":5,"167":3,"208":1,"212":1,"248":1,"249":6,"251":1,"264":10,"298":2,"302":1,"308":1,"309":2,"310":3,"312":2,"313":2,"314":2,"360":2,"361":1,"365":1,"366":1,"373":1,"374":1,"401":4,"403":2,"405":2,"406":2,"428":1,"451":5,"479":1,"488":1,"489":3,"493":1,"520":7,"562":3,"563":2,"566":3,"585":2,"592":1,"611":3,"612":1,"613":1,"614":1,"621":1,"623":1,"643":1,"646":1,"663":1,"689":1,"710":2,"715":2,"724":1,"811":2,"812":1,"813":1,"834":3,"835":4,"836":1,"837":1,"843":1,"868":1,"888":2,"902":1,"904":1,"922":1,"924":2,"932":1,"934":2,"938":2,"940":1,"973":1,"976":2,"977":4,"979":9,"980":3,"982":3,"983":2,"986":2,"988":8,"989":5,"990":5,"991":3,"992":1,"994":2,"995":2,"996":4,"1007":1,"1017":2,"1050":3,"1051":2,"1054":1,"1055":2,"1056":1,"1057":11,"1058":1,"1059":1,"1060":4,"1061":3,"1063":1,"1064":1,"1065":1,"1066":1,"1068":1,"1069":2,"1074":3,"1079":1,"1080":1,"1090":3,"1095":1,"1098":2,"1105":1,"1106":1,"1108":1,"1113":2,"1114":2,"1121":1,"1142":2,"1149":3,"1162":2,"1163":1,"1185":1,"1196":2,"1197":3,"1206":1,"1213":7,"1215":1,"1216":1,"1220":2,"1221":1,"1224":1,"1234":1,"1239":1,"1244":1,"1249":1,"1252":1,"1253":1,"1255":1,"1263":1,"1303":1,"1307":5,"1308":1,"1309":1,"1313":2,"1345":5,"1368":6,"1369":2,"1371":1,"1386":13,"1387":2,"1390":1,"1391":1,"1393":2,"1394":1,"1395":1,"1396":1,"1398":1,"1405":3,"1408":4,"1409":5,"1414":2,"1419":1,"1443":1,"1458":4,"1469":1,"1475":1,"1477":1,"1482":1,"1498":1,"1499":1,"1502":2,"1504":3,"1620":1,"1653":1,"1689":3,"1730":1,"1736":1,"1744":3,"1745":4,"1792":8,"1870":2,"1871":1,"1874":1,"1955":1,"1956":1,"1982":1,"2006":1,"2009":1,"2010":2,"2012":3,"2037":1,"2039":1,"2059":1,"2147":2,"2156":2,"2170":1,"2176":2,"2177":1,"2178":1,"2181":1,"2184":1,"2187":7,"2194":2,"2196":1,"2215":4,"2223":1,"2257":2,"2314":1,"2321":1,"2322":3,"2328":1,"2337":1,"2339":2,"2340":5,"2342":2,"2343":1,"2346":7,"2351":1,"2353":1,"2375":3,"2377":1,"2379":4,"2391":1,"2411":1,"2419":1,"2420":1,"2431":1,"2455":1,"2487":1,"2526":4,"2528":2,"2531":3,"2535":3,"2537":2,"2538":2,"2540":1,"2542":2,"2575":1,"2577":1,"2580":1,"2615":1,"2625":1,"2629":1,"2635":1,"2711":1,"2729":1,"2739":2,"2767":8,"2774":3,"2775":2,"2797":3,"2828":1,"2833":1,"2834":1,"2840":3,"2842":4,"2860":4,"2864":2,"2868":1,"2869":10,"2878":1}}],["usefully",{"2":{"320":1}}],["useful",{"2":{"10":1,"73":1,"165":1,"174":1,"286":1,"374":1,"376":1,"390":1,"531":1,"624":1,"720":1,"722":1,"826":1,"834":1,"902":1,"920":1,"974":1,"1069":1,"1073":1,"1100":1,"1230":1,"1343":1,"1396":2,"1412":1,"1414":1,"1416":1,"1489":1,"1492":1,"1519":1,"1576":1,"1618":1,"1632":1,"1664":1,"1670":1,"1771":1,"1781":1,"1792":11,"1852":1,"1880":1,"1957":1,"2040":1,"2105":1,"2255":1,"2256":1,"2291":1,"2338":1,"2350":1,"2379":1,"2383":1,"2550":1,"2577":1,"2580":1,"2633":1,"2635":2,"2648":1,"2656":1,"2751":1,"2791":1,"2809":1,"2833":1}}],["upcoming",{"2":{"2407":1}}],["uptime",{"2":{"2402":1}}],["updating",{"2":{"2395":1,"2597":1}}],["updates",{"0":{"1257":1},"2":{"660":2,"854":1,"857":1,"872":3,"1243":1,"1254":1,"1323":1,"1379":1,"1792":1,"2692":1,"2827":1}}],["updated",{"0":{"2673":1},"2":{"621":1,"664":1,"665":1,"849":1,"898":1,"904":1,"1020":1,"1021":1,"1139":1,"1239":1,"1376":1,"1714":1,"1856":1,"1888":1,"2050":1,"2615":1,"2834":2}}],["update",{"0":{"898":1},"2":{"106":1,"184":2,"257":2,"310":3,"565":1,"567":1,"592":1,"614":1,"622":3,"624":1,"625":1,"646":1,"663":3,"664":3,"665":2,"666":2,"812":3,"815":3,"848":1,"849":2,"852":1,"854":2,"868":1,"871":4,"888":1,"898":1,"911":1,"984":2,"985":1,"986":1,"988":1,"990":1,"997":1,"1021":1,"1026":1,"1045":1,"1054":1,"1056":2,"1060":1,"1071":1,"1107":1,"1139":2,"1191":1,"1193":2,"1203":2,"1216":2,"1239":2,"1314":1,"1316":1,"1338":2,"1339":3,"1376":1,"1407":1,"1419":1,"1437":2,"1440":1,"1655":1,"1664":1,"1689":1,"1792":5,"2277":2,"2279":1,"2292":1,"2319":1,"2320":2,"2339":1,"2342":3,"2385":1,"2389":1,"2392":1,"2395":2,"2455":1,"2498":1,"2679":1,"2774":1,"2834":6,"2843":1,"2851":1,"2874":1}}],["upgraded",{"2":{"1991":1,"2246":1}}],["upgrade",{"2":{"1464":1,"1948":1,"2223":1,"2258":1,"2376":1,"2378":1,"2380":1,"2389":1,"2490":1}}],["upgrades",{"0":{"2386":1},"2":{"1013":1,"1071":1,"1181":1}}],["upon",{"2":{"1402":1}}],["upper",{"2":{"1021":3,"1376":2}}],["upsert",{"0":{"898":1},"2":{"1689":2}}],["upstreams",{"2":{"2766":1}}],["upstream",{"0":{"1335":1,"2813":1},"2":{"75":2,"77":1,"214":3,"223":1,"412":2,"414":8,"415":2,"419":2,"423":3,"424":2,"429":1,"431":1,"433":1,"435":1,"436":3,"438":1,"439":3,"443":1,"447":2,"448":2,"449":1,"452":1,"453":4,"454":5,"456":1,"1067":1,"1101":1,"1104":3,"1105":11,"1328":1,"1331":3,"1332":3,"1333":2,"1335":1,"1337":1,"1338":3,"1340":3,"1341":1,"1343":3,"1346":1,"1348":2,"1350":1,"1396":3,"1430":2,"1431":5,"1433":2,"1475":1,"1743":3,"1789":1,"1792":5,"1915":1,"1917":5,"1918":1,"1920":1,"1922":2,"1923":1,"1925":3,"1926":1,"1927":1,"1928":3,"2164":1,"2185":1,"2300":2,"2302":7,"2303":2,"2304":3,"2305":2,"2307":2,"2310":1,"2313":2,"2404":1,"2463":1,"2466":1,"2500":1,"2502":2,"2509":2,"2517":3,"2521":2,"2549":9,"2580":3,"2770":1,"2771":1,"2806":3,"2807":5,"2808":1,"2809":1,"2810":4,"2811":4,"2812":4,"2813":3,"2814":4,"2815":3,"2816":1,"2817":3}}],["upfront",{"2":{"876":1}}],["uploadasync",{"2":{"2615":1}}],["upload+sse",{"2":{"2278":1}}],["uploadhandler",{"2":{"2267":1}}],["uploadhandlers",{"2":{"889":1,"1356":1,"1792":1,"2123":1,"2126":1,"2127":1,"2128":1,"2130":1,"2132":1,"2267":1,"2572":1}}],["uploadtolargeobject",{"2":{"1410":2}}],["uploadtofilesystem",{"2":{"1361":2,"1366":1}}],["uploadfile",{"2":{"1366":1}}],["uploadrepository",{"2":{"1366":1}}],["uploadpath",{"2":{"1366":2}}],["uploadoptions",{"2":{"889":1,"1356":1,"1792":1,"1836":2,"2123":1,"2126":1,"2127":1,"2128":1,"2130":1,"2132":1,"2267":1,"2701":1}}],["uploaded",{"2":{"748":2,"757":1,"762":1,"763":1,"772":1,"777":2,"779":1,"782":2,"784":4,"879":1,"887":1,"904":1,"1355":1,"1361":1,"1410":3,"2126":2,"2127":3,"2649":1}}],["uploads",{"0":{"778":1,"1352":1,"1360":1,"1410":1},"1":{"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1},"2":{"157":2,"393":1,"747":1,"764":3,"765":1,"766":1,"774":3,"779":2,"785":1,"791":2,"832":1,"878":1,"883":1,"884":1,"903":1,"904":1,"913":1,"1037":1,"1086":1,"1094":1,"1099":3,"1125":1,"1126":1,"1127":1,"1352":3,"1355":3,"1356":1,"1357":3,"1358":4,"1359":1,"1360":1,"1364":2,"1366":1,"1367":2,"1368":1,"1377":1,"1386":2,"1410":3,"1412":1,"1789":1,"1792":5,"1796":1,"1927":2,"1928":2,"2122":1,"2123":1,"2126":1,"2127":3,"2128":1,"2130":1,"2132":2,"2134":2,"2164":4,"2165":5,"2185":1,"2270":1,"2549":4,"2856":1}}],["upload",{"0":{"160":1,"234":1,"393":1,"743":1,"748":1,"763":1,"773":1,"782":1,"784":1,"786":1,"788":1,"886":1,"887":1,"1356":1,"1357":1,"1358":1,"1927":1,"2122":1,"2125":1,"2128":1,"2130":1,"2572":1,"2664":1},"1":{"744":1,"745":1,"746":1,"747":1,"748":1,"749":1,"750":1,"751":1,"752":1,"753":1,"754":1,"755":1,"756":1,"757":1,"758":1,"759":1,"760":1,"761":1,"762":1,"763":1,"764":1,"765":1,"766":1,"767":1,"768":1,"769":1,"770":1,"771":1,"772":1,"773":1,"774":1,"775":1,"776":1,"777":1,"778":1,"779":1,"780":1,"781":1,"782":1,"783":2,"784":1,"785":2,"786":1,"787":2,"788":1,"789":2,"790":1,"791":1,"792":1,"793":1,"887":1,"2123":1,"2124":1,"2125":1,"2126":1,"2127":1,"2128":1,"2129":2,"2130":1,"2131":2,"2132":1,"2133":1,"2134":1,"2135":1,"2136":1},"2":{"157":5,"160":2,"164":2,"234":2,"386":1,"387":1,"393":4,"743":1,"744":2,"745":3,"747":2,"748":2,"750":7,"751":4,"752":5,"755":4,"756":4,"758":3,"763":1,"764":6,"765":1,"766":2,"767":4,"773":1,"774":6,"775":4,"777":6,"778":1,"779":1,"780":1,"781":4,"782":2,"783":3,"784":2,"785":3,"786":2,"787":4,"788":2,"789":4,"790":2,"792":2,"793":2,"878":1,"879":1,"880":2,"881":2,"883":1,"884":1,"885":1,"886":8,"892":1,"894":3,"899":2,"900":2,"902":4,"903":1,"904":9,"910":2,"1037":1,"1099":2,"1105":1,"1121":1,"1354":1,"1355":2,"1356":2,"1357":5,"1358":13,"1359":1,"1360":1,"1364":5,"1366":31,"1367":3,"1382":1,"1410":12,"1564":1,"1569":1,"1759":1,"1789":1,"1792":28,"1796":1,"1836":1,"1912":1,"1927":1,"2082":2,"2107":1,"2122":1,"2123":2,"2124":9,"2125":1,"2126":1,"2127":2,"2128":1,"2129":1,"2130":1,"2131":1,"2132":1,"2133":2,"2136":2,"2185":3,"2222":1,"2232":1,"2233":1,"2247":1,"2278":1,"2332":1,"2364":1,"2371":1,"2481":1,"2493":1,"2496":1,"2498":1,"2520":1,"2529":1,"2537":1,"2549":1,"2569":1,"2572":3,"2581":1,"2615":2,"2648":1,"2649":4,"2664":3,"2856":1,"2865":1,"2879":1,"2881":1}}],["up",{"0":{"1046":1,"1404":1,"1416":1,"2737":1,"2747":1,"2799":1},"2":{"31":1,"310":2,"534":1,"760":1,"770":1,"841":1,"843":1,"845":1,"847":1,"851":2,"859":1,"861":1,"864":1,"868":2,"871":1,"872":4,"873":2,"876":1,"918":1,"946":1,"948":1,"970":1,"994":1,"997":2,"1012":1,"1014":1,"1047":1,"1049":1,"1067":2,"1068":2,"1074":2,"1076":2,"1079":1,"1098":1,"1101":1,"1119":1,"1152":1,"1158":1,"1160":1,"1161":1,"1168":2,"1169":1,"1183":1,"1220":1,"1224":1,"1234":1,"1252":1,"1254":1,"1255":1,"1258":1,"1324":1,"1379":1,"1380":1,"1384":2,"1395":1,"1401":2,"1402":1,"1405":1,"1406":1,"1408":1,"1418":1,"1433":2,"1441":1,"1442":1,"1522":1,"1624":1,"1635":1,"1664":1,"1687":1,"1792":2,"1870":1,"1874":1,"1895":1,"1923":1,"1997":1,"2103":1,"2111":1,"2162":2,"2168":1,"2181":1,"2221":1,"2284":1,"2291":1,"2385":2,"2391":1,"2414":2,"2466":1,"2476":1,"2509":1,"2529":1,"2532":1,"2537":1,"2540":1,"2614":1,"2615":1,"2706":1,"2798":1,"2807":2,"2820":1,"2830":1,"2845":1,"2869":1,"2871":1,"2872":1,"2873":1}}],["u",{"2":{"16":6,"19":3,"37":7,"116":2,"264":2,"298":12,"302":5,"309":7,"312":14,"313":4,"366":6,"401":2,"428":4,"811":4,"980":3,"982":3,"990":3,"1057":3,"1060":9,"1105":3,"1142":4,"1197":10,"1216":8,"1239":7,"1308":6,"1371":6,"1408":3,"1504":20,"2176":12,"2178":7,"2187":6,"2328":4,"2540":8,"2840":4,"2875":1}}],["0+",{"0":{"1605":1},"2":{"1464":1,"1875":1,"2376":1}}],["038",{"2":{"1289":1}}],["03ms",{"2":{"1289":1}}],["03",{"0":{"2298":1,"2311":1,"2315":1,"2473":1,"2563":1,"2643":1},"1":{"2299":1,"2300":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2312":1,"2313":1,"2314":1,"2316":1,"2317":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1,"2368":1,"2369":1,"2370":1,"2371":1,"2372":1,"2474":1,"2475":1,"2476":1,"2477":1,"2564":1,"2565":1,"2566":1,"2567":1,"2644":1,"2645":1},"2":{"1277":1,"1293":1,"1408":1,"2221":1,"2224":1,"2228":1,"2229":2,"2234":1,"2238":1}}],["048",{"2":{"1991":1}}],["044",{"2":{"1295":1,"1301":1}}],["04ms",{"2":{"1295":1}}],["042",{"2":{"1269":1,"1285":1,"1293":1}}],["04",{"0":{"2373":1,"2385":1,"2568":1},"1":{"2374":1,"2375":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2569":1},"2":{"1071":2,"2227":1,"2238":1,"2385":3,"2823":1,"2824":1}}],["0760485",{"2":{"2824":1}}],["079",{"2":{"1301":1}}],["070",{"2":{"1295":1,"1299":1}}],["07ms",{"2":{"1287":1}}],["071",{"2":{"1285":1}}],["073",{"2":{"1285":1,"1297":1}}],["07",{"0":{"2646":1},"1":{"2647":1,"2648":1,"2649":1,"2650":1,"2651":1,"2652":1,"2653":1,"2654":1,"2655":1,"2656":1},"2":{"1023":1,"1289":1,"1290":1,"1427":1,"2221":1,"2233":1,"2670":1}}],["027",{"2":{"1295":1,"1299":1}}],["028",{"2":{"1270":1,"1285":1,"1287":1}}],["02ms",{"2":{"1090":1,"1289":1,"1295":1}}],["02",{"0":{"2280":1,"2467":1,"2630":1,"2636":2,"2639":2,"2643":1,"2646":1,"2657":1,"2675":1},"1":{"2281":1,"2282":1,"2283":1,"2284":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2631":1,"2632":1,"2633":1,"2634":1,"2635":1,"2637":2,"2638":2,"2640":2,"2641":2,"2642":2,"2644":1,"2645":1,"2647":1,"2648":1,"2649":1,"2650":1,"2651":1,"2652":1,"2653":1,"2654":1,"2655":1,"2656":1,"2658":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1,"2665":1,"2666":1,"2667":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1,"2674":1,"2676":1,"2677":1,"2678":1,"2679":1},"2":{"1023":1,"1289":1,"1792":1,"1990":1,"1995":1,"2224":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":6,"2397":1}}],["095",{"2":{"1299":1}}],["093",{"2":{"1299":1}}],["09ms",{"2":{"1295":1}}],["098",{"2":{"1288":1,"1289":1}}],["090",{"2":{"1285":1}}],["096",{"2":{"1285":1,"2398":1}}],["09",{"0":{"2387":1},"1":{"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2398":1,"2399":1,"2400":1,"2401":1,"2402":1,"2403":1,"2404":1,"2405":1,"2406":1,"2407":1},"2":{"956":1,"977":1,"980":1,"990":1,"1293":1,"1374":1,"2226":1,"2825":10}}],["060",{"2":{"1297":1,"2621":1}}],["064",{"2":{"1293":1}}],["06ms",{"2":{"1287":1,"1297":1}}],["061",{"2":{"1285":1,"2398":1}}],["065",{"2":{"1269":1,"1272":1,"1285":2,"1295":1,"2398":1}}],["06",{"0":{"2458":1,"2467":1,"2473":1},"1":{"2459":1,"2460":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2474":1,"2475":1,"2476":1,"2477":1},"2":{"956":2,"995":1,"1023":1,"1287":1,"1289":1,"1295":1,"1374":2,"1391":1,"2222":3,"2223":1,"2224":3,"2452":2}}],["0850561",{"2":{"2825":1}}],["087",{"2":{"2823":1}}],["088",{"2":{"1295":1}}],["08ms",{"2":{"1287":1,"1288":1,"1295":1}}],["080",{"2":{"1285":1}}],["08007",{"2":{"1587":1,"1593":1,"1792":1}}],["08004",{"2":{"1152":1,"1153":1,"1587":1,"1593":1,"1598":1,"1617":1,"1622":1,"1624":1,"1633":1,"1792":2,"2824":1,"2825":1}}],["08001",{"2":{"1152":1,"1153":1,"1587":1,"1593":1,"1598":1,"1617":1,"1622":1,"1624":1,"1633":1,"1792":2,"2824":1,"2825":1}}],["08006",{"2":{"576":1,"577":2,"1152":3,"1153":1,"1154":2,"1177":1,"1587":1,"1593":1,"1597":2,"1598":1,"1617":1,"1622":1,"1624":1,"1625":1,"1633":1,"1792":2,"2824":1,"2825":1}}],["08003",{"2":{"576":1,"577":2,"1152":3,"1153":1,"1154":2,"1177":1,"1587":1,"1593":1,"1597":2,"1598":1,"1617":1,"1622":1,"1624":1,"1625":1,"1633":1,"1792":2,"2824":1,"2825":1}}],["08000",{"2":{"576":1,"577":2,"1152":3,"1153":1,"1154":2,"1155":1,"1177":1,"1587":1,"1593":1,"1597":2,"1598":1,"1617":1,"1622":1,"1624":1,"1625":1,"1633":1,"1792":2}}],["089",{"2":{"1285":1,"1293":1}}],["08p01",{"2":{"1155":1,"1587":1,"1593":1,"1792":1}}],["08",{"0":{"1593":1,"2573":1},"1":{"2574":1,"2575":1,"2576":1,"2577":1},"2":{"919":5,"1155":1,"1297":1,"1792":1,"2237":1,"2452":1}}],["0517179",{"2":{"2824":1}}],["0575787",{"2":{"2823":1}}],["058",{"2":{"1293":1}}],["05ms",{"2":{"1287":1}}],["05",{"0":{"2387":1,"2408":1,"2439":1,"2449":1,"2570":1},"1":{"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2398":1,"2399":1,"2400":1,"2401":1,"2402":1,"2403":1,"2404":1,"2405":1,"2406":1,"2407":1,"2409":1,"2410":1,"2411":1,"2412":1,"2413":1,"2414":1,"2415":1,"2416":1,"2417":1,"2440":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":1,"2446":1,"2447":1,"2448":1,"2450":1,"2451":1,"2452":1,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1,"2571":1,"2572":1},"2":{"214":2,"1391":1,"1743":1,"1856":3,"2224":1,"2225":3,"2226":1,"2238":1,"2452":1,"2453":1,"2502":1}}],["01ms",{"2":{"1301":2}}],["010",{"2":{"1277":1}}],["015",{"2":{"1269":1}}],["01",{"0":{"2458":1,"2563":1,"2568":1,"2570":1,"2573":1,"2578":1,"2583":1,"2592":1,"2598":1,"2601":1,"2605":1,"2609":1,"2612":1,"2616":1,"2619":1,"2623":1,"2630":1},"1":{"2459":1,"2460":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2564":1,"2565":1,"2566":1,"2567":1,"2569":1,"2571":1,"2572":1,"2574":1,"2575":1,"2576":1,"2577":1,"2579":1,"2580":1,"2581":1,"2582":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2591":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2599":1,"2600":1,"2602":1,"2603":1,"2604":1,"2606":1,"2607":1,"2608":1,"2610":1,"2611":1,"2613":1,"2614":1,"2615":1,"2617":1,"2618":1,"2620":1,"2621":1,"2622":1,"2624":1,"2625":1,"2626":1,"2627":1,"2628":1,"2629":1,"2631":1,"2632":1,"2633":1,"2634":1,"2635":1},"2":{"213":1,"372":4,"919":10,"956":4,"977":5,"980":5,"990":5,"1067":6,"1189":2,"1192":1,"1374":4,"1391":2,"1740":1,"1792":1,"1992":1,"2224":1,"2234":1,"2235":1,"2236":9,"2237":2,"2238":3,"2288":1,"2319":2,"2845":2,"2846":4}}],["002",{"2":{"2824":1}}],["00+02",{"2":{"1856":1}}],["00z",{"2":{"1856":1,"2452":1,"2453":1}}],["00ms",{"2":{"1299":1}}],["001",{"2":{"948":1}}],["0060",{"2":{"333":2}}],["000+",{"2":{"1266":1,"1269":1,"1280":1,"1281":1}}],["0001",{"2":{"956":1,"1374":1}}],["000",{"2":{"309":1,"363":1,"867":1,"869":9,"871":2,"873":4,"948":1,"1049":1,"1991":2}}],["00",{"2":{"211":2,"213":2,"214":4,"566":1,"956":7,"963":3,"977":6,"980":6,"990":6,"995":1,"1023":1,"1034":2,"1189":1,"1277":3,"1291":2,"1340":2,"1374":7,"1391":2,"1408":1,"1677":1,"1731":2,"1740":2,"1743":2,"1792":12,"1856":5,"1916":2,"1917":2,"1931":2,"1990":4,"1992":4,"1995":4,"2077":2,"2080":1,"2264":2,"2288":2,"2452":2,"2453":1,"2502":2,"2652":2,"2765":2,"2814":4,"2823":3,"2824":6,"2825":3}}],["0",{"0":{"1066":1,"1397":1,"1449":1,"1908":1,"2240":1,"2241":1,"2243":2,"2254":1,"2262":1,"2280":1,"2298":1,"2315":1,"2373":1,"2387":1,"2418":1,"2449":1,"2478":1,"2499":1,"2524":1,"2547":1,"2573":1,"2583":1,"2623":1,"2630":1,"2646":1,"2657":1,"2675":1},"1":{"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1398":1,"1399":1,"1909":1,"1910":1,"1911":1,"2242":1,"2244":2,"2245":2,"2246":2,"2247":2,"2248":2,"2249":2,"2250":2,"2251":2,"2252":2,"2253":2,"2254":2,"2255":2,"2256":2,"2257":2,"2258":2,"2259":2,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2281":1,"2282":1,"2283":1,"2284":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1,"2299":1,"2300":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2316":1,"2317":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1,"2368":1,"2369":1,"2370":1,"2371":1,"2372":1,"2374":1,"2375":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2398":1,"2399":1,"2400":1,"2401":1,"2402":1,"2403":1,"2404":1,"2405":1,"2406":1,"2407":1,"2419":1,"2420":1,"2421":1,"2422":1,"2423":1,"2424":1,"2425":1,"2426":1,"2427":1,"2428":1,"2429":1,"2430":1,"2431":1,"2432":1,"2433":1,"2434":1,"2435":1,"2436":1,"2437":1,"2438":1,"2450":1,"2451":1,"2452":1,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1,"2479":1,"2480":1,"2481":1,"2482":1,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2489":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":1,"2497":1,"2498":1,"2500":1,"2501":1,"2502":1,"2503":1,"2504":1,"2505":1,"2506":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2545":1,"2546":1,"2548":1,"2549":1,"2550":1,"2551":1,"2574":1,"2575":1,"2576":1,"2577":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2591":1,"2624":1,"2625":1,"2626":1,"2627":1,"2628":1,"2629":1,"2631":1,"2632":1,"2633":1,"2634":1,"2635":1,"2647":1,"2648":1,"2649":1,"2650":1,"2651":1,"2652":1,"2653":1,"2654":1,"2655":1,"2656":1,"2658":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1,"2665":1,"2666":1,"2667":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1,"2674":1,"2676":1,"2677":1,"2678":1,"2679":1},"2":{"7":2,"81":1,"83":1,"87":1,"88":1,"268":1,"274":1,"310":3,"317":2,"347":2,"388":1,"408":2,"412":1,"469":2,"559":1,"577":4,"581":1,"618":1,"720":1,"764":1,"765":1,"766":1,"774":1,"817":1,"823":1,"867":2,"869":3,"874":1,"883":1,"884":1,"885":2,"888":2,"892":1,"894":3,"904":2,"911":1,"917":1,"918":2,"928":2,"929":4,"937":1,"947":1,"956":3,"961":1,"963":4,"966":1,"975":1,"990":2,"991":5,"995":4,"998":2,"1023":2,"1027":3,"1037":4,"1038":2,"1044":3,"1047":2,"1059":1,"1061":1,"1062":1,"1066":3,"1069":2,"1071":1,"1072":1,"1073":4,"1074":2,"1086":1,"1096":1,"1098":1,"1102":1,"1138":1,"1152":1,"1153":2,"1154":4,"1157":1,"1165":1,"1177":3,"1213":1,"1255":5,"1257":10,"1262":1,"1272":1,"1274":1,"1287":4,"1288":4,"1289":4,"1290":4,"1291":4,"1293":4,"1295":4,"1297":4,"1299":4,"1301":4,"1317":1,"1335":2,"1349":1,"1350":1,"1366":10,"1368":2,"1374":3,"1380":3,"1384":2,"1385":2,"1386":3,"1397":1,"1398":1,"1405":1,"1408":2,"1410":2,"1416":3,"1417":1,"1420":1,"1427":2,"1429":7,"1430":1,"1431":1,"1433":4,"1434":1,"1458":1,"1464":1,"1511":1,"1553":1,"1554":1,"1565":2,"1567":1,"1577":3,"1579":1,"1581":1,"1582":5,"1587":1,"1589":1,"1590":4,"1597":4,"1598":2,"1609":2,"1616":2,"1623":1,"1625":1,"1633":1,"1639":1,"1644":1,"1683":1,"1684":2,"1685":2,"1691":1,"1692":1,"1693":1,"1694":3,"1695":3,"1696":1,"1697":1,"1701":2,"1707":2,"1708":7,"1711":2,"1712":5,"1714":20,"1715":3,"1752":1,"1753":2,"1758":1,"1762":2,"1785":1,"1792":71,"1800":1,"1801":1,"1802":1,"1807":1,"1808":1,"1813":2,"1814":2,"1819":4,"1840":2,"1850":1,"1856":2,"1866":2,"1897":2,"1898":2,"1899":2,"1907":2,"1917":1,"1925":1,"1948":1,"1955":1,"1959":1,"1995":8,"2011":2,"2013":1,"2014":2,"2033":1,"2037":1,"2041":1,"2045":2,"2056":2,"2077":3,"2080":1,"2093":1,"2094":4,"2099":1,"2101":1,"2105":1,"2106":1,"2107":3,"2113":2,"2118":8,"2138":1,"2141":2,"2142":4,"2144":8,"2145":2,"2146":6,"2148":3,"2154":1,"2156":1,"2162":2,"2220":1,"2221":1,"2222":1,"2223":1,"2224":2,"2225":1,"2226":1,"2227":1,"2228":1,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2240":4,"2245":2,"2247":1,"2254":5,"2265":1,"2354":2,"2376":1,"2378":2,"2385":1,"2386":8,"2389":1,"2391":1,"2398":4,"2410":1,"2416":1,"2419":1,"2421":1,"2430":1,"2437":1,"2438":1,"2442":1,"2455":2,"2465":1,"2471":1,"2481":2,"2493":1,"2517":1,"2526":2,"2535":3,"2537":9,"2542":1,"2551":3,"2566":1,"2575":8,"2576":1,"2633":9,"2652":2,"2669":1,"2692":1,"2703":8,"2719":1,"2721":1,"2731":1,"2739":1,"2752":1,"2762":4,"2785":1,"2794":1,"2801":1,"2814":1,"2823":4,"2824":6,"2825":3,"2841":1,"2844":1,"2859":2,"2860":2,"2861":1,"2868":1,"2875":1,"2878":1,"2880":1,"2882":1}}],["jdbc",{"2":{"2540":2,"2845":1}}],["jenkins",{"2":{"2102":1}}],["jetbrains",{"2":{"876":1}}],["jit",{"0":{"1272":1,"2245":1,"2789":1},"2":{"1090":4,"1091":1,"1254":1,"1255":1,"1259":1,"1263":2,"1264":1,"1265":1,"1266":2,"1267":1,"1268":1,"1269":1,"1270":1,"1272":3,"1277":1,"1278":1,"1279":1,"1280":1,"1284":1,"1285":1,"1287":4,"1288":4,"1289":4,"1290":4,"1291":4,"1293":4,"1295":4,"1297":4,"1299":4,"1301":4,"2242":1,"2245":5,"2744":1,"2789":13}}],["jpeg",{"2":{"1099":1,"1359":1,"1792":1,"2123":1,"2125":1}}],["jpy",{"2":{"1023":2,"1024":1}}],["jpg",{"2":{"157":2,"747":1,"1358":1,"1359":2}}],["jsjsimport",{"2":{"2830":1,"2836":1}}],["js",{"0":{"1026":1},"2":{"1025":1,"1026":4,"1027":1,"1064":1,"1101":1,"1106":1,"1255":1,"1320":2,"1350":1,"1416":1,"1422":1,"1559":1,"1574":1,"1580":2,"1582":1,"1792":1,"2036":1,"2040":1,"2247":1,"2476":1,"2872":1}}],["jsdoc",{"2":{"995":1,"1002":1,"2247":3,"2358":1,"2359":1}}],["jsonpath",{"2":{"2394":2}}],["jsonname",{"2":{"2372":1}}],["jsonconfigurationprovider",{"2":{"2824":2,"2825":2}}],["jsoncolumnnames",{"2":{"2372":2}}],["jsonc",{"2":{"2414":1,"2415":1,"2416":1,"2677":1,"2678":1,"2682":1,"2694":2}}],["jsoncjsonc",{"2":{"106":1,"107":1,"390":1,"1067":1,"1068":1,"1069":1,"1070":1,"1102":1,"1150":1,"1162":1,"1408":1,"1416":1,"1417":2,"1418":1,"1458":1,"1520":1,"1524":1,"1525":1,"1526":1,"1529":1,"1574":1,"1579":1,"1580":1,"1581":1,"1582":1,"1605":1,"1822":1,"1823":1,"1851":1,"1852":1,"1955":1,"1958":1,"1959":1,"2375":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2426":1,"2427":1,"2429":1,"2434":1,"2470":1,"2471":1,"2476":1,"2497":1,"2534":1,"2536":1,"2537":1,"2632":1,"2633":1,"2634":1,"2635":1,"2688":1,"2768":1}}],["jsonvalueformatter",{"2":{"2372":1}}],["jsontimestampsareutc",{"0":{"2455":1},"2":{"1792":1,"1856":3,"2224":1,"2453":1,"2455":3}}],["jsonb",{"0":{"2496":1},"2":{"582":1,"585":1,"695":1,"700":2,"736":2,"952":1,"982":4,"1019":2,"1020":2,"1021":4,"1031":2,"1074":1,"1078":3,"1092":1,"1216":2,"1232":3,"1234":2,"1239":3,"1279":3,"1339":2,"1376":4,"1398":1,"1426":1,"1543":1,"1687":2,"1689":4,"1792":2,"2109":2,"2110":1,"2223":1,"2247":1,"2394":2,"2496":2,"2498":2,"2526":1,"2530":4,"2531":2,"2535":2,"2540":1,"2546":1,"2763":3,"2764":3,"2766":2,"2845":1,"2860":1,"2861":1,"2866":2,"2868":1,"2869":3,"2873":1}}],["jsonjson",{"2":{"121":2,"140":1,"279":1,"305":1,"309":1,"310":1,"332":2,"333":1,"334":1,"335":1,"336":1,"354":1,"430":1,"436":1,"449":1,"455":1,"470":1,"476":1,"477":1,"478":1,"479":1,"556":1,"562":1,"565":1,"566":1,"577":1,"609":2,"611":1,"612":1,"614":1,"622":1,"695":1,"705":1,"762":1,"763":1,"772":1,"773":1,"775":1,"817":1,"819":1,"887":2,"889":1,"893":2,"900":1,"903":1,"914":2,"915":1,"916":3,"917":3,"918":1,"919":2,"937":1,"958":1,"963":1,"964":1,"965":1,"966":1,"967":1,"998":1,"1022":1,"1023":1,"1052":1,"1053":1,"1054":1,"1056":1,"1058":1,"1059":1,"1062":1,"1111":1,"1141":1,"1145":1,"1146":1,"1147":2,"1148":1,"1149":1,"1152":2,"1153":1,"1154":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1166":1,"1168":1,"1171":1,"1173":1,"1174":1,"1176":1,"1177":1,"1196":1,"1197":1,"1199":1,"1217":2,"1240":1,"1241":1,"1245":1,"1340":1,"1356":1,"1359":1,"1360":1,"1369":1,"1370":1,"1375":1,"1386":3,"1391":1,"1445":1,"1446":1,"1449":1,"1450":1,"1453":1,"1455":1,"1457":1,"1462":1,"1463":1,"1464":1,"1469":1,"1476":1,"1478":1,"1482":1,"1483":1,"1488":1,"1494":1,"1498":1,"1502":1,"1503":1,"1505":1,"1510":1,"1513":1,"1514":1,"1515":2,"1516":1,"1517":1,"1518":1,"1534":2,"1539":1,"1541":1,"1542":1,"1545":1,"1546":1,"1548":1,"1553":1,"1587":1,"1590":1,"1597":1,"1598":1,"1603":1,"1607":1,"1608":1,"1609":1,"1613":1,"1614":1,"1615":1,"1617":1,"1620":1,"1622":1,"1625":1,"1627":1,"1628":1,"1629":1,"1630":1,"1633":1,"1638":1,"1640":1,"1641":1,"1642":1,"1643":1,"1646":2,"1650":1,"1653":1,"1654":1,"1655":1,"1656":1,"1657":1,"1658":1,"1660":1,"1661":1,"1662":1,"1663":2,"1669":1,"1672":1,"1673":1,"1676":1,"1677":1,"1678":2,"1683":1,"1690":1,"1697":1,"1698":1,"1702":1,"1706":2,"1707":1,"1708":1,"1709":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1721":1,"1735":1,"1752":1,"1758":3,"1759":1,"1763":1,"1769":2,"1770":1,"1771":1,"1776":1,"1778":1,"1779":1,"1780":1,"1781":1,"1792":1,"1800":1,"1802":1,"1803":1,"1804":1,"1805":1,"1807":1,"1809":1,"1810":1,"1814":1,"1824":1,"1833":1,"1836":1,"1839":3,"1842":1,"1856":1,"1859":1,"1863":2,"1867":1,"1889":1,"1890":1,"1892":1,"1893":1,"1897":1,"1899":1,"1900":1,"1902":1,"1903":1,"1904":1,"1905":1,"1907":1,"1909":1,"1911":1,"1912":1,"1916":1,"1927":1,"1931":1,"1936":1,"1944":2,"1948":1,"1951":1,"1952":1,"1953":1,"1954":1,"1960":1,"1966":1,"1968":1,"1970":1,"1971":1,"1973":3,"1974":2,"1975":1,"1979":1,"1981":1,"1984":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1992":1,"1993":1,"1994":1,"1995":1,"1999":1,"2001":1,"2003":1,"2008":1,"2009":2,"2010":2,"2011":1,"2012":1,"2015":1,"2017":1,"2018":1,"2019":1,"2020":1,"2021":2,"2023":1,"2024":1,"2025":1,"2027":1,"2028":1,"2029":1,"2033":1,"2035":1,"2037":1,"2039":1,"2040":1,"2042":1,"2046":1,"2054":1,"2055":1,"2058":1,"2059":1,"2060":1,"2061":1,"2062":1,"2063":1,"2064":1,"2066":1,"2067":1,"2068":1,"2069":1,"2073":1,"2075":1,"2077":1,"2080":1,"2085":1,"2089":1,"2093":1,"2095":1,"2098":1,"2102":1,"2104":1,"2111":2,"2112":1,"2116":1,"2118":2,"2119":1,"2123":1,"2126":1,"2127":1,"2128":1,"2130":1,"2132":1,"2138":1,"2142":1,"2144":1,"2145":1,"2146":1,"2154":1,"2173":1,"2174":1,"2175":1,"2181":1,"2183":1,"2184":1,"2187":1,"2208":1,"2254":1,"2255":3,"2257":1,"2264":1,"2265":3,"2266":2,"2271":1,"2272":1,"2273":1,"2274":1,"2279":1,"2297":2,"2308":1,"2320":1,"2326":1,"2330":1,"2342":2,"2350":1,"2410":1,"2415":1,"2441":1,"2532":1,"2542":1,"2544":1,"2549":2,"2554":3,"2555":1,"2565":3,"2572":1,"2575":1,"2586":2,"2587":3,"2588":1,"2589":2,"2595":1,"2596":1,"2607":2,"2628":1,"2659":1,"2686":1,"2687":2,"2689":1,"2697":1,"2701":1,"2703":2,"2704":1,"2718":1,"2737":1,"2746":1,"2749":1,"2750":1,"2752":1,"2757":1,"2761":1,"2769":1,"2795":1,"2797":1,"2798":1,"2799":1,"2800":1,"2801":1,"2804":4,"2808":1,"2814":1,"2821":1,"2825":1,"2835":1,"2841":1,"2842":1,"2850":1,"2861":1,"2871":1,"2872":1,"2873":1,"2874":1,"2875":1,"2880":1}}],["json",{"0":{"72":1,"257":1,"521":1,"555":1,"734":1,"775":1,"799":1,"900":1,"912":1,"917":1,"918":1,"1097":1,"1279":1,"1296":1,"1620":1,"1856":1,"1973":1,"2055":1,"2217":1,"2271":1,"2397":1,"2399":1,"2491":1,"2496":2,"2554":1,"2587":1,"2589":1,"2668":1,"2669":1,"2726":1},"1":{"913":1,"914":1,"915":1,"916":1,"917":1,"918":1,"919":2,"920":2,"1297":1,"2398":1},"2":{"7":3,"16":3,"19":2,"20":2,"21":1,"37":2,"38":2,"39":2,"40":2,"48":3,"50":2,"71":4,"72":2,"73":1,"87":1,"104":1,"106":1,"115":1,"116":2,"117":1,"136":3,"137":1,"165":1,"167":1,"180":1,"182":1,"186":1,"188":1,"207":5,"208":3,"209":4,"210":2,"227":2,"229":1,"258":1,"263":2,"264":6,"279":1,"328":2,"330":1,"334":1,"335":1,"336":2,"337":3,"338":1,"351":1,"352":1,"361":2,"374":2,"388":1,"395":1,"401":2,"405":1,"406":1,"415":8,"423":2,"426":4,"427":3,"428":2,"429":1,"436":1,"439":6,"447":2,"449":4,"452":7,"453":1,"454":2,"470":1,"484":1,"487":1,"494":1,"499":1,"503":5,"510":5,"511":3,"512":2,"515":2,"516":1,"517":3,"518":1,"521":3,"524":2,"540":3,"542":1,"545":2,"556":1,"559":1,"567":1,"585":1,"593":1,"594":1,"607":2,"609":2,"613":1,"615":2,"617":1,"618":1,"673":1,"675":1,"691":2,"695":1,"700":1,"705":1,"710":3,"739":1,"748":1,"750":3,"751":3,"752":1,"755":3,"756":3,"758":1,"760":2,"761":2,"762":1,"763":1,"764":4,"765":1,"766":1,"767":1,"770":4,"771":5,"772":1,"773":1,"774":4,"775":5,"776":2,"777":3,"778":1,"783":1,"785":1,"787":1,"788":3,"789":1,"799":3,"802":1,"811":3,"812":2,"813":2,"814":2,"815":2,"823":1,"829":1,"833":3,"835":5,"851":6,"867":2,"868":9,"871":1,"873":2,"874":1,"882":1,"883":1,"884":1,"885":2,"886":3,"887":1,"888":1,"889":1,"892":2,"894":2,"899":1,"900":5,"902":1,"903":3,"904":4,"912":1,"914":1,"915":1,"916":2,"917":2,"918":7,"919":5,"920":1,"938":1,"952":1,"956":5,"958":1,"967":1,"976":1,"995":6,"1007":1,"1017":2,"1019":2,"1023":1,"1024":2,"1026":5,"1029":4,"1030":1,"1031":1,"1032":1,"1033":1,"1037":2,"1039":2,"1041":2,"1046":2,"1060":2,"1064":1,"1074":2,"1077":1,"1078":3,"1080":2,"1081":1,"1092":1,"1095":1,"1096":1,"1097":4,"1098":1,"1101":1,"1102":5,"1104":1,"1105":15,"1107":4,"1109":1,"1111":1,"1127":1,"1135":1,"1138":3,"1139":2,"1141":1,"1142":3,"1179":10,"1181":7,"1189":1,"1207":1,"1214":4,"1215":3,"1216":2,"1217":1,"1218":1,"1220":1,"1221":2,"1222":1,"1232":8,"1233":1,"1234":3,"1236":4,"1237":2,"1239":5,"1255":4,"1258":2,"1259":1,"1270":2,"1276":1,"1279":5,"1285":1,"1305":1,"1309":2,"1318":1,"1320":2,"1321":2,"1332":5,"1335":8,"1338":7,"1339":10,"1341":2,"1342":3,"1343":2,"1347":6,"1348":2,"1356":1,"1357":3,"1358":3,"1362":1,"1366":2,"1367":2,"1370":1,"1372":2,"1373":1,"1374":5,"1375":1,"1376":1,"1378":2,"1382":1,"1386":3,"1391":2,"1398":4,"1399":4,"1402":1,"1407":1,"1408":3,"1410":5,"1412":1,"1416":3,"1417":2,"1418":3,"1420":3,"1427":1,"1431":1,"1434":1,"1445":1,"1452":1,"1453":1,"1456":1,"1469":1,"1470":1,"1471":1,"1475":2,"1477":1,"1523":1,"1540":1,"1543":1,"1544":1,"1547":4,"1553":1,"1558":1,"1559":1,"1567":2,"1568":1,"1575":1,"1581":1,"1609":1,"1618":1,"1620":1,"1671":2,"1684":1,"1687":3,"1722":1,"1725":1,"1727":5,"1730":2,"1732":2,"1733":1,"1736":4,"1742":2,"1745":4,"1792":70,"1813":1,"1817":1,"1822":1,"1824":7,"1849":2,"1856":2,"1882":4,"1883":1,"1884":2,"1886":1,"1887":2,"1888":2,"1897":2,"1898":2,"1907":2,"1911":2,"1918":1,"1921":6,"1922":2,"1924":9,"1926":2,"1936":2,"1943":3,"1948":1,"1951":1,"1959":1,"1967":2,"1974":2,"2000":2,"2008":1,"2010":1,"2012":1,"2040":3,"2047":1,"2055":2,"2056":2,"2067":1,"2068":1,"2072":1,"2076":1,"2078":1,"2092":4,"2096":1,"2097":1,"2109":1,"2110":1,"2124":2,"2125":1,"2129":2,"2130":1,"2131":4,"2147":3,"2155":3,"2156":1,"2164":1,"2165":1,"2171":3,"2175":1,"2184":1,"2187":1,"2193":1,"2204":2,"2206":1,"2207":1,"2208":1,"2217":1,"2222":1,"2223":3,"2224":2,"2226":1,"2236":1,"2247":3,"2254":2,"2255":6,"2259":1,"2264":6,"2265":3,"2267":1,"2270":2,"2271":2,"2273":2,"2274":1,"2277":2,"2279":1,"2283":2,"2290":2,"2291":1,"2293":1,"2296":1,"2297":1,"2303":5,"2304":2,"2310":1,"2313":1,"2320":3,"2321":1,"2322":1,"2326":1,"2330":1,"2338":2,"2339":4,"2342":1,"2344":2,"2346":4,"2356":1,"2360":1,"2372":2,"2377":1,"2378":1,"2380":2,"2389":3,"2394":2,"2397":1,"2398":1,"2400":1,"2406":1,"2414":1,"2415":3,"2417":1,"2419":1,"2428":1,"2431":1,"2434":2,"2435":1,"2438":2,"2450":2,"2451":1,"2454":2,"2455":1,"2456":1,"2471":1,"2476":2,"2477":1,"2481":10,"2486":3,"2491":3,"2493":1,"2496":4,"2498":8,"2509":3,"2511":1,"2512":2,"2513":1,"2522":2,"2526":1,"2529":1,"2530":1,"2537":7,"2542":1,"2543":1,"2545":2,"2546":1,"2549":14,"2551":1,"2555":1,"2566":1,"2572":4,"2575":2,"2585":1,"2586":5,"2587":3,"2588":7,"2589":5,"2590":1,"2594":1,"2600":1,"2603":1,"2607":2,"2614":1,"2621":1,"2635":5,"2641":2,"2648":1,"2649":1,"2650":1,"2659":1,"2662":2,"2664":1,"2666":1,"2667":2,"2668":2,"2669":1,"2670":2,"2671":1,"2673":2,"2674":1,"2677":2,"2678":1,"2681":2,"2682":1,"2684":8,"2685":6,"2686":1,"2689":1,"2690":1,"2691":1,"2694":2,"2695":2,"2697":2,"2700":2,"2717":2,"2718":1,"2724":1,"2725":1,"2739":1,"2754":2,"2763":3,"2764":1,"2765":1,"2766":4,"2767":4,"2769":1,"2772":1,"2785":2,"2788":2,"2789":2,"2790":2,"2791":2,"2810":7,"2812":2,"2813":8,"2815":6,"2821":1,"2824":4,"2825":3,"2829":4,"2830":1,"2836":2,"2841":1,"2850":1,"2851":1,"2853":1,"2854":1,"2857":1,"2861":1,"2865":1,"2866":2,"2872":2,"2873":1,"2877":2,"2878":2,"2880":2}}],["j",{"2":{"927":2}}],["jack",{"2":{"913":1}}],["jan",{"2":{"1023":1}}],["january",{"2":{"878":1,"887":1,"912":1,"921":1,"1010":1,"1048":1,"1083":1,"1128":1,"1135":1,"1183":1,"1209":1,"1254":1,"1302":1,"1328":1,"1352":1,"1400":1,"1435":1}}],["jane",{"2":{"22":1,"128":2,"489":2,"493":2,"643":1,"646":1,"913":1,"916":3,"917":2,"918":3,"1386":2,"2314":1}}],["javajava",{"2":{"1366":1}}],["java24",{"2":{"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["java",{"2":{"860":1,"1255":1,"1257":2,"1366":1,"2880":1}}],["javascriptjavascriptfetch",{"2":{"1492":1}}],["javascriptjavascriptimport",{"2":{"1320":1}}],["javascriptjavascript",{"2":{"1026":1,"1320":1}}],["javascript",{"0":{"1580":1,"2360":1},"2":{"834":1,"961":1,"1004":1,"1086":1,"1094":3,"1107":1,"1200":1,"1343":1,"1385":1,"1386":2,"1394":2,"1413":1,"1432":1,"1447":1,"1448":1,"1552":1,"1559":1,"1580":1,"1684":1,"1685":1,"1792":7,"1936":1,"1943":2,"2020":1,"2036":1,"2168":1,"2247":1,"2360":2,"2550":1,"2562":1,"2566":1,"2626":1,"2772":1,"2775":1,"2791":2}}],["jumped",{"2":{"2571":1}}],["jumping",{"2":{"1266":1}}],["july",{"2":{"1072":1}}],["junior",{"2":{"1403":1}}],["junitoutput=results",{"2":{"2880":1}}],["junitoutput",{"0":{"2102":1},"2":{"1792":1,"2093":1,"2094":1,"2102":1,"2535":1,"2537":1,"2880":1}}],["junit",{"2":{"1094":1,"1792":1,"2094":1,"2102":2,"2221":1,"2526":1,"2528":1,"2535":1,"2537":1,"2864":1,"2880":1}}],["junction",{"2":{"841":1}}],["june",{"2":{"831":1,"852":1,"1038":1,"1423":1}}],["justifications",{"2":{"860":1}}],["just",{"0":{"1017":1,"1410":1,"1420":1,"2180":1},"2":{"1":2,"319":1,"351":1,"376":1,"448":1,"650":1,"665":1,"694":1,"841":4,"844":4,"845":3,"847":4,"848":1,"849":3,"851":9,"852":2,"860":1,"861":1,"864":3,"868":1,"876":2,"879":2,"880":1,"888":1,"904":2,"918":1,"920":3,"942":1,"947":1,"948":1,"961":2,"977":1,"980":1,"990":1,"994":1,"1010":1,"1011":1,"1037":2,"1047":1,"1067":1,"1068":1,"1073":3,"1075":1,"1078":1,"1081":1,"1082":1,"1126":1,"1127":1,"1134":1,"1141":1,"1150":1,"1180":1,"1200":1,"1208":1,"1209":1,"1215":1,"1220":1,"1280":1,"1281":1,"1302":1,"1305":1,"1366":2,"1372":1,"1385":2,"1386":6,"1389":2,"1393":1,"1394":1,"1399":2,"1400":1,"1401":3,"1402":2,"1403":2,"1405":2,"1409":1,"1412":1,"1416":1,"1419":1,"1423":1,"1428":1,"1429":1,"1435":1,"1438":1,"1443":2,"1459":1,"1517":1,"1770":1,"1792":5,"1870":1,"1974":1,"2107":1,"2177":1,"2180":1,"2252":1,"2265":1,"2313":1,"2314":1,"2323":1,"2358":1,"2375":1,"2466":1,"2494":1,"2504":1,"2532":1,"2537":2,"2538":1,"2542":1,"2577":1,"2607":1,"2709":1,"2760":1,"2779":1,"2789":1,"2797":1,"2809":1,"2830":1,"2833":1,"2839":1,"2868":1,"2876":1}}],["jorge",{"2":{"1442":2}}],["journey",{"2":{"1384":1}}],["jobs",{"2":{"2872":1}}],["job",{"2":{"661":3,"831":1,"847":1,"851":1,"852":2,"855":1,"861":1,"864":1,"1075":1,"1403":2,"2437":1,"2833":1,"2880":1}}],["joining",{"2":{"1133":2}}],["joined",{"2":{"918":1,"977":1,"980":1,"990":1}}],["joins",{"2":{"851":2,"852":1,"857":1,"920":1,"956":1,"980":1,"1079":1,"1096":3,"1205":1,"1385":1,"2868":1}}],["join",{"2":{"188":1,"848":1,"852":5,"856":1,"857":2,"860":4,"861":1,"914":1,"916":3,"918":4,"980":1,"982":1,"990":1,"1026":2,"1105":2,"1133":3,"1197":1,"1320":2,"1375":1,"1408":1,"1429":1,"1504":2,"1574":2,"2296":1,"2540":1}}],["johnson",{"2":{"913":1,"919":2}}],["johndoe",{"2":{"488":1}}],["john",{"2":{"14":1,"19":2,"34":1,"128":2,"361":1,"488":1,"489":2,"493":2,"643":1,"646":1,"1386":6,"1391":2,"1393":4,"2314":1}}],["jwtbearer",{"2":{"2386":1,"2567":1}}],["jwtbearerdefaults",{"2":{"1454":1}}],["jwtvalidatelifetime",{"2":{"1453":1,"1454":1,"1459":1,"1792":1,"2375":1,"2412":1,"2554":2}}],["jwtvalidateaudience",{"2":{"1453":1,"1454":1,"1459":1,"1463":1,"1792":1,"2375":1,"2412":1,"2554":2}}],["jwtvalidateissuersigningkey",{"2":{"1453":1,"1454":1,"1459":1,"1792":1,"2375":1,"2412":1,"2554":2}}],["jwtvalidateissuer",{"2":{"1453":1,"1454":1,"1459":1,"1463":1,"1792":1,"2375":1,"2412":1,"2554":2}}],["jwtexpire",{"2":{"1071":1,"1453":1,"1454":1,"1458":1,"1459":1,"1463":1,"1464":2,"1792":2,"2375":3,"2376":1,"2377":1,"2412":1,"2737":1}}],["jwtexpireminutes",{"2":{"1053":1,"1062":1,"1071":1,"1464":1,"2175":1,"2376":1,"2554":2}}],["jwtrefreshexpire",{"2":{"1453":1,"1454":1,"1459":1,"1463":1,"1464":1,"1792":2,"2375":2,"2376":1,"2377":1,"2412":1}}],["jwtrefreshexpiredays",{"2":{"1053":1,"1464":1,"2376":1,"2554":2}}],["jwtrefreshpath",{"2":{"1053":1,"1062":1,"1453":1,"1454":1,"1458":1,"1459":1,"1460":1,"1792":3,"2375":4,"2412":1,"2554":2}}],["jwtaudience",{"2":{"1053":1,"1453":1,"1454":2,"1459":1,"1463":1,"1792":3,"2175":1,"2375":1,"2412":1,"2554":2}}],["jwtauthscheme",{"2":{"1053":1,"1062":1,"1454":1,"1460":1,"1792":2,"2175":2,"2375":1,"2554":1}}],["jwtauth",{"2":{"1053":1,"1062":1,"1445":1,"1453":1,"1454":1,"1458":1,"1463":1,"1464":1,"1792":1,"1825":1,"2175":1,"2375":1,"2377":1,"2554":2,"2737":1}}],["jwtissuer",{"2":{"1053":1,"1453":1,"1454":2,"1459":1,"1463":1,"1792":3,"2175":1,"2375":1,"2412":1,"2554":2}}],["jwtsecret",{"2":{"1053":1,"1062":1,"1453":1,"1454":1,"1457":2,"1458":3,"1459":2,"1460":1,"1463":1,"1464":1,"1792":3,"2175":1,"2375":6,"2412":1,"2413":1,"2554":2,"2737":1}}],["jwtclockskew",{"2":{"279":1,"1453":1,"1454":1,"1459":1,"1792":1,"2375":2,"2412":1,"2554":2}}],["jwt",{"0":{"1453":1,"1454":1,"1457":1,"1463":1,"2175":1,"2554":1,"2737":1},"1":{"1454":1,"1455":1,"1456":1,"1457":1},"2":{"25":1,"302":2,"303":1,"312":3,"315":1,"529":1,"535":1,"835":1,"934":1,"1037":1,"1045":2,"1048":1,"1053":4,"1054":2,"1055":1,"1061":2,"1062":2,"1063":2,"1064":2,"1066":1,"1068":1,"1070":1,"1086":1,"1098":8,"1102":7,"1106":1,"1126":1,"1127":1,"1216":2,"1221":3,"1222":2,"1249":1,"1322":1,"1444":1,"1445":1,"1453":5,"1454":3,"1455":1,"1456":3,"1457":4,"1458":11,"1459":2,"1460":3,"1463":1,"1464":1,"1788":1,"1792":22,"1795":1,"1825":4,"1852":1,"1894":1,"1902":2,"1906":1,"1907":2,"1911":2,"2164":1,"2165":1,"2170":1,"2171":2,"2175":1,"2178":1,"2188":1,"2189":1,"2227":1,"2238":1,"2254":3,"2284":1,"2375":16,"2377":2,"2383":1,"2410":1,"2412":1,"2413":1,"2421":1,"2422":1,"2423":1,"2429":1,"2434":2,"2435":1,"2438":5,"2554":10,"2736":1}}],["1junit",{"2":{"2880":1}}],["1verbose",{"2":{"2799":1}}],["1validationoptions",{"2":{"2446":1}}],["1validation",{"2":{"1609":1}}],["1include",{"2":{"2694":1}}],["1runs",{"2":{"2878":1}}],["1run",{"2":{"2543":1}}],["1resulting",{"2":{"2697":1}}],["1response",{"2":{"537":1}}],["1redirect",{"2":{"2694":1}}],["1returns",{"2":{"1737":1,"2554":1}}],["1returning",{"2":{"885":1}}],["1renders",{"2":{"959":1}}],["1recommended",{"2":{"308":1}}],["1column",{"2":{"2842":1}}],["1code",{"2":{"2797":1}}],["1codenpgsqlrest",{"2":{"2537":1}}],["1command",{"2":{"2697":1}}],["1cache",{"2":{"2622":1}}],["1click",{"2":{"1200":1}}],["1use",{"2":{"2326":1}}],["1uses",{"2":{"92":1}}],["1produces",{"2":{"2326":1}}],["1px",{"2":{"965":1,"1792":1,"2073":1,"2075":1,"2080":1}}],["1enable",{"2":{"2010":1}}],["1each",{"2":{"1008":1,"2445":1,"2752":1}}],["1after",{"2":{"2342":1,"2555":1,"2622":1}}],["1also",{"2":{"2301":1}}],["1a",{"2":{"1823":1,"2405":1,"2537":1,"2864":1}}],["1any",{"2":{"975":1}}],["1annotations",{"2":{"685":1}}],["1openapi",{"2":{"2555":1}}],["1or",{"2":{"1782":1,"2749":1}}],["1one",{"2":{"1008":1,"2110":1}}],["1get",{"2":{"1730":1}}],["1new",{"2":{"2586":1,"2588":1}}],["1no",{"2":{"1369":1}}],["1npgsqlrest",{"2":{"1023":1}}],["164",{"2":{"2146":1,"2621":1}}],["16456",{"2":{"903":1}}],["16384",{"2":{"1356":1,"1792":2,"1992":1,"2132":1}}],["165",{"2":{"1301":1}}],["16ms",{"2":{"1301":1}}],["169",{"2":{"1297":1}}],["162",{"2":{"1290":1,"1293":1,"1714":2}}],["168",{"2":{"1277":2,"1454":1,"1707":1,"1708":1,"1792":3,"2633":2}}],["160",{"2":{"1267":1}}],["16t08",{"2":{"919":5}}],["16",{"0":{"1429":1,"2224":1,"2449":1,"2458":1,"2467":1,"2473":1,"2583":1,"2601":1},"1":{"2450":1,"2451":1,"2452":1,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1,"2459":1,"2460":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2474":1,"2475":1,"2476":1,"2477":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2591":1,"2602":1,"2603":1,"2604":1},"2":{"919":5,"977":2,"980":2,"990":2,"1152":1,"1189":1,"1269":1,"1272":1,"1277":1,"1285":2,"1287":2,"1290":2,"1291":1,"1293":1,"1301":1,"1383":1,"1423":1,"1433":1,"1625":1,"1708":2,"1712":1,"1714":1,"1792":4,"1856":2,"1958":1,"2164":1,"2224":5,"2236":2,"2397":1,"2398":1,"2435":3,"2455":2,"2535":1,"2633":2,"2770":1,"2869":1}}],["1building",{"2":{"885":1}}],["1bad",{"2":{"382":1,"2334":1}}],["13+",{"2":{"2792":1}}],["131",{"2":{"1714":1}}],["130",{"2":{"1295":1}}],["137",{"2":{"1293":1,"1297":1}}],["132",{"2":{"1290":1,"1295":1}}],["13ms",{"2":{"1287":1,"1293":1}}],["139",{"2":{"1281":1}}],["136",{"2":{"1281":1,"1295":1}}],["133",{"2":{"1270":1,"1277":2,"1281":1,"1285":1,"1290":1,"1297":1,"1301":1}}],["138",{"2":{"1269":1,"1285":1}}],["13",{"0":{"1066":1,"2227":1,"2262":1,"2311":1,"2373":1},"1":{"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2312":1,"2313":1,"2314":1,"2374":1,"2375":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1},"2":{"852":1,"869":1,"1037":1,"1066":3,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1098":1,"1102":1,"1157":1,"1212":1,"1288":6,"1297":1,"1299":2,"1420":1,"1458":1,"1464":2,"1522":1,"1714":2,"1792":1,"1850":1,"1948":1,"1955":1,"2164":1,"2227":1,"2229":1,"2239":1,"2376":2,"2378":1,"2381":1,"2389":1,"2397":1,"2419":1,"2421":1,"2437":1,"2442":1,"2607":1,"2710":1,"2819":1}}],["1949",{"2":{"2407":1}}],["197",{"2":{"1714":1}}],["1970",{"2":{"848":1,"852":2}}],["190",{"2":{"1714":1}}],["19ms",{"2":{"1293":1,"1297":1}}],["198",{"2":{"1277":1,"1714":1}}],["1984",{"2":{"335":2,"913":1,"918":2,"919":2,"2586":3}}],["192",{"2":{"1277":1,"1291":1,"1656":4,"1707":1,"1708":1,"1714":1,"1792":4,"1991":1,"2633":2}}],["1999",{"2":{"956":2,"1189":1,"1374":2}}],["19",{"0":{"2221":1,"2524":1,"2609":1},"1":{"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2545":1,"2546":1,"2610":1,"2611":1},"2":{"876":1,"961":1,"977":1,"980":1,"986":1,"990":1,"1037":2,"1072":1,"1073":2,"1074":2,"1076":2,"1082":4,"1094":2,"1189":1,"1277":1,"1290":3,"1293":2,"1297":1,"1301":1,"1379":1,"1407":1,"1785":1,"1792":5,"1801":1,"1802":1,"2107":1,"2167":1,"2221":1,"2236":1,"2397":1,"2435":1,"2526":2,"2535":1,"2537":1,"2545":1,"2731":1,"2739":1,"2752":1,"2794":1,"2801":1,"2844":1,"2859":1,"2860":3,"2882":1}}],["1tags",{"2":{"2097":1}}],["1tag",{"2":{"2097":1}}],["1to",{"2":{"1973":1}}],["1ttzr19",{"2":{"845":1}}],["1that",{"2":{"2861":1}}],["1this",{"2":{"334":1,"933":1,"1015":1,"2009":1,"2208":1,"2586":1,"2588":1,"2589":1,"2682":1}}],["1the",{"2":{"102":1,"155":1,"173":1,"335":1,"414":1,"436":1,"619":1,"694":1,"885":1,"982":1,"992":1,"2366":1,"2526":1,"2694":1,"2811":1}}],["149",{"2":{"1295":1,"1301":1}}],["1499",{"2":{"1189":1,"1192":1}}],["145",{"2":{"1290":1,"2435":1}}],["142",{"2":{"1290":1}}],["141",{"2":{"1290":1,"1714":1}}],["1415",{"2":{"956":1,"1374":1}}],["146",{"2":{"1289":1}}],["14ms",{"2":{"1287":1}}],["147",{"2":{"1284":1}}],["140",{"2":{"1281":1}}],["143",{"2":{"1277":1}}],["144",{"2":{"930":1}}],["14",{"0":{"1254":1,"2226":1,"2387":1,"2578":1},"1":{"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"1263":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":1,"1275":1,"1276":1,"1277":1,"1278":1,"1279":1,"1280":1,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1301":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2398":1,"2399":1,"2400":1,"2401":1,"2402":1,"2403":1,"2404":1,"2405":1,"2406":1,"2407":1,"2579":1,"2580":1,"2581":1,"2582":1},"2":{"817":1,"867":1,"947":1,"956":2,"957":1,"959":2,"961":3,"966":1,"970":1,"977":1,"980":1,"990":1,"1068":4,"1071":1,"1089":1,"1096":1,"1098":2,"1255":1,"1257":1,"1269":4,"1281":2,"1285":2,"1288":2,"1289":2,"1293":2,"1297":1,"1374":2,"1383":1,"1385":1,"1413":1,"1442":1,"1446":1,"1447":3,"1458":2,"1464":4,"1714":1,"1792":3,"1810":1,"2144":1,"2146":1,"2148":1,"2164":1,"2165":2,"2226":1,"2237":1,"2375":2,"2376":4,"2377":1,"2386":1,"2391":1,"2575":1,"2804":1}}],["173",{"2":{"1714":1}}],["176",{"2":{"1301":1}}],["175",{"2":{"1297":1,"1299":1}}],["179",{"2":{"1297":1}}],["177",{"2":{"1290":1}}],["17ms",{"2":{"1289":1,"1295":1}}],["171",{"2":{"1289":1}}],["178",{"2":{"1284":1,"1288":1}}],["172",{"2":{"1284":1,"1708":1,"1712":1,"1714":1,"1792":1,"2633":1}}],["17",{"0":{"1425":1,"1605":1,"2223":1,"2478":1,"2605":1},"1":{"1426":1,"1427":1,"1428":1,"2479":1,"2480":1,"2481":1,"2482":1,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2489":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":1,"2497":1,"2498":1,"2606":1,"2607":1,"2608":1},"2":{"317":2,"977":1,"980":1,"990":1,"1037":1,"1038":2,"1269":2,"1288":3,"1290":1,"1293":1,"1423":1,"1426":2,"1427":4,"1430":1,"1433":2,"1639":1,"1644":1,"1714":1,"1813":2,"1840":2,"1875":1,"2164":1,"2223":1,"2236":1,"2535":1,"2607":1,"2719":1,"2721":1,"2762":1,"2770":1,"2841":1,"2875":1}}],["158",{"2":{"1714":1}}],["154",{"2":{"1382":1}}],["153",{"2":{"1297":1}}],["15ms",{"2":{"1297":1}}],["151",{"2":{"1290":2}}],["1517",{"2":{"867":1,"871":1}}],["156",{"2":{"1023":1,"1270":1,"1297":1}}],["150",{"2":{"566":1,"869":1,"911":1,"1290":1,"1332":1,"1335":2,"1338":1,"1339":1,"1342":1}}],["15",{"0":{"1449":1,"1908":1,"2225":1,"2260":1,"2408":1,"2418":1,"2439":1,"2592":1,"2598":1},"1":{"1909":1,"1910":1,"1911":1,"2261":1,"2409":1,"2410":1,"2411":1,"2412":1,"2413":1,"2414":1,"2415":1,"2416":1,"2417":1,"2419":1,"2420":1,"2421":1,"2422":1,"2423":1,"2424":1,"2425":1,"2426":1,"2427":1,"2428":1,"2429":1,"2430":1,"2431":1,"2432":1,"2433":1,"2434":1,"2435":1,"2436":1,"2437":1,"2438":1,"2440":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":1,"2446":1,"2447":1,"2448":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2599":1,"2600":1},"2":{"310":1,"347":2,"869":3,"872":2,"956":2,"977":1,"980":1,"990":1,"1038":1,"1043":1,"1045":1,"1047":2,"1189":1,"1192":1,"1269":2,"1272":1,"1285":1,"1288":3,"1293":1,"1295":1,"1366":4,"1374":2,"1386":1,"1616":1,"1714":1,"2166":1,"2225":7,"2236":2,"2239":1,"2364":1,"2410":1,"2430":1,"2435":1,"2438":1,"2440":1,"2447":1,"2448":1}}],["1looking",{"2":{"296":1}}],["1year",{"2":{"280":1}}],["1matched",{"2":{"2096":1}}],["1mark",{"2":{"184":1,"186":1}}],["1min",{"2":{"1769":1,"1792":3,"2060":1,"2253":2,"2634":1,"2635":1}}],["1m",{"2":{"279":1,"1792":1,"1837":1,"2156":1,"2542":1}}],["1suites",{"2":{"2877":1}}],["1supports",{"2":{"340":1,"599":1}}],["1sqlsqlcomment",{"2":{"2768":1}}],["1see",{"2":{"2746":1,"2757":1}}],["1setup",{"2":{"2537":1}}],["1skipped",{"2":{"2342":1}}],["1save",{"2":{"1080":1,"2857":1}}],["1streams",{"2":{"959":1}}],["1since",{"2":{"252":1,"2537":1}}],["1s",{"2":{"213":6,"214":1,"1032":1,"1105":1,"1740":5,"1742":2,"1792":1,"2288":5,"2290":2,"2765":2}}],["1with",{"2":{"332":1,"609":1,"1175":1,"1782":1,"1973":1,"2009":1,"2010":1,"2587":1}}],["1weeks",{"2":{"133":1}}],["1week",{"2":{"133":1}}],["1w",{"2":{"92":1,"133":1,"1143":1}}],["1disables",{"2":{"175":1}}],["1days",{"2":{"133":1}}],["1day",{"2":{"133":1,"272":1}}],["1d",{"2":{"92":1,"97":1,"133":1,"271":1,"278":1,"1143":1,"1179":1,"2205":1}}],["1hours",{"2":{"133":1}}],["1hour",{"2":{"133":1,"272":1}}],["1h",{"2":{"92":1,"96":1,"118":1,"133":1,"214":1,"271":1,"277":1,"1143":1,"1179":1,"1532":1,"1743":1,"1792":1,"2101":1,"2205":2,"2212":1,"2502":1,"2537":1}}],["103",{"2":{"1714":3}}],["1024",{"2":{"1510":1,"1511":1,"1515":1,"1792":2,"2274":1,"2279":1}}],["102400",{"2":{"1360":1}}],["10ms",{"2":{"1288":1,"1293":1,"1349":2}}],["107",{"2":{"1284":1,"1299":1}}],["105",{"2":{"1269":1,"1289":1}}],["1058",{"2":{"933":1}}],["1048576",{"2":{"1510":1,"1511":1,"1515":1,"1792":3,"1990":1,"2274":1,"2279":1}}],["104",{"2":{"1264":1,"1269":1,"1285":1,"1293":1,"1714":2}}],["106",{"2":{"1091":1,"1262":1,"1264":1,"1268":1,"1290":1,"1291":1}}],["101",{"0":{"1128":1},"1":{"1129":1,"1130":1,"1131":1,"1132":1,"1133":1,"1134":1},"2":{"1037":1,"1128":1,"1270":1,"1284":1,"1285":1,"1289":1,"1714":1,"2398":1}}],["10×",{"2":{"872":1}}],["1080p",{"2":{"1044":2}}],["108",{"2":{"851":2,"1382":2,"1714":1}}],["10s",{"2":{"92":1,"94":1,"208":1,"213":1,"214":1,"278":1,"1017":1,"1019":3,"1032":1,"1033":1,"1105":1,"1143":1,"1398":1,"1736":1,"1740":1,"1775":2,"2205":1,"2288":1,"2764":1,"2765":2,"2766":2}}],["10",{"0":{"94":1,"1288":1,"1295":1,"2230":1,"2246":1,"2280":1,"2298":1},"1":{"2281":1,"2282":1,"2283":1,"2284":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1,"2299":1,"2300":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1},"2":{"88":1,"92":1,"255":2,"477":1,"577":2,"869":5,"872":3,"910":1,"911":1,"913":1,"953":1,"956":4,"969":1,"977":1,"980":1,"990":1,"1090":1,"1132":1,"1153":1,"1154":2,"1158":2,"1159":1,"1160":6,"1161":2,"1162":2,"1177":1,"1187":2,"1192":2,"1245":1,"1255":4,"1257":4,"1270":1,"1277":2,"1284":2,"1285":4,"1288":2,"1289":1,"1295":1,"1297":1,"1299":2,"1301":2,"1328":1,"1336":2,"1337":2,"1338":5,"1339":6,"1366":5,"1374":3,"1408":1,"1587":1,"1589":1,"1590":2,"1597":2,"1598":1,"1633":1,"1639":1,"1707":1,"1708":1,"1712":1,"1715":1,"1773":1,"1779":1,"1792":13,"1893":1,"1951":2,"1952":2,"1953":6,"1954":2,"1955":1,"1958":1,"1959":2,"1960":7,"2060":1,"2061":1,"2068":1,"2164":1,"2165":2,"2223":1,"2229":1,"2230":1,"2240":1,"2245":2,"2246":1,"2257":5,"2258":1,"2277":2,"2379":1,"2386":8,"2397":4,"2398":3,"2441":1,"2470":1,"2471":2,"2551":3,"2633":2,"2711":1,"2816":1}}],["1001",{"2":{"2465":1}}],["100+",{"2":{"2270":1}}],["100kb",{"0":{"1299":1},"2":{"1285":1}}],["100ms",{"2":{"213":1,"1740":1,"2288":1}}],["10000",{"2":{"1026":2,"1721":1,"1722":1,"1792":1,"2502":1,"2769":2}}],["10001",{"2":{"332":3,"1973":3,"2010":2,"2587":3}}],["1000",{"0":{"1133":1},"2":{"271":1,"478":1,"1067":2,"1133":1,"1149":1,"1168":3,"1169":1,"1177":3,"1317":1,"1320":1,"1416":1,"1510":1,"1511":1,"1517":1,"1529":1,"1792":1,"1995":1,"2247":1,"2265":3,"2463":1,"2466":1,"2621":1}}],["1000microseconds",{"2":{"133":1}}],["1000usec",{"2":{"133":1}}],["1000us",{"2":{"133":1,"271":1}}],["1000+",{"2":{"88":1,"1132":1,"1169":1}}],["100",{"0":{"1090":1,"1091":1,"1132":1,"1265":1,"1289":1,"1290":2,"1291":1,"1293":1},"2":{"86":1,"476":1,"479":1,"763":1,"773":1,"869":2,"872":1,"894":1,"911":1,"930":1,"948":2,"953":1,"1007":1,"1044":1,"1069":3,"1074":1,"1084":2,"1090":3,"1158":1,"1159":1,"1160":3,"1162":4,"1165":2,"1166":4,"1169":2,"1171":3,"1181":2,"1189":1,"1255":4,"1258":2,"1262":2,"1263":1,"1264":4,"1265":2,"1267":1,"1268":2,"1269":1,"1270":1,"1271":1,"1272":3,"1281":1,"1283":1,"1284":6,"1285":2,"1289":1,"1295":1,"1297":1,"1301":1,"1322":1,"1338":1,"1339":1,"1349":1,"1361":1,"1391":1,"1410":1,"1616":1,"1792":9,"1951":2,"1952":2,"1953":2,"1955":1,"1960":4,"1990":3,"1991":1,"1992":1,"2089":2,"2107":3,"2145":2,"2245":1,"2257":3,"2258":1,"2378":2,"2379":1,"2397":3,"2398":5,"2526":1,"2537":3,"2551":1,"2789":1,"2860":2,"2869":1,"2879":1}}],["188",{"2":{"1714":1}}],["187",{"2":{"1301":1}}],["183",{"2":{"1297":1}}],["184",{"2":{"1297":1}}],["1800+",{"2":{"1402":1}}],["180",{"2":{"1288":1}}],["182",{"2":{"1285":1}}],["181",{"2":{"1284":1,"1301":1}}],["18",{"0":{"2222":1,"2499":1,"2507":1,"2514":1},"1":{"2500":1,"2501":1,"2502":1,"2503":1,"2504":1,"2505":1,"2506":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1},"2":{"74":3,"977":1,"980":1,"990":1,"1287":2,"1290":1,"1299":1,"1430":1,"1431":7,"1433":3,"1434":1,"1569":2,"1714":2,"1759":2,"1912":2,"1924":2,"1925":2,"2164":1,"2222":3,"2515":1,"2535":1,"2621":1,"2816":1}}],["11pt",{"2":{"1792":1,"2073":1,"2075":1,"2080":1}}],["114",{"2":{"1293":1,"1297":1,"1714":1}}],["11ms",{"2":{"1287":1,"1295":2,"1299":1}}],["116",{"2":{"1281":1,"1285":1,"1301":1}}],["111",{"2":{"1277":1,"1278":1,"1284":1,"1290":1}}],["113",{"2":{"1069":2}}],["110",{"2":{"867":1,"874":1,"875":1,"1289":1}}],["1100",{"2":{"622":1}}],["11",{"0":{"2229":1,"2241":1,"2243":1,"2298":1,"2311":1,"2408":1,"2439":1,"2657":1},"1":{"2242":1,"2244":1,"2245":1,"2246":1,"2247":1,"2248":1,"2249":1,"2250":1,"2251":1,"2252":1,"2253":1,"2254":1,"2255":1,"2256":1,"2257":1,"2258":1,"2259":1,"2299":1,"2300":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2312":1,"2313":1,"2314":1,"2409":1,"2410":1,"2411":1,"2412":1,"2413":1,"2414":1,"2415":1,"2416":1,"2417":1,"2440":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":1,"2446":1,"2447":1,"2448":1,"2658":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1,"2665":1,"2666":1,"2667":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1,"2674":1},"2":{"19":1,"20":1,"22":1,"317":1,"412":1,"919":1,"977":1,"980":1,"990":1,"1039":1,"1090":2,"1277":1,"1278":1,"1285":3,"1289":5,"1293":1,"1295":1,"1297":1,"1299":2,"1301":3,"1383":1,"1792":1,"1813":1,"1824":3,"2225":3,"2229":2,"2232":1,"2240":2,"2397":1,"2398":1,"2452":1,"2481":2,"2823":1,"2824":1}}],["12on",{"2":{"2879":1}}],["12or",{"2":{"79":1,"133":1,"570":1,"2049":1}}],["12resolved",{"2":{"2768":1}}],["12response",{"2":{"493":1}}],["12placeholder",{"2":{"2688":1}}],["12new",{"2":{"2589":1}}],["12note",{"2":{"2252":1,"2823":1}}],["12no",{"2":{"961":1}}],["12both",{"2":{"2340":1,"2410":1}}],["12impact",{"2":{"2622":1}}],["12in",{"2":{"2337":1}}],["12if",{"2":{"745":1}}],["12jsonjson",{"2":{"2095":1}}],["12when",{"2":{"2848":1}}],["12with",{"2":{"2009":1}}],["12work",{"2":{"308":1}}],["124",{"2":{"1301":1,"1386":1}}],["1247",{"2":{"887":1}}],["122",{"2":{"1293":1}}],["12ms",{"2":{"1289":1,"1291":1,"1297":1}}],["12use",{"2":{"1195":1,"2321":1}}],["12every",{"2":{"1193":1}}],["12cookiemultisessions",{"2":{"1068":1}}],["12creates",{"2":{"247":1}}],["12k",{"2":{"1037":1}}],["127",{"2":{"995":1,"1047":1,"1257":1,"1380":1,"1386":1,"1433":2,"1711":1,"2011":1,"2162":1,"2354":1}}],["12500",{"2":{"566":1}}],["12this",{"2":{"2056":1,"2755":1,"2797":1}}],["12that",{"2":{"1369":1}}],["12these",{"2":{"2359":1}}],["12the",{"2":{"133":1,"187":1,"383":2,"560":1,"570":1,"982":1,"1139":1,"1192":1,"1570":1,"1573":1,"2095":1,"2294":1,"2305":1,"2348":2,"2394":1,"2395":1,"2847":1,"2849":1}}],["12texttext──",{"2":{"1044":1}}],["12typescripttypescript",{"2":{"1571":1}}],["12type",{"2":{"516":1}}],["12self",{"2":{"1929":1}}],["12sql",{"2":{"1408":1}}],["12sqlpage",{"2":{"834":1}}],["12sqlsql",{"2":{"417":1,"441":1,"442":1,"443":1,"444":1,"445":1}}],["12space",{"2":{"113":1,"637":1}}],["128",{"2":{"309":1,"363":1,"1049":1,"1255":1,"1257":1,"1287":1,"1288":1,"1289":1,"1290":2,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1656":4,"1714":1,"1792":2,"2621":1}}],["1200+",{"2":{"1402":2}}],["120",{"2":{"275":2}}],["12also",{"2":{"2824":1}}],["12an",{"2":{"927":1}}],["12a",{"2":{"214":1,"2502":1}}],["12",{"0":{"1397":1,"2228":1,"2260":1,"2262":1,"2268":1,"2275":1,"2315":1,"2547":1,"2552":1,"2556":1,"2560":1},"1":{"1398":1,"1399":1,"2261":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2269":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1,"2276":1,"2277":1,"2278":1,"2279":1,"2316":1,"2317":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1,"2368":1,"2369":1,"2370":1,"2371":1,"2372":1,"2548":1,"2549":1,"2550":1,"2551":1,"2553":1,"2554":1,"2555":1,"2557":1,"2558":1,"2559":1,"2561":1,"2562":1},"2":{"30":1,"45":1,"56":1,"79":1,"145":1,"166":1,"179":1,"186":1,"193":1,"268":1,"274":1,"308":3,"358":1,"372":2,"459":1,"474":1,"491":1,"498":1,"544":1,"559":1,"581":1,"618":1,"628":1,"637":1,"795":1,"809":1,"823":1,"824":1,"868":1,"914":2,"915":1,"916":3,"917":2,"918":1,"956":2,"967":1,"975":1,"995":1,"1037":1,"1067":1,"1073":2,"1077":1,"1078":1,"1082":2,"1086":1,"1090":1,"1152":2,"1257":1,"1269":3,"1285":1,"1289":3,"1293":2,"1301":1,"1346":1,"1368":2,"1374":2,"1375":4,"1379":1,"1380":1,"1384":2,"1385":1,"1397":1,"1398":1,"1405":1,"1442":1,"1447":1,"1464":2,"1605":1,"1609":1,"1617":1,"1622":1,"1623":1,"1708":1,"1712":1,"1792":3,"2013":1,"2144":1,"2162":1,"2164":1,"2165":2,"2177":3,"2215":1,"2228":1,"2238":4,"2239":4,"2252":1,"2293":1,"2306":1,"2319":1,"2328":1,"2376":2,"2377":1,"2378":1,"2379":1,"2386":2,"2407":1,"2452":1,"2483":1,"2497":1,"2633":1,"2659":1,"2669":1,"2674":1,"2758":1,"2785":3,"2792":1,"2804":1,"2823":1,"2824":13,"2825":11,"2840":1,"2845":1,"2846":2,"2859":1}}],["12values",{"2":{"14":1}}],["123get",{"2":{"2731":1,"2842":1}}],["123output",{"2":{"2678":1}}],["123example",{"2":{"2587":1,"2659":1}}],["123now",{"2":{"2321":1}}],["123to",{"2":{"2118":1,"2703":1}}],["123that",{"2":{"835":1}}],["123this",{"2":{"463":1,"919":1,"1386":1,"2201":1,"2350":1}}],["123the",{"2":{"75":1,"104":1,"320":1,"1148":1,"2110":1,"2217":1,"2218":1,"2392":1,"2695":1,"2832":1}}],["123for",{"2":{"2039":1,"2255":1}}],["123post",{"2":{"1730":1}}],["123production",{"2":{"1417":1}}],["123useful",{"2":{"1572":1}}],["123unauthenticated",{"2":{"16":1}}],["123matches",{"2":{"1526":1}}],["123key",{"2":{"1518":1,"2265":1}}],["123both",{"2":{"1414":1}}],["123behavior",{"2":{"106":1}}],["123drop",{"2":{"1368":1}}],["123debugging",{"2":{"2530":1}}],["123decrypt",{"2":{"186":1,"2293":1}}],["123deprecated",{"2":{"174":1}}],["123coverage",{"2":{"2107":1}}],["123configurable",{"2":{"1111":1}}],["123creates",{"2":{"401":1,"402":1}}],["123any",{"2":{"2864":1}}],["123alternatively",{"2":{"2824":1}}],["123all",{"2":{"674":1}}],["123available",{"2":{"2704":1}}],["123after",{"2":{"2366":1}}],["123a",{"2":{"1743":1}}],["123access",{"2":{"22":1}}],["123level",{"2":{"651":1}}],["123remember",{"2":{"2717":1}}],["123returns",{"2":{"585":1,"2337":1}}],["123response",{"2":{"487":1}}],["123headers",{"2":{"502":1}}],["123without",{"2":{"2252":1}}],["123with",{"2":{"476":1,"477":1,"1968":1,"2011":1}}],["123when",{"2":{"438":1,"1524":1,"2354":1}}],["123if",{"2":{"462":1,"553":1,"554":1,"555":1,"660":1,"661":1,"662":1}}],["123server",{"2":{"2155":1}}],["123self",{"2":{"445":1}}],["123sql",{"2":{"1414":1}}],["123sqlsql",{"2":{"418":1,"419":1,"420":1,"421":1}}],["123same",{"2":{"1161":1}}],["123sources",{"2":{"1069":1}}],["123summing",{"2":{"885":1}}],["123supported",{"2":{"582":1}}],["123specify",{"2":{"169":1}}],["1234npgsqlrest",{"2":{"2821":1}}],["1234now",{"2":{"1430":1}}],["1234inline",{"2":{"2340":1}}],["1234if",{"2":{"662":1,"686":1,"1531":1}}],["1234default",{"2":{"2322":1}}],["1234generated",{"2":{"1574":1}}],["1234two",{"2":{"1408":1}}],["1234that",{"2":{"949":1,"1405":1}}],["1234this",{"2":{"464":1,"918":1,"1138":1,"2194":1}}],["1234then",{"2":{"1047":1}}],["1234the",{"2":{"325":1,"527":1,"965":1,"1176":1,"1371":1,"1433":1,"2216":1,"2831":1,"2854":1}}],["1234set",{"2":{"1577":1}}],["1234specify",{"2":{"1531":1}}],["1234sqlsqlbegin",{"2":{"2869":1}}],["1234sqlsql",{"2":{"1154":1}}],["1234supported",{"2":{"1143":1}}],["1234signs",{"2":{"288":1}}],["1234profile",{"2":{"2380":1}}],["1234produces",{"2":{"563":1}}],["1234postgrest",{"2":{"1087":1,"1114":1}}],["1234when",{"2":{"1017":1,"1141":1}}],["1234with",{"2":{"478":1,"479":1}}],["1234csharpcsharppublic",{"2":{"2255":1}}],["1234configuration",{"2":{"1974":1,"2607":1,"2651":1,"2652":1}}],["1234clients",{"2":{"644":1}}],["1234custom",{"2":{"175":1}}],["1234endpoint",{"2":{"2537":1}}],["1234exporttypes",{"2":{"1571":1}}],["1234events",{"2":{"643":1}}],["1234equivalent",{"2":{"641":1}}],["1234only",{"2":{"642":1}}],["1234result",{"2":{"2343":1}}],["1234response",{"2":{"2264":1}}],["1234receives",{"2":{"631":1,"632":1,"633":1}}],["1234returns",{"2":{"585":1}}],["1234here",{"2":{"390":1}}],["1234add",{"2":{"2750":1,"2798":1}}],["1234and",{"2":{"917":1}}],["1234a",{"2":{"302":1}}],["1234all",{"2":{"262":1,"645":1,"2323":1}}],["1234method",{"2":{"243":1}}],["12345by",{"2":{"2823":1}}],["12345both",{"2":{"1135":1,"2596":1}}],["12345previous",{"2":{"2589":1}}],["12345default",{"2":{"2426":1}}],["12345different",{"2":{"1142":1}}],["12345unlike",{"2":{"2302":1}}],["12345uses",{"2":{"1653":1,"1778":1}}],["12345use",{"2":{"168":1,"1642":1,"1643":1}}],["12345old",{"2":{"2255":1}}],["12345or",{"2":{"2010":1}}],["12345reference",{"2":{"2021":1}}],["12345result",{"2":{"2320":1}}],["12345results",{"2":{"1149":1}}],["12345response",{"2":{"539":1}}],["12345null",{"2":{"2010":1}}],["12345npgsql",{"2":{"1173":1}}],["12345jsonjson",{"2":{"2010":1}}],["12345filter",{"2":{"1839":1}}],["12345to",{"2":{"2786":1}}],["12345target",{"2":{"2266":1}}],["12345tip",{"2":{"1769":1}}],["12345that",{"2":{"1074":1}}],["12345this",{"2":{"905":1,"914":1,"1386":1,"1607":1,"1615":1,"2076":1,"2656":1,"2687":1,"2791":1,"2840":1}}],["12345then",{"2":{"2868":1}}],["12345the",{"2":{"105":1,"180":1,"251":1,"353":1,"414":1,"819":1,"902":1,"1032":1,"2272":1,"2359":1,"2789":1,"2790":1}}],["12345keys",{"2":{"1660":1}}],["12345every",{"2":{"2802":1}}],["12345exclude",{"2":{"1839":1}}],["12345example",{"2":{"1609":1}}],["12345equivalent",{"2":{"1387":1}}],["12345if",{"2":{"1532":1,"1658":1}}],["12345insert",{"2":{"1051":1}}],["123455",{"2":{"1193":1}}],["12345common",{"2":{"1138":1}}],["12345clients",{"2":{"666":1}}],["12345see",{"2":{"2718":1}}],["12345set",{"2":{"1241":1}}],["12345supported",{"2":{"2264":1}}],["12345supabase",{"2":{"1119":1}}],["12345structuredcontent",{"2":{"1824":1}}],["12345sql",{"2":{"1398":2}}],["12345sqlsqlcomment",{"2":{"1532":1}}],["12345sqlsql",{"2":{"711":1,"2861":1}}],["123452",{"2":{"1105":1}}],["12345you",{"2":{"915":1}}],["12345after",{"2":{"2611":1}}],["12345accepted",{"2":{"2394":1}}],["12345a",{"2":{"2328":1}}],["12345and",{"2":{"1386":1}}],["12345as",{"2":{"914":1}}],["12345available",{"2":{"470":1,"556":1}}],["12345when",{"2":{"2655":1,"2689":1}}],["12345where",{"2":{"1574":1}}],["12345warning",{"2":{"1706":1}}],["12345want",{"2":{"834":1}}],["12345without",{"2":{"584":1}}],["12345with",{"2":{"323":1,"900":1}}],["12345wrap",{"2":{"308":1}}],["12345here",{"2":{"168":1}}],["12345get",{"2":{"167":1,"612":1,"613":1,"2322":1,"2845":1}}],["123456failures",{"2":{"2535":1}}],["123456forwarded",{"2":{"1707":1}}],["123456for",{"2":{"121":1}}],["123456it",{"2":{"2461":1}}],["123456if",{"2":{"1517":1,"1706":1,"1709":1,"1770":1}}],["123456parallel",{"2":{"2346":1}}],["123456parsequery",{"2":{"1575":1}}],["123456previously",{"2":{"2271":1}}],["123456returns",{"2":{"2054":1,"2055":1}}],["123456result",{"2":{"623":1}}],["123456response",{"2":{"562":1}}],["123456teardown",{"2":{"2112":1}}],["123456tip",{"2":{"2020":1}}],["123456this",{"2":{"767":1,"1708":1,"2021":1,"2062":1,"2265":1,"2774":1,"2860":1}}],["123456there",{"2":{"2726":1}}],["123456these",{"2":{"2079":1,"2653":1}}],["123456then",{"2":{"1141":1}}],["123456the",{"2":{"215":1,"419":1,"622":1,"775":1,"915":1,"1042":1,"1078":1,"1102":1,"1456":1,"1608":1,"1769":1,"2017":1,"2060":1,"2733":1}}],["123456note",{"2":{"1833":1}}],["123456now",{"2":{"1398":1}}],["123456databasepollinginterval",{"2":{"2542":1}}],["123456danger",{"2":{"1716":1}}],["123456deferred",{"2":{"1079":1}}],["123456stores",{"2":{"1654":1}}],["123456self",{"2":{"421":1}}],["123456errors",{"2":{"1568":1}}],["123456example",{"2":{"1518":1}}],["123456every",{"2":{"1203":1}}],["123456and",{"2":{"2185":1}}],["123456any",{"2":{"2058":1}}],["123456all",{"2":{"1781":1}}],["123456azure",{"2":{"1713":1}}],["123456a",{"2":{"1398":1,"1738":1}}],["123456usage",{"2":{"1148":1}}],["123456how",{"2":{"1067":1}}],["123456with",{"2":{"1017":1,"1166":1}}],["123456when",{"2":{"48":1,"1202":1}}],["123456calling",{"2":{"964":1}}],["123456getting",{"2":{"2855":1}}],["123456get",{"2":{"376":1}}],["123456because",{"2":{"324":1}}],["123456",{"2":{"129":1,"136":1,"333":1,"354":1,"378":1,"418":1,"420":1,"466":1,"678":1,"722":1,"750":1,"787":1,"789":1,"811":1,"898":1,"1030":1,"1452":1,"1492":1,"1630":1,"1677":1,"1711":1,"1803":1,"1839":1,"1842":1,"2018":1,"2019":1,"2066":1,"2116":1,"2154":1,"2266":1,"2628":1,"2653":1,"2664":1,"2687":1,"2809":1,"2861":1,"2876":1}}],["1234567get",{"2":{"2846":1}}],["1234567connecting",{"2":{"2830":1}}],["1234567cache",{"2":{"2265":1}}],["1234567caveat",{"2":{"1326":1}}],["1234567note",{"2":{"2786":1}}],["1234567npgsqlrest",{"2":{"2768":1}}],["1234567environment",{"2":{"2697":1}}],["1234567excel",{"2":{"893":1}}],["1234567previous",{"2":{"2588":1}}],["1234567per",{"2":{"964":1}}],["1234567behaviour",{"2":{"2476":1}}],["1234567before",{"2":{"2342":1}}],["1234567best",{"2":{"1145":1,"1146":1}}],["1234567void",{"2":{"2273":1}}],["1234567via",{"2":{"2208":1}}],["1234567when",{"2":{"2272":1}}],["1234567without",{"2":{"372":1}}],["1234567only",{"2":{"2059":1}}],["1234567or",{"2":{"1176":1}}],["1234567for",{"2":{"1973":1}}],["1234567aws",{"2":{"1712":1}}],["1234567any",{"2":{"1052":1}}],["1234567default",{"2":{"1974":1,"2607":1}}],["1234567development",{"2":{"1534":1}}],["1234567direct",{"2":{"1930":1}}],["1234567danger",{"2":{"1641":1}}],["1234567if",{"2":{"903":1}}],["1234567result",{"2":{"621":1,"2339":1}}],["1234567request",{"2":{"520":1}}],["1234567so",{"2":{"2760":1}}],["1234567single",{"2":{"2011":1}}],["1234567similar",{"2":{"1118":1}}],["1234567stores",{"2":{"1655":1}}],["1234567small",{"2":{"1073":1}}],["1234567schema",{"2":{"1005":1}}],["1234567send",{"2":{"2836":1}}],["1234567setting",{"2":{"2377":1}}],["1234567set",{"2":{"1890":1}}],["1234567selective",{"2":{"710":1}}],["1234567see",{"2":{"121":1,"1514":1,"2737":1}}],["1234567sqlsqlcomment",{"2":{"390":1}}],["1234567sqlsql",{"2":{"354":1,"960":1,"1135":1}}],["1234567token",{"2":{"2554":1}}],["1234567trust",{"2":{"1715":1}}],["1234567there",{"2":{"650":1}}],["1234567the",{"2":{"531":1,"586":1,"1513":1,"1608":1,"1664":1,"2803":1}}],["1234567this",{"2":{"429":1,"966":1,"1343":1,"1968":1,"2313":1}}],["1234567tag",{"2":{"348":1}}],["1234567test",{"2":{"61":1,"695":1}}],["1234567",{"2":{"71":1,"271":1,"360":1,"375":1,"382":1,"503":1,"663":1,"689":1,"758":1,"760":1,"770":1,"917":1,"1022":1,"1147":1,"1196":1,"1364":1,"1455":1,"1494":1,"1534":1,"1541":1,"1545":1,"1614":1,"1678":1,"1735":1,"1779":1,"1805":1,"1867":1,"1927":1,"1970":1,"1971":1,"1979":1,"1981":1,"2162":1,"2214":1,"2310":1,"2334":1,"2549":1,"2587":1,"2761":1}}],["12345678behind",{"2":{"2835":1}}],["12345678both",{"2":{"310":1}}],["12345678sqlsql",{"2":{"2809":1}}],["12345678see",{"2":{"2774":1}}],["12345678host",{"2":{"2808":1}}],["12345678hybridcache",{"2":{"1515":1}}],["12345678opentelemetry",{"2":{"2804":1}}],["12345678options",{"2":{"2565":1}}],["12345678or",{"2":{"2297":1}}],["12345678get",{"2":{"2319":1}}],["12345678filepattern",{"2":{"2841":1}}],["12345678function",{"2":{"2824":1}}],["12345678flow",{"2":{"2187":1}}],["12345678for",{"2":{"35":1,"1217":1,"2792":1}}],["12345678individual",{"2":{"2008":1}}],["12345678if",{"2":{"997":1}}],["12345678warning",{"2":{"2089":1}}],["12345678with",{"2":{"2006":1}}],["12345678when",{"2":{"380":1,"1516":1,"1759":1,"1912":1,"2333":1}}],["12345678default",{"2":{"1973":1}}],["12345678note",{"2":{"2822":1}}],["12345678now",{"2":{"1413":1}}],["12345678nginx",{"2":{"1711":1}}],["12345678this",{"2":{"1168":1,"1171":1,"1579":1,"2833":1}}],["12345678three",{"2":{"1150":1}}],["12345678then",{"2":{"2821":1}}],["12345678the",{"2":{"184":1,"1068":1,"1859":1}}],["12345678transform",{"2":{"888":1}}],["12345678two",{"2":{"864":1}}],["12345678eight",{"2":{"1368":1}}],["12345678even",{"2":{"715":1}}],["12345678events",{"2":{"641":1}}],["12345678equivalent",{"2":{"247":1}}],["12345678result",{"2":{"614":1}}],["12345678response",{"2":{"566":1}}],["12345678post",{"2":{"565":1,"2320":1}}],["12345678an",{"2":{"2003":1}}],["12345678and",{"2":{"1398":1,"1399":1}}],["12345678as",{"2":{"1386":1}}],["12345678a",{"2":{"386":1,"836":1}}],["12345678common",{"2":{"1731":1}}],["12345678change",{"2":{"309":1}}],["12345678call",{"2":{"254":1,"255":1,"256":1,"257":1}}],["12345678creates",{"2":{"248":1,"249":1,"250":1}}],["12345678",{"2":{"37":1,"211":1,"436":1,"510":1,"710":1,"719":1,"723":1,"785":1,"957":1,"1316":1,"1418":1,"1450":1,"1462":1,"1603":1,"1663":1,"1725":1,"1758":1,"1776":1,"1892":1,"2012":1,"2027":1,"2069":1,"2085":1,"2173":1,"2174":1,"2297":1,"2415":1,"2684":1,"2691":1,"2782":1,"2783":1,"2784":1}}],["123456789verbose",{"2":{"2800":1}}],["123456789configuration",{"2":{"2265":1}}],["123456789jsonjson",{"2":{"2256":1}}],["123456789multiple",{"2":{"2202":1}}],["123456789an",{"2":{"2531":1}}],["123456789a",{"2":{"2111":1}}],["123456789guarantees",{"2":{"2040":1}}],["123456789get",{"2":{"611":1}}],["123456789high",{"2":{"1944":1}}],["123456789uses",{"2":{"1662":1,"1780":1}}],["123456789using",{"2":{"961":1}}],["123456789example",{"2":{"2565":1}}],["123456789encrypts",{"2":{"1661":1}}],["123456789equivalent",{"2":{"438":1,"1920":1}}],["123456789two",{"2":{"1431":1}}],["123456789that",{"2":{"1073":1}}],["123456789the",{"2":{"415":1,"700":1,"860":1,"1056":1,"1152":1,"1154":1,"1567":1}}],["123456789you",{"2":{"1386":1}}],["123456789browser",{"2":{"2836":1}}],["123456789breaking",{"2":{"1157":1,"1948":1}}],["123456789both",{"2":{"724":1}}],["123456789npgsqlrest",{"2":{"1086":1}}],["123456789now",{"2":{"305":1}}],["123456789key",{"2":{"893":1}}],["123456789syntax",{"2":{"2529":1}}],["123456789status",{"2":{"1360":1}}],["123456789sql",{"2":{"1371":1}}],["123456789sqlpage",{"2":{"833":1}}],["123456789sqlsql",{"2":{"665":1,"1179":1,"1458":1,"1664":1}}],["123456789see",{"2":{"430":1,"455":1,"577":1}}],["123456789warning",{"2":{"1640":1}}],["123456789with",{"2":{"436":1,"1054":1,"2181":1}}],["123456789when",{"2":{"157":1}}],["123456789response",{"2":{"128":1}}],["12345678910key",{"2":{"2828":1}}],["12345678910features",{"2":{"2580":1}}],["12345678910apply",{"2":{"2471":1}}],["12345678910admin",{"2":{"2187":1}}],["12345678910note",{"2":{"2207":1}}],["12345678910random",{"2":{"2098":1}}],["12345678910request",{"2":{"521":1,"523":1}}],["12345678910response",{"2":{"335":1,"488":1}}],["12345678910useful",{"2":{"2063":1}}],["12345678910users",{"2":{"21":1}}],["12345678910set",{"2":{"1959":1}}],["12345678910serve",{"2":{"1758":1}}],["12345678910tip",{"2":{"1543":1}}],["12345678910this",{"2":{"1187":1,"1672":1,"1771":1,"2580":1}}],["12345678910that",{"2":{"958":1}}],["12345678910then",{"2":{"1192":1}}],["12345678910the",{"2":{"186":1,"322":1,"1139":1,"1197":1,"1337":1,"2175":1,"2293":1,"2540":1}}],["12345678910hybrid",{"2":{"1147":1}}],["12345678910or",{"2":{"1138":1,"1141":1,"1142":1}}],["12345678910only",{"2":{"18":1,"19":1,"20":1}}],["12345678910configuration",{"2":{"2265":1}}],["12345678910clients",{"2":{"542":1}}],["12345678910calling",{"2":{"2304":1}}],["12345678910call",{"2":{"405":1,"406":1}}],["12345678910without",{"2":{"2339":1}}],["12345678910with",{"2":{"423":1,"1045":1}}],["12345678910when",{"2":{"336":1,"1569":1}}],["12345678910placeholders",{"2":{"212":1}}],["12345678910default",{"2":{"140":1}}],["12345678910different",{"2":{"116":1}}],["1234567891011levels",{"2":{"2804":1}}],["1234567891011channel",{"2":{"2795":1}}],["1234567891011or",{"2":{"2874":1}}],["1234567891011output",{"2":{"2607":1}}],["1234567891011only",{"2":{"1161":1}}],["1234567891011on",{"2":{"453":1}}],["1234567891011produced",{"2":{"2410":1}}],["1234567891011protect",{"2":{"1149":1}}],["1234567891011move",{"2":{"2378":1}}],["1234567891011skiptypes",{"2":{"1580":1}}],["1234567891011signs",{"2":{"289":1,"290":1}}],["1234567891011single",{"2":{"277":1,"2212":1}}],["1234567891011available",{"2":{"1174":1}}],["1234567891011100",{"2":{"1158":1}}],["123456789101112finally",{"2":{"2824":1}}],["123456789101112for",{"2":{"1063":1}}],["123456789101112jsonjson",{"2":{"2803":1}}],["123456789101112jsoncjsonc",{"2":{"2532":1}}],["123456789101112endpoints",{"2":{"2381":1}}],["123456789101112equivalent",{"2":{"48":1,"157":1,"184":1,"288":1,"1567":1,"1664":1}}],["123456789101112cache",{"2":{"2274":1}}],["123456789101112codepost",{"2":{"187":1,"2294":1}}],["123456789101112production",{"2":{"1663":1}}],["123456789101112per",{"2":{"1111":1,"1852":1,"2383":1}}],["123456789101112sqlsql",{"2":{"2813":1}}],["123456789101112sqlsqlcreate",{"2":{"2183":1}}],["123456789101112seed",{"2":{"1442":1}}],["123456789101112single",{"2":{"1117":1}}],["123456789101112output",{"2":{"1974":1}}],["123456789101112on",{"2":{"1408":1}}],["123456789101112or",{"2":{"1398":1}}],["123456789101112all",{"2":{"1398":1}}],["123456789101112any",{"2":{"1068":1}}],["123456789101112because",{"2":{"2836":1}}],["123456789101112but",{"2":{"1390":1}}],["123456789101112browser",{"2":{"492":1}}],["123456789101112when",{"2":{"1331":1,"1515":1,"2264":1}}],["123456789101112without",{"2":{"374":1,"2338":1}}],["123456789101112this",{"2":{"1020":1}}],["123456789101112the",{"2":{"213":1,"351":1,"938":1,"1413":1,"1420":1,"1690":1,"1740":1,"1951":1,"2206":1,"2288":1,"2292":1,"2391":1}}],["123456789101112returns",{"2":{"1370":1,"2850":1}}],["123456789101112response",{"2":{"334":1,"491":1,"540":1,"541":1}}],["123456789101112rows",{"2":{"949":1}}],["123456789101112now",{"2":{"982":1}}],["123456789101112no",{"2":{"888":1,"1419":1}}],["123456789101112note",{"2":{"545":1}}],["123456789101112",{"2":{"279":1,"365":1,"592":1,"772":1,"1340":1,"1463":1,"1909":1,"1966":1,"2035":1,"2077":1,"2111":1,"2126":1,"2138":1,"2147":1,"2186":1,"2196":1,"2330":1,"2807":1}}],["12345678910111213point",{"2":{"2875":1}}],["12345678910111213an",{"2":{"2869":1}}],["12345678910111213long",{"2":{"2812":1}}],["12345678910111213one",{"2":{"2767":1}}],["12345678910111213response",{"2":{"2549":1}}],["12345678910111213request",{"2":{"544":1}}],["12345678910111213htmlhtml",{"2":{"2476":1}}],["12345678910111213when",{"2":{"1733":1}}],["12345678910111213development",{"2":{"1646":1}}],["12345678910111213for",{"2":{"1217":1}}],["12345678910111213example",{"2":{"2266":1}}],["12345678910111213each",{"2":{"1193":1}}],["12345678910111213equivalent",{"2":{"415":1}}],["12345678910111213this",{"2":{"1391":1,"2869":1}}],["12345678910111213the",{"2":{"998":1,"2303":1}}],["12345678910111213that",{"2":{"916":1}}],["12345678910111213supported",{"2":{"2611":1}}],["12345678910111213sqlsqlcreate",{"2":{"2184":1}}],["12345678910111213sqlsql",{"2":{"1179":1}}],["12345678910111213see",{"2":{"1058":1}}],["12345678910111213sequences",{"2":{"695":1}}],["12345678910111213store",{"2":{"308":1}}],["12345678910111213both",{"2":{"366":1}}],["12345678910111213",{"2":{"60":1,"476":1,"477":1,"490":1,"543":1,"1503":1,"1505":1,"1952":1,"1953":1,"1986":1,"2015":1,"2029":1,"2079":1,"2335":1,"2432":1}}],["1234567891011121314deferrable",{"2":{"2868":1}}],["1234567891011121314upload",{"2":{"2549":1}}],["1234567891011121314using",{"2":{"2264":1}}],["1234567891011121314failed",{"2":{"2441":1}}],["1234567891011121314for",{"2":{"1482":1,"2429":1}}],["1234567891011121314values",{"2":{"2040":1}}],["1234567891011121314validation",{"2":{"1449":1}}],["1234567891011121314generate",{"2":{"1758":1}}],["1234567891011121314set",{"2":{"1570":1}}],["1234567891011121314sqlsqlcomment",{"2":{"107":1}}],["1234567891011121314breaking",{"2":{"1464":1}}],["1234567891011121314you",{"2":{"1410":1}}],["1234567891011121314what",{"2":{"1386":1}}],["1234567891011121314when",{"2":{"1305":1}}],["1234567891011121314with",{"2":{"1348":1}}],["1234567891011121314all",{"2":{"1105":1}}],["1234567891011121314and",{"2":{"835":1}}],["1234567891011121314if",{"2":{"986":1}}],["1234567891011121314that",{"2":{"1059":1}}],["1234567891011121314the",{"2":{"914":1,"926":1,"1033":1,"2873":1}}],["1234567891011121314test",{"2":{"40":1,"705":1}}],["1234567891011121314npgsqlrest",{"2":{"881":1,"1192":1}}],["1234567891011121314response",{"2":{"489":1}}],["1234567891011121314",{"2":{"278":1,"426":1,"478":1,"894":1,"1179":1,"1245":1,"1375":1,"1446":1,"1498":1,"1599":1,"1629":1,"1689":1,"1807":1,"1987":1,"1999":1,"2183":1,"2199":1}}],["1234567891011121314equivalent",{"2":{"128":1}}],["123456789101112131415direct",{"2":{"2344":1}}],["123456789101112131415if",{"2":{"1742":1,"2290":1}}],["123456789101112131415we",{"2":{"1386":1}}],["123456789101112131415a",{"2":{"2764":1}}],["123456789101112131415all",{"2":{"2332":1}}],["123456789101112131415annotations",{"2":{"1362":1}}],["123456789101112131415as",{"2":{"916":1}}],["123456789101112131415see",{"2":{"1361":1}}],["123456789101112131415sqlsqlcomment",{"2":{"106":1}}],["123456789101112131415everything",{"2":{"1113":1}}],["123456789101112131415cache",{"2":{"2205":1}}],["123456789101112131415calling",{"2":{"916":1}}],["123456789101112131415custom",{"2":{"2193":1}}],["123456789101112131415configuration",{"2":{"1058":1}}],["123456789101112131415open",{"2":{"970":1}}],["123456789101112131415this",{"2":{"2591":1}}],["123456789101112131415that",{"2":{"886":1}}],["123456789101112131415then",{"2":{"1196":1}}],["123456789101112131415the",{"2":{"50":1,"812":1,"935":1,"1044":1,"1308":1}}],["123456789101112131415for",{"2":{"659":1}}],["123456789101112131415result",{"2":{"622":1}}],["123456789101112131415request",{"2":{"493":1}}],["123456789101112131415both",{"2":{"306":1,"814":1}}],["123456789101112131415behavior",{"2":{"214":1}}],["123456789101112131415",{"2":{"263":1,"1752":1,"1931":1,"1988":1,"1989":1,"2061":1,"2127":1,"2128":1,"2255":1,"2686":1}}],["12345678910111213141516login",{"2":{"2554":1}}],["12345678910111213141516configuration",{"2":{"2265":1}}],["12345678910111213141516http",{"2":{"2264":1}}],["12345678910111213141516my",{"2":{"2187":1}}],["12345678910111213141516for",{"2":{"1984":1}}],["12345678910111213141516separate",{"2":{"1571":1}}],["12345678910111213141516sql",{"2":{"1371":1}}],["12345678910111213141516sqlsql",{"2":{"1179":1}}],["12345678910111213141516tip",{"2":{"1547":1}}],["12345678910111213141516the",{"2":{"1150":1,"1410":1,"1697":1}}],["12345678910111213141516there",{"2":{"297":1}}],["12345678910111213141516as",{"2":{"1394":1}}],["12345678910111213141516and",{"2":{"915":1}}],["12345678910111213141516warning",{"2":{"1502":1}}],["12345678910111213141516what",{"2":{"2176":1}}],["12345678910111213141516when",{"2":{"1191":1}}],["12345678910111213141516why",{"2":{"1185":1}}],["12345678910111213141516we",{"2":{"915":1}}],["12345678910111213141516without",{"2":{"2337":1}}],["12345678910111213141516with",{"2":{"454":1}}],["12345678910111213141516if",{"2":{"658":1}}],["1234567891011121314151617default",{"2":{"2587":1}}],["1234567891011121314151617codenpgsqlrest",{"2":{"2526":1}}],["1234567891011121314151617configuration",{"2":{"2346":1}}],["1234567891011121314151617if",{"2":{"1409":1}}],["1234567891011121314151617inline",{"2":{"378":1}}],["1234567891011121314151617as",{"2":{"1395":1}}],["1234567891011121314151617here",{"2":{"1387":1}}],["1234567891011121314151617route",{"2":{"1176":1}}],["1234567891011121314151617key",{"2":{"1105":1}}],["1234567891011121314151617the",{"2":{"1193":1,"2171":1,"2872":1}}],["1234567891011121314151617these",{"2":{"1056":1}}],["1234567891011121314151617then",{"2":{"817":1}}],["1234567891011121314151617notice",{"2":{"961":1}}],["1234567891011121314151617where",{"2":{"584":1}}],["1234567891011121314151617when",{"2":{"361":1,"904":1,"2549":1}}],["1234567891011121314151617",{"2":{"428":1,"449":1,"813":1,"992":1,"1023":1,"1029":1,"1240":1,"1336":1,"1529":1,"1650":1,"1900":1,"1992":1,"2130":1,"2427":1}}],["123456789101112131415161718with",{"2":{"1416":1}}],["123456789101112131415161718we",{"2":{"849":1}}],["123456789101112131415161718note",{"2":{"1153":1,"1582":1}}],["123456789101112131415161718supabase",{"2":{"1088":1}}],["123456789101112131415161718sqlsqlcomment",{"2":{"1069":1}}],["123456789101112131415161718the",{"2":{"2283":1}}],["123456789101112131415161718this",{"2":{"723":1}}],["123456789101112131415161718test",{"2":{"62":1}}],["123456789101112131415161718",{"2":{"292":1,"312":1,"751":1,"887":1,"1310":1,"1333":1,"1510":1,"1587":1,"1617":1,"1889":1,"2037":1,"2145":1,"2255":1,"2534":1,"2572":1,"2575":1,"2762":1}}],["12345678910111213141516171819a",{"2":{"2470":1}}],["12345678910111213141516171819and",{"2":{"917":1,"2804":1}}],["12345678910111213141516171819behavior",{"2":{"1924":1}}],["12345678910111213141516171819prod",{"2":{"1417":1}}],["12345678910111213141516171819your",{"2":{"1184":1}}],["12345678910111213141516171819so",{"2":{"916":1}}],["12345678910111213141516171819when",{"2":{"916":1}}],["12345678910111213141516171819if",{"2":{"777":1}}],["1234567891011121314151617181920migrations",{"2":{"2873":1}}],["1234567891011121314151617181920load",{"2":{"2836":1}}],["1234567891011121314151617181920previous",{"2":{"2586":1}}],["1234567891011121314151617181920per",{"2":{"2375":1}}],["1234567891011121314151617181920key",{"2":{"2549":1}}],["1234567891011121314151617181920and",{"2":{"1391":1}}],["1234567891011121314151617181920assign",{"2":{"1154":1}}],["12345678910111213141516171819203",{"2":{"1105":1}}],["1234567891011121314151617181920the",{"2":{"903":1,"1188":1,"1218":1,"2193":1,"2434":1}}],["1234567891011121314151617181920then",{"2":{"577":1}}],["1234567891011121314151617181920each",{"2":{"479":1}}],["123456789101112131415161718192021now",{"2":{"2825":1}}],["123456789101112131415161718192021notes",{"2":{"1067":1}}],["123456789101112131415161718192021example",{"2":{"2575":1}}],["123456789101112131415161718192021a",{"2":{"1958":1}}],["123456789101112131415161718192021development",{"2":{"1863":1}}],["123456789101112131415161718192021response",{"2":{"1386":1}}],["12345678910111213141516171819202122codenpgsqlrest",{"2":{"2860":1}}],["12345678910111213141516171819202122calling",{"2":{"914":1}}],["12345678910111213141516171819202122here",{"2":{"2810":1}}],["12345678910111213141516171819202122test",{"2":{"1061":1}}],["12345678910111213141516171819202122the",{"2":{"884":1,"922":1,"1355":1,"1911":1}}],["12345678910111213141516171819202122without",{"2":{"1054":1}}],["12345678910111213141516171819202122when",{"2":{"679":1}}],["12345678910111213141516171819202122you",{"2":{"904":1}}],["12345678910111213141516171819202122equivalent",{"2":{"797":1}}],["12345678910111213141516171819202122",{"2":{"773":1,"883":1,"889":1,"991":1,"1236":1,"1539":1,"1810":1,"1814":1,"1897":1,"2255":1,"2256":1}}],["1234567891011121314151617181920212223features",{"2":{"2590":1}}],["1234567891011121314151617181920212223notes",{"2":{"2581":1}}],["1234567891011121314151617181920212223login",{"2":{"2187":1}}],["1234567891011121314151617181920212223tip",{"2":{"1714":1}}],["1234567891011121314151617181920212223the",{"2":{"646":1}}],["1234567891011121314151617181920212223sqlsql",{"2":{"1056":1}}],["1234567891011121314151617181920212223in",{"2":{"439":1}}],["1234567891011121314151617181920212223",{"2":{"313":1,"1373":1,"1921":1,"2033":1}}],["123456789101112131415161718192021222324value",{"2":{"2333":1}}],["123456789101112131415161718192021222324first",{"2":{"1395":1}}],["123456789101112131415161718192021222324frontend",{"2":{"1342":1}}],["123456789101112131415161718192021222324key",{"2":{"1358":1}}],["123456789101112131415161718192021222324red",{"2":{"994":1}}],["123456789101112131415161718192021222324the",{"2":{"936":1,"1429":1}}],["123456789101112131415161718192021222324",{"2":{"310":1,"756":1,"1655":1,"1669":1,"1698":1,"2144":1}}],["12345678910111213141516171819202122232425sqlsql",{"2":{"2834":1}}],["12345678910111213141516171819202122232425see",{"2":{"1356":1}}],["12345678910111213141516171819202122232425in",{"2":{"1396":1}}],["12345678910111213141516171819202122232425",{"2":{"1317":1,"1936":1}}],["12345678910111213141516171819202122232425open",{"2":{"1076":1}}],["12345678910111213141516171819202122232425consoleconsole$",{"2":{"1074":1}}],["12345678910111213141516171819202122232425each",{"2":{"1053":1}}],["12345678910111213141516171819202122232425equivalent",{"2":{"298":1,"2176":1}}],["12345678910111213141516171819202122232425notice",{"2":{"979":1}}],["1234567891011121314151617181920212223242526sqlsqlcomment",{"2":{"2380":1}}],["1234567891011121314151617181920212223242526see",{"2":{"1197":1}}],["1234567891011121314151617181920212223242526",{"2":{"1773":1}}],["1234567891011121314151617181920212223242526development",{"2":{"1678":1}}],["1234567891011121314151617181920212223242526both",{"2":{"1193":1}}],["1234567891011121314151617181920212223242526the",{"2":{"988":1}}],["1234567891011121314151617181920212223242526response",{"2":{"333":1}}],["123456789101112131415161718192021222324252627sqlsql",{"2":{"2375":1}}],["123456789101112131415161718192021222324252627key",{"2":{"2277":1}}],["123456789101112131415161718192021222324252627what",{"2":{"1581":1}}],["123456789101112131415161718192021222324252627when",{"2":{"888":1}}],["123456789101112131415161718192021222324252627a",{"2":{"1458":1}}],["123456789101112131415161718192021222324252627as",{"2":{"917":1}}],["123456789101112131415161718192021222324252627endpoints",{"2":{"1520":1}}],["123456789101112131415161718192021222324252627edge",{"2":{"1107":1}}],["123456789101112131415161718192021222324252627equivalent",{"2":{"312":1}}],["123456789101112131415161718192021222324252627the",{"2":{"1024":1}}],["123456789101112131415161718192021222324252627in",{"2":{"956":1}}],["12345678910111213141516171819202122232425262728rule",{"2":{"2575":1}}],["12345678910111213141516171819202122232425262728partition",{"2":{"2379":1}}],["12345678910111213141516171819202122232425262728per",{"2":{"1162":1}}],["12345678910111213141516171819202122232425262728",{"2":{"1955":1,"1995":1,"2142":1,"2834":1}}],["12345678910111213141516171819202122232425262728equivalent",{"2":{"1547":1}}],["1234567891011121314151617181920212223242526272829the",{"2":{"1199":1}}],["1234567891011121314151617181920212223242526272829sqlsql",{"2":{"1150":1}}],["1234567891011121314151617181920212223242526272829",{"2":{"919":1,"1320":1,"2132":1}}],["1234567891011121314151617181920212223242526272829with",{"2":{"919":1}}],["123456789101112131415161718192021222324252627282930proxy",{"2":{"2549":1}}],["123456789101112131415161718192021222324252627282930postgresql",{"2":{"1567":1}}],["123456789101112131415161718192021222324252627282930frontend",{"2":{"1321":1}}],["123456789101112131415161718192021222324252627282930and",{"2":{"1366":1}}],["123456789101112131415161718192021222324252627282930a",{"2":{"452":1}}],["123456789101112131415161718192021222324252627282930",{"2":{"207":1,"2766":1,"2829":1}}],["12345678910111213141516171819202122232425262728293031equivalent",{"2":{"1689":1}}],["12345678910111213141516171819202122232425262728293031sqlsql",{"2":{"1529":1}}],["12345678910111213141516171819202122232425262728293031note",{"2":{"1386":1}}],["12345678910111213141516171819202122232425262728293031fastapi",{"2":{"1366":1}}],["1234567891011121314151617181920212223242526272829303132sqlsql",{"2":{"2829":1}}],["1234567891011121314151617181920212223242526272829303132a",{"2":{"2537":1}}],["1234567891011121314151617181920212223242526272829303132",{"2":{"1431":1,"1483":1}}],["1234567891011121314151617181920212223242526272829303132the",{"2":{"1357":1}}],["1234567891011121314151617181920212223242526272829303132that",{"2":{"1309":1}}],["1234567891011121314151617181920212223242526272829303132test",{"2":{"938":1}}],["123456789101112131415161718192021222324252627282930313233equivalent",{"2":{"1504":1}}],["123456789101112131415161718192021222324252627282930313233from",{"2":{"1410":1}}],["123456789101112131415161718192021222324252627282930313233spring",{"2":{"1366":1}}],["123456789101112131415161718192021222324252627282930313233this",{"2":{"980":1}}],["1234567891011121314151617181920212223242526272829303132333435sqlsql",{"2":{"2762":1}}],["123456789101112131415161718192021222324252627282930313233343536",{"2":{"1907":1}}],["1234567891011121314151617181920212223242526272829303132333435363738",{"2":{"1736":1,"2255":1,"2264":1}}],["1234567891011121314151617181920212223242526272829303132333435363738this",{"2":{"1393":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940the",{"2":{"1216":1}}],["1234567891011121314151617181920212223242526272829303132333435363738394041",{"2":{"1332":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142several",{"2":{"1372":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142",{"2":{"1234":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243see",{"2":{"1836":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243four",{"2":{"1408":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243",{"2":{"1232":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445post",{"2":{"2815":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849",{"2":{"2257":1}}],["1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950the",{"2":{"1427":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051",{"2":{"2123":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051plus",{"2":{"1320":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051the",{"2":{"1060":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152",{"2":{"2146":1}}],["1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253typed",{"2":{"1366":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354this",{"2":{"1177":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657",{"2":{"2247":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758",{"2":{"1062":1,"1960":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566added",{"2":{"2634":1}}],["1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768",{"2":{"2632":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970",{"2":{"2254":1}}],["1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071parameters",{"2":{"1376":1}}],["1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374",{"2":{"1221":1}}],["1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677what",{"2":{"1338":1}}],["1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495",{"2":{"2701":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102",{"2":{"1339":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137",{"2":{"1792":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158plus",{"2":{"1026":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121that",{"2":{"920":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104the",{"2":{"996":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778",{"2":{"1222":1,"2635":1}}],["1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677",{"2":{"990":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273",{"2":{"1220":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869key",{"2":{"995":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364that",{"2":{"1021":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960",{"2":{"913":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455this",{"2":{"1335":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455",{"2":{"930":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152the",{"2":{"1214":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152using",{"2":{"894":1}}],["12345678910111213141516171819202122232425262728293031323334353637383940414243444546",{"2":{"774":1,"1469":1}}],["123456789101112131415161718192021222324252627282930313233343536373839404142434445",{"2":{"209":1}}],["1234567891011121314151617181920212223242526272829303132333435363738394041key",{"2":{"937":1}}],["1234567891011121314151617181920212223242526272829303132333435363738394041so",{"2":{"918":1}}],["123456789101112131415161718192021222324252627282930313233343536373839npgsqlrest",{"2":{"1215":1}}],["123456789101112131415161718192021222324252627282930313233343536373839",{"2":{"764":1,"1553":1,"1893":1}}],["123456789101112131415161718192021222324252627282930313233343536373839equivalent",{"2":{"37":1}}],["12345678910111213141516171819202122232425262728293031323334353637",{"2":{"1318":1,"2633":1}}],["12345678910111213141516171819202122232425262728293031323334353637test",{"2":{"38":1}}],["12345678910111213141516171819202122232425262728293031323334the",{"2":{"1416":1}}],["12345678910111213141516171819202122232425262728293031323334key",{"2":{"1055":1}}],["12345678910111213141516171819202122232425262728293031323334",{"2":{"929":1,"1213":1}}],["123456789101112131415161718192021222324252627282930313233",{"2":{"928":1,"2093":1}}],["12345678910111213141516171819202122232425262728293031the",{"2":{"934":1}}],["12345678910111213141516171819202122232425262728293031this",{"2":{"39":1}}],["12345678910111213141516171819202122232425262728293031as",{"2":{"916":1}}],["12345678910111213141516171819202122232425262728293031",{"2":{"208":1,"977":1,"1239":1,"1800":1}}],["12345678910111213141516171819202122232425262728this",{"2":{"918":1}}],["123456789101112131415161718192021222324252627",{"2":{"664":1,"1347":1,"2148":1}}],["123456789101112131415161718192021",{"2":{"451":1,"798":1,"1345":1,"1548":1,"1916":1}}],["1234567891011121314151617181920",{"2":{"427":1,"665":1,"691":1,"765":1,"766":1,"1024":1,"1307":1,"1342":1,"1458":1,"1597":1,"1633":1,"2042":1}}],["12345678910111213141516171819default",{"2":{"332":1}}],["12345678910111213141516171819the",{"2":{"309":1,"989":1,"1057":1}}],["12345678910111213141516171819",{"2":{"264":1,"736":1,"799":1,"1235":1}}],["123456789101112131415161718equivalent",{"2":{"206":1,"733":1,"2147":1}}],["12345678910111213141516",{"2":{"298":1,"370":1,"755":1,"815":1,"924":1,"1163":1,"1374":1,"1453":1,"1504":1,"1598":1,"1673":1,"1721":1,"1926":1,"1990":1,"2046":1,"2073":1,"2080":1,"2184":1}}],["12345678910111213141516equivalent",{"2":{"61":1,"750":1,"1727":1}}],["1234567891011which",{"2":{"1359":1}}],["1234567891011wrapintransaction",{"2":{"1070":1}}],["1234567891011without",{"2":{"826":1}}],["1234567891011note",{"2":{"1050":1}}],["1234567891011http",{"2":{"1038":1}}],["1234567891011three",{"2":{"2871":1}}],["1234567891011that",{"2":{"1398":1}}],["1234567891011this",{"2":{"1019":1,"1386":1,"1574":1,"2078":1,"2200":1,"2775":1}}],["1234567891011then",{"2":{"1207":1}}],["1234567891011the",{"2":{"449":1,"705":1,"976":1,"1019":1,"1159":1,"1160":1,"2314":1}}],["1234567891011for",{"2":{"887":1}}],["1234567891011equivalent",{"2":{"510":1,"592":1,"677":1,"722":1,"811":1,"1632":1,"2076":1}}],["1234567891011both",{"2":{"352":1}}],["1234567891011directives",{"2":{"203":1}}],["1234567891011",{"2":{"137":1,"291":1,"408":1,"469":1,"593":1,"594":1,"734":1,"735":1,"752":1,"762":1,"763":1,"967":1,"1034":1,"1321":1,"1546":1,"1628":1,"1685":1,"1763":1,"1802":1,"1902":1,"1904":1,"1905":1,"1954":1,"1975":1,"2075":1,"2532":1,"2699":1,"2788":1,"2814":1,"2825":1}}],["1234567891011use",{"2":{"119":1,"2177":1}}],["12345678910",{"2":{"72":1,"117":1,"408":1,"467":1,"468":1,"511":1,"963":1,"1051":1,"1189":1,"1426":1,"1445":1,"1488":1,"1542":1,"1638":1,"1646":1,"1683":1,"1727":1,"1804":1,"1863":1,"1899":1,"1903":1,"1994":1,"2068":1,"2279":1,"2555":1,"2689":1,"2739":1,"2769":1}}],["12345678910equivalent",{"2":{"7":1,"16":1,"71":1,"104":1,"115":1,"136":1,"360":1,"401":1,"466":1,"487":1,"503":1,"520":1,"539":1}}],["123456789",{"2":{"9":1,"17":1,"62":1,"522":1,"733":1,"797":1,"897":1,"965":1,"1152":1,"1313":1,"1412":1,"1622":1,"1625":1,"1702":1,"1745":1,"1775":1,"1944":1,"1993":1,"2028":1,"2064":1,"2067":1,"2104":1,"2204":1,"2308":1,"2357":1,"2544":1,"2565":1,"2700":1,"2813":1,"2865":1}}],["12345",{"2":{"34":1,"38":1,"40":1,"49":1,"57":1,"58":1,"206":1,"272":1,"280":1,"342":1,"343":1,"392":1,"565":1,"566":1,"614":1,"677":1,"783":1,"800":1,"817":1,"827":1,"893":1,"899":1,"903":2,"960":1,"1154":1,"1211":1,"1380":1,"1433":1,"1457":1,"1476":1,"1478":1,"1606":1,"1613":1,"1627":1,"1632":1,"1656":1,"1657":1,"1676":1,"1728":1,"1744":1,"1809":1,"1851":1,"1856":1,"1868":1,"2012":1,"2023":1,"2024":1,"2025":1,"2255":1,"2257":1,"2265":1,"2382":1,"2451":1,"2572":1,"2575":1,"2595":1,"2649":1,"2665":1,"2685":1,"2762":1,"2765":1,"2804":1,"2861":1}}],["1234",{"2":{"24":1,"61":1,"94":1,"95":1,"96":1,"97":1,"118":1,"184":1,"265":1,"273":1,"274":1,"275":1,"318":1,"333":2,"344":1,"351":1,"393":1,"394":1,"413":1,"434":1,"521":1,"532":1,"562":1,"574":1,"601":1,"602":1,"603":1,"604":1,"711":1,"732":1,"762":1,"763":1,"828":1,"938":1,"1130":1,"1138":1,"1161":1,"1370":1,"1491":1,"1525":1,"1533":1,"1569":1,"1730":1,"1824":3,"1855":1,"2178":1,"2202":1,"2212":1,"2285":1,"2292":1,"2526":1,"2596":1,"2665":1,"2692":1,"2781":1,"2850":1,"2852":1,"2880":1}}],["123",{"2":{"7":1,"8":1,"23":1,"83":1,"84":1,"85":1,"86":1,"107":1,"115":1,"128":1,"138":1,"147":1,"148":1,"149":1,"184":1,"186":1,"195":1,"196":1,"254":2,"314":1,"325":1,"332":3,"373":1,"403":1,"406":2,"417":1,"441":1,"442":1,"443":1,"444":1,"489":1,"493":1,"501":1,"533":1,"550":1,"564":1,"572":1,"573":1,"775":1,"896":1,"900":1,"925":1,"941":1,"1017":3,"1078":1,"1142":1,"1158":1,"1189":1,"1290":1,"1312":1,"1314":1,"1315":1,"1326":2,"1378":1,"1386":3,"1391":1,"1393":3,"1394":1,"1590":1,"1620":1,"1726":1,"1747":1,"1920":1,"1973":3,"2001":1,"2010":2,"2040":1,"2041":1,"2092":1,"2118":1,"2119":1,"2181":1,"2257":1,"2277":2,"2286":1,"2292":1,"2293":1,"2476":1,"2528":1,"2533":1,"2536":1,"2587":3,"2703":1,"2785":2,"2866":1}}],["1",{"0":{"96":1,"842":1,"940":1,"956":1,"1000":1,"1019":1,"1067":1,"1090":1,"1213":1,"1220":1,"1247":1,"1265":1,"1287":2,"1288":1,"1289":1,"1297":1,"1307":1,"1355":1,"1388":1,"1395":1,"1401":1,"1725":1,"1825":1,"1870":1,"2172":1,"2239":1,"2241":1,"2260":2,"2262":1,"2268":1,"2275":1,"2311":1,"2408":1,"2458":1,"2507":1,"2517":1,"2526":1,"2552":1,"2578":1,"2586":1,"2592":1,"2636":1,"2820":1},"1":{"843":1,"844":1,"845":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"2173":1,"2174":1,"2175":1,"2242":1,"2261":2,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2269":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1,"2276":1,"2277":1,"2278":1,"2279":1,"2312":1,"2313":1,"2314":1,"2409":1,"2410":1,"2411":1,"2412":1,"2413":1,"2414":1,"2415":1,"2416":1,"2417":1,"2459":1,"2460":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2553":1,"2554":1,"2555":1,"2579":1,"2580":1,"2581":1,"2582":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2637":1,"2638":1,"2821":1,"2822":1},"2":{"5":1,"7":2,"19":1,"20":1,"22":1,"34":1,"35":1,"38":2,"39":1,"40":1,"48":1,"69":1,"81":2,"84":1,"88":1,"92":3,"105":3,"106":2,"107":2,"115":2,"126":1,"128":1,"169":1,"184":1,"263":1,"268":1,"271":2,"272":2,"273":4,"274":1,"275":3,"283":1,"310":2,"313":1,"329":1,"332":4,"333":2,"334":2,"335":2,"388":1,"399":1,"462":1,"485":1,"488":1,"489":1,"493":1,"508":1,"528":1,"531":2,"542":2,"562":2,"565":2,"577":3,"590":1,"608":1,"609":3,"611":3,"612":2,"614":3,"621":1,"622":3,"623":1,"664":1,"665":1,"691":1,"695":1,"696":1,"699":1,"701":1,"704":1,"705":2,"709":1,"711":2,"714":1,"715":1,"730":1,"760":1,"761":2,"762":2,"764":1,"765":1,"766":1,"770":1,"771":1,"772":2,"774":1,"775":1,"817":2,"826":1,"852":1,"865":1,"867":1,"869":2,"871":2,"872":1,"873":1,"874":1,"877":1,"881":1,"882":1,"883":3,"884":1,"885":3,"888":4,"893":2,"896":1,"897":1,"898":1,"900":1,"904":1,"911":1,"913":6,"914":1,"915":1,"916":3,"917":2,"918":8,"919":12,"924":1,"926":1,"928":3,"929":4,"930":5,"937":1,"941":2,"948":1,"956":3,"969":1,"977":2,"979":1,"982":1,"986":1,"988":1,"989":1,"990":2,"994":1,"995":1,"997":1,"1027":3,"1044":5,"1045":1,"1047":1,"1053":3,"1062":2,"1067":2,"1068":2,"1070":1,"1073":1,"1079":1,"1080":1,"1084":1,"1090":5,"1098":1,"1101":1,"1105":1,"1117":1,"1132":1,"1135":4,"1138":1,"1139":1,"1141":2,"1142":1,"1147":1,"1150":6,"1152":3,"1153":1,"1154":3,"1160":1,"1177":2,"1181":2,"1189":1,"1191":1,"1192":1,"1193":2,"1195":1,"1199":2,"1220":1,"1221":1,"1222":1,"1232":1,"1255":9,"1257":13,"1258":2,"1263":1,"1264":3,"1265":2,"1266":1,"1267":4,"1268":1,"1270":4,"1271":1,"1272":2,"1277":1,"1278":1,"1283":1,"1284":9,"1285":15,"1287":6,"1288":4,"1289":7,"1290":4,"1291":6,"1293":4,"1295":4,"1297":6,"1299":16,"1301":5,"1309":1,"1322":2,"1335":1,"1336":1,"1338":1,"1339":3,"1349":1,"1363":1,"1368":1,"1369":2,"1374":3,"1375":2,"1380":2,"1386":1,"1391":1,"1419":2,"1420":1,"1427":2,"1429":6,"1431":1,"1433":2,"1450":1,"1451":3,"1453":2,"1454":1,"1458":2,"1464":3,"1504":1,"1511":2,"1515":1,"1519":1,"1520":2,"1521":1,"1523":1,"1525":1,"1529":6,"1582":2,"1587":1,"1589":1,"1590":2,"1597":3,"1598":1,"1617":1,"1620":1,"1622":1,"1623":1,"1625":1,"1633":1,"1676":1,"1677":1,"1685":2,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1702":1,"1703":1,"1706":1,"1707":3,"1711":2,"1712":1,"1715":1,"1716":1,"1740":1,"1752":1,"1753":2,"1758":1,"1769":1,"1792":54,"1800":1,"1807":1,"1808":1,"1814":1,"1819":2,"1822":1,"1823":1,"1824":1,"1825":1,"1827":1,"1852":1,"1897":1,"1898":1,"1907":1,"1924":2,"1973":3,"1974":5,"1991":2,"2010":2,"2011":1,"2039":1,"2060":1,"2061":1,"2098":1,"2102":1,"2109":1,"2113":1,"2129":1,"2131":1,"2141":1,"2144":2,"2146":2,"2148":2,"2157":1,"2162":3,"2164":1,"2165":2,"2171":1,"2173":1,"2174":1,"2179":1,"2180":1,"2187":1,"2212":2,"2222":1,"2223":1,"2224":1,"2225":3,"2229":1,"2234":1,"2236":1,"2237":1,"2238":1,"2239":5,"2240":1,"2253":2,"2254":2,"2257":1,"2267":1,"2274":1,"2279":1,"2288":1,"2292":1,"2319":1,"2320":2,"2324":1,"2338":1,"2339":5,"2342":7,"2344":1,"2354":1,"2375":2,"2376":2,"2377":2,"2378":1,"2380":3,"2381":1,"2383":1,"2397":4,"2398":4,"2414":2,"2415":1,"2427":1,"2440":1,"2465":2,"2481":4,"2493":1,"2515":1,"2528":1,"2530":2,"2532":1,"2533":1,"2534":2,"2535":2,"2537":2,"2540":2,"2543":2,"2545":1,"2550":1,"2551":3,"2555":1,"2572":1,"2575":3,"2580":1,"2586":16,"2587":4,"2588":9,"2590":1,"2591":1,"2607":6,"2614":1,"2621":3,"2633":5,"2634":1,"2635":1,"2655":1,"2659":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2677":1,"2679":1,"2692":1,"2695":1,"2696":1,"2760":1,"2762":1,"2763":1,"2785":1,"2792":1,"2801":1,"2815":1,"2823":2,"2824":2,"2834":2,"2836":1,"2842":1,"2845":2,"2866":1,"2868":1,"2871":1,"2872":1,"2873":4,"2877":1,"2880":1}}],["k8s",{"2":{"2476":1}}],["krb5",{"2":{"2385":1}}],["k6",{"2":{"1255":1}}],["kb",{"2":{"1255":1,"1792":2,"1991":3,"2125":2,"2397":8,"2398":1}}],["kong",{"2":{"1088":2,"1101":1,"1114":1,"1119":1}}],["kanel",{"2":{"1097":1}}],["karen",{"2":{"913":1}}],["kafka",{"2":{"913":2}}],["kubernetes",{"0":{"1715":1,"1772":1},"1":{"1773":1,"1774":1},"2":{"868":1,"869":1,"1100":1,"1127":1,"1420":1,"1762":1,"1767":1,"1768":1,"1780":1,"1791":1,"1792":4,"2040":2,"2450":1,"2474":1,"2634":5}}],["knobs",{"2":{"2419":1,"2429":1,"2431":1}}],["knob",{"2":{"868":1,"2438":1}}],["know",{"2":{"844":1,"845":1,"847":1,"848":1,"849":2,"851":1,"852":1,"854":1,"866":1,"878":1,"879":1,"888":1,"904":2,"911":1,"986":1,"1056":1,"1132":1,"1133":1,"1150":1,"1206":1,"1385":1,"1386":4,"1399":1,"1400":1,"1402":2,"1441":1,"1442":1,"1518":1,"1767":1,"1768":1,"1792":2,"2265":1,"2634":2,"2815":1,"2868":1}}],["knowing",{"2":{"843":1,"2795":1,"2867":1}}],["knows",{"2":{"305":1,"841":1,"844":1,"851":1,"852":1,"868":1,"944":1,"1401":1,"1403":1,"1431":1,"1437":1,"2537":1,"2540":1,"2845":1,"2879":1}}],["knownnetworks",{"2":{"1702":1,"1703":1,"1708":2,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1717":1,"1792":2,"2633":2}}],["knownproxies",{"2":{"1702":1,"1703":1,"1707":1,"1708":1,"1711":1,"1713":1,"1716":1,"1717":1,"1792":1,"2633":1}}],["known",{"0":{"1707":1,"1708":1,"2466":1},"2":{"4":1,"13":1,"29":1,"44":1,"55":1,"68":1,"78":1,"91":1,"125":1,"132":1,"144":1,"165":1,"182":1,"192":1,"261":1,"282":1,"296":1,"328":1,"339":1,"357":1,"369":1,"383":1,"412":1,"433":1,"458":1,"473":1,"484":1,"497":1,"507":1,"515":1,"549":1,"569":1,"589":1,"598":1,"607":1,"618":1,"627":1,"636":1,"649":1,"683":1,"794":1,"823":1,"933":1,"1604":1,"1609":2,"1703":2,"1717":1,"1792":5,"1831":3,"1833":1,"2481":1,"2633":3,"2659":1,"2661":1,"2669":1}}],["knew",{"2":{"852":1}}],["kid",{"2":{"1403":1}}],["kicks",{"2":{"1162":1}}],["kit",{"2":{"1106":1}}],["kiota",{"2":{"873":1}}],["kind=utc",{"2":{"2451":1}}],["kind=unspecified",{"2":{"1856":1,"2455":1}}],["kind=local",{"2":{"1856":1,"2451":1,"2455":1}}],["kinda",{"2":{"1400":1}}],["kinds",{"2":{"871":1,"1792":1,"2107":1,"2529":1,"2537":1,"2865":1,"2879":1}}],["kind",{"2":{"835":1,"865":1,"872":1,"874":1,"1385":1,"1773":1,"2451":2}}],["killed",{"2":{"2157":2,"2442":1,"2543":2,"2758":1,"2881":1}}],["kill",{"2":{"214":1,"844":1,"1722":1,"1792":2,"2153":1,"2502":1,"2532":1,"2537":1,"2769":1}}],["kernel",{"2":{"2385":1}}],["kebabcaseurls",{"2":{"1792":1,"1836":1,"1841":1,"1842":1,"1863":1,"2701":1}}],["kebabcaselurls",{"2":{"1609":1,"2659":1}}],["kebab",{"2":{"1576":1,"1792":1,"1841":1}}],["kestrel",{"0":{"1984":1,"1994":1,"2661":1},"1":{"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1},"2":{"874":1,"1199":2,"1466":1,"1609":2,"1611":1,"1635":1,"1648":1,"1666":1,"1718":1,"1787":1,"1792":3,"1794":1,"1812":1,"1946":1,"1963":1,"1978":1,"1980":1,"1981":1,"1984":3,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1992":1,"1993":1,"1994":1,"1995":1,"2091":1,"2121":1,"2398":1,"2645":4,"2661":2,"2701":1,"2706":1,"2776":2,"2823":1,"2824":1}}],["kept",{"2":{"337":1,"388":1,"852":1,"1379":1,"1607":1,"1840":1,"2103":1,"2267":1,"2482":1}}],["keepalivepingpolicy",{"2":{"1792":1,"1992":1}}],["keepalivepingtimeout",{"2":{"1792":1,"1992":1}}],["keepalivepingdelay",{"2":{"1792":1,"1992":1}}],["keepalivetimeout",{"2":{"1792":1,"1990":1,"1991":1,"1995":1}}],["keep",{"0":{"2103":1},"2":{"316":1,"531":1,"565":1,"567":1,"845":1,"851":2,"852":1,"869":1,"871":1,"902":1,"917":1,"974":1,"1038":1,"1074":1,"1076":1,"1125":1,"1126":1,"1128":1,"1253":1,"1254":1,"1412":1,"1422":1,"1615":1,"1714":1,"1792":3,"1823":1,"1991":1,"2093":1,"2094":1,"2110":1,"2112":1,"2320":1,"2416":1,"2486":1,"2495":1,"2530":1,"2532":1,"2537":3,"2540":1,"2672":1,"2724":1,"2758":1,"2795":1,"2803":1,"2835":1,"2857":1,"2872":1,"2881":1}}],["keeps",{"2":{"298":1,"307":1,"349":1,"354":1,"383":1,"448":1,"565":1,"663":1,"848":1,"852":1,"864":1,"1045":1,"1049":1,"1054":1,"1067":2,"1108":1,"1113":1,"1156":1,"1270":1,"1412":1,"1571":1,"1792":1,"1802":1,"2106":1,"2157":1,"2164":1,"2176":1,"2177":1,"2391":1,"2430":1,"2484":1,"2537":3,"2543":1,"2544":1,"2773":1,"2795":1}}],["keeping",{"2":{"174":1,"307":1,"851":1,"916":1,"1033":1,"1094":1,"1832":1,"1833":1,"2419":1,"2481":1,"2629":1}}],["keypath",{"2":{"1792":1,"1987":1}}],["keyencryption",{"2":{"1650":1,"1651":1,"1660":1,"1661":1,"1662":1,"1792":1,"2297":1,"2565":4}}],["keyed",{"2":{"567":1,"1069":1,"1157":2,"1792":1,"1948":1,"1949":1,"2223":1,"2372":1,"2378":1,"2440":1,"2442":1}}],["keycloak",{"2":{"1045":1,"1825":1}}],["key=secret123",{"2":{"1733":1,"2264":1}}],["key=sk",{"2":{"1044":1}}],["key=value",{"2":{"1608":1,"1792":1,"2272":1,"2662":1,"2691":1,"2692":1,"2693":1}}],["key=api",{"2":{"187":1,"2294":1}}],["keyboard",{"2":{"1037":1,"1381":1}}],["key>",{"2":{"155":1,"1792":3}}],["key",{"0":{"116":1,"117":1,"258":1,"992":1,"1261":1,"1278":1,"1516":1,"1609":1,"1659":1,"1905":1,"1928":1,"1987":1,"2297":1,"2494":1,"2495":1,"2565":1,"2659":1,"2754":1},"1":{"1262":1,"1263":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1660":1,"1661":1,"1662":1},"2":{"101":1,"105":1,"108":1,"109":1,"113":1,"120":1,"154":1,"155":2,"158":1,"159":1,"162":1,"170":1,"187":8,"188":2,"189":1,"191":1,"207":2,"212":2,"214":4,"240":1,"306":1,"363":1,"387":1,"390":4,"394":2,"396":1,"480":1,"504":1,"528":1,"531":4,"532":3,"534":1,"535":2,"555":1,"565":1,"567":1,"586":1,"694":1,"737":2,"738":1,"739":1,"746":1,"764":1,"774":1,"780":1,"827":1,"848":1,"851":2,"852":3,"868":2,"888":1,"894":1,"913":3,"924":1,"932":1,"956":1,"977":2,"985":1,"992":1,"993":1,"1005":1,"1049":1,"1050":1,"1053":1,"1054":2,"1062":1,"1069":3,"1075":1,"1088":1,"1090":1,"1097":1,"1101":1,"1105":2,"1107":1,"1111":2,"1142":1,"1148":1,"1150":1,"1169":1,"1181":2,"1209":1,"1210":5,"1213":5,"1215":7,"1217":1,"1222":1,"1232":1,"1233":1,"1234":1,"1236":7,"1237":2,"1238":1,"1240":2,"1243":1,"1307":2,"1336":1,"1338":1,"1339":1,"1355":1,"1374":1,"1453":1,"1454":2,"1458":1,"1475":2,"1511":1,"1516":1,"1518":1,"1519":1,"1521":1,"1527":1,"1531":2,"1540":3,"1544":1,"1574":5,"1609":2,"1651":4,"1653":1,"1655":4,"1661":1,"1664":11,"1678":1,"1684":4,"1697":1,"1726":1,"1727":2,"1733":4,"1738":1,"1743":2,"1788":1,"1792":41,"1795":1,"1802":1,"1867":1,"1886":3,"1887":2,"1889":2,"1905":2,"1948":1,"1951":1,"1956":2,"1987":2,"2040":1,"2075":2,"2077":2,"2124":2,"2125":1,"2126":1,"2127":1,"2128":1,"2129":1,"2130":1,"2131":1,"2143":1,"2175":1,"2184":2,"2193":1,"2205":1,"2223":1,"2224":1,"2232":1,"2249":1,"2252":2,"2264":8,"2265":5,"2279":3,"2283":2,"2285":2,"2291":1,"2294":8,"2296":3,"2297":6,"2320":1,"2323":2,"2336":1,"2337":1,"2340":1,"2353":2,"2370":1,"2372":1,"2375":1,"2378":1,"2379":1,"2380":5,"2389":1,"2405":2,"2409":1,"2410":2,"2411":2,"2413":1,"2414":1,"2415":1,"2416":1,"2419":1,"2431":1,"2436":2,"2438":5,"2441":1,"2445":1,"2446":1,"2447":1,"2461":2,"2463":3,"2465":1,"2466":3,"2472":1,"2476":1,"2477":2,"2482":1,"2483":2,"2486":1,"2494":3,"2495":5,"2502":3,"2519":2,"2539":1,"2544":1,"2551":1,"2554":4,"2558":1,"2572":1,"2580":2,"2591":1,"2614":1,"2622":2,"2659":1,"2661":1,"2678":1,"2679":1,"2692":1,"2695":1,"2705":2,"2734":1,"2737":1,"2765":2,"2768":4,"2795":2,"2836":1,"2847":1,"2850":1,"2852":1,"2868":1}}],["keyword",{"0":{"49":1,"2484":1},"2":{"133":1,"277":1,"369":1,"375":1,"564":1,"992":1,"1042":1,"1559":1,"1792":1,"2192":1,"2212":1,"2505":1,"2529":1,"2822":1}}],["keywords",{"0":{"17":1,"172":1,"178":1,"242":1,"326":1,"355":1,"398":1,"522":1,"729":1,"744":1,"808":1},"2":{"221":1,"515":1,"1335":3,"1336":1,"1339":13,"2191":2,"2192":1,"2482":2}}],["keystroke",{"2":{"1076":1}}],["keys",{"0":{"738":1,"739":1,"1142":1,"2279":1},"2":{"1":1,"188":3,"238":1,"390":2,"393":1,"559":1,"567":1,"588":1,"617":1,"626":1,"775":1,"829":1,"851":2,"852":2,"857":1,"864":1,"868":2,"869":1,"877":1,"900":1,"1054":9,"1067":2,"1079":2,"1096":1,"1098":1,"1105":1,"1133":1,"1139":1,"1210":1,"1211":1,"1213":1,"1243":1,"1251":2,"1370":2,"1458":1,"1475":2,"1477":1,"1511":7,"1516":2,"1518":1,"1540":1,"1542":1,"1574":1,"1604":1,"1606":1,"1609":4,"1650":3,"1651":6,"1653":2,"1654":3,"1655":9,"1656":1,"1657":1,"1659":1,"1661":1,"1662":4,"1663":3,"1664":1,"1792":36,"1862":1,"1867":1,"1868":1,"1908":1,"2000":1,"2008":3,"2013":1,"2225":2,"2265":14,"2279":1,"2296":3,"2297":12,"2320":1,"2326":1,"2330":1,"2340":2,"2372":1,"2375":1,"2406":1,"2410":2,"2413":2,"2425":1,"2427":1,"2428":1,"2436":3,"2438":4,"2444":1,"2464":1,"2465":1,"2472":1,"2486":1,"2495":2,"2504":1,"2546":1,"2551":3,"2565":3,"2622":1,"2659":4,"2662":1,"2669":1,"2678":1,"2679":2,"2692":1,"2696":2,"2741":1,"2745":1,"2754":1,"2757":2,"2764":1,"2841":1,"2853":1,"2859":1,"2868":1}}],["otel",{"2":{"2804":1}}],["otlresourceattributes",{"2":{"1792":1}}],["otlpresourceattributes",{"2":{"1800":1,"1807":2,"2804":1}}],["otlpminimumlevel",{"2":{"1792":1,"1800":1,"1807":2,"2804":1}}],["otlpheaders",{"2":{"1792":1,"1800":1,"1807":2}}],["otlpprotocol",{"2":{"1792":1,"1800":1,"1807":2,"2804":1}}],["otlpendpoint",{"2":{"1792":1,"1800":1,"1807":2,"2804":1}}],["otlp",{"2":{"1792":2,"1807":5,"2804":1}}],["others",{"2":{"567":1,"1075":1,"1129":1,"1147":1,"1792":1,"2381":1,"2530":1,"2767":1}}],["otherwise",{"2":{"177":1,"349":1,"384":1,"436":1,"447":2,"745":1,"844":1,"867":1,"869":1,"934":1,"1174":2,"1185":1,"1525":1,"1527":1,"1609":1,"1792":7,"1847":1,"1922":1,"1924":1,"2094":1,"2107":1,"2187":1,"2197":1,"2428":1,"2509":1,"2537":2,"2659":1,"2723":1,"2763":1,"2811":1,"2823":1,"2879":1}}],["other",{"0":{"306":1,"534":1,"543":1,"906":1,"1071":1,"1397":1,"1415":1,"2252":1,"2258":1,"2267":1},"1":{"907":1,"908":1,"909":1,"1398":1,"1399":1,"2259":1},"2":{"33":1,"109":1,"174":1,"175":1,"179":1,"188":1,"214":1,"245":1,"296":1,"297":2,"301":1,"316":1,"320":1,"334":1,"387":1,"390":1,"418":2,"446":2,"518":1,"528":1,"585":1,"587":2,"624":1,"684":1,"686":1,"695":2,"702":1,"815":1,"831":2,"835":1,"838":1,"840":1,"841":2,"843":2,"844":1,"847":1,"851":1,"852":3,"861":3,"864":1,"865":1,"868":2,"871":1,"876":1,"933":2,"934":1,"948":1,"989":1,"1005":1,"1035":1,"1098":1,"1101":1,"1185":1,"1190":1,"1232":1,"1254":3,"1386":2,"1388":1,"1390":1,"1394":1,"1397":1,"1400":1,"1403":1,"1404":1,"1409":2,"1410":1,"1422":1,"1439":1,"1523":1,"1527":1,"1559":1,"1651":1,"1658":1,"1662":1,"1664":1,"1688":1,"1733":1,"1738":1,"1792":5,"1824":2,"1847":1,"1888":1,"1895":1,"1898":1,"1974":1,"2020":2,"2099":1,"2106":1,"2175":1,"2189":1,"2256":1,"2264":1,"2267":1,"2284":1,"2289":1,"2291":1,"2296":1,"2297":1,"2306":1,"2319":1,"2365":1,"2372":1,"2378":1,"2380":1,"2394":1,"2442":2,"2453":1,"2466":1,"2481":2,"2484":1,"2511":1,"2528":2,"2531":3,"2533":1,"2537":1,"2603":1,"2607":1,"2608":1,"2629":1,"2632":1,"2691":1,"2811":3,"2841":1,"2864":2,"2878":1}}],["octocat",{"2":{"1737":1}}],["occasional",{"2":{"1160":1}}],["occurred",{"2":{"2336":1,"2608":1}}],["occurrence",{"2":{"319":1}}],["occurs",{"2":{"1672":1,"1742":1,"1792":2,"2255":2,"2290":1,"2684":1}}],["occur",{"2":{"1151":1,"1672":1,"1792":2}}],["oven",{"2":{"1420":1}}],["overcomplicate",{"2":{"1402":1}}],["overcomes",{"2":{"928":1}}],["overcounted",{"2":{"869":1}}],["overkill",{"2":{"908":1}}],["overflow",{"2":{"876":1}}],["overall",{"0":{"875":1},"2":{"1160":1,"1402":1,"1764":1,"1766":1,"1792":2,"2634":3}}],["overwhelming",{"2":{"1147":1}}],["overwhelmingly",{"2":{"860":1,"873":1}}],["overwritten",{"2":{"2183":1}}],["overwrite",{"2":{"1554":1,"1753":1,"1792":3,"1898":1,"2254":1}}],["overwrites",{"2":{"448":1,"2127":1}}],["overwriting",{"2":{"701":1}}],["overstate",{"2":{"849":1}}],["oversized",{"2":{"75":1,"1431":1,"1925":1,"2517":1,"2523":1}}],["overloaded",{"2":{"2597":1,"2666":1}}],["overload",{"2":{"2451":2,"2455":1,"2597":1,"2666":2}}],["overloading",{"2":{"835":1,"1095":1,"2858":1}}],["overlay",{"2":{"873":1,"2872":1}}],["overlapping",{"2":{"864":2,"1159":1}}],["overlap",{"2":{"845":1,"864":2,"2538":1}}],["overengineering",{"2":{"841":1}}],["overview",{"0":{"202":1,"1211":1,"1445":1,"1469":1,"1488":1,"1498":1,"1510":1,"1520":1,"1539":1,"1553":1,"1587":1,"1638":1,"1650":1,"1669":1,"1683":1,"1702":1,"1721":1,"1752":1,"1763":1,"1800":1,"1814":1,"1836":1,"1867":1,"1897":1,"1916":1,"1936":1,"1948":1,"1966":1,"1999":1,"2015":1,"2033":1,"2046":1,"2073":1,"2085":1,"2093":1,"2123":1,"2138":1,"2154":1,"2701":1,"2772":1},"1":{"2773":1,"2774":1,"2775":1,"2776":1},"2":{"912":1,"2701":1}}],["over",{"0":{"858":1,"862":1},"1":{"859":1,"860":1,"861":1,"863":1,"864":1,"865":1},"2":{"174":1,"307":1,"308":1,"317":1,"349":1,"840":1,"841":4,"843":1,"847":2,"848":1,"852":7,"856":1,"860":4,"861":1,"872":1,"874":1,"918":1,"948":1,"1039":1,"1041":1,"1043":2,"1045":1,"1046":1,"1075":1,"1096":4,"1111":1,"1125":1,"1140":1,"1170":1,"1177":1,"1183":1,"1199":1,"1205":1,"1256":1,"1385":1,"1386":1,"1392":1,"1399":1,"1401":1,"1440":1,"1523":1,"1792":3,"1840":1,"1910":1,"1961":1,"1983":1,"2223":1,"2266":1,"2297":1,"2380":2,"2389":1,"2402":2,"2433":1,"2435":1,"2441":1,"2451":1,"2452":1,"2463":1,"2464":1,"2465":1,"2466":1,"2472":1,"2481":2,"2490":1,"2537":2,"2628":1,"2827":1,"2858":1}}],["overhead",{"0":{"1004":1,"1013":1,"1269":1,"1292":1,"1746":1,"2347":1},"1":{"1293":1},"2":{"88":1,"388":1,"421":1,"445":1,"993":2,"1004":1,"1007":2,"1067":1,"1169":1,"1174":2,"1254":1,"1255":2,"1258":1,"1269":2,"1275":1,"1276":1,"1398":1,"1399":3,"1516":1,"1746":1,"1792":1,"1861":1,"1929":1,"2089":1,"2265":1,"2270":1,"2309":1,"2347":1,"2350":1,"2353":1,"2372":1,"2614":1}}],["overridable",{"2":{"1738":1,"2224":1,"2468":1,"2835":1}}],["overridden",{"0":{"2395":1},"2":{"108":2,"470":1,"529":1,"556":1,"1068":1,"1340":1,"1792":3,"1837":1,"1843":1,"1855":1,"1858":1,"1994":1,"2008":1,"2047":1,"2056":1,"2079":1,"2226":1,"2257":1,"2284":1,"2450":1,"2596":1,"2653":1,"2719":1}}],["overrideexpiration",{"2":{"2461":1}}],["override",{"0":{"325":1,"373":1,"419":1,"1459":1,"1606":1,"2056":1,"2305":1,"2427":1,"2674":1},"2":{"27":1,"101":1,"105":1,"108":1,"110":1,"223":1,"318":1,"326":1,"347":1,"370":1,"373":1,"375":1,"384":1,"418":1,"442":1,"443":1,"448":1,"523":1,"650":1,"669":1,"801":1,"868":2,"873":1,"964":1,"1040":1,"1067":1,"1068":2,"1105":1,"1150":1,"1316":1,"1459":2,"1471":1,"1480":1,"1523":1,"1540":1,"1544":1,"1547":1,"1604":1,"1606":3,"1792":9,"1824":1,"1860":1,"1958":1,"2056":1,"2094":1,"2109":1,"2155":1,"2306":1,"2320":1,"2321":1,"2327":1,"2375":3,"2380":1,"2381":1,"2395":1,"2410":1,"2413":1,"2430":1,"2435":2,"2470":2,"2472":2,"2481":1,"2490":1,"2681":1,"2684":1,"2689":4,"2691":3,"2733":1,"2768":1,"2808":1,"2831":1}}],["overrides",{"0":{"2079":1,"2470":1,"2699":1},"2":{"10":1,"105":2,"139":1,"352":1,"384":1,"409":1,"646":1,"868":1,"964":1,"1068":1,"1414":1,"1459":1,"1521":1,"1533":1,"1569":1,"1792":3,"1913":1,"2201":1,"2266":1,"2319":1,"2375":1,"2380":3,"2461":1,"2520":1,"2655":1,"2662":1,"2674":1,"2679":2,"2684":1,"2692":1,"2693":1,"2694":1,"2695":1,"2700":1,"2705":1,"2843":1,"2846":1}}],["overriding",{"2":{"4":1,"1951":2,"1952":2,"1953":2,"1954":2,"1958":1,"2472":1}}],["osx",{"2":{"2784":1,"2792":1}}],["os",{"2":{"1403":1,"1792":1,"2111":1,"2297":1,"2792":1,"2871":1}}],["oszknl4j",{"2":{"1051":2}}],["omission",{"2":{"2523":1}}],["omitparameterfromgeneratedrequest",{"2":{"2520":1}}],["omits",{"2":{"1792":2,"1958":1,"2109":1,"2470":1,"2486":1,"2530":1,"2537":1}}],["omitautomaticparameters",{"0":{"1569":1},"2":{"1431":1,"1553":1,"1559":2,"1569":3,"1752":1,"1753":1,"1759":3,"1792":3,"1897":1,"1898":1,"1912":3,"2164":1,"2222":1,"2520":1,"2523":1}}],["omitting",{"0":{"1759":1,"1912":1},"2":{"408":1,"1753":1,"1898":1,"2665":1}}],["omitted",{"0":{"653":1},"2":{"268":1,"409":1,"468":1,"653":1,"675":2,"1067":1,"1759":1,"1792":4,"1912":1,"2360":1,"2380":1,"2486":1,"2520":2,"2523":1,"2544":1,"2836":1}}],["omit",{"0":{"2520":1},"2":{"301":1,"1374":1,"1559":1,"1753":1,"1792":6,"1898":1,"1951":2,"1952":2,"1953":2,"1954":2,"2075":2,"2222":1,"2381":1,"2477":1,"2515":1}}],["ommitted",{"2":{"913":1}}],["ollama",{"2":{"1335":1}}],["olivia",{"2":{"913":1}}],["oltp",{"2":{"848":1,"1205":1}}],["older",{"2":{"1792":1,"2220":1}}],["oldestfirst",{"2":{"1161":1,"1792":1,"1954":2,"1960":1,"2257":1,"2443":1}}],["oldest",{"2":{"860":1,"1954":1}}],["old",{"0":{"1079":1},"2":{"174":1,"188":2,"369":1,"370":16,"592":2,"857":1,"864":1,"913":1,"984":1,"985":1,"997":1,"1157":1,"1159":1,"1400":1,"1403":1,"1435":1,"1644":1,"1948":1,"1974":1,"2216":1,"2279":1,"2296":2,"2297":2,"2332":2,"2378":1,"2416":1,"2486":1,"2498":1,"2539":1,"2607":1}}],["oh",{"2":{"844":1,"851":1,"1384":1,"1442":2}}],["oooga",{"2":{"1401":1}}],["oom",{"2":{"969":1}}],["oop",{"2":{"843":1,"851":1,"1435":1}}],["oo",{"2":{"841":7,"859":1}}],["oauth2",{"2":{"1691":3,"1694":2,"1792":5}}],["oauth",{"0":{"1059":1,"1682":1,"1690":1,"1825":1},"1":{"1060":1,"1683":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1690":1,"1691":2,"1692":2,"1693":2,"1694":2,"1695":2,"1696":1,"1697":1,"1698":1,"1699":1,"1700":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1},"2":{"835":1,"868":1,"1037":1,"1045":1,"1048":3,"1059":1,"1060":4,"1064":2,"1065":1,"1086":1,"1098":2,"1126":1,"1445":2,"1465":2,"1466":2,"1485":1,"1507":1,"1550":1,"1682":1,"1684":2,"1685":1,"1686":1,"1687":1,"1690":1,"1692":2,"1693":2,"1695":2,"1696":2,"1697":3,"1698":1,"1788":2,"1792":7,"1825":1,"1831":2,"1894":2,"1895":2,"2164":1,"2175":1,"2189":1,"2223":1,"2481":2,"2736":1}}],["odbc",{"2":{"834":1}}],["oids",{"2":{"2324":2}}],["oidc",{"2":{"1694":1,"1792":1}}],["oid=$",{"2":{"1364":1}}],["oid",{"0":{"751":1},"2":{"748":2,"751":4,"753":5,"777":3,"782":3,"903":4,"1355":3,"1357":3,"1358":3,"1359":1,"1362":2,"1363":1,"1364":2,"1366":1,"1367":1,"1410":3,"1412":1}}],["our",{"2":{"428":1,"845":1,"847":1,"849":3,"873":1,"914":1,"916":1,"918":2,"927":1,"989":1,"992":2,"1254":1,"1338":2,"1386":1,"1388":1,"1395":3,"1396":3,"1398":2,"1399":2,"2438":1,"2823":1,"2824":4}}],["out2",{"2":{"2807":2}}],["out1",{"2":{"2807":2}}],["outfile",{"2":{"2781":1}}],["outright",{"2":{"2425":1,"2453":1}}],["outage",{"2":{"1774":1}}],["outperforming",{"2":{"1262":1}}],["outputting",{"2":{"2667":1}}],["outputtemplate",{"2":{"1605":1,"1792":1,"1800":1,"1809":2,"1810":1,"2497":1,"2688":1}}],["outputformat",{"2":{"966":1,"967":2,"1792":1,"2046":1,"2047":1,"2054":1,"2055":1,"2056":1,"2066":1,"2067":1,"2068":1,"2069":1,"2635":1,"2638":1,"2674":1}}],["outputschema",{"2":{"1040":1,"1824":1,"2481":1,"2498":1}}],["outputs",{"2":{"852":1,"1373":1,"1799":1,"1946":1,"1974":1,"2358":1,"2607":1,"2662":1,"2668":1,"2670":1,"2671":1,"2672":1,"2694":1}}],["output",{"0":{"228":1,"229":1,"381":1,"487":1,"1374":1,"1803":1,"1804":1,"1805":1,"1807":1,"1809":1,"2053":1,"2206":1,"2662":1,"2677":1},"1":{"1806":1,"1808":1,"2054":1,"2055":1,"2056":1},"2":{"38":1,"57":1,"58":1,"61":1,"90":1,"125":1,"131":1,"167":1,"229":2,"339":1,"346":1,"388":1,"439":1,"484":1,"548":1,"587":1,"596":1,"598":1,"606":1,"675":2,"679":1,"830":1,"835":1,"876":1,"965":1,"966":1,"1037":1,"1076":1,"1110":1,"1195":1,"1259":1,"1374":1,"1401":1,"1407":2,"1414":1,"1417":1,"1435":1,"1554":1,"1559":1,"1566":1,"1569":1,"1571":1,"1609":1,"1759":1,"1791":1,"1792":9,"1798":1,"1803":2,"1804":1,"1805":1,"1807":2,"1809":2,"1973":1,"2047":1,"2102":1,"2104":1,"2108":1,"2164":1,"2221":1,"2231":1,"2261":1,"2309":1,"2322":2,"2329":1,"2333":1,"2360":2,"2389":2,"2404":1,"2407":1,"2414":1,"2415":2,"2430":1,"2456":1,"2481":1,"2484":1,"2520":1,"2535":3,"2546":1,"2567":1,"2586":1,"2589":1,"2603":1,"2635":2,"2648":1,"2659":1,"2662":1,"2666":1,"2672":1,"2673":1,"2677":1,"2678":1,"2679":2,"2694":3,"2695":1,"2696":1,"2726":1,"2792":3,"2795":1,"2804":1,"2880":2}}],["outweighs",{"2":{"975":1}}],["outofmemoryexception",{"2":{"948":1}}],["outlaws",{"2":{"865":1}}],["outgoing",{"2":{"414":1,"1434":1,"1738":1,"1739":1,"2282":1,"2283":1,"2287":1,"2302":1}}],["outerheight",{"2":{"1792":2}}],["outerwidth",{"2":{"1792":2}}],["outer",{"2":{"334":5,"1961":1,"1974":5,"2403":1,"2607":5}}],["outcomes",{"2":{"2106":1,"2536":1,"2537":1}}],["outcome",{"2":{"310":1}}],["outside",{"2":{"263":1,"716":1,"836":1,"940":1,"1078":1,"1435":1,"1930":1,"2344":1,"2545":1}}],["outbound",{"0":{"394":1,"531":1},"2":{"214":3,"386":1,"387":1,"390":2,"529":1,"535":1,"1014":1,"1106":1,"1107":1,"1430":1,"1722":1,"1743":3,"1792":3,"1862":1,"1934":1,"2107":1,"2185":1,"2222":2,"2483":2,"2500":2,"2502":2,"2504":1,"2506":1,"2510":1,"2529":1,"2537":1,"2759":1,"2760":1,"2762":1,"2765":1,"2865":1,"2879":1}}],["out",{"0":{"324":1,"412":1,"417":1,"418":1,"419":1,"421":1,"2186":1,"2300":1,"2310":1,"2404":1,"2437":1,"2455":1,"2487":1},"1":{"413":1,"414":1,"415":1,"416":1,"417":1,"418":1,"419":1,"420":1,"421":1,"422":1,"423":1,"424":1,"425":1,"426":1,"427":1,"428":1,"429":1,"430":1,"431":1,"432":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1},"2":{"27":1,"74":1,"140":2,"223":1,"224":1,"282":1,"284":1,"285":1,"286":3,"288":1,"289":1,"290":1,"291":2,"298":1,"307":1,"308":1,"316":2,"349":1,"354":1,"363":1,"413":4,"414":3,"415":2,"417":2,"418":2,"419":2,"420":2,"421":2,"423":3,"426":1,"427":1,"428":1,"429":2,"456":1,"832":1,"833":2,"838":2,"843":2,"848":1,"851":3,"852":4,"857":1,"860":1,"861":1,"865":1,"868":1,"869":1,"876":1,"880":1,"966":1,"1006":1,"1033":1,"1037":1,"1042":1,"1044":1,"1081":1,"1082":1,"1092":1,"1104":1,"1105":2,"1123":1,"1126":1,"1162":1,"1318":1,"1322":1,"1326":1,"1376":2,"1386":2,"1394":1,"1396":4,"1398":1,"1401":1,"1404":2,"1405":1,"1412":2,"1427":1,"1428":2,"1437":1,"1441":3,"1442":1,"1460":1,"1465":1,"1467":1,"1481":2,"1484":1,"1594":1,"1615":1,"1669":1,"1672":1,"1678":1,"1699":1,"1745":1,"1759":1,"1792":7,"1856":1,"1898":1,"1912":1,"1934":1,"1961":1,"2101":1,"2170":1,"2175":1,"2176":1,"2186":3,"2189":1,"2224":1,"2229":2,"2253":1,"2255":2,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2309":1,"2310":2,"2313":3,"2346":1,"2347":1,"2375":1,"2388":1,"2398":1,"2404":1,"2419":1,"2421":1,"2424":1,"2431":1,"2438":1,"2451":1,"2464":1,"2466":1,"2498":1,"2518":1,"2533":1,"2535":1,"2537":1,"2539":1,"2608":1,"2728":1,"2776":1,"2806":1,"2813":3,"2817":1,"2835":1,"2855":1}}],["owasp",{"2":{"307":1,"309":1,"363":1,"1049":1,"1064":1,"1792":1,"2030":1,"2177":1,"2632":1}}],["owning",{"2":{"1382":1}}],["owns",{"2":{"865":1,"2527":1,"2833":1,"2862":1,"2867":1}}],["own",{"0":{"2767":1},"2":{"212":1,"221":1,"298":1,"309":1,"336":1,"377":1,"448":1,"479":1,"650":1,"694":1,"695":1,"696":1,"705":1,"706":1,"714":1,"716":1,"833":1,"834":1,"837":1,"843":1,"864":3,"865":1,"869":1,"914":1,"917":1,"930":1,"986":1,"1037":1,"1044":1,"1045":3,"1068":1,"1069":1,"1070":1,"1073":1,"1074":3,"1075":1,"1077":1,"1078":2,"1079":1,"1086":1,"1094":2,"1096":1,"1098":1,"1101":1,"1106":1,"1107":1,"1108":1,"1113":1,"1114":1,"1115":1,"1127":1,"1132":1,"1145":1,"1150":1,"1162":2,"1191":1,"1193":1,"1248":1,"1254":1,"1326":2,"1378":1,"1383":1,"1385":2,"1391":1,"1398":2,"1400":1,"1404":3,"1416":1,"1435":1,"1458":1,"1460":1,"1511":1,"1574":1,"1581":1,"1685":1,"1741":1,"1792":15,"1822":1,"1823":2,"1825":4,"1827":1,"1917":1,"1955":2,"1958":1,"1959":1,"1961":4,"1973":1,"2010":1,"2099":1,"2108":1,"2109":1,"2157":1,"2176":1,"2177":1,"2285":1,"2289":1,"2333":1,"2346":1,"2375":2,"2379":2,"2395":1,"2422":1,"2465":1,"2466":1,"2470":1,"2471":1,"2472":2,"2481":1,"2482":1,"2525":1,"2526":1,"2527":3,"2528":1,"2529":1,"2530":1,"2531":2,"2532":1,"2533":2,"2536":1,"2540":2,"2543":2,"2714":1,"2739":1,"2759":2,"2767":1,"2794":1,"2803":1,"2804":1,"2833":1,"2845":1,"2860":1,"2862":3,"2863":1,"2866":1,"2867":1,"2871":1,"2873":2,"2875":1,"2880":1}}],["o",{"2":{"297":2,"845":2,"849":1,"851":5,"1091":1,"1105":4,"1167":2,"1179":2,"1255":1,"1258":1,"1268":1,"1274":1,"1324":1,"1691":1,"1792":1,"1822":2,"1994":1,"2087":1,"2614":2,"2615":1,"2621":3,"2685":2,"2760":1,"2782":1,"2783":1,"2784":1}}],["okay",{"2":{"843":1}}],["ok",{"2":{"247":2,"301":1,"449":3,"540":1,"541":1,"551":2,"748":1,"763":1,"841":1,"887":1,"903":2,"995":4,"1255":1,"1342":2,"1359":1,"1360":1,"1366":2,"1384":1,"1386":2,"1403":1,"1404":1,"1408":2,"1416":2,"1435":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1442":2,"1567":2,"1766":1,"1767":1,"1768":1,"1770":1,"1782":1,"1792":2,"1855":2,"2415":1,"2562":2,"2596":2,"2824":1,"2866":1}}],["obscure",{"2":{"874":1}}],["observe",{"2":{"2466":2}}],["observed",{"2":{"865":1,"877":1}}],["observable",{"2":{"2405":1}}],["observability",{"0":{"1110":1},"2":{"868":1,"877":1,"1386":1}}],["observations",{"0":{"1278":1},"2":{"1387":1}}],["observation",{"2":{"852":1}}],["obsolete",{"2":{"840":1,"1435":1,"1443":1,"2255":1}}],["obviously",{"2":{"851":1,"918":1,"1386":1}}],["obvious",{"2":{"844":1,"876":1,"1078":1,"1409":1}}],["obfuscation",{"2":{"596":1,"868":1,"1110":1}}],["obfuscates",{"2":{"2750":1,"2798":1}}],["obfuscateauthparameterlogvalues",{"2":{"1469":1,"1470":1,"1483":1,"1792":1,"2558":1}}],["obfuscate",{"2":{"190":1,"236":1,"368":1,"589":1,"1470":1,"1792":1,"1811":1,"2805":1}}],["object>",{"2":{"1792":1,"2632":1}}],["objections",{"2":{"876":2}}],["objection",{"2":{"843":1}}],["objects",{"0":{"916":1,"917":1,"1352":1,"1362":1,"1363":1},"1":{"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":2,"1364":1,"1365":1,"1366":1,"1367":1},"2":{"227":1,"328":1,"330":1,"334":1,"335":2,"336":1,"337":2,"567":1,"568":1,"583":1,"588":1,"614":1,"626":1,"746":1,"749":1,"791":1,"844":4,"845":1,"851":6,"854":1,"856":1,"861":1,"863":1,"871":1,"914":1,"916":1,"917":1,"919":2,"926":1,"969":1,"1037":1,"1069":1,"1095":1,"1097":1,"1099":2,"1102":1,"1111":1,"1113":1,"1121":1,"1126":1,"1157":1,"1211":1,"1243":1,"1352":1,"1362":1,"1365":1,"1375":1,"1412":1,"1429":1,"1792":6,"1948":1,"1967":2,"1974":1,"2000":1,"2009":1,"2122":1,"2126":1,"2134":1,"2156":1,"2164":1,"2165":1,"2209":1,"2217":1,"2320":1,"2330":1,"2339":1,"2378":1,"2532":1,"2537":1,"2542":1,"2546":1,"2586":1,"2587":1,"2588":1,"2607":1,"2701":1,"2840":1,"2842":1,"2851":1,"2854":1,"2878":1}}],["object",{"0":{"749":1,"753":1,"782":1,"841":1,"914":1,"1671":1,"2126":1},"1":{"750":1,"751":1,"752":1,"753":1,"783":1},"2":{"87":1,"207":1,"209":2,"210":1,"227":1,"264":1,"306":1,"361":1,"374":1,"390":1,"415":2,"423":1,"426":1,"427":2,"428":1,"429":1,"439":2,"447":1,"449":2,"452":3,"503":1,"510":1,"512":1,"567":1,"607":1,"609":1,"615":1,"618":1,"745":1,"746":2,"747":2,"748":3,"751":2,"753":9,"761":1,"762":1,"771":1,"772":1,"777":3,"781":1,"782":12,"783":2,"812":1,"813":1,"814":1,"815":1,"840":2,"841":10,"843":3,"844":6,"845":1,"848":1,"849":1,"851":12,"852":2,"854":2,"855":1,"856":2,"857":1,"864":2,"871":2,"874":1,"876":1,"902":3,"903":6,"904":1,"914":3,"915":1,"916":3,"919":1,"948":1,"968":1,"1021":1,"1024":2,"1029":1,"1041":2,"1069":1,"1086":1,"1095":1,"1097":1,"1105":4,"1157":2,"1179":2,"1214":1,"1215":2,"1216":1,"1232":2,"1234":1,"1236":1,"1239":1,"1255":1,"1258":1,"1309":1,"1321":1,"1332":1,"1338":3,"1339":6,"1341":1,"1347":2,"1353":1,"1354":1,"1355":1,"1356":1,"1358":7,"1359":1,"1363":1,"1364":1,"1370":2,"1372":1,"1376":1,"1386":1,"1402":1,"1403":1,"1410":5,"1415":1,"1427":1,"1475":1,"1477":1,"1499":1,"1511":1,"1521":1,"1540":1,"1544":1,"1558":1,"1564":1,"1574":1,"1588":1,"1596":2,"1618":1,"1624":2,"1670":1,"1684":1,"1727":2,"1732":1,"1736":1,"1745":1,"1792":21,"1807":2,"1824":3,"1848":1,"1852":1,"1857":1,"1862":2,"1921":2,"1922":1,"1924":1,"1926":1,"1948":1,"1949":1,"1951":1,"1952":1,"1953":1,"1954":1,"1973":1,"1974":1,"2000":1,"2018":1,"2034":1,"2038":4,"2039":1,"2040":1,"2094":2,"2111":2,"2112":1,"2123":2,"2124":1,"2125":1,"2126":3,"2139":1,"2143":1,"2147":2,"2195":1,"2247":1,"2264":2,"2267":1,"2273":1,"2303":1,"2304":1,"2310":1,"2313":1,"2320":2,"2330":1,"2339":3,"2346":1,"2357":2,"2372":1,"2378":1,"2383":1,"2442":1,"2456":1,"2461":2,"2476":2,"2481":3,"2482":1,"2483":1,"2491":1,"2492":1,"2498":1,"2549":5,"2575":1,"2586":1,"2588":1,"2607":1,"2664":2,"2725":1,"2763":1,"2764":1,"2766":1,"2767":1,"2810":2,"2813":2,"2815":3,"2829":2,"2836":1,"2841":1,"2850":1,"2852":1,"2871":1}}],["opportunity",{"2":{"2287":1}}],["opportunistically",{"2":{"1130":1}}],["opposed",{"2":{"1402":1}}],["opposite",{"2":{"876":1,"1203":1}}],["opinionated",{"2":{"1404":1}}],["opinion",{"2":{"839":1,"1405":1,"1435":1}}],["ops",{"2":{"347":1,"836":2,"2432":1}}],["op",{"2":{"317":1,"663":2,"664":1,"665":1,"1792":1,"2452":1,"2495":1}}],["opted",{"2":{"1792":2,"1813":1,"1824":1,"1832":1,"1833":1,"2223":1,"2479":1,"2481":2}}],["opts",{"2":{"1042":1,"2175":1,"2728":1,"2750":1,"2798":1}}],["optimal",{"2":{"1792":2,"1936":1,"1937":2,"1938":1,"1944":1,"2576":1,"2790":1}}],["optimizing",{"2":{"974":1,"1382":1,"1792":1,"2084":1}}],["optimize",{"2":{"1129":1,"1132":1,"1133":1}}],["optimized",{"2":{"874":1,"881":1,"1007":1,"2270":1,"2398":3,"2604":1}}],["optimizer",{"2":{"860":1}}],["optimizations",{"0":{"2614":1,"2622":1},"2":{"1254":2,"2236":1,"2270":3,"2614":1}}],["optimization",{"0":{"1128":1,"1164":1,"2347":1,"2621":1},"1":{"1129":1,"1130":1,"1131":1,"1132":1,"1133":1,"1134":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1},"2":{"874":2,"1037":2,"1128":2,"1129":2,"1132":1,"1133":1,"1134":1,"1274":1,"1377":1,"1398":1,"1402":2,"1994":1,"2858":1}}],["optimistic",{"2":{"854":1}}],["opting",{"2":{"320":1,"1042":1,"2481":1}}],["optional",{"0":{"408":1,"1605":1,"2193":1,"2497":1,"2581":1,"2591":1,"2665":1,"2685":1,"2688":1,"2732":1},"2":{"155":1,"166":1,"244":1,"268":2,"301":1,"310":1,"370":1,"375":1,"381":1,"408":3,"409":1,"469":1,"555":1,"564":1,"650":2,"668":1,"798":2,"869":1,"995":1,"1040":1,"1042":1,"1050":1,"1063":1,"1074":2,"1076":1,"1102":1,"1181":1,"1199":1,"1217":1,"1218":1,"1221":1,"1222":1,"1237":1,"1239":3,"1305":1,"1410":1,"1515":1,"1567":1,"1569":1,"1573":1,"1604":1,"1605":1,"1690":1,"1759":1,"1792":32,"1820":1,"1821":1,"1829":1,"1852":1,"1887":1,"1888":1,"1906":1,"1912":1,"1951":3,"1952":3,"1953":3,"1954":3,"2094":1,"2102":1,"2177":1,"2193":2,"2222":1,"2223":2,"2232":1,"2237":1,"2247":2,"2254":2,"2255":3,"2265":1,"2274":1,"2333":1,"2383":1,"2406":1,"2429":1,"2436":2,"2476":1,"2477":1,"2497":2,"2498":2,"2519":1,"2520":1,"2528":1,"2529":1,"2537":1,"2581":2,"2591":1,"2634":1,"2665":2,"2674":1,"2678":1,"2684":1,"2685":7,"2688":1,"2719":1,"2723":1,"2762":2,"2765":1,"2779":1,"2788":1,"2810":1,"2811":1,"2825":1,"2848":1,"2864":1,"2869":1}}],["optionally",{"2":{"13":1,"288":1,"369":1,"452":1,"638":1,"688":2,"1243":1,"1396":1,"2252":1,"2274":1,"2332":1,"2526":1,"2728":1,"2781":1,"2782":1,"2783":1,"2784":1,"2831":1,"2846":1}}],["option",{"0":{"308":1,"309":1,"2272":1,"2350":1,"2382":1,"2383":1,"2821":1,"2822":1},"2":{"52":1,"300":1,"305":1,"307":3,"310":1,"334":1,"739":1,"747":1,"753":1,"757":1,"768":1,"776":1,"859":1,"891":1,"892":1,"917":1,"919":1,"963":1,"967":1,"971":1,"1063":1,"1102":1,"1115":1,"1117":3,"1147":1,"1217":1,"1340":1,"1752":1,"1753":1,"1754":1,"1758":3,"1792":24,"2172":1,"2177":1,"2181":1,"2249":1,"2251":2,"2253":2,"2257":1,"2259":4,"2265":2,"2272":1,"2274":2,"2383":1,"2484":1,"2515":1,"2517":2,"2520":1,"2537":1,"2539":1,"2565":1,"2572":1,"2586":1,"2587":1,"2641":2,"2660":1,"2719":1,"2728":1,"2759":1,"2794":2,"2801":1,"2805":1,"2882":1}}],["options",{"0":{"747":1,"753":1,"757":1,"768":1,"776":1,"890":1,"891":1,"892":1,"967":1,"1353":1,"1468":1,"1493":1,"1509":1,"1558":1,"1562":1,"1563":1,"1622":1,"1630":1,"1652":1,"1659":1,"1720":1,"1751":1,"1754":1,"1813":1,"1815":1,"1826":1,"1835":1,"1896":1,"1915":1,"1965":1,"1994":1,"2017":1,"2018":1,"2072":1,"2122":1,"2137":1,"2565":1,"2594":1,"2629":1,"2705":1,"2749":1},"1":{"891":1,"892":1,"1354":1,"1469":1,"1470":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1,"1478":1,"1479":1,"1480":1,"1481":1,"1482":1,"1483":1,"1484":1,"1485":1,"1486":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1,"1518":1,"1519":1,"1520":1,"1521":1,"1522":1,"1523":1,"1524":1,"1525":1,"1526":1,"1527":1,"1528":1,"1529":1,"1530":1,"1531":1,"1532":1,"1533":1,"1534":1,"1535":1,"1536":1,"1537":1,"1623":1,"1624":1,"1625":1,"1631":1,"1632":1,"1653":1,"1654":1,"1655":1,"1660":1,"1661":1,"1662":1,"1721":1,"1722":1,"1723":1,"1724":1,"1725":1,"1726":1,"1727":1,"1728":1,"1729":1,"1730":1,"1731":1,"1732":1,"1733":1,"1734":1,"1735":1,"1736":1,"1737":1,"1738":1,"1739":1,"1740":1,"1741":1,"1742":1,"1743":1,"1744":1,"1745":1,"1746":1,"1747":1,"1748":1,"1749":1,"1750":1,"1752":1,"1753":1,"1754":1,"1755":1,"1756":1,"1757":1,"1758":1,"1759":1,"1760":1,"1761":1,"1814":1,"1815":1,"1816":2,"1817":2,"1818":2,"1819":2,"1820":2,"1821":2,"1822":2,"1823":2,"1824":1,"1825":1,"1826":1,"1827":2,"1828":2,"1829":2,"1830":2,"1831":2,"1832":2,"1833":1,"1834":1,"1836":1,"1837":1,"1838":1,"1839":1,"1840":1,"1841":1,"1842":1,"1843":1,"1844":1,"1845":1,"1846":1,"1847":1,"1848":1,"1849":1,"1850":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":1,"1859":1,"1860":1,"1861":1,"1862":1,"1863":1,"1864":1,"1865":1,"1897":1,"1898":1,"1899":1,"1900":1,"1901":1,"1902":1,"1903":1,"1904":1,"1905":1,"1906":1,"1907":1,"1908":1,"1909":1,"1910":1,"1911":1,"1912":1,"1913":1,"1914":1,"1916":1,"1917":1,"1918":1,"1919":1,"1920":1,"1921":1,"1922":1,"1923":1,"1924":1,"1925":1,"1926":1,"1927":1,"1928":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1934":1,"1966":1,"1967":1,"1968":1,"1969":1,"1970":1,"1971":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":1,"1977":1,"2073":1,"2074":1,"2075":1,"2076":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2123":1,"2124":1,"2125":1,"2126":1,"2127":1,"2128":1,"2129":1,"2130":1,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2136":1,"2138":1,"2139":1,"2140":1,"2141":1,"2142":1,"2143":1,"2144":1,"2145":1,"2146":1,"2147":1,"2148":1,"2149":1,"2150":1,"2151":1,"2152":1,"2595":1,"2596":1},"2":{"11":1,"26":1,"28":1,"42":1,"53":1,"65":1,"76":1,"89":1,"98":1,"100":1,"101":1,"111":1,"119":1,"121":2,"122":1,"124":1,"141":1,"143":1,"150":1,"151":1,"164":2,"210":1,"217":1,"243":1,"259":1,"266":2,"293":1,"295":1,"315":1,"334":1,"338":1,"367":1,"410":1,"430":1,"431":1,"432":1,"455":1,"456":1,"457":1,"471":1,"505":1,"513":1,"525":1,"535":1,"557":1,"634":2,"647":2,"670":2,"672":1,"673":1,"680":1,"747":1,"753":1,"757":1,"768":1,"776":1,"779":1,"793":1,"851":1,"868":1,"915":1,"917":1,"1032":1,"1033":1,"1037":2,"1067":1,"1070":1,"1100":2,"1102":2,"1127":1,"1182":1,"1217":1,"1220":2,"1221":2,"1222":2,"1223":1,"1226":5,"1232":1,"1233":1,"1234":1,"1235":1,"1252":1,"1356":1,"1358":1,"1361":1,"1431":1,"1434":1,"1458":1,"1460":1,"1466":1,"1482":1,"1485":1,"1489":1,"1493":1,"1506":1,"1507":1,"1514":1,"1536":1,"1549":1,"1550":1,"1558":1,"1584":1,"1586":1,"1601":1,"1612":1,"1645":1,"1680":1,"1696":1,"1700":1,"1749":1,"1761":2,"1785":1,"1787":2,"1788":2,"1790":1,"1792":35,"1794":2,"1795":1,"1797":1,"1836":4,"1850":1,"1865":3,"1870":1,"1871":1,"1872":1,"1876":5,"1885":1,"1914":1,"1933":1,"1965":1,"1977":3,"1978":1,"1984":1,"1992":1,"1993":1,"2010":1,"2013":1,"2018":1,"2030":1,"2082":2,"2135":1,"2148":2,"2151":1,"2169":2,"2170":2,"2177":1,"2181":1,"2189":2,"2219":1,"2255":4,"2256":3,"2257":1,"2258":4,"2264":2,"2265":1,"2266":1,"2267":1,"2273":2,"2291":1,"2297":1,"2359":1,"2375":2,"2420":1,"2423":1,"2429":1,"2459":1,"2495":1,"2533":1,"2545":1,"2554":1,"2565":1,"2575":1,"2577":1,"2594":1,"2596":1,"2629":2,"2632":6,"2651":1,"2652":1,"2686":1,"2701":3,"2706":1,"2718":1,"2721":1,"2745":1,"2793":1,"2806":1,"2824":1,"2825":1,"2826":3,"2827":1,"2835":1,"2859":1}}],["opt",{"0":{"1040":1,"2455":1,"2520":1,"2587":1},"1":{"1041":1},"2":{"214":1,"317":1,"390":1,"917":1,"1046":1,"1102":2,"1150":1,"1406":1,"1430":1,"1511":1,"1519":1,"1569":1,"1722":1,"1743":1,"1759":1,"1792":2,"1834":1,"1856":1,"1912":1,"2222":1,"2224":1,"2380":1,"2381":1,"2389":1,"2481":1,"2483":1,"2502":2,"2515":1,"2520":1,"2765":1}}],["opaque",{"2":{"188":1,"1457":1,"1792":3,"2296":1,"2444":1,"2528":1,"2554":1}}],["operate",{"2":{"902":1}}],["operates",{"2":{"852":1,"2545":1}}],["operator",{"2":{"852":1,"933":3,"1155":1,"2040":1}}],["operators",{"2":{"852":3,"856":1,"933":1,"1096":5,"1127":1,"1385":2,"2492":1,"2530":1,"2540":1,"2845":1}}],["operating",{"2":{"852":1,"2786":1}}],["operational",{"2":{"1801":1,"2434":1,"2635":1}}],["operations",{"0":{"1346":1,"2216":1},"2":{"439":1,"577":1,"851":2,"852":2,"953":1,"974":2,"1038":1,"1098":2,"1132":2,"1161":1,"1163":1,"1167":3,"1281":1,"1328":1,"1329":2,"1349":1,"1599":1,"1792":1,"1801":1,"1994":1,"2087":2,"2270":3,"2532":1,"2614":2,"2615":4,"2621":1}}],["operation",{"0":{"856":1},"2":{"175":1,"195":1,"284":1,"477":2,"572":1,"852":2,"919":3,"1045":1,"1075":1,"1111":1,"1130":1,"1179":1,"1213":2,"1214":1,"1232":1,"1234":1,"1235":4,"1329":1,"1599":1,"1678":1,"1792":5,"1885":1,"1912":1,"2092":1,"2218":1,"2527":1,"2545":1,"2621":1,"2729":1,"2862":1}}],["openconnectionasync",{"2":{"2559":1,"2615":1}}],["opener",{"0":{"2023":1},"2":{"1792":1,"2632":2}}],["opened",{"2":{"436":1,"650":1,"807":1,"818":1,"1105":1,"1141":1,"1150":1,"1305":1,"1337":1,"1928":1,"2137":1,"2149":1,"2463":1,"2534":1,"2549":1,"2575":1,"2807":2,"2809":1}}],["openreadstream",{"2":{"1366":1}}],["openresty",{"2":{"1106":1}}],["openai",{"2":{"1105":4}}],["openapiannotationtests",{"2":{"2435":1}}],["openapifiltertests",{"2":{"2435":1}}],["openapitests",{"2":{"2435":2}}],["openapitags",{"2":{"2223":1,"2435":1,"2487":2}}],["openapihide",{"2":{"2223":1,"2433":1,"2435":1,"2487":2}}],["openapioptions",{"2":{"354":1,"868":1,"1792":1,"1836":2,"1897":1,"1899":1,"1900":1,"1907":1,"1909":1,"1911":1,"1912":1,"2254":2,"2430":1,"2431":2,"2434":1,"2436":1,"2520":1,"2551":1,"2701":1}}],["openapi",{"0":{"347":1,"1896":1,"2254":1,"2430":1,"2432":1,"2487":1,"2555":1},"1":{"348":1,"349":1,"350":1,"351":1,"352":1,"353":1,"354":1,"355":1,"356":1,"1897":1,"1898":1,"1899":1,"1900":1,"1901":1,"1902":1,"1903":1,"1904":1,"1905":1,"1906":1,"1907":1,"1908":1,"1909":1,"1910":1,"1911":1,"1912":1,"1913":1,"1914":1,"2431":1,"2432":1,"2433":1,"2434":1},"2":{"74":1,"223":2,"347":4,"348":7,"349":3,"351":3,"352":3,"353":1,"354":3,"355":6,"356":2,"381":1,"835":2,"837":1,"868":2,"869":2,"1008":1,"1027":1,"1042":1,"1095":1,"1366":1,"1385":1,"1386":1,"1422":1,"1569":1,"1584":2,"1759":1,"1789":2,"1792":14,"1796":2,"1818":1,"1836":1,"1896":1,"1897":2,"1898":5,"1899":1,"1900":1,"1901":1,"1907":2,"1908":1,"1910":1,"1911":4,"1913":4,"2157":1,"2221":1,"2222":2,"2223":2,"2225":5,"2240":1,"2254":16,"2333":1,"2419":5,"2430":2,"2432":10,"2433":1,"2434":3,"2435":7,"2436":2,"2438":3,"2479":1,"2482":1,"2487":6,"2489":2,"2518":1,"2520":2,"2523":2,"2527":1,"2543":1,"2555":3,"2714":1,"2848":1,"2857":1,"2862":1}}],["openssl",{"2":{"2385":1}}],["opens",{"2":{"859":1,"1161":1,"1329":1,"1331":1,"2391":1,"2407":1,"2528":1,"2863":1}}],["opentelemetry",{"0":{"1807":1,"2804":1},"1":{"1808":1},"2":{"835":1,"1110":2,"1792":1,"1799":1,"1807":1,"2794":1}}],["openxmlformats",{"2":{"772":1,"773":1,"893":1}}],["opening",{"2":{"389":1,"438":1,"679":1,"1363":1,"1618":1,"1621":1,"1792":2,"1920":1,"2247":1}}],["open",{"0":{"2066":1},"2":{"3":1,"106":1,"323":4,"650":1,"666":2,"832":1,"848":1,"859":1,"860":1,"894":1,"961":1,"1018":1,"1019":1,"1023":1,"1026":1,"1032":1,"1066":1,"1067":1,"1068":1,"1076":1,"1207":1,"1366":3,"1385":1,"1410":1,"1433":2,"1525":1,"1529":1,"1609":1,"1792":1,"1991":1,"2110":1,"2411":2,"2413":1,"2440":1,"2442":1,"2446":1,"2527":1,"2530":1,"2559":1,"2661":1,"2764":2,"2766":1,"2776":1,"2830":1,"2862":1}}],["onto",{"2":{"2511":1,"2867":1}}],["onrejected",{"2":{"2470":1}}],["onward",{"2":{"2112":1,"2532":1}}],["onprogress",{"2":{"1410":1}}],["online",{"2":{"1342":1,"1792":2}}],["onload",{"2":{"894":1,"1366":1,"1410":1}}],["onlyannotated",{"2":{"320":1,"1792":4,"1836":1,"1840":5,"1863":1,"2195":1,"2223":1,"2482":2,"2721":1,"2841":1}}],["onlywithhttptag",{"0":{"2367":1},"2":{"244":2,"320":1,"1792":2,"1840":2,"1999":1,"2000":1,"2004":2,"2195":1,"2209":1,"2330":2,"2367":1,"2482":1,"2701":1,"2841":1}}],["only",{"0":{"180":1,"320":1,"633":1,"661":1,"686":1,"723":1,"899":1,"961":1,"1042":1,"1413":1,"1570":1,"1662":1,"1747":1,"1930":1,"2028":1,"2344":1,"2487":1,"2489":1,"2494":1,"2656":1},"2":{"9":1,"64":1,"109":1,"133":1,"173":1,"175":4,"176":1,"177":1,"179":1,"188":2,"213":2,"214":4,"223":1,"239":1,"244":1,"251":1,"261":2,"262":2,"277":1,"286":1,"289":1,"291":1,"297":1,"299":1,"303":1,"310":1,"314":1,"317":1,"319":2,"320":9,"325":1,"327":1,"337":1,"347":1,"378":1,"384":1,"388":3,"390":1,"414":1,"422":1,"436":1,"438":1,"446":1,"448":1,"452":1,"453":1,"454":1,"458":1,"512":1,"529":1,"531":1,"559":1,"567":1,"582":1,"585":1,"587":1,"609":1,"615":1,"625":1,"633":1,"638":1,"641":1,"646":1,"650":1,"656":2,"660":1,"661":1,"663":1,"664":1,"666":1,"668":1,"673":2,"675":2,"679":4,"681":1,"683":2,"685":1,"689":2,"693":2,"698":2,"703":2,"706":1,"708":2,"710":1,"711":1,"713":2,"719":1,"720":2,"723":3,"726":1,"745":1,"747":2,"762":1,"768":1,"770":1,"771":1,"772":2,"786":1,"823":1,"826":1,"837":1,"841":3,"843":1,"844":1,"845":1,"849":1,"851":3,"855":1,"863":1,"864":2,"865":4,"871":1,"872":1,"884":1,"891":1,"892":1,"904":1,"911":1,"919":2,"922":3,"924":2,"926":4,"932":1,"933":1,"937":2,"941":1,"945":1,"946":1,"949":1,"951":1,"957":3,"961":2,"980":1,"985":1,"1015":1,"1021":1,"1032":1,"1037":1,"1040":1,"1042":3,"1045":4,"1046":1,"1049":1,"1050":2,"1056":1,"1057":2,"1068":1,"1069":1,"1090":1,"1094":1,"1097":1,"1098":3,"1099":1,"1100":1,"1101":3,"1104":1,"1105":2,"1106":1,"1107":2,"1108":1,"1111":1,"1127":10,"1129":1,"1130":1,"1133":2,"1135":1,"1138":1,"1139":1,"1147":1,"1162":3,"1164":1,"1174":2,"1181":4,"1185":4,"1199":1,"1204":1,"1206":1,"1208":1,"1210":1,"1213":1,"1224":1,"1228":1,"1233":1,"1251":1,"1281":2,"1309":2,"1312":1,"1313":1,"1316":1,"1321":1,"1322":1,"1326":2,"1333":1,"1350":1,"1357":1,"1358":2,"1367":1,"1374":1,"1382":2,"1386":1,"1392":1,"1395":1,"1396":1,"1399":1,"1401":1,"1402":2,"1403":1,"1406":2,"1408":1,"1411":1,"1412":1,"1413":2,"1420":1,"1430":2,"1431":2,"1438":1,"1447":1,"1457":1,"1458":2,"1459":2,"1489":1,"1493":1,"1511":3,"1521":2,"1522":1,"1558":2,"1569":2,"1570":1,"1575":2,"1632":1,"1639":1,"1644":1,"1651":1,"1662":3,"1664":1,"1688":1,"1690":2,"1707":1,"1717":2,"1738":1,"1740":1,"1741":1,"1743":4,"1747":1,"1748":1,"1771":1,"1792":56,"1801":1,"1813":1,"1823":4,"1824":2,"1825":2,"1832":1,"1834":1,"1839":1,"1840":3,"1844":1,"1845":1,"1851":1,"1856":1,"1858":2,"1862":2,"1867":1,"1868":1,"1874":1,"1878":1,"1883":1,"1898":3,"1906":3,"1908":1,"1911":3,"1922":1,"1924":1,"1929":1,"1930":1,"1942":1,"1955":1,"1956":1,"1958":2,"1961":1,"1967":1,"1970":1,"1983":2,"2004":2,"2005":1,"2006":1,"2011":2,"2018":1,"2019":2,"2021":1,"2025":2,"2063":1,"2072":2,"2081":1,"2092":1,"2094":1,"2097":1,"2104":1,"2128":1,"2153":1,"2156":1,"2157":1,"2166":1,"2173":1,"2187":2,"2195":1,"2209":1,"2212":1,"2222":2,"2223":3,"2247":3,"2250":1,"2273":1,"2274":1,"2284":1,"2288":1,"2289":1,"2291":1,"2296":2,"2297":3,"2309":1,"2314":1,"2319":1,"2321":1,"2323":1,"2330":1,"2332":2,"2337":1,"2338":2,"2339":1,"2344":1,"2350":1,"2353":1,"2354":2,"2360":1,"2375":4,"2379":2,"2380":3,"2382":1,"2386":1,"2389":1,"2392":2,"2393":1,"2394":2,"2395":1,"2398":2,"2399":1,"2402":1,"2411":1,"2414":2,"2420":1,"2421":4,"2423":2,"2427":1,"2429":1,"2430":2,"2431":2,"2432":1,"2434":2,"2436":1,"2441":1,"2442":1,"2445":1,"2448":1,"2450":1,"2451":1,"2452":1,"2466":3,"2468":1,"2470":2,"2472":1,"2481":7,"2482":3,"2483":3,"2486":3,"2487":2,"2489":2,"2490":2,"2493":1,"2498":1,"2502":3,"2505":1,"2506":1,"2512":2,"2519":1,"2522":1,"2528":2,"2533":1,"2535":1,"2537":4,"2539":1,"2540":2,"2542":1,"2543":1,"2544":1,"2554":1,"2565":2,"2577":1,"2580":1,"2586":1,"2589":1,"2608":1,"2611":1,"2632":2,"2633":2,"2635":2,"2641":1,"2656":3,"2664":1,"2678":1,"2712":1,"2721":2,"2741":1,"2755":1,"2763":1,"2765":3,"2810":1,"2822":1,"2829":1,"2831":1,"2832":1,"2833":2,"2834":5,"2841":2,"2853":1,"2856":1,"2864":1,"2867":2,"2868":1,"2869":4,"2876":1}}],["ongoing",{"2":{"865":1,"869":1,"872":1,"1206":1}}],["onion",{"2":{"840":1}}],["onmessage",{"2":{"666":1,"1317":4,"1318":2,"1321":1,"1416":6,"2247":8,"2830":3,"2836":1}}],["once",{"0":{"2504":1},"2":{"101":1,"306":1,"314":1,"386":1,"390":1,"650":1,"666":1,"696":1,"705":1,"711":1,"841":3,"845":2,"847":1,"851":1,"852":1,"865":1,"872":1,"924":2,"1129":3,"1159":1,"1181":1,"1190":1,"1192":1,"1193":2,"1281":1,"1305":1,"1402":1,"1405":2,"1406":1,"1419":1,"1428":1,"1429":1,"1722":1,"1792":6,"1823":1,"1824":1,"1862":1,"2038":1,"2040":2,"2094":2,"2098":1,"2106":2,"2107":1,"2112":1,"2147":1,"2158":1,"2167":1,"2185":1,"2224":1,"2320":1,"2392":1,"2450":1,"2452":1,"2463":1,"2466":1,"2474":1,"2476":1,"2483":1,"2498":1,"2502":1,"2504":2,"2532":3,"2534":2,"2537":7,"2546":1,"2621":1,"2622":1,"2762":1,"2766":1,"2851":1,"2871":3,"2873":1,"2878":2,"2879":1}}],["onerror",{"2":{"894":1,"1366":1,"2267":1}}],["ones",{"2":{"286":1,"448":1,"710":1,"845":1,"864":2,"872":1,"1121":1,"1180":1,"1193":1,"1398":1,"1792":1,"1922":1,"2107":1,"2397":1,"2468":1,"2614":1,"2684":1,"2802":1,"2810":1}}],["one",{"0":{"312":1,"812":1,"904":1,"959":1,"1039":1,"1043":1,"1370":1,"1418":1,"1577":1,"2725":1,"2740":1},"1":{"960":1},"2":{"21":1,"74":1,"102":1,"109":1,"175":1,"179":1,"214":2,"216":1,"237":1,"263":1,"297":3,"298":1,"302":1,"307":2,"308":1,"347":1,"357":1,"385":1,"386":1,"439":1,"448":1,"453":1,"479":1,"529":2,"609":1,"650":1,"663":3,"666":1,"667":1,"685":1,"686":1,"699":1,"703":1,"704":1,"713":1,"716":1,"763":1,"773":1,"778":1,"831":2,"835":1,"836":1,"838":1,"840":2,"841":11,"843":1,"844":6,"845":2,"847":1,"848":5,"849":3,"851":1,"852":6,"853":1,"854":2,"855":2,"856":2,"857":2,"859":1,"860":2,"861":2,"863":3,"864":7,"865":5,"866":1,"868":5,"871":5,"872":5,"873":6,"874":2,"876":1,"887":2,"903":1,"904":1,"910":2,"911":1,"913":2,"916":1,"918":2,"919":2,"920":1,"922":1,"947":1,"948":3,"949":2,"968":1,"971":1,"1010":1,"1011":1,"1017":1,"1035":1,"1037":2,"1038":2,"1039":1,"1043":1,"1044":3,"1045":1,"1046":1,"1069":2,"1070":1,"1073":1,"1075":2,"1076":3,"1077":1,"1078":2,"1079":4,"1080":1,"1081":2,"1082":1,"1098":3,"1099":1,"1101":1,"1105":1,"1121":1,"1134":1,"1135":1,"1137":1,"1138":1,"1147":1,"1150":2,"1156":1,"1162":1,"1164":1,"1184":1,"1191":1,"1200":1,"1203":1,"1232":1,"1235":1,"1253":1,"1279":1,"1303":1,"1305":1,"1327":1,"1329":1,"1352":2,"1355":1,"1359":1,"1370":2,"1372":1,"1376":1,"1377":2,"1378":1,"1382":7,"1385":1,"1386":2,"1393":1,"1394":2,"1395":1,"1398":1,"1399":2,"1400":1,"1401":2,"1402":2,"1404":1,"1405":1,"1406":2,"1410":1,"1414":3,"1415":1,"1416":3,"1422":1,"1427":1,"1429":1,"1430":2,"1431":1,"1435":1,"1436":1,"1439":2,"1441":2,"1442":1,"1458":2,"1459":1,"1460":3,"1480":1,"1519":2,"1521":1,"1522":4,"1559":1,"1571":1,"1575":1,"1579":1,"1581":2,"1608":1,"1621":1,"1640":1,"1741":1,"1743":1,"1745":1,"1756":2,"1792":28,"1851":1,"1861":2,"1909":2,"1911":3,"1930":1,"1955":1,"1959":1,"1974":1,"2094":1,"2096":1,"2097":1,"2103":1,"2109":1,"2110":1,"2111":2,"2113":2,"2153":1,"2160":1,"2166":1,"2167":1,"2171":1,"2172":1,"2175":4,"2176":2,"2184":1,"2199":1,"2221":1,"2222":2,"2272":1,"2284":2,"2289":1,"2319":1,"2320":2,"2344":1,"2346":1,"2357":1,"2366":2,"2375":5,"2379":1,"2380":7,"2381":1,"2382":1,"2389":1,"2391":1,"2395":1,"2406":1,"2411":1,"2412":1,"2421":1,"2422":1,"2424":1,"2428":1,"2431":1,"2433":1,"2438":3,"2440":1,"2462":1,"2463":2,"2464":2,"2465":2,"2466":3,"2471":1,"2479":1,"2482":2,"2498":2,"2502":2,"2504":5,"2506":3,"2518":1,"2519":1,"2528":3,"2529":2,"2530":4,"2531":4,"2532":2,"2533":2,"2535":5,"2537":5,"2540":3,"2541":1,"2542":1,"2543":3,"2545":2,"2546":2,"2586":1,"2597":2,"2607":1,"2615":1,"2721":1,"2729":1,"2731":2,"2742":1,"2762":1,"2765":1,"2766":1,"2767":1,"2768":1,"2807":1,"2809":1,"2811":1,"2812":1,"2814":1,"2821":1,"2827":1,"2828":2,"2830":1,"2832":1,"2833":1,"2834":2,"2835":1,"2842":1,"2844":1,"2845":3,"2850":2,"2855":1,"2857":1,"2864":3,"2865":1,"2866":1,"2867":1,"2868":3,"2869":2,"2873":1,"2877":1,"2879":1}}],["on",{"0":{"24":1,"381":1,"668":1,"669":1,"812":1,"870":1,"985":1,"1054":1,"1134":2,"1389":1,"1524":1,"2379":1,"2398":1,"2404":1,"2482":1,"2495":1,"2504":1,"2582":1},"1":{"871":1,"872":1,"873":1,"874":1,"875":1},"2":{"3":1,"7":1,"8":1,"9":2,"16":1,"17":3,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"35":1,"37":1,"38":1,"39":1,"40":1,"41":1,"48":1,"49":1,"50":1,"60":1,"61":1,"62":1,"71":1,"72":1,"75":2,"83":1,"84":1,"85":1,"86":1,"87":2,"94":1,"95":1,"96":1,"97":1,"104":1,"105":1,"106":1,"107":1,"115":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"128":1,"129":1,"136":1,"137":1,"138":1,"139":1,"142":1,"147":1,"148":1,"149":1,"157":1,"174":1,"175":1,"177":1,"180":1,"184":4,"186":4,"187":3,"188":2,"195":1,"196":1,"201":1,"203":1,"206":1,"207":1,"208":1,"209":2,"210":1,"211":2,"212":1,"213":10,"214":8,"215":3,"220":1,"223":1,"230":1,"239":1,"244":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"254":1,"255":1,"256":1,"257":1,"258":1,"263":2,"264":2,"265":1,"266":1,"277":3,"278":3,"285":1,"288":1,"289":1,"290":1,"291":1,"292":1,"298":6,"307":2,"308":2,"309":2,"310":2,"312":2,"313":1,"314":1,"316":1,"317":1,"320":1,"322":1,"323":1,"324":1,"325":1,"327":1,"332":1,"333":1,"334":1,"335":1,"342":1,"343":1,"344":1,"347":1,"351":1,"352":2,"353":1,"354":1,"360":1,"361":1,"365":1,"366":1,"369":1,"374":2,"378":1,"386":2,"390":1,"392":1,"393":1,"394":1,"401":1,"402":1,"403":1,"405":1,"406":1,"408":2,"415":1,"417":1,"418":1,"419":1,"420":1,"421":2,"423":1,"426":1,"427":1,"428":1,"436":4,"438":1,"439":1,"441":1,"442":1,"443":1,"444":1,"445":2,"449":1,"451":2,"452":1,"453":1,"454":1,"466":1,"467":1,"468":1,"469":1,"476":1,"477":1,"478":1,"479":1,"480":1,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"501":1,"502":1,"503":1,"510":1,"511":1,"520":1,"521":1,"522":2,"523":1,"527":1,"529":1,"531":2,"532":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"553":1,"554":1,"555":1,"560":3,"562":1,"563":1,"567":1,"572":1,"573":1,"574":1,"575":1,"577":2,"584":1,"587":1,"592":1,"593":1,"594":1,"601":1,"602":1,"603":1,"604":1,"611":1,"616":1,"619":3,"631":1,"632":1,"633":1,"641":1,"642":1,"643":1,"644":1,"645":1,"646":1,"650":5,"651":1,"658":1,"660":2,"661":2,"662":2,"664":2,"666":2,"667":1,"668":1,"669":2,"677":1,"678":1,"679":1,"683":2,"684":1,"686":1,"693":1,"694":1,"695":2,"704":1,"706":2,"707":1,"708":1,"714":1,"716":1,"717":1,"722":1,"723":1,"724":2,"732":1,"733":1,"734":1,"735":1,"736":1,"746":1,"750":1,"751":1,"752":1,"754":1,"755":1,"756":1,"758":1,"764":1,"767":1,"774":1,"775":1,"777":2,"781":1,"783":1,"785":1,"787":1,"789":1,"791":1,"797":1,"798":1,"799":1,"800":1,"809":1,"811":1,"812":1,"813":1,"814":1,"815":1,"817":1,"818":1,"827":1,"828":2,"829":1,"831":2,"834":1,"835":2,"837":3,"838":1,"840":2,"841":5,"843":2,"844":1,"845":3,"847":4,"848":14,"849":3,"851":4,"852":5,"855":1,"859":2,"860":2,"861":1,"864":1,"866":4,"868":4,"869":2,"871":3,"872":8,"873":6,"875":1,"876":8,"878":1,"879":1,"886":1,"892":1,"898":1,"899":1,"900":1,"902":1,"903":1,"904":3,"907":1,"910":1,"911":1,"914":3,"915":2,"916":5,"917":1,"918":1,"919":3,"920":3,"922":1,"924":1,"926":3,"930":1,"932":1,"933":3,"934":2,"935":1,"936":1,"941":1,"946":1,"949":1,"957":2,"960":2,"961":1,"964":1,"965":1,"967":1,"976":1,"977":1,"978":1,"979":3,"980":2,"981":1,"985":3,"986":2,"988":2,"990":2,"994":1,"995":1,"1003":1,"1005":2,"1009":2,"1013":1,"1017":1,"1019":2,"1021":1,"1030":1,"1032":5,"1033":2,"1034":3,"1037":1,"1043":3,"1044":3,"1045":1,"1047":1,"1049":6,"1054":4,"1055":2,"1057":1,"1058":1,"1060":1,"1065":1,"1067":4,"1068":1,"1069":1,"1070":2,"1071":1,"1073":2,"1074":2,"1076":6,"1078":3,"1079":2,"1080":2,"1084":1,"1086":1,"1088":1,"1094":5,"1095":1,"1096":1,"1098":6,"1101":2,"1102":1,"1104":1,"1105":10,"1107":2,"1108":1,"1111":1,"1113":3,"1114":2,"1117":1,"1121":2,"1125":1,"1128":1,"1130":1,"1133":2,"1134":3,"1135":2,"1138":3,"1139":1,"1141":1,"1142":2,"1143":1,"1149":1,"1150":4,"1154":2,"1158":1,"1161":1,"1162":1,"1163":3,"1166":1,"1176":5,"1179":2,"1183":2,"1187":1,"1189":1,"1193":1,"1196":1,"1197":1,"1203":1,"1204":1,"1205":1,"1208":1,"1209":1,"1213":2,"1229":1,"1239":1,"1245":1,"1253":1,"1255":1,"1272":1,"1280":1,"1303":1,"1305":1,"1308":1,"1309":1,"1310":1,"1312":1,"1313":2,"1314":1,"1315":1,"1320":8,"1321":1,"1324":1,"1325":1,"1326":1,"1331":1,"1332":1,"1334":1,"1336":1,"1337":1,"1338":2,"1339":2,"1345":2,"1347":1,"1348":1,"1351":2,"1355":1,"1358":3,"1359":1,"1362":1,"1364":1,"1366":1,"1368":1,"1371":1,"1376":2,"1378":4,"1379":1,"1382":5,"1384":2,"1385":5,"1386":6,"1387":1,"1388":2,"1389":1,"1390":2,"1393":2,"1394":1,"1395":1,"1396":2,"1397":1,"1398":4,"1399":3,"1400":3,"1401":2,"1402":1,"1403":4,"1404":2,"1405":1,"1406":1,"1407":5,"1408":1,"1409":3,"1414":1,"1418":2,"1419":2,"1421":1,"1422":2,"1423":1,"1426":1,"1427":1,"1430":2,"1431":3,"1432":1,"1433":1,"1435":3,"1436":3,"1437":1,"1440":1,"1447":1,"1449":3,"1460":3,"1465":1,"1467":1,"1472":3,"1486":1,"1499":1,"1504":2,"1513":1,"1515":1,"1517":1,"1519":1,"1522":1,"1525":1,"1529":4,"1531":2,"1532":2,"1533":1,"1535":1,"1537":1,"1547":1,"1567":1,"1569":2,"1591":1,"1599":3,"1620":1,"1632":1,"1644":1,"1653":2,"1655":1,"1662":4,"1664":5,"1670":1,"1686":1,"1689":1,"1699":1,"1704":1,"1718":1,"1722":1,"1726":2,"1728":1,"1730":3,"1731":2,"1732":1,"1733":1,"1736":2,"1738":3,"1740":7,"1741":3,"1742":2,"1743":3,"1744":2,"1747":1,"1759":2,"1789":1,"1792":50,"1822":3,"1825":3,"1832":1,"1833":2,"1834":1,"1851":3,"1855":1,"1856":3,"1879":1,"1911":1,"1912":2,"1920":1,"1921":1,"1923":1,"1924":4,"1925":2,"1926":1,"1929":2,"1930":2,"1955":1,"1961":2,"1974":1,"2020":1,"2040":1,"2060":1,"2075":1,"2076":1,"2077":1,"2078":1,"2079":2,"2094":2,"2096":1,"2099":1,"2106":3,"2109":2,"2110":2,"2111":2,"2116":1,"2117":2,"2118":1,"2119":1,"2133":1,"2134":1,"2136":1,"2141":1,"2147":1,"2149":1,"2153":1,"2154":1,"2155":3,"2156":2,"2157":4,"2158":2,"2160":3,"2164":1,"2167":1,"2171":1,"2175":1,"2176":1,"2177":2,"2181":1,"2183":1,"2184":1,"2185":1,"2186":1,"2187":3,"2190":1,"2192":1,"2193":5,"2194":1,"2196":5,"2199":3,"2200":3,"2201":1,"2202":3,"2204":2,"2205":3,"2206":2,"2207":1,"2214":2,"2215":2,"2216":1,"2217":1,"2218":1,"2221":5,"2222":2,"2223":4,"2247":1,"2252":7,"2255":6,"2258":1,"2261":1,"2264":4,"2265":1,"2267":2,"2270":2,"2277":5,"2283":2,"2284":1,"2285":1,"2288":7,"2289":3,"2290":2,"2292":3,"2293":4,"2294":3,"2296":2,"2297":3,"2303":1,"2304":1,"2305":1,"2306":1,"2309":1,"2314":4,"2323":1,"2332":2,"2333":2,"2337":2,"2338":1,"2339":1,"2340":3,"2344":3,"2346":5,"2353":2,"2358":1,"2362":1,"2363":1,"2367":1,"2375":4,"2379":1,"2380":5,"2382":3,"2385":2,"2388":1,"2389":2,"2391":3,"2392":1,"2393":1,"2394":1,"2396":1,"2397":3,"2398":5,"2402":1,"2406":1,"2407":2,"2413":1,"2414":2,"2415":2,"2419":2,"2420":1,"2422":1,"2425":4,"2429":1,"2430":1,"2431":1,"2432":3,"2433":1,"2435":2,"2436":1,"2438":4,"2444":1,"2446":1,"2450":2,"2451":2,"2452":1,"2454":2,"2455":2,"2465":1,"2466":3,"2476":1,"2479":1,"2481":5,"2482":1,"2483":1,"2490":1,"2494":1,"2495":1,"2498":1,"2500":1,"2502":2,"2504":3,"2506":1,"2509":2,"2513":1,"2518":1,"2520":3,"2521":1,"2523":1,"2525":2,"2526":2,"2527":2,"2530":4,"2531":2,"2532":5,"2533":1,"2534":2,"2535":1,"2537":6,"2539":2,"2540":1,"2541":3,"2542":2,"2543":7,"2545":3,"2546":4,"2549":10,"2551":1,"2575":5,"2576":2,"2580":4,"2581":4,"2587":2,"2591":2,"2596":1,"2597":1,"2607":2,"2608":1,"2614":1,"2625":2,"2632":1,"2634":1,"2635":1,"2638":1,"2648":1,"2649":1,"2651":1,"2652":1,"2653":2,"2655":1,"2656":1,"2664":3,"2665":2,"2679":2,"2682":1,"2694":1,"2696":1,"2701":1,"2702":2,"2703":1,"2704":1,"2705":1,"2719":1,"2721":4,"2739":2,"2742":3,"2744":1,"2755":3,"2757":1,"2758":1,"2760":1,"2761":1,"2762":3,"2763":1,"2764":2,"2765":4,"2766":3,"2767":3,"2768":3,"2774":1,"2775":1,"2776":3,"2785":2,"2790":2,"2792":3,"2794":2,"2795":1,"2800":1,"2802":3,"2804":1,"2807":1,"2809":1,"2810":1,"2812":2,"2813":1,"2815":3,"2817":1,"2822":1,"2823":1,"2824":4,"2825":2,"2829":1,"2830":1,"2831":1,"2832":2,"2834":3,"2835":2,"2836":2,"2838":1,"2839":1,"2840":1,"2852":1,"2855":1,"2857":1,"2858":1,"2860":1,"2862":2,"2866":1,"2867":3,"2868":1,"2869":2,"2870":1,"2871":4,"2872":1,"2873":2,"2874":1,"2876":1,"2877":1,"2878":6,"2880":2,"2881":2}}],["ors",{"2":{"2456":1}}],["orthogonally",{"2":{"2537":1}}],["orthogonal",{"2":{"2423":1}}],["orthodoxy",{"2":{"845":2,"861":1}}],["orchestrators",{"2":{"1792":1,"2634":1}}],["orchestration",{"2":{"1100":1,"1108":2,"1762":1,"2346":1,"2634":1}}],["orchestrating",{"2":{"1088":1,"1746":1,"2347":1}}],["orphans",{"2":{"2534":1}}],["orphaned",{"2":{"1354":1}}],["orphan",{"2":{"992":1,"2157":1,"2543":1,"2546":1}}],["orange",{"2":{"2535":1}}],["oraoracle",{"2":{"918":1}}],["oracle",{"2":{"848":4,"918":3}}],["organization",{"2":{"1414":2,"1753":1,"1792":1}}],["organizations",{"2":{"841":1,"1013":1}}],["organized",{"2":{"848":1}}],["org",{"2":{"841":1,"860":1,"1676":1,"1677":1,"1792":8,"2255":4,"2632":3}}],["orientation",{"2":{"1792":2}}],["oriented",{"2":{"840":1,"841":4,"843":1,"1128":1,"1403":1,"1799":1,"1811":1,"2013":1,"2794":1}}],["originate",{"2":{"2282":1}}],["originates",{"2":{"1738":1}}],["originating",{"2":{"650":1,"668":1,"669":1}}],["originally",{"2":{"1128":1}}],["originals",{"2":{"843":1}}],["original",{"0":{"902":1},"1":{"903":1},"2":{"299":1,"348":1,"370":1,"383":1,"384":1,"388":1,"414":1,"415":1,"423":1,"652":1,"748":1,"762":1,"772":1,"809":1,"818":1,"857":1,"865":1,"883":1,"902":3,"903":3,"995":1,"1002":1,"1107":1,"1148":1,"1235":1,"1335":1,"1338":3,"1518":1,"1705":2,"1792":5,"1885":1,"2265":1,"2302":2,"2303":1,"2304":1,"2432":1,"2435":1,"2495":1,"2575":1,"2590":1,"2633":2}}],["origins",{"0":{"1640":1,"1641":1},"1":{"1641":1},"2":{"545":1,"1225":1,"1449":1,"1637":1,"1639":2,"1640":2,"1641":1,"1644":1,"1646":2,"1792":5,"1875":1,"2419":1}}],["origin",{"0":{"1449":1,"1714":1,"2022":1,"2023":1,"2024":1,"2025":1,"2429":1},"1":{"2023":1,"2024":1,"2025":1},"2":{"545":1,"1243":1,"1382":1,"1447":1,"1637":1,"1639":1,"1640":2,"1641":1,"1644":2,"1788":1,"1792":38,"1795":1,"1823":5,"1824":2,"1867":1,"1875":2,"1963":1,"2015":2,"2016":5,"2018":1,"2019":19,"2021":1,"2023":6,"2024":4,"2025":6,"2027":2,"2029":4,"2030":1,"2225":1,"2425":2,"2427":1,"2429":1,"2435":1,"2436":1,"2438":3,"2481":2,"2486":1,"2492":2,"2627":1,"2632":34}}],["orms",{"2":{"1382":1}}],["orm",{"2":{"832":1,"840":1,"851":2,"852":1,"854":1,"869":1,"871":3,"874":2,"875":1,"876":1,"945":1,"993":1,"1006":2,"1007":1,"1008":1,"1276":1,"1366":1,"1403":1,"1405":5,"1440":1,"1441":1,"2709":1}}],["orwell",{"2":{"335":2,"913":1,"914":2,"916":3,"917":2,"918":3,"919":2,"2586":3}}],["ordinal",{"2":{"1792":1,"2109":1,"2110":1,"2530":1,"2540":1}}],["ordinary",{"2":{"297":1,"848":1,"1253":1,"2438":1,"2526":1,"2529":1,"2545":1,"2739":1,"2834":1,"2860":2,"2865":1,"2868":1}}],["orderid",{"2":{"1044":1,"1107":2,"1193":1}}],["ordering",{"0":{"716":1},"2":{"868":1,"1096":1,"1135":1,"1738":1,"2490":1,"2498":1}}],["ordered",{"2":{"860":1,"1044":1,"1403":1,"1792":1,"1956":1,"2379":1,"2741":1,"2868":1,"2875":1}}],["orders",{"2":{"168":1,"352":3,"406":2,"427":3,"451":5,"562":3,"563":2,"565":3,"566":4,"614":2,"841":1,"856":1,"885":1,"1105":1,"1107":1,"1179":2,"1193":2,"1345":5,"1398":10,"1435":1,"1440":1,"1744":3,"1745":4,"2320":3,"2339":2,"2340":5,"2346":7,"2380":1,"2432":2,"2438":2,"2727":1,"2733":1,"2767":7,"2774":3,"2868":1}}],["order",{"0":{"52":1,"1910":1,"2424":1,"2433":1},"2":{"23":1,"31":1,"52":1,"214":1,"263":1,"319":2,"349":1,"352":2,"406":5,"427":3,"439":1,"448":1,"529":1,"531":2,"565":4,"699":1,"704":1,"714":1,"716":2,"818":1,"834":2,"835":1,"851":1,"856":1,"860":2,"1038":1,"1041":1,"1042":1,"1043":1,"1044":4,"1070":1,"1079":1,"1105":4,"1125":1,"1173":1,"1179":5,"1187":2,"1188":4,"1189":2,"1191":3,"1192":4,"1193":7,"1310":1,"1373":4,"1385":1,"1388":1,"1398":2,"1429":1,"1439":2,"1440":1,"1523":1,"1792":4,"1852":1,"1910":1,"2094":2,"2112":1,"2149":1,"2207":1,"2284":1,"2320":4,"2344":1,"2380":1,"2383":1,"2422":2,"2424":2,"2433":1,"2435":1,"2481":1,"2528":1,"2532":1,"2533":1,"2537":2,"2575":1,"2681":1,"2684":1,"2741":1,"2774":2,"2813":1,"2825":1,"2836":1,"2863":1,"2868":2,"2870":1,"2871":1,"2873":1}}],["or",{"0":{"643":1,"898":1,"1070":2,"2496":1,"2713":1,"2726":1,"2731":1},"2":{"3":1,"4":1,"13":2,"14":1,"22":1,"25":1,"29":1,"31":1,"33":3,"35":2,"44":1,"55":1,"63":2,"68":1,"75":1,"78":1,"91":1,"101":1,"108":1,"122":1,"125":1,"132":1,"144":1,"165":2,"171":1,"173":1,"180":1,"182":1,"188":2,"192":1,"203":1,"210":1,"211":1,"213":1,"214":1,"215":1,"223":1,"239":1,"241":1,"243":1,"245":2,"253":1,"258":2,"261":2,"267":1,"268":1,"277":1,"280":1,"282":1,"291":1,"296":2,"297":2,"299":2,"302":1,"305":1,"307":2,"310":2,"312":3,"317":1,"320":1,"328":1,"334":1,"335":1,"337":1,"339":1,"347":2,"357":1,"369":2,"370":2,"373":1,"376":1,"378":1,"382":2,"383":1,"384":1,"386":1,"388":4,"390":2,"409":1,"412":1,"422":1,"423":1,"433":1,"435":1,"436":3,"439":1,"446":2,"447":1,"458":1,"463":1,"464":1,"473":1,"480":2,"484":1,"497":1,"507":1,"512":1,"515":2,"527":2,"528":1,"529":2,"531":1,"549":1,"551":1,"569":1,"582":1,"587":1,"589":1,"598":1,"607":1,"618":1,"627":1,"636":2,"637":1,"638":1,"641":1,"643":1,"649":1,"669":1,"673":3,"683":1,"684":1,"685":1,"686":1,"693":1,"694":1,"696":1,"699":1,"701":1,"703":2,"704":2,"706":1,"709":2,"713":3,"714":2,"715":1,"720":5,"722":1,"723":1,"747":1,"770":1,"771":2,"794":1,"801":1,"807":1,"809":2,"816":1,"823":1,"833":2,"834":2,"835":1,"836":1,"837":4,"840":1,"841":3,"844":4,"845":3,"847":1,"848":9,"849":1,"851":1,"854":1,"856":1,"860":2,"865":2,"868":2,"869":6,"871":1,"872":4,"873":2,"875":2,"876":3,"878":1,"880":2,"881":1,"883":1,"884":1,"885":1,"886":1,"888":2,"897":1,"902":1,"903":1,"904":6,"907":3,"910":1,"914":1,"915":2,"916":4,"917":1,"918":2,"919":1,"922":1,"928":1,"929":1,"932":1,"933":1,"934":2,"935":1,"936":1,"941":1,"942":1,"953":1,"956":1,"957":1,"961":1,"966":1,"967":1,"971":1,"974":1,"979":1,"980":1,"982":2,"983":1,"987":1,"988":1,"990":1,"993":1,"994":2,"996":1,"1005":1,"1006":1,"1017":1,"1027":1,"1029":1,"1031":1,"1035":1,"1036":2,"1037":2,"1038":6,"1042":2,"1045":1,"1046":1,"1047":2,"1049":3,"1055":2,"1056":4,"1057":2,"1060":1,"1063":2,"1064":1,"1066":2,"1067":3,"1068":3,"1073":1,"1076":2,"1077":1,"1079":2,"1080":1,"1081":2,"1084":1,"1086":2,"1094":1,"1095":1,"1096":5,"1097":1,"1098":6,"1099":1,"1100":2,"1101":6,"1102":2,"1103":1,"1104":1,"1106":2,"1107":1,"1108":1,"1111":1,"1113":3,"1121":2,"1125":3,"1126":5,"1128":1,"1133":1,"1134":1,"1135":1,"1137":1,"1139":2,"1140":1,"1148":1,"1150":3,"1162":1,"1185":1,"1203":1,"1204":1,"1205":1,"1206":3,"1207":1,"1209":2,"1210":1,"1214":1,"1215":1,"1216":1,"1220":1,"1222":1,"1228":1,"1232":2,"1234":1,"1235":3,"1236":1,"1239":1,"1241":1,"1251":1,"1254":3,"1255":1,"1279":1,"1303":2,"1305":2,"1313":1,"1326":1,"1327":1,"1332":1,"1346":1,"1351":1,"1352":1,"1355":1,"1357":1,"1362":1,"1366":1,"1368":3,"1374":1,"1375":1,"1377":1,"1378":2,"1381":1,"1382":1,"1385":2,"1386":2,"1387":1,"1388":2,"1390":1,"1391":1,"1393":2,"1394":3,"1395":1,"1396":2,"1398":1,"1401":1,"1402":1,"1403":2,"1405":1,"1406":1,"1407":4,"1409":1,"1412":1,"1413":2,"1414":2,"1417":1,"1419":2,"1420":1,"1422":2,"1423":1,"1435":1,"1436":2,"1438":1,"1442":1,"1458":2,"1459":1,"1460":2,"1470":1,"1471":1,"1480":1,"1499":2,"1511":3,"1516":2,"1519":1,"1521":1,"1523":3,"1524":2,"1526":1,"1540":1,"1544":1,"1556":1,"1567":1,"1568":1,"1572":1,"1582":1,"1605":1,"1608":1,"1609":1,"1616":1,"1620":2,"1651":3,"1653":1,"1659":1,"1664":2,"1672":1,"1685":1,"1689":1,"1717":1,"1731":1,"1732":1,"1737":1,"1738":2,"1740":1,"1741":1,"1743":1,"1753":5,"1759":1,"1766":1,"1769":2,"1782":1,"1789":1,"1792":143,"1806":1,"1807":1,"1816":1,"1822":1,"1823":1,"1824":4,"1825":2,"1830":1,"1840":2,"1846":1,"1847":2,"1852":3,"1853":1,"1862":1,"1866":1,"1867":1,"1878":1,"1885":2,"1890":1,"1901":1,"1906":2,"1911":1,"1915":1,"1917":3,"1922":2,"1924":1,"1925":2,"1927":1,"1955":1,"1958":1,"1959":1,"1961":1,"1969":1,"1974":2,"2000":2,"2001":1,"2007":1,"2010":2,"2018":1,"2024":1,"2038":1,"2039":1,"2040":5,"2047":1,"2059":1,"2060":2,"2063":1,"2072":2,"2075":1,"2077":1,"2083":1,"2094":2,"2097":1,"2098":1,"2099":1,"2100":1,"2101":1,"2106":4,"2107":1,"2109":1,"2110":2,"2111":2,"2112":1,"2113":3,"2125":1,"2131":2,"2137":1,"2140":1,"2144":1,"2153":1,"2155":1,"2156":4,"2167":1,"2170":2,"2171":1,"2172":1,"2177":1,"2178":1,"2181":1,"2183":1,"2184":1,"2185":1,"2193":1,"2195":2,"2197":2,"2200":1,"2210":1,"2222":2,"2223":1,"2247":2,"2251":1,"2252":11,"2253":4,"2254":1,"2255":4,"2256":2,"2257":1,"2258":3,"2264":2,"2265":1,"2271":1,"2272":1,"2277":3,"2282":2,"2284":1,"2288":1,"2289":2,"2291":2,"2296":3,"2297":1,"2301":1,"2309":1,"2320":1,"2321":1,"2325":1,"2330":1,"2334":2,"2337":1,"2339":1,"2352":1,"2353":2,"2375":5,"2379":1,"2380":9,"2381":1,"2383":3,"2384":1,"2389":2,"2392":3,"2394":1,"2395":1,"2396":1,"2397":2,"2398":2,"2401":1,"2405":1,"2406":1,"2412":1,"2416":1,"2419":2,"2422":2,"2429":1,"2430":1,"2431":1,"2436":1,"2438":5,"2450":1,"2451":1,"2464":1,"2466":4,"2470":1,"2471":1,"2476":3,"2481":3,"2482":2,"2483":2,"2484":1,"2489":1,"2490":3,"2496":1,"2497":1,"2502":1,"2509":1,"2517":1,"2519":2,"2525":1,"2527":2,"2528":1,"2529":3,"2530":3,"2531":1,"2532":4,"2533":4,"2534":1,"2537":6,"2540":2,"2541":2,"2542":4,"2544":1,"2549":2,"2565":2,"2572":1,"2575":4,"2586":1,"2587":4,"2589":1,"2600":1,"2607":2,"2611":1,"2615":1,"2625":1,"2632":1,"2634":3,"2635":6,"2650":1,"2664":1,"2667":1,"2669":1,"2670":1,"2673":1,"2678":1,"2679":1,"2684":2,"2685":1,"2688":1,"2694":1,"2695":1,"2712":1,"2716":1,"2717":1,"2719":1,"2721":2,"2723":1,"2725":1,"2727":1,"2732":1,"2733":1,"2734":2,"2742":3,"2745":1,"2751":1,"2754":1,"2756":1,"2758":1,"2759":2,"2760":1,"2762":2,"2763":1,"2764":2,"2765":1,"2772":1,"2781":1,"2786":2,"2797":1,"2802":2,"2803":2,"2806":2,"2809":2,"2810":2,"2812":1,"2814":1,"2815":1,"2817":1,"2819":1,"2820":1,"2821":1,"2828":1,"2830":1,"2832":2,"2833":1,"2834":1,"2835":1,"2841":2,"2844":1,"2845":2,"2851":1,"2852":1,"2855":1,"2858":1,"2862":2,"2864":1,"2865":1,"2866":1,"2867":1,"2870":1,"2871":3,"2875":1,"2876":1,"2877":1,"2878":3,"2881":4}}],["often",{"2":{"831":1,"833":1,"843":1,"869":1,"922":1,"941":1,"948":1,"1013":1,"1014":1,"1125":1,"1153":1,"1206":2,"1511":1,"1738":1,"1792":1,"1953":1,"2282":1,"2502":1,"2559":1,"2769":1,"2834":1}}],["offload",{"2":{"2177":1}}],["offloading",{"2":{"1049":1,"2177":1}}],["offset",{"2":{"1792":3,"1856":4,"2224":3,"2450":3,"2451":4,"2452":1,"2453":1,"2454":2,"2455":1,"2456":1}}],["offs",{"2":{"1404":1}}],["official",{"2":{"869":1,"1101":1,"1420":1,"2779":1}}],["officedocument",{"2":{"772":1,"773":1,"893":1}}],["offer",{"2":{"1098":1,"1280":1,"2537":1}}],["offers",{"2":{"834":1,"865":1,"1088":1,"1094":1,"1097":1,"1098":1,"1107":1,"1330":1,"1385":1,"2482":1,"2789":1}}],["offending",{"2":{"102":1,"109":1,"1449":1,"1460":1,"1792":1,"2375":1,"2376":1,"2428":1,"2435":1}}],["off",{"0":{"2544":1,"2724":1},"2":{"88":1,"307":1,"720":1,"848":1,"849":1,"873":1,"874":1,"948":1,"1007":1,"1045":1,"1079":1,"1139":1,"1253":1,"1384":2,"1605":1,"1792":4,"1801":1,"1802":1,"1851":1,"2104":2,"2114":1,"2221":1,"2382":1,"2497":1,"2527":1,"2530":1,"2534":1,"2536":2,"2544":6,"2688":1,"2752":3,"2765":1,"2794":1,"2800":2,"2801":2,"2862":1,"2880":2}}],["of",{"0":{"22":1,"324":1,"335":1,"839":2,"873":1,"885":1,"916":1,"922":1,"975":1,"999":1,"1000":1,"1185":1,"1203":1,"1246":1,"1281":1,"1403":1,"1405":1,"1406":1,"1526":1,"2437":1,"2487":1,"2586":1,"2726":1,"2734":1,"2740":1},"1":{"840":2,"841":2,"842":2,"843":2,"844":2,"845":2,"846":2,"847":2,"848":2,"849":2,"850":2,"851":2,"852":2,"853":2,"854":2,"855":2,"856":2,"857":2,"858":2,"859":2,"860":2,"861":2,"862":2,"863":2,"864":2,"865":2,"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1},"2":{"1":3,"3":1,"17":1,"21":1,"22":1,"23":1,"41":1,"51":2,"74":3,"75":1,"78":1,"81":1,"88":1,"108":1,"113":1,"119":1,"161":1,"163":1,"165":1,"167":1,"175":1,"179":1,"212":1,"213":1,"214":3,"227":1,"229":1,"253":1,"298":1,"302":1,"304":1,"305":1,"307":1,"308":2,"309":1,"310":1,"316":1,"317":1,"319":2,"328":1,"334":1,"335":3,"336":1,"337":3,"347":1,"349":1,"352":1,"358":2,"360":2,"361":2,"363":2,"364":2,"365":1,"369":3,"370":1,"375":1,"377":1,"378":1,"382":1,"386":1,"387":1,"388":1,"390":1,"394":1,"414":3,"422":1,"436":1,"439":1,"446":1,"448":4,"449":1,"454":1,"479":1,"480":1,"484":1,"494":1,"522":1,"527":1,"533":1,"567":1,"575":1,"595":1,"607":1,"615":1,"617":1,"639":1,"643":1,"644":1,"645":1,"646":1,"650":1,"663":1,"673":1,"685":2,"689":2,"693":1,"698":2,"704":1,"711":1,"716":1,"720":1,"741":1,"747":3,"748":1,"760":1,"761":1,"762":1,"770":1,"771":2,"772":1,"773":1,"776":1,"781":2,"782":2,"784":2,"786":1,"788":1,"809":1,"823":1,"831":2,"832":2,"834":1,"835":2,"836":1,"838":3,"840":7,"841":7,"843":11,"844":18,"845":9,"847":4,"848":7,"849":8,"851":23,"852":18,"855":3,"856":1,"857":9,"859":7,"860":6,"861":4,"863":2,"864":6,"865":7,"866":1,"867":1,"868":10,"869":11,"871":7,"872":25,"873":14,"874":6,"875":1,"876":4,"877":1,"879":3,"880":2,"892":1,"894":1,"910":1,"911":1,"912":2,"913":1,"914":2,"916":6,"917":1,"918":5,"919":5,"920":9,"921":2,"922":1,"924":1,"928":2,"929":1,"932":2,"940":1,"946":1,"947":4,"948":2,"951":1,"953":1,"966":1,"968":1,"969":2,"971":2,"972":1,"974":1,"975":4,"981":1,"982":1,"983":1,"985":2,"992":2,"995":1,"996":3,"1005":2,"1006":1,"1007":1,"1008":1,"1009":1,"1010":1,"1013":1,"1015":1,"1021":1,"1024":2,"1026":1,"1032":1,"1033":1,"1035":1,"1036":2,"1037":9,"1038":2,"1039":1,"1041":1,"1044":3,"1046":2,"1049":1,"1058":1,"1059":1,"1064":6,"1065":3,"1066":1,"1069":1,"1073":2,"1074":2,"1075":2,"1076":3,"1077":2,"1078":1,"1081":2,"1082":2,"1083":1,"1088":2,"1094":2,"1096":1,"1097":3,"1102":2,"1104":1,"1105":1,"1108":1,"1114":1,"1121":1,"1122":1,"1123":1,"1128":2,"1129":3,"1132":1,"1133":5,"1134":1,"1135":1,"1136":1,"1148":1,"1150":1,"1151":1,"1157":2,"1160":1,"1161":1,"1162":1,"1164":2,"1165":2,"1167":1,"1168":2,"1169":1,"1171":1,"1172":1,"1175":1,"1176":3,"1178":1,"1181":4,"1185":1,"1188":1,"1189":1,"1193":1,"1196":1,"1203":1,"1208":1,"1209":1,"1211":1,"1217":1,"1224":1,"1232":1,"1234":1,"1247":1,"1254":4,"1255":1,"1278":1,"1281":5,"1302":3,"1304":1,"1305":1,"1309":1,"1322":1,"1324":2,"1325":2,"1327":1,"1328":1,"1329":1,"1351":2,"1366":2,"1367":1,"1368":1,"1370":1,"1373":1,"1375":1,"1378":1,"1381":1,"1382":10,"1384":1,"1385":17,"1386":8,"1388":1,"1390":4,"1391":1,"1393":1,"1394":8,"1395":2,"1396":4,"1398":5,"1399":4,"1400":6,"1401":11,"1402":7,"1403":16,"1404":7,"1405":3,"1409":1,"1411":1,"1412":3,"1414":1,"1420":1,"1421":1,"1422":1,"1423":1,"1427":2,"1428":1,"1429":1,"1430":3,"1431":2,"1432":3,"1435":1,"1437":1,"1438":1,"1439":2,"1440":1,"1441":4,"1442":4,"1458":2,"1460":2,"1464":2,"1472":1,"1475":1,"1477":1,"1489":1,"1511":3,"1515":1,"1521":1,"1522":1,"1523":1,"1526":1,"1540":1,"1544":1,"1558":1,"1559":1,"1563":1,"1567":1,"1568":2,"1574":1,"1581":1,"1588":1,"1593":1,"1594":1,"1605":1,"1609":2,"1615":1,"1620":1,"1639":3,"1651":3,"1655":1,"1670":1,"1703":6,"1704":2,"1705":1,"1706":1,"1707":1,"1722":1,"1733":1,"1740":1,"1741":2,"1743":3,"1744":1,"1746":1,"1759":2,"1765":1,"1785":1,"1792":167,"1802":1,"1804":1,"1822":1,"1823":1,"1824":3,"1825":1,"1838":4,"1840":1,"1856":3,"1857":1,"1862":2,"1874":1,"1882":1,"1884":1,"1906":1,"1912":2,"1917":3,"1925":2,"1947":1,"1948":1,"1949":1,"1952":1,"1953":1,"1954":1,"1955":1,"1956":1,"1957":1,"1961":1,"1967":4,"1974":7,"1991":7,"2000":1,"2005":1,"2006":1,"2009":3,"2011":2,"2016":1,"2020":1,"2040":2,"2072":1,"2076":1,"2078":1,"2086":4,"2092":1,"2094":6,"2097":2,"2098":2,"2099":1,"2101":1,"2102":1,"2104":1,"2105":1,"2106":1,"2107":3,"2108":1,"2110":1,"2111":2,"2125":3,"2129":1,"2130":1,"2131":1,"2141":2,"2154":1,"2156":2,"2164":1,"2165":1,"2175":1,"2176":1,"2177":1,"2181":1,"2182":1,"2184":1,"2186":1,"2187":1,"2191":1,"2192":1,"2200":1,"2206":1,"2217":1,"2219":1,"2221":1,"2222":1,"2224":1,"2245":1,"2247":2,"2253":4,"2254":9,"2255":2,"2257":1,"2258":4,"2259":2,"2261":1,"2264":1,"2265":1,"2266":2,"2267":2,"2270":1,"2271":1,"2277":1,"2284":1,"2288":1,"2289":2,"2310":1,"2314":1,"2320":1,"2322":1,"2323":1,"2324":2,"2325":1,"2326":1,"2330":1,"2332":2,"2333":1,"2334":1,"2336":2,"2337":1,"2338":1,"2339":2,"2347":3,"2348":2,"2350":1,"2353":1,"2354":1,"2357":2,"2358":2,"2359":2,"2364":1,"2366":1,"2367":1,"2370":1,"2375":4,"2376":2,"2377":2,"2378":2,"2379":2,"2380":3,"2385":2,"2388":2,"2389":2,"2391":1,"2393":1,"2394":1,"2397":4,"2398":6,"2399":1,"2401":2,"2405":1,"2407":1,"2410":1,"2411":2,"2412":1,"2413":2,"2414":2,"2415":1,"2419":1,"2421":2,"2424":2,"2428":1,"2431":2,"2432":2,"2435":2,"2437":1,"2438":6,"2445":2,"2446":2,"2450":1,"2451":1,"2452":1,"2455":1,"2459":1,"2463":1,"2464":4,"2466":2,"2468":1,"2476":3,"2479":1,"2481":1,"2482":1,"2483":3,"2484":1,"2486":3,"2492":1,"2494":1,"2495":1,"2497":1,"2500":1,"2502":3,"2504":2,"2509":2,"2517":1,"2518":4,"2519":1,"2523":1,"2527":1,"2528":3,"2529":4,"2530":2,"2531":1,"2532":2,"2533":1,"2534":2,"2535":2,"2536":1,"2537":6,"2539":1,"2540":1,"2541":1,"2542":1,"2543":2,"2551":1,"2554":1,"2565":1,"2569":1,"2576":1,"2577":1,"2586":8,"2588":3,"2589":1,"2590":3,"2597":1,"2603":3,"2607":8,"2611":3,"2614":3,"2615":2,"2618":1,"2621":1,"2626":1,"2632":1,"2633":9,"2634":3,"2635":1,"2641":1,"2642":1,"2650":1,"2659":1,"2663":1,"2679":1,"2681":1,"2688":1,"2692":1,"2701":1,"2706":1,"2744":1,"2759":1,"2760":2,"2764":1,"2765":1,"2767":2,"2771":1,"2773":1,"2776":2,"2789":1,"2792":1,"2793":1,"2794":1,"2795":1,"2800":1,"2802":1,"2809":1,"2810":1,"2811":1,"2812":1,"2814":3,"2815":2,"2816":1,"2824":1,"2826":1,"2829":1,"2830":1,"2833":2,"2835":1,"2841":2,"2842":1,"2851":1,"2852":1,"2858":1,"2862":1,"2863":1,"2864":2,"2865":1,"2869":1,"2871":3,"2878":1,"2879":1}}],["gmt",{"2":{"2823":1,"2824":1}}],["gc",{"2":{"2397":1,"2398":2,"2604":1}}],["gcm",{"2":{"1656":7,"1663":1,"1792":3}}],["gcp",{"2":{"1094":1}}],["gs",{"2":{"1427":1}}],["globs",{"2":{"2538":2}}],["glob",{"0":{"2371":1},"2":{"1386":1,"1792":4,"2000":1,"2002":2,"2094":2,"2095":1,"2096":1,"2221":1,"2228":1,"2318":1,"2330":1,"2371":1,"2525":1,"2537":3,"2538":1,"2539":2,"2840":1,"2841":1,"2877":1}}],["globally",{"2":{"65":1,"214":1,"336":2,"547":1,"655":1,"917":2,"964":1,"1113":1,"1139":1,"1540":1,"1544":1,"1973":1,"2010":1,"2183":1,"2184":1,"2222":1,"2468":1,"2587":1,"2756":1,"2765":1,"2786":1}}],["global",{"0":{"336":1},"2":{"4":1,"10":1,"42":1,"52":1,"53":1,"139":1,"141":1,"422":2,"436":1,"446":3,"479":1,"480":1,"636":1,"650":1,"663":1,"666":1,"668":1,"680":1,"720":1,"725":1,"851":1,"917":1,"1066":1,"1069":1,"1150":1,"1162":2,"1324":3,"1325":2,"1415":1,"1529":1,"1559":1,"1571":1,"1672":1,"1722":1,"1792":9,"1929":1,"1951":4,"1952":4,"1953":4,"1954":4,"1955":2,"1957":2,"1958":5,"2201":1,"2224":1,"2379":3,"2435":1,"2470":4,"2472":2,"2484":1,"2502":1,"2533":1,"2594":1,"2611":1,"2641":1,"2655":1,"2728":1,"2769":1,"2835":1}}],["glue",{"2":{"1382":3,"1405":1}}],["gb",{"2":{"1255":2,"1278":1}}],["gbp",{"2":{"1023":2,"1024":1}}],["gdpr",{"2":{"1251":1}}],["gpt",{"2":{"1105":1}}],["gzip",{"0":{"1941":1},"2":{"1101":1,"1790":1,"1792":1,"1797":1,"1935":1,"1937":1,"1940":1,"1941":3}}],["gaming",{"2":{"1323":1}}],["game",{"2":{"843":1,"852":1,"1081":1}}],["garbage",{"2":{"1254":1}}],["garcia",{"2":{"913":1}}],["gained",{"2":{"2447":1}}],["gains",{"0":{"2461":1},"2":{"944":1,"1274":1,"2270":1,"2398":1,"2415":1,"2461":1,"2476":1,"2621":1}}],["gain",{"2":{"872":1,"1125":1}}],["gave",{"2":{"851":1}}],["gather",{"2":{"1130":1}}],["gathered",{"2":{"851":1}}],["gating",{"2":{"1082":1,"1094":1,"1792":1,"2106":1,"2537":1}}],["gates",{"2":{"1792":1,"1827":1,"2438":1,"2481":1}}],["gate",{"2":{"874":1,"1045":1,"1419":1,"1792":1,"1825":1,"2107":1,"2113":1,"2221":1,"2423":1,"2463":2,"2466":3,"2482":1,"2537":1,"2546":1,"2878":1,"2879":1,"2880":1}}],["gated",{"2":{"320":1,"1792":1}}],["gateways",{"2":{"1329":1}}],["gateway",{"0":{"451":1,"1328":1,"1333":1,"1345":1,"1780":1,"2756":1,"2815":1},"1":{"1329":1,"1330":1,"1331":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1341":1,"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1},"2":{"140":1,"453":2,"876":1,"1010":1,"1011":1,"1088":1,"1100":1,"1101":1,"1114":1,"1328":1,"1350":1,"1351":1,"1672":1,"1792":1,"1824":1,"1928":1,"2255":1,"2549":1,"2806":2,"2812":3}}],["gaps",{"2":{"860":1}}],["gap",{"2":{"845":1,"857":1,"973":2,"1090":1,"1091":1,"1111":1,"1263":1,"1266":1,"1268":1,"1394":1,"2848":1}}],["grpc",{"2":{"1792":2,"1800":1,"1807":3,"2804":1}}],["grind",{"2":{"1324":1}}],["grievances",{"2":{"853":1}}],["growing",{"2":{"1379":1}}],["growth",{"2":{"861":1,"1164":1,"1168":1}}],["grows",{"2":{"860":1,"1164":1,"1171":1,"1193":1,"1270":1,"2297":1}}],["grow",{"2":{"857":1,"1165":1}}],["groupname",{"2":{"1974":1,"2607":1}}],["group1",{"2":{"1974":2,"2607":2}}],["groupby",{"2":{"852":1}}],["groupjoin",{"2":{"852":1}}],["grouped",{"2":{"720":1,"1285":1,"1414":1,"2432":1,"2442":1,"2535":1}}],["grouping",{"0":{"1414":1},"2":{"347":1,"857":1,"868":1,"1913":1,"2430":1,"2432":1}}],["group",{"0":{"352":1},"2":{"158":1,"352":1,"724":1,"852":1,"860":4,"861":1,"914":1,"916":2,"918":1,"1096":1,"1105":1,"1130":1,"1197":1,"1375":1,"1414":1,"1504":2,"1974":1,"2247":1,"2537":1,"2607":1}}],["grafana",{"2":{"2804":1}}],["graviton",{"2":{"2576":1,"2779":1,"2783":1,"2790":1}}],["grammar",{"2":{"2535":1,"2759":1,"2771":1}}],["grail",{"2":{"1382":1}}],["grained",{"2":{"1071":1,"1464":1,"1792":1,"2376":1,"2628":1}}],["gradual",{"2":{"1164":1,"1229":1,"1879":1}}],["gradually",{"2":{"1159":1}}],["grade",{"2":{"866":1,"1381":1,"1382":1,"1417":1,"2438":1,"2776":1}}],["grants",{"2":{"1385":1,"1792":1}}],["grant",{"2":{"926":3,"1792":1,"2016":1,"2024":1,"2156":1,"2542":1,"2632":1,"2755":1,"2876":1}}],["granted",{"2":{"22":1,"926":1}}],["graceful",{"0":{"2362":1},"2":{"2106":1,"2113":1,"2157":1,"2537":1,"2543":1,"2546":1,"2878":1,"2881":1}}],["gracefully",{"2":{"991":1,"2157":1,"2362":1,"2543":2}}],["grace",{"2":{"913":1,"2529":2,"2530":1,"2865":2}}],["graphql",{"2":{"1122":1,"1127":1}}],["graph",{"0":{"856":1},"2":{"857":1,"860":1,"864":1,"874":1,"1075":1,"1409":2,"1694":1,"1695":2,"1792":3,"2868":2}}],["grey",{"2":{"2535":1}}],["green",{"2":{"994":1,"1076":1,"1080":1,"1081":1,"2513":1,"2523":1,"2535":1,"2546":1,"2879":1}}],["greeting",{"2":{"378":1,"2335":1}}],["grep",{"2":{"872":1,"1382":1,"1416":1,"1581":1}}],["grew",{"2":{"863":1,"1404":2}}],["greatest",{"2":{"2398":1}}],["greater",{"2":{"1792":1,"2177":1}}],["greatly",{"2":{"912":1}}],["great",{"2":{"843":1,"1385":1,"1396":1,"1398":1,"1401":1,"1402":1,"2184":2}}],["gt",{"0":{"1313":1},"2":{"63":1,"81":1,"108":1,"214":1,"215":1,"319":3,"326":4,"355":4,"364":2,"395":1,"423":2,"429":1,"436":2,"454":1,"527":1,"528":1,"531":1,"534":1,"615":2,"646":1,"650":3,"666":1,"669":2,"849":1,"852":1,"868":1,"1040":4,"1078":3,"1102":1,"1107":2,"1171":1,"1189":1,"1358":1,"1367":1,"1385":1,"1408":1,"1410":1,"1412":2,"1413":3,"1414":1,"1416":1,"1424":1,"1428":2,"1460":1,"1520":1,"1561":2,"1572":2,"1581":1,"1582":1,"1738":1,"1743":1,"1822":1,"1824":1,"1913":1,"2018":4,"2040":1,"2075":1,"2077":1,"2109":1,"2125":3,"2225":1,"2270":1,"2310":1,"2313":2,"2319":2,"2337":2,"2339":2,"2375":1,"2380":2,"2399":1,"2400":2,"2402":1,"2412":1,"2419":1,"2422":1,"2423":1,"2427":1,"2432":3,"2435":1,"2436":1,"2437":1,"2443":1,"2452":1,"2462":2,"2481":5,"2482":1,"2487":1,"2490":1,"2502":2,"2535":5,"2604":1,"2614":1,"2823":1,"2830":2,"2835":1,"2843":2}}],["giving",{"2":{"2858":1}}],["give",{"2":{"319":1,"372":1,"669":1,"920":1,"1081":1,"1086":1,"1096":1,"1391":1,"1392":1,"1406":1,"1441":1,"2039":1,"2183":1,"2533":1,"2723":1,"2732":1,"2733":1,"2734":1,"2740":1,"2766":1,"2867":1}}],["gives",{"2":{"308":1,"666":1,"705":1,"835":1,"869":1,"876":2,"907":1,"920":1,"966":1,"986":1,"1049":1,"1066":1,"1069":1,"1088":1,"1162":1,"1185":1,"1386":2,"1409":1,"1581":1,"2466":1,"2492":1,"2531":1,"2840":1,"2846":1}}],["given",{"2":{"51":1,"214":1,"319":1,"848":2,"852":1,"1162":1,"1385":1,"1401":1,"1743":1,"2038":2,"2470":1,"2502":1,"2529":1,"2693":1,"2765":1,"2828":1}}],["gigantic",{"2":{"1396":1}}],["gitlab",{"2":{"2102":1}}],["gitignore",{"2":{"1407":1}}],["git",{"2":{"970":2,"1119":1,"1207":2,"1380":1,"1407":1,"2162":1,"2792":2}}],["github",{"0":{"1693":1},"2":{"3":1,"868":1,"878":1,"913":1,"914":1,"919":1,"920":2,"921":1,"947":1,"970":1,"976":1,"1010":1,"1047":1,"1048":1,"1060":1,"1098":2,"1117":1,"1118":1,"1119":1,"1123":1,"1183":1,"1207":1,"1302":1,"1328":1,"1352":1,"1380":1,"1445":1,"1465":1,"1605":2,"1682":1,"1685":1,"1687":1,"1690":1,"1693":4,"1698":4,"1736":9,"1737":2,"1788":1,"1792":12,"1894":1,"2102":1,"2160":1,"2162":1,"2267":1,"2386":1,"2497":2,"2576":2,"2625":1,"2688":2,"2736":1,"2781":1,"2782":1,"2783":1,"2784":1,"2790":1,"2792":2,"2880":1}}],["gist",{"2":{"864":2}}],["gif",{"2":{"747":1,"1099":1,"1358":1,"1792":1,"2123":1,"2125":1}}],["g",{"2":{"31":1,"74":2,"108":1,"109":1,"155":1,"175":1,"188":1,"210":1,"212":2,"268":1,"286":1,"297":1,"302":1,"349":1,"370":2,"387":2,"388":3,"390":1,"415":1,"423":2,"446":1,"447":1,"448":1,"453":1,"582":3,"583":2,"587":1,"615":1,"663":1,"720":1,"734":1,"747":1,"748":1,"761":2,"768":1,"771":1,"776":1,"781":1,"786":1,"826":1,"868":1,"892":1,"927":2,"961":1,"967":1,"996":2,"1060":1,"1066":1,"1088":1,"1097":1,"1098":1,"1101":1,"1111":1,"1117":1,"1193":1,"1225":2,"1232":1,"1233":1,"1237":1,"1239":2,"1284":1,"1385":2,"1386":1,"1409":1,"1427":2,"1431":1,"1447":1,"1449":1,"1451":1,"1454":2,"1493":1,"1511":1,"1519":3,"1521":1,"1523":1,"1525":1,"1569":1,"1575":1,"1590":1,"1605":1,"1609":1,"1614":1,"1664":1,"1685":1,"1687":1,"1706":1,"1732":1,"1738":1,"1741":2,"1767":1,"1792":34,"1823":2,"1825":1,"1831":1,"1837":1,"1840":1,"1856":2,"1862":1,"1875":2,"1882":1,"1887":1,"1906":1,"1917":1,"1922":1,"1925":1,"1957":3,"1958":1,"1991":1,"2004":1,"2062":1,"2110":1,"2112":1,"2177":1,"2193":1,"2195":1,"2210":1,"2258":1,"2264":1,"2265":1,"2282":1,"2283":1,"2289":2,"2291":1,"2296":1,"2303":1,"2318":1,"2322":1,"2329":2,"2330":1,"2336":1,"2337":1,"2338":1,"2339":1,"2347":1,"2357":1,"2358":1,"2360":1,"2364":2,"2365":2,"2367":1,"2379":3,"2380":2,"2413":1,"2430":1,"2434":1,"2438":1,"2444":2,"2445":1,"2446":1,"2453":1,"2483":2,"2487":1,"2490":1,"2497":3,"2505":2,"2517":1,"2518":4,"2519":1,"2520":1,"2529":1,"2530":2,"2532":3,"2533":1,"2537":1,"2544":1,"2549":1,"2566":1,"2572":2,"2586":1,"2590":1,"2591":1,"2597":1,"2603":1,"2634":1,"2635":1,"2645":1,"2649":1,"2656":1,"2659":1,"2679":2,"2688":1,"2692":1,"2696":1,"2767":1,"2768":1,"2779":1,"2786":1,"2811":1,"2840":1,"2847":1,"2854":1}}],["guest",{"2":{"1792":1,"2038":1,"2039":1}}],["guessed",{"2":{"1396":1}}],["guessing",{"2":{"1386":1}}],["guess",{"2":{"855":1,"1402":1,"2577":1}}],["guts",{"2":{"1438":1}}],["guru",{"2":{"1393":1}}],["guidance",{"2":{"1792":2,"1820":1,"1823":1}}],["guid",{"2":{"1366":1}}],["guided",{"2":{"1402":1}}],["guidelines",{"0":{"1169":1}}],["guide",{"0":{"2190":1,"2680":1,"2777":1},"1":{"2191":1,"2192":1,"2193":1,"2194":1,"2195":1,"2196":1,"2197":1,"2198":1,"2199":1,"2200":1,"2201":1,"2202":1,"2203":1,"2204":1,"2205":1,"2206":1,"2207":1,"2208":1,"2209":1,"2210":1,"2211":1,"2212":1,"2213":1,"2214":1,"2215":1,"2216":1,"2217":1,"2218":1,"2219":1,"2681":1,"2682":1,"2683":1,"2684":1,"2685":1,"2686":1,"2687":1,"2688":1,"2689":1,"2690":1,"2691":1,"2692":1,"2693":1,"2694":1,"2695":1,"2696":1,"2697":1,"2698":1,"2699":1,"2700":1,"2701":1,"2702":1,"2703":1,"2704":1,"2705":1,"2706":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"11":3,"26":3,"42":2,"53":2,"65":3,"76":2,"89":2,"98":2,"122":2,"130":2,"141":2,"151":2,"164":2,"170":1,"189":1,"198":2,"217":3,"220":1,"259":2,"281":1,"293":3,"296":1,"306":1,"315":1,"327":1,"338":1,"345":2,"356":1,"367":2,"385":2,"396":1,"410":2,"431":1,"456":1,"471":2,"481":2,"495":2,"505":2,"513":2,"525":2,"547":2,"557":2,"568":1,"578":2,"588":1,"596":3,"605":2,"617":1,"626":1,"634":3,"647":3,"670":3,"680":2,"692":1,"697":1,"702":1,"707":1,"712":1,"717":1,"725":2,"740":2,"790":2,"804":2,"820":2,"830":1,"1037":1,"1073":1,"1074":1,"1079":1,"1082":1,"1135":1,"1368":1,"1380":1,"1386":3,"1396":1,"1405":1,"1465":3,"1484":3,"1495":2,"1506":3,"1535":2,"1549":3,"1583":2,"1600":2,"1610":2,"1634":2,"1647":2,"1665":2,"1679":2,"1699":3,"1748":3,"1760":2,"1785":1,"1799":1,"1802":1,"1811":3,"1834":1,"1864":2,"1894":1,"1913":2,"1932":3,"1945":2,"1962":2,"1976":2,"1996":2,"2013":1,"2043":2,"2081":2,"2090":2,"2092":1,"2114":1,"2120":2,"2133":2,"2150":2,"2158":1,"2159":2,"2170":1,"2190":2,"2706":1,"2716":1,"2740":1,"2741":1,"2750":1,"2759":1,"2769":1,"2771":1,"2774":1,"2793":1,"2794":1,"2800":1,"2805":1,"2806":1,"2817":1,"2818":1,"2819":1,"2826":2,"2827":1,"2836":1,"2838":1,"2839":1,"2859":1,"2860":1}}],["gucs",{"2":{"1079":1,"1851":2,"2382":2}}],["guc",{"2":{"1070":2,"1792":1,"1851":1,"2099":1,"2382":1,"2527":1,"2862":1}}],["guarantees",{"2":{"1122":1,"1382":1,"2872":1}}],["guaranteed",{"2":{"864":1,"2112":1,"2221":1,"2532":1}}],["guard",{"0":{"1925":1},"2":{"1431":1,"1792":1,"1917":2,"1925":2,"2267":1,"2504":1,"2517":1,"2521":1,"2814":1}}],["guardrails",{"2":{"1123":1,"2389":1}}],["guarding",{"2":{"863":1}}],["guards",{"2":{"863":1,"1792":2}}],["guarded",{"2":{"852":2,"2812":1}}],["guy",{"2":{"1":1}}],["god",{"2":{"1441":2,"1442":1}}],["governed",{"2":{"1382":1}}],["goroutine",{"2":{"1275":1}}],["gold",{"2":{"927":1}}],["googleapis",{"2":{"1691":2,"1792":2}}],["google",{"0":{"1691":1},"2":{"868":1,"1013":1,"1037":1,"1048":1,"1050":1,"1059":5,"1060":2,"1061":2,"1062":3,"1064":1,"1098":2,"1123":1,"1445":1,"1465":1,"1682":1,"1685":1,"1687":1,"1690":4,"1691":2,"1698":4,"1788":1,"1792":5,"1894":1,"2175":1,"2188":1,"2189":1,"2736":1}}],["good",{"0":{"1430":1},"2":{"836":1,"847":1,"851":1,"860":1,"920":1,"933":1,"936":1,"1386":2,"1390":1,"1401":1,"1402":2,"1403":1,"1581":1,"1738":1,"2297":1}}],["gone",{"2":{"849":1,"865":1,"871":1}}],["gotrue",{"2":{"1088":2,"1098":2,"1119":1,"1126":1}}],["got",{"2":{"841":1,"1037":1,"1073":1,"1075":1,"1382":1,"1386":1,"2453":1}}],["going",{"2":{"841":1,"851":1,"1135":1,"1384":1,"1401":1,"1402":1,"1412":1}}],["goal",{"2":{"834":1,"835":1,"843":1,"864":1,"1081":1}}],["goes",{"0":{"2811":1},"2":{"646":3,"840":1,"841":1,"847":1,"848":1,"851":1,"852":1,"859":1,"872":1,"874":2,"948":1,"1316":2,"1396":1,"1398":1,"1431":1,"2806":1,"2813":1,"2845":1}}],["go",{"0":{"1275":1,"1383":1,"2521":1},"2":{"3":1,"837":1,"840":1,"841":1,"848":1,"852":1,"859":1,"1007":1,"1014":1,"1048":1,"1073":1,"1074":1,"1079":1,"1081":1,"1106":1,"1255":2,"1257":1,"1264":2,"1265":1,"1266":1,"1268":1,"1269":2,"1270":2,"1275":1,"1277":1,"1278":1,"1279":1,"1280":2,"1281":2,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1393":1,"2438":1,"2511":1,"2794":1}}],["gexec",{"2":{"2758":1}}],["geometric",{"2":{"2540":1}}],["geolocation",{"2":{"1792":1,"2021":1,"2632":1}}],["geolocation=",{"2":{"1792":2,"2021":2,"2029":1,"2632":2}}],["george",{"2":{"913":1,"914":2,"916":3,"917":2,"918":3,"919":2,"2586":3}}],["gen0",{"2":{"2398":1}}],["genuine",{"2":{"1406":1,"2384":1}}],["genuinely",{"2":{"834":1,"841":1,"852":1,"871":1,"873":1,"875":1,"876":1,"1327":1,"1404":1,"1856":1,"2455":1,"2462":1,"2497":1,"2868":1}}],["generous",{"2":{"1163":1,"1400":1}}],["generic",{"2":{"1111":1,"2359":1,"2492":1}}],["generalchat",{"2":{"1326":1}}],["generally",{"2":{"851":1,"1401":1}}],["general",{"0":{"159":1,"1224":1,"1470":1,"1554":1,"1874":1,"2074":1,"2124":1,"2708":1},"1":{"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1},"2":{"646":1,"918":1,"963":1,"1098":1,"1152":1,"1255":1,"1326":1,"1404":1,"1485":1,"1584":1,"1624":1,"1749":1,"1761":1,"1792":4,"1801":1,"1835":1,"1914":1,"1933":1,"2077":1,"2082":1,"2135":1,"2652":1}}],["generation",{"0":{"722":1,"961":1,"1095":1,"1200":1,"1412":1,"1552":1,"1559":1,"1754":1,"2247":1,"2389":1,"2519":1,"2590":1},"1":{"1553":1,"1554":1,"1555":1,"1556":1,"1557":1,"1558":1,"1559":1,"1560":1,"1561":1,"1562":1,"1563":1,"1564":1,"1565":1,"1566":1,"1567":1,"1568":1,"1569":1,"1570":1,"1571":1,"1572":1,"1573":1,"1574":1,"1575":1,"1576":1,"1577":1,"1578":1,"1579":1,"1580":1,"1581":1,"1582":1,"1583":1,"1584":1,"1585":1},"2":{"164":2,"681":1,"718":3,"720":1,"722":1,"725":2,"726":1,"727":2,"792":1,"834":1,"835":1,"868":3,"869":1,"908":1,"909":1,"912":1,"918":1,"951":1,"954":1,"972":1,"998":1,"1005":1,"1009":1,"1027":1,"1037":2,"1086":3,"1088":1,"1094":4,"1095":3,"1097":2,"1121":1,"1127":2,"1181":1,"1355":1,"1361":1,"1386":1,"1394":1,"1403":1,"1406":2,"1408":1,"1412":1,"1416":1,"1489":1,"1554":1,"1559":1,"1584":2,"1753":2,"1759":1,"1761":2,"1787":1,"1789":4,"1792":7,"1794":1,"1796":4,"1835":1,"1836":1,"1865":2,"1898":3,"1912":1,"1914":1,"2013":1,"2081":2,"2157":1,"2164":1,"2165":1,"2169":2,"2222":1,"2254":4,"2265":1,"2267":1,"2278":1,"2364":1,"2527":1,"2543":1,"2554":1,"2569":1,"2654":1,"2709":1,"2772":2,"2826":2,"2838":1,"2857":1,"2862":1}}],["generating",{"0":{"57":1,"58":1,"1051":1,"2360":1,"2694":1},"2":{"1214":1,"1552":1,"1751":1,"1792":4,"1896":1,"1998":1,"2356":1,"2641":2}}],["generatereport",{"2":{"429":1,"2310":1}}],["generates",{"2":{"429":1,"615":1,"723":1,"784":1,"894":1,"961":1,"995":1,"1024":1,"1063":1,"1067":1,"1097":2,"1127":1,"1210":1,"1317":1,"1342":1,"1361":1,"1366":1,"1792":1,"2207":1,"2277":1,"2310":1,"2313":1,"2339":1,"2351":1,"2357":1,"2590":1,"2641":1,"2656":1,"2682":1,"2775":1,"2830":1}}],["generated",{"0":{"381":1,"894":1,"995":1,"1024":1,"1063":1,"1317":1,"1342":1,"1361":1,"1410":1,"1566":1,"2489":1,"2520":1},"1":{"1567":1,"1568":1,"1569":1,"1570":1,"1571":1,"1572":1,"1573":1,"1574":1,"1575":1,"1576":1,"1577":1},"2":{"56":1,"163":1,"245":1,"351":1,"409":1,"429":2,"436":1,"565":1,"695":1,"720":3,"724":2,"764":1,"774":1,"833":1,"834":1,"835":1,"836":1,"837":2,"867":1,"868":1,"869":1,"871":1,"873":1,"874":1,"875":1,"876":2,"877":1,"878":1,"880":1,"894":1,"911":1,"913":3,"914":2,"915":2,"917":1,"918":1,"920":2,"924":1,"938":2,"961":1,"968":1,"975":1,"976":1,"977":2,"995":1,"1002":1,"1004":1,"1005":1,"1006":1,"1008":1,"1009":1,"1020":1,"1024":1,"1027":3,"1037":1,"1042":1,"1043":1,"1046":1,"1050":1,"1051":1,"1096":2,"1121":1,"1126":1,"1200":1,"1213":1,"1254":1,"1304":1,"1307":2,"1317":2,"1318":1,"1321":1,"1322":1,"1326":1,"1342":1,"1350":1,"1352":1,"1355":2,"1366":5,"1367":1,"1368":1,"1381":1,"1382":2,"1384":1,"1385":6,"1386":2,"1390":1,"1391":1,"1401":1,"1403":1,"1405":1,"1409":3,"1410":1,"1412":1,"1414":2,"1416":3,"1417":1,"1418":1,"1419":1,"1420":3,"1421":2,"1422":1,"1431":1,"1436":1,"1554":1,"1558":1,"1559":2,"1562":1,"1565":1,"1566":1,"1567":1,"1569":3,"1571":1,"1574":1,"1576":1,"1581":1,"1582":1,"1753":1,"1759":2,"1792":12,"1841":1,"1898":1,"1907":1,"1908":1,"1911":1,"1912":2,"2098":1,"2164":1,"2165":1,"2191":1,"2197":1,"2222":1,"2247":4,"2254":1,"2257":1,"2258":1,"2265":1,"2273":1,"2278":1,"2310":2,"2313":1,"2333":1,"2340":1,"2359":2,"2360":1,"2388":1,"2389":2,"2391":1,"2484":1,"2489":4,"2515":2,"2518":1,"2519":1,"2520":3,"2521":1,"2523":1,"2527":1,"2533":1,"2534":1,"2554":1,"2555":2,"2562":1,"2566":2,"2590":2,"2600":1,"2648":1,"2655":1,"2672":1,"2723":1,"2830":2,"2836":4,"2848":1,"2862":1,"2867":2,"2871":1}}],["generate",{"2":{"38":2,"57":2,"58":2,"61":2,"62":1,"137":2,"148":1,"325":1,"415":6,"423":5,"429":1,"656":2,"679":1,"757":1,"957":1,"975":2,"1037":1,"1049":2,"1051":1,"1096":1,"1105":2,"1107":1,"1125":1,"1161":2,"1179":1,"1195":1,"1207":1,"1214":2,"1255":1,"1338":1,"1358":1,"1366":3,"1385":5,"1386":6,"1388":1,"1394":1,"1405":2,"1754":3,"1758":1,"1792":4,"1858":2,"2127":1,"2228":1,"2251":1,"2303":5,"2304":3,"2310":1,"2313":2,"2317":1,"2357":2,"2611":1,"2700":1,"2775":1,"2813":3,"2826":1}}],["generators",{"2":{"1569":1,"1759":1,"1912":1,"2222":3,"2518":1,"2520":2,"2523":1}}],["generator",{"0":{"1406":1},"1":{"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1},"2":{"1":1,"74":1,"429":1,"868":1,"871":1,"875":1,"1037":1,"1406":1,"1410":2,"1413":1,"1422":2,"1567":1,"2273":1,"2310":1,"2313":1,"2356":1,"2357":1,"2358":1,"2359":1,"2391":1,"2484":1,"2518":1,"2519":1,"2523":1,"2611":1}}],["gen",{"2":{"308":4,"592":1,"813":1,"928":1,"1214":2,"1232":2,"1234":1,"1307":2,"2147":2,"2177":3,"2575":1}}],["get|set",{"2":{"2435":1}}],["getdatatypename",{"2":{"2324":1,"2370":1}}],["getdataurl",{"2":{"723":1,"961":4,"1413":1}}],["getname",{"2":{"2324":1}}],["getorcreateasync",{"0":{"2461":1},"2":{"2224":1,"2461":1,"2462":1,"2463":1}}],["getoriginalfilename",{"2":{"1366":2}}],["get`",{"2":{"1792":1}}],["getitem",{"2":{"1582":1}}],["getid",{"2":{"1366":1}}],["getinputstream",{"2":{"1366":2}}],["getconfigstr",{"2":{"2498":1,"2648":1}}],["getconfigint",{"2":{"2498":1}}],["getconfigbool",{"2":{"2497":1,"2498":1}}],["getcontenttype",{"2":{"1366":1}}],["getcolumnschema",{"2":{"2324":1}}],["getclientipaddress",{"2":{"1957":1,"2379":1}}],["getcurrentuserid",{"2":{"1366":1}}],["getuserid",{"2":{"1366":1}}],["getusers",{"2":{"995":1,"996":2,"1061":1,"1063":1,"1386":1,"1408":1,"1409":4}}],["getextension",{"2":{"1366":2}}],["getelementbyid",{"2":{"996":1,"1361":1}}],["getallelements",{"2":{"1792":1}}],["getallelementscommand",{"2":{"1054":1,"1650":1,"1651":1,"1655":2,"1663":1,"1792":1,"2297":2,"2551":1}}],["getauthtoken",{"2":{"1320":1}}],["getmessages",{"2":{"1318":1,"2836":3}}],["getting",{"0":{"1252":1,"2162":1},"2":{"1064":1,"1390":1,"1403":1,"1426":1,"1701":1,"2377":1,"2633":1}}],["getter",{"2":{"856":1}}],["getproduct",{"2":{"1575":1}}],["getprices",{"2":{"1026":2}}],["getposts",{"2":{"995":1,"996":2,"1408":1,"1409":1}}],["getrates",{"2":{"1026":2}}],["getfinancialdashboard",{"2":{"1024":2,"1026":2}}],["getspan",{"2":{"2400":1}}],["getsize",{"2":{"1366":1}}],["gets",{"0":{"1210":1,"1566":1},"1":{"1567":1,"1568":1,"1569":1,"1570":1,"1571":1,"1572":1,"1573":1,"1574":1,"1575":1,"1576":1,"1577":1},"2":{"479":1,"695":1,"838":1,"841":2,"856":2,"860":1,"861":2,"868":1,"871":1,"877":1,"919":1,"951":1,"961":1,"1039":1,"1070":1,"1073":1,"1074":1,"1079":1,"1081":1,"1101":1,"1107":2,"1139":1,"1203":1,"1214":1,"1337":1,"1378":1,"1404":1,"1406":1,"1423":1,"1435":1,"1441":1,"1442":1,"1460":1,"1705":3,"1792":6,"1825":1,"1955":2,"2342":1,"2375":1,"2379":2,"2388":1,"2484":1,"2526":1,"2527":1,"2633":3,"2732":1,"2739":1,"2829":1,"2860":1,"2862":1,"2868":1}}],["get",{"0":{"206":1,"207":1,"979":1,"980":1,"1380":1,"2723":1,"2725":1,"2733":1},"2":{"1":1,"7":5,"8":1,"9":2,"16":5,"19":3,"20":3,"22":2,"23":1,"37":1,"38":4,"40":4,"48":2,"49":1,"60":2,"61":5,"62":4,"83":1,"84":2,"85":1,"86":1,"94":2,"95":2,"96":2,"97":2,"104":5,"105":2,"106":1,"107":2,"115":5,"116":3,"117":3,"118":2,"119":3,"128":2,"129":1,"136":2,"137":1,"147":2,"148":1,"149":1,"175":2,"180":1,"186":7,"187":4,"196":1,"204":1,"206":2,"207":2,"209":1,"211":2,"212":2,"213":3,"214":7,"215":2,"243":1,"245":4,"247":5,"249":4,"250":2,"251":2,"254":4,"255":4,"256":4,"258":2,"263":9,"264":6,"265":1,"277":3,"278":6,"307":1,"314":2,"320":3,"322":7,"323":1,"332":3,"333":3,"334":3,"335":3,"342":1,"343":1,"344":1,"352":2,"353":2,"354":1,"372":6,"374":7,"376":2,"380":1,"381":1,"386":2,"390":1,"392":2,"394":1,"401":6,"402":2,"403":2,"405":4,"406":4,"408":9,"414":1,"415":3,"418":2,"419":3,"420":2,"421":2,"423":2,"426":1,"427":1,"429":1,"436":10,"438":5,"439":3,"449":3,"451":2,"452":5,"453":1,"454":3,"462":2,"463":2,"464":3,"466":8,"467":8,"468":3,"469":5,"476":1,"478":1,"479":1,"487":5,"488":3,"489":1,"490":1,"491":1,"492":1,"493":2,"501":1,"502":1,"518":1,"520":3,"521":4,"527":4,"531":3,"533":1,"539":5,"540":3,"541":1,"542":3,"543":1,"544":2,"545":2,"553":2,"554":1,"555":2,"562":1,"563":1,"566":1,"573":1,"577":1,"584":1,"585":2,"601":1,"602":1,"603":1,"604":1,"611":3,"612":3,"613":3,"664":1,"665":1,"677":5,"678":2,"679":3,"686":1,"689":2,"710":4,"722":5,"723":4,"724":4,"732":1,"733":4,"734":2,"735":2,"736":2,"797":4,"798":2,"799":2,"800":1,"811":5,"835":5,"838":2,"841":1,"851":1,"852":1,"859":1,"861":1,"868":1,"872":1,"879":1,"887":1,"903":1,"914":11,"915":1,"916":13,"917":5,"918":5,"920":1,"926":1,"936":1,"949":2,"956":1,"957":2,"959":2,"960":2,"961":3,"964":2,"965":2,"976":4,"979":8,"980":6,"981":1,"982":1,"985":1,"986":2,"988":7,"989":3,"990":9,"991":4,"995":8,"1005":1,"1009":1,"1017":1,"1019":3,"1021":3,"1023":2,"1026":3,"1032":1,"1033":2,"1034":3,"1038":2,"1042":1,"1054":2,"1057":4,"1061":2,"1065":1,"1067":3,"1068":1,"1069":1,"1073":3,"1074":3,"1076":4,"1077":1,"1080":2,"1081":1,"1082":1,"1086":1,"1104":1,"1105":6,"1107":2,"1113":3,"1121":2,"1135":7,"1138":9,"1139":4,"1141":5,"1142":8,"1143":2,"1148":5,"1149":3,"1150":6,"1154":2,"1158":1,"1163":2,"1176":5,"1179":6,"1189":1,"1193":2,"1196":1,"1204":1,"1205":1,"1206":1,"1220":1,"1221":1,"1222":2,"1226":3,"1232":1,"1255":5,"1259":1,"1281":1,"1310":3,"1331":1,"1335":1,"1337":1,"1345":2,"1347":4,"1348":1,"1362":4,"1363":1,"1364":1,"1365":1,"1366":2,"1368":7,"1369":3,"1370":1,"1371":1,"1373":2,"1374":3,"1375":1,"1376":1,"1378":2,"1381":1,"1386":19,"1387":2,"1390":2,"1393":5,"1398":21,"1399":2,"1400":1,"1401":1,"1403":1,"1405":5,"1408":9,"1409":1,"1410":1,"1412":5,"1413":3,"1414":4,"1416":2,"1419":1,"1426":1,"1427":2,"1430":2,"1431":1,"1441":1,"1442":1,"1518":5,"1522":1,"1529":7,"1531":4,"1532":4,"1533":2,"1547":4,"1567":4,"1568":1,"1569":1,"1575":1,"1599":1,"1632":5,"1642":1,"1646":1,"1650":1,"1651":1,"1655":2,"1663":1,"1664":4,"1726":1,"1727":3,"1729":1,"1730":3,"1731":2,"1733":4,"1736":4,"1738":4,"1740":3,"1742":2,"1743":3,"1744":2,"1745":1,"1747":1,"1792":11,"1823":1,"1824":1,"1842":2,"1846":1,"1847":5,"1876":3,"1920":5,"1921":3,"1924":3,"1926":1,"1929":1,"1930":6,"1973":1,"1974":1,"2004":1,"2006":1,"2009":1,"2010":4,"2012":4,"2056":1,"2076":5,"2078":3,"2079":5,"2106":1,"2181":2,"2183":1,"2184":1,"2187":4,"2193":5,"2194":4,"2196":2,"2197":4,"2202":4,"2204":1,"2205":6,"2206":2,"2207":2,"2214":2,"2215":4,"2217":2,"2222":2,"2247":2,"2251":1,"2255":6,"2256":2,"2257":2,"2264":8,"2265":11,"2266":1,"2277":14,"2283":5,"2286":1,"2288":3,"2290":2,"2293":7,"2294":4,"2297":1,"2302":1,"2303":2,"2304":2,"2305":2,"2306":1,"2310":1,"2313":1,"2314":4,"2319":5,"2321":2,"2327":2,"2328":1,"2329":1,"2333":2,"2337":1,"2339":4,"2340":1,"2344":9,"2346":4,"2347":2,"2358":1,"2366":6,"2379":1,"2380":2,"2381":1,"2389":1,"2391":1,"2429":1,"2432":2,"2438":2,"2455":2,"2459":1,"2463":1,"2481":3,"2483":1,"2502":3,"2506":1,"2511":1,"2513":2,"2519":2,"2523":2,"2526":4,"2529":1,"2531":2,"2535":2,"2536":1,"2537":4,"2538":2,"2539":1,"2540":1,"2549":8,"2551":2,"2566":1,"2580":6,"2581":3,"2586":1,"2587":3,"2588":1,"2589":1,"2591":2,"2607":1,"2622":1,"2651":2,"2652":2,"2653":4,"2656":2,"2665":9,"2666":1,"2674":1,"2721":1,"2723":1,"2726":1,"2731":2,"2733":1,"2739":2,"2760":1,"2762":5,"2764":5,"2765":2,"2766":5,"2767":4,"2768":4,"2772":2,"2774":4,"2775":7,"2797":5,"2809":3,"2810":1,"2811":1,"2812":1,"2813":3,"2821":2,"2822":1,"2824":5,"2825":3,"2830":2,"2834":3,"2836":3,"2840":3,"2842":3,"2843":1,"2845":3,"2846":3,"2850":1,"2860":4,"2861":2,"2865":1,"2868":2,"2869":4,"2878":2,"2881":1}}],["lj",{"2":{"1792":1,"1800":1,"1809":2,"1810":1}}],["lgjsqahngjf9dn0w+2vaf+edgxss14e9ag+dezupgdsftjj8duphu6cfromb6uqp",{"2":{"1189":1,"1195":2,"1196":1,"1373":1}}],["l2",{"2":{"1147":1,"1511":1,"1515":2,"1792":4,"2274":2}}],["l1",{"2":{"1147":1,"1511":1,"1515":1,"1792":3,"2274":1}}],["luis",{"2":{"1442":2}}],["luckily",{"2":{"1402":1}}],["lucky",{"2":{"1402":1,"1403":1}}],["lumps",{"2":{"1162":1}}],["lua",{"2":{"1106":1}}],["lunch",{"2":{"865":1}}],["l7",{"2":{"927":2}}],["l",{"2":{"922":2,"2784":1}}],["lying",{"2":{"844":1}}],["lng",{"2":{"333":2}}],["lr",{"2":{"306":1,"650":1,"663":1,"833":3,"949":1,"1086":1,"1087":1,"1088":3,"1211":1,"1220":1,"1221":1,"1222":1,"1868":1}}],["llm",{"2":{"871":1,"1335":1,"1419":1}}],["ll",{"2":{"175":1,"832":1,"841":1,"992":1,"1061":1,"1127":1,"1220":1,"1400":1,"1443":1,"1870":1,"2270":1,"2818":1}}],["lts",{"0":{"2385":1},"2":{"1071":1,"2385":2}}],["lt",{"0":{"1313":1},"2":{"63":1,"108":1,"214":1,"215":1,"319":3,"326":4,"355":4,"364":2,"395":1,"423":2,"429":1,"436":2,"454":1,"527":1,"528":1,"534":1,"615":2,"646":1,"650":3,"666":1,"669":2,"845":1,"849":1,"852":1,"868":1,"1040":4,"1102":1,"1107":2,"1189":1,"1358":1,"1367":1,"1408":1,"1410":1,"1412":2,"1413":3,"1414":1,"1416":1,"1424":1,"1428":2,"1460":1,"1520":1,"1572":2,"1581":1,"1738":1,"1743":1,"1824":1,"1913":1,"2018":4,"2040":1,"2075":1,"2077":1,"2109":1,"2225":1,"2270":1,"2310":1,"2313":2,"2337":2,"2339":2,"2375":1,"2380":2,"2399":1,"2400":2,"2402":1,"2412":1,"2419":1,"2422":1,"2423":1,"2427":1,"2432":3,"2435":1,"2436":1,"2437":1,"2443":1,"2462":2,"2481":5,"2482":1,"2487":1,"2490":1,"2502":2,"2535":5,"2604":1,"2614":1,"2794":5,"2823":1,"2830":2,"2835":1}}],["leverage",{"2":{"2270":1,"2580":1}}],["level1",{"2":{"2611":1}}],["level2",{"2":{"2611":1}}],["level3",{"2":{"2611":1}}],["level4",{"2":{"2611":1}}],["leveled",{"2":{"2536":1,"2537":1}}],["levels",{"0":{"1801":1,"1802":1,"1938":1},"2":{"656":1,"864":1,"919":1,"920":1,"1057":1,"1097":1,"1151":1,"1177":1,"1254":1,"1255":1,"1791":1,"1798":1,"1801":1,"1802":1,"2219":1,"2250":1,"2537":1,"2544":1,"2607":1,"2611":1,"2628":1,"2680":1,"2689":1,"2692":1,"2794":2,"2800":2,"2869":1}}],["level>",{"2":{"628":2,"651":1}}],["level",{"0":{"349":1,"627":1,"631":1,"632":1,"633":1,"655":1,"656":1,"660":1,"661":1,"662":1,"921":1,"981":1,"1003":1,"1268":1,"1858":1,"2115":1,"2250":1,"2251":1,"2364":1,"2426":1,"2431":1,"2702":1,"2832":2},"1":{"628":1,"629":1,"630":1,"631":1,"632":1,"633":1,"634":1,"635":1,"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"982":1,"983":1,"984":1,"2116":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2703":1,"2704":1},"2":{"64":1,"109":1,"111":1,"162":3,"182":1,"233":2,"356":1,"627":2,"628":2,"629":1,"631":1,"632":1,"633":1,"648":2,"650":1,"653":3,"655":1,"656":5,"658":1,"662":3,"668":2,"669":1,"671":2,"696":1,"704":1,"705":1,"716":1,"841":1,"871":2,"872":1,"905":1,"907":1,"909":1,"919":2,"921":1,"922":1,"975":1,"986":1,"993":1,"1037":1,"1065":1,"1067":1,"1071":1,"1079":1,"1097":1,"1098":2,"1100":5,"1101":2,"1104":1,"1114":2,"1122":1,"1125":1,"1136":2,"1185":2,"1190":1,"1193":3,"1285":1,"1354":1,"1378":1,"1385":1,"1394":1,"1403":1,"1520":1,"1568":1,"1609":1,"1649":1,"1658":1,"1664":1,"1787":1,"1792":23,"1794":1,"1800":1,"1801":1,"1802":2,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1809":2,"1810":1,"1820":2,"1844":1,"1851":1,"1857":1,"1858":3,"1860":2,"1861":1,"1937":1,"1938":1,"1961":2,"2002":1,"2007":1,"2092":1,"2106":1,"2108":1,"2117":1,"2154":1,"2164":2,"2165":1,"2184":1,"2208":1,"2250":1,"2251":2,"2252":10,"2258":1,"2291":1,"2328":1,"2364":2,"2366":1,"2381":1,"2382":1,"2384":3,"2391":1,"2392":1,"2419":1,"2427":1,"2428":1,"2430":1,"2490":1,"2506":1,"2533":1,"2535":2,"2537":1,"2542":1,"2544":2,"2586":1,"2628":2,"2629":2,"2661":1,"2689":1,"2699":1,"2702":1,"2721":1,"2749":1,"2750":1,"2751":1,"2794":2,"2795":1,"2798":1,"2802":2,"2803":5,"2824":1,"2825":2,"2827":3,"2828":3,"2829":1,"2830":2,"2832":10,"2834":1,"2835":3,"2838":2,"2858":1,"2873":1,"2878":1,"2879":1}}],["lexicon",{"2":{"1335":1}}],["legitimate",{"2":{"1185":1,"1329":1,"1605":1,"2409":1,"2497":1,"2688":1}}],["legitimately",{"2":{"852":1,"2105":1}}],["legal",{"2":{"1079":1,"2492":1,"2540":1,"2868":1,"2869":1}}],["legacy",{"0":{"2376":1},"2":{"1071":1,"1464":2,"1792":2,"1856":2,"2376":2,"2455":1}}],["len",{"2":{"928":4,"929":4}}],["lengthcomputable",{"2":{"894":1,"1366":1,"1410":1}}],["length",{"0":{"1925":1,"2145":1},"2":{"308":1,"894":2,"928":3,"929":3,"930":2,"995":2,"1049":1,"1332":1,"1335":8,"1338":10,"1339":3,"1340":1,"1366":4,"1382":1,"1386":1,"1408":1,"1410":2,"1416":1,"1431":2,"1511":2,"1567":1,"1589":1,"1792":11,"1916":2,"1917":4,"1925":1,"1931":2,"2098":2,"2145":1,"2265":1,"2359":1,"2399":1,"2492":2,"2495":1,"2521":1,"2531":1,"2534":2,"2535":1,"2549":2,"2566":1,"2575":2,"2626":1,"2814":3,"2823":1,"2869":1,"2871":2}}],["leo",{"2":{"913":1}}],["lee",{"2":{"913":1}}],["lesson",{"2":{"861":1}}],["less",{"0":{"941":1},"2":{"845":1,"860":1,"871":2,"911":1,"1027":1,"1123":1,"1270":1,"1322":1,"1366":1,"1401":3,"1409":1,"1440":1,"1708":1,"1792":3,"1917":1,"1925":1,"2422":1,"2451":1,"2633":2}}],["left",{"0":{"2453":1},"2":{"212":1,"388":1,"849":1,"852":1,"860":1,"914":1,"916":2,"918":1,"1043":2,"1045":1,"1068":1,"1073":1,"1074":1,"1079":1,"1197":1,"1338":1,"1339":1,"1375":1,"1399":1,"1404":1,"1504":2,"1605":1,"1759":1,"1912":1,"2493":1,"2494":1,"2497":2,"2498":1,"2518":1,"2688":1,"2868":1}}],["leftovers",{"2":{"2758":1}}],["leftover",{"0":{"2758":1},"2":{"175":1,"2881":1}}],["leaf",{"2":{"1824":1}}],["lead",{"2":{"1262":1,"1263":1,"2463":1,"2466":7}}],["leader",{"2":{"1130":1,"1264":1}}],["leads",{"0":{"1263":1},"2":{"1091":1,"1262":1,"1280":1}}],["leading",{"2":{"659":1,"694":1,"704":1,"709":1,"714":1,"851":1,"1042":1,"1792":1,"2378":1,"2505":1,"2529":1,"2531":1,"2532":1,"2533":1,"2534":1,"2870":1}}],["learned",{"2":{"1401":1,"1404":1}}],["learning",{"2":{"977":1,"980":1,"990":1,"1084":1,"1403":1}}],["learn",{"2":{"911":1,"1128":1,"1401":1,"1405":1,"1443":1,"1792":14,"2257":4,"2633":1,"2634":1}}],["learns",{"2":{"864":1}}],["leaner",{"2":{"869":1}}],["lean",{"2":{"838":1,"1326":1}}],["leaked",{"2":{"2222":1,"2519":1,"2532":1}}],["leaking",{"2":{"1055":1,"1079":1,"2482":1}}],["leaks",{"2":{"715":1,"1070":1,"2040":1}}],["leak",{"2":{"319":1,"374":1,"1070":1,"1209":1,"1441":1,"1458":1,"1792":1,"2375":1,"2402":1,"2404":1,"2481":1,"2881":1}}],["leave",{"2":{"317":1,"347":1,"840":1,"1042":1,"1792":1,"1851":1,"1856":1,"2040":1,"2382":1,"2432":1,"2477":1,"2860":1}}],["leaves",{"2":{"215":1,"527":1,"860":1,"1033":1,"1210":1,"1738":1,"2103":1,"2283":1,"2426":1,"2531":1,"2802":1}}],["leaving",{"2":{"174":1,"843":1,"2222":1,"2362":1,"2527":1,"2577":1}}],["least",{"0":{"922":1,"1185":1,"2876":1},"2":{"21":1,"175":1,"179":1,"685":1,"817":1,"843":1,"845":3,"921":1,"922":1,"932":1,"1009":1,"1037":1,"1053":1,"1062":1,"1065":1,"1185":1,"1386":1,"1401":1,"1405":2,"1441":1,"1443":1,"1453":1,"1454":1,"1480":1,"1522":1,"1575":1,"1640":1,"1792":3,"1801":1,"1861":1,"2094":1,"2097":1,"2107":1,"2113":2,"2140":1,"2145":1,"2146":1,"2148":1,"2164":1,"2175":1,"2199":1,"2535":2,"2537":3,"2554":1,"2575":1,"2737":1,"2755":1,"2809":1,"2879":1}}],["letting",{"2":{"1326":1,"1385":1,"2810":1}}],["letters",{"2":{"382":1,"2334":1}}],["letter",{"2":{"382":1,"1026":1,"2334":1}}],["lets",{"2":{"298":1,"386":1,"423":1,"691":1,"876":1,"912":1,"1010":1,"1055":1,"1137":1,"1209":1,"1813":1,"2176":1,"2185":1,"2474":1,"2482":1,"2693":1,"2767":1,"2811":1}}],["let",{"2":{"1":1,"309":1,"319":1,"679":1,"838":1,"840":1,"841":4,"843":1,"848":1,"851":1,"852":2,"854":1,"860":1,"876":1,"894":1,"918":1,"919":1,"974":1,"992":1,"1026":1,"1073":2,"1079":1,"1123":1,"1150":2,"1220":1,"1253":1,"1281":1,"1317":1,"1318":1,"1366":1,"1381":1,"1382":1,"1384":2,"1385":2,"1386":4,"1387":1,"1392":1,"1394":1,"1397":1,"1398":1,"1399":1,"1402":2,"1404":1,"1410":1,"1416":1,"1419":2,"1431":1,"1435":1,"1519":2,"1870":1,"2177":1,"2178":1,"2183":1,"2247":1,"2380":1,"2438":1,"2532":1,"2759":1,"2769":1,"2801":1,"2804":1,"2823":1,"2824":2,"2825":1,"2873":1}}],["loki",{"2":{"2804":1}}],["london",{"2":{"1733":1,"2264":1}}],["long",{"0":{"96":1,"137":1,"272":1,"2452":1},"2":{"106":1,"269":1,"277":1,"370":1,"574":1,"658":4,"841":1,"847":1,"868":1,"930":14,"944":1,"1014":1,"1053":1,"1062":1,"1066":1,"1067":1,"1076":1,"1121":1,"1139":1,"1143":1,"1150":2,"1179":1,"1227":1,"1325":1,"1326":1,"1383":1,"1398":1,"1401":1,"1406":1,"1453":1,"1458":1,"1511":1,"1516":2,"1529":3,"1645":1,"1678":1,"1792":3,"1823":1,"1877":1,"1925":1,"2175":1,"2211":1,"2222":1,"2265":5,"2332":1,"2375":1,"2427":1,"2450":1,"2459":1,"2554":1,"2615":1,"2737":1,"2833":1,"2835":1}}],["longer",{"0":{"2352":1,"2384":1,"2492":1,"2517":1},"2":{"74":1,"650":1,"686":1,"871":1,"872":1,"920":1,"975":1,"1069":1,"1096":1,"1419":1,"1511":3,"1620":1,"1792":5,"1823":1,"1917":1,"1925":1,"2223":1,"2225":2,"2226":1,"2265":2,"2389":4,"2495":1,"2517":1,"2518":1,"2539":1,"2679":1,"2812":1}}],["loving",{"2":{"1401":1}}],["love",{"2":{"843":1,"1404":1}}],["lousy",{"2":{"1385":1}}],["loud",{"2":{"704":1,"2110":1,"2380":1,"2530":1}}],["loudly",{"2":{"701":1,"1076":2,"2109":1,"2530":1}}],["los",{"2":{"2453":1,"2456":1}}],["loss",{"2":{"2353":1,"2378":1}}],["lose",{"2":{"1325":1,"2532":1}}],["loses",{"2":{"1270":1}}],["losing",{"2":{"868":1,"1378":1,"1391":1}}],["lost",{"2":{"188":1,"854":1,"1054":1,"1101":1,"1152":1,"1624":1,"1653":1,"1664":1,"1792":1,"2296":1,"2297":2,"2402":1,"2495":1}}],["loadeventstart",{"2":{"1792":2}}],["loadeventend",{"2":{"1792":2}}],["loaded",{"2":{"317":1,"347":1,"894":4,"1361":2,"1366":2,"1410":4,"1608":1,"1792":1,"2195":1,"2272":1,"2432":1,"2487":1}}],["loadmessagehistory",{"2":{"1320":1}}],["loadposts",{"2":{"996":2}}],["loadusers",{"2":{"996":2,"1409":1}}],["loading",{"0":{"1608":1},"2":{"871":1,"907":1,"911":1,"996":2,"1604":1,"1685":3,"1792":1,"2016":1,"2024":1,"2272":1,"2632":2,"2705":1}}],["loads",{"2":{"844":1,"909":1,"2684":1}}],["load",{"0":{"1175":1,"1715":1},"2":{"844":1,"849":1,"851":1,"852":1,"854":4,"855":1,"856":1,"861":1,"864":1,"865":1,"868":1,"948":1,"996":2,"1067":1,"1121":1,"1135":1,"1136":1,"1161":1,"1164":1,"1168":1,"1170":1,"1171":2,"1172":1,"1175":5,"1176":1,"1177":3,"1180":4,"1182":1,"1205":1,"1206":1,"1255":2,"1281":1,"1316":1,"1324":4,"1329":2,"1337":1,"1366":1,"1608":1,"1618":1,"1626":1,"1628":1,"1706":1,"1712":1,"1767":1,"1774":1,"1792":4,"2016":1,"2020":1,"2024":1,"2025":1,"2060":1,"2266":2,"2272":1,"2397":1,"2398":1,"2438":1,"2466":1,"2504":1,"2580":1,"2632":1,"2633":1,"2634":1,"2684":1,"2803":1,"2836":1}}],["lot",{"2":{"843":2,"845":2,"859":1,"920":1,"1386":1,"1393":1,"1401":1,"1404":1}}],["lo",{"2":{"750":3,"751":2,"752":2,"777":2,"922":2,"1355":1,"1362":1,"1363":1,"1412":3}}],["loc",{"2":{"869":13,"872":3,"873":5,"876":1,"1037":2,"1181":10,"1421":1}}],["locating",{"2":{"2002":1}}],["locations",{"2":{"1139":1,"1353":1,"2286":1}}],["location",{"2":{"333":3,"533":1,"961":1,"1413":1,"1651":1,"1653":1,"1792":9,"1846":1,"1906":1,"1988":1,"2261":1,"2297":1,"2328":1,"2781":1}}],["located",{"0":{"988":1},"2":{"1005":1,"1006":1,"1009":1,"1792":2,"2095":2,"2167":1,"2538":1,"2539":1,"2545":1,"2861":1}}],["locates",{"2":{"876":1}}],["local=false",{"2":{"1850":1,"2382":1}}],["local=true`",{"2":{"1792":1}}],["local=true",{"2":{"1070":1,"1102":1,"1850":1,"2382":1}}],["locally",{"2":{"1792":2,"1917":1,"1927":2,"2161":1,"2549":2,"2786":1,"2814":1}}],["localstorage",{"2":{"1582":1}}],["locality",{"2":{"873":1}}],["local",{"2":{"390":1,"452":7,"848":1,"1080":1,"1094":1,"1102":1,"1105":2,"1147":1,"1318":1,"1325":1,"1328":1,"1334":1,"1347":5,"1351":1,"1511":1,"1515":2,"1651":1,"1662":1,"1792":8,"1850":1,"1856":4,"2040":2,"2224":1,"2274":1,"2346":2,"2382":1,"2394":1,"2428":1,"2451":4,"2452":1,"2453":1,"2454":2,"2455":2,"2476":2,"2565":1,"2572":1,"2684":1,"2685":3,"2782":1,"2783":1,"2784":1,"2855":1}}],["localcacheexpiration",{"2":{"279":1,"2274":1,"2279":1}}],["localhost",{"2":{"38":1,"40":1,"61":1,"62":2,"121":1,"868":1,"970":1,"1146":1,"1147":1,"1199":4,"1202":1,"1207":3,"1225":1,"1320":1,"1338":1,"1340":1,"1510":1,"1514":1,"1515":1,"1616":1,"1711":1,"1775":1,"1792":10,"1800":1,"1807":2,"1875":1,"1984":2,"1986":1,"1987":1,"1988":2,"1989":1,"1995":2,"2116":1,"2117":1,"2118":2,"2274":1,"2699":1,"2701":1,"2702":1,"2703":2,"2717":1,"2808":1,"2814":1,"2823":2,"2824":3,"2825":1,"2874":1}}],["locks",{"2":{"1325":1,"2873":1}}],["lockstep",{"2":{"871":1}}],["lockout",{"2":{"1056":2,"1064":1}}],["locking",{"0":{"1045":1},"2":{"1325":2,"2498":1}}],["locked",{"2":{"310":1}}],["lock",{"0":{"1596":1},"2":{"310":1,"855":1,"876":2,"967":1,"1155":1,"1324":4,"1325":1,"1596":1,"1624":2,"1792":3,"2342":1,"2614":1,"2869":2}}],["lowest",{"2":{"1278":1,"2681":1}}],["lowercases",{"2":{"2861":1}}],["lowercase",{"2":{"653":1,"1697":1,"1792":2,"2098":1,"2528":1,"2530":1,"2534":1,"2864":1,"2871":1}}],["lowercased",{"2":{"74":1,"2518":1}}],["lower",{"0":{"2397":1},"1":{"2398":1},"2":{"88":1,"888":2,"1132":1,"1193":1,"1265":1,"1792":1,"1938":1,"2226":1,"2270":1,"2861":1}}],["low",{"0":{"1263":1},"2":{"88":1,"307":1,"873":1,"1042":1,"1044":4,"1084":1,"1145":1,"1228":1,"1263":1,"1275":1,"1280":1,"1385":1,"1878":1,"2177":1}}],["logo",{"0":{"2582":1}}],["logouthandler",{"2":{"2615":1}}],["logoutpath",{"2":{"1469":1,"1479":1,"1483":1,"1792":1}}],["logout",{"0":{"282":1,"284":1,"288":1,"289":1,"290":1,"291":1,"292":1,"935":1,"1371":1,"1479":1,"1481":1},"1":{"283":1,"284":1,"285":2,"286":2,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"295":1,"1480":1,"1481":1},"2":{"27":1,"224":1,"283":1,"284":1,"286":1,"288":2,"289":4,"290":4,"291":7,"292":5,"293":1,"316":1,"691":1,"922":1,"935":5,"938":1,"1061":1,"1064":1,"1098":1,"1318":1,"1371":3,"1460":4,"1465":1,"1466":1,"1467":1,"1468":1,"1479":2,"1483":1,"1484":1,"1507":1,"1550":1,"1699":1,"1700":1,"1792":5,"2107":1,"2170":1,"2186":4,"2189":1,"2323":1,"2375":4,"2481":1,"2529":1,"2537":1,"2581":1,"2856":1,"2865":1,"2879":1,"2881":1}}],["logeventlevel",{"2":{"2544":1}}],["logendpointcreatedinfo",{"2":{"2258":1}}],["loglevel",{"2":{"2405":1}}],["logannotationsetinfo",{"2":{"2258":1}}],["loguploadparameters",{"2":{"1792":1,"2123":1,"2124":1,"2132":1}}],["loguploadevent",{"2":{"1792":1,"2123":1,"2124":1,"2132":1}}],["logconnectionnoticeeventsmode",{"2":{"1792":1,"1836":1,"1844":1,"1863":2,"2701":1,"2802":1}}],["logconnectionnoticeevents",{"2":{"1792":1,"1836":1,"1844":1,"1863":2,"2701":1,"2802":1}}],["logcommandtext",{"0":{"2011":1,"2354":1},"2":{"1792":1,"2011":2,"2354":1}}],["logcommandparameters",{"2":{"1792":1,"1836":1,"1844":1,"1863":2,"2597":1,"2701":1,"2750":1,"2798":1}}],["logcommands",{"2":{"1609":1,"1792":2,"1802":1,"1836":1,"1844":2,"1863":2,"2011":1,"2354":1,"2597":1,"2659":1,"2701":1,"2750":2,"2795":1,"2798":2}}],["logcommand",{"2":{"1609":1,"2659":1}}],["loggers",{"2":{"2544":1}}],["loggername",{"0":{"2108":1},"2":{"1792":3,"1802":1,"2093":1,"2094":1,"2536":1,"2537":1,"2795":1}}],["logger",{"0":{"2544":1,"2752":1},"2":{"1792":3,"1806":1,"2221":1,"2258":3,"2525":1,"2544":5,"2752":1}}],["logged",{"0":{"2405":1},"2":{"310":1,"319":1,"383":1,"384":1,"587":1,"675":1,"704":1,"1218":1,"1221":1,"1232":1,"1792":4,"1875":1,"1957":1,"1961":1,"2007":2,"2011":2,"2157":1,"2179":1,"2226":1,"2258":1,"2328":2,"2337":1,"2354":2,"2364":1,"2379":1,"2384":4,"2392":1,"2405":1,"2481":1,"2491":1,"2492":1,"2495":1,"2536":1,"2540":1,"2543":1,"2558":1,"2622":1,"2722":1,"2802":1}}],["logging",{"0":{"1799":1,"1844":1,"2186":1,"2366":1,"2536":1,"2628":1,"2748":1,"2794":1,"2803":1,"2824":1,"2880":1},"1":{"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1845":1,"2749":1,"2750":1,"2751":1,"2752":1,"2795":1,"2796":1,"2797":1,"2798":1,"2799":1,"2800":1,"2801":1,"2802":1,"2803":1,"2804":1,"2805":1},"2":{"41":1,"596":4,"1056":1,"1061":1,"1064":1,"1110":1,"1244":1,"1253":1,"1254":2,"1318":1,"1351":1,"1386":1,"1403":1,"1601":2,"1680":2,"1704":1,"1718":2,"1783":1,"1791":1,"1792":9,"1798":1,"1799":2,"1801":1,"1802":1,"1803":1,"1804":1,"1805":2,"1807":1,"1810":1,"1811":1,"1863":1,"1946":2,"2071":2,"2104":1,"2114":1,"2170":1,"2208":1,"2219":2,"2235":1,"2258":4,"2261":1,"2267":1,"2364":1,"2384":1,"2392":1,"2405":1,"2406":1,"2535":1,"2597":2,"2614":1,"2622":3,"2628":1,"2629":1,"2672":1,"2701":2,"2750":1,"2794":3,"2802":2,"2803":1,"2805":2,"2824":2,"2825":2}}],["log",{"0":{"1801":1,"2361":1,"2363":1,"2364":1,"2544":1,"2629":1,"2750":1},"1":{"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1},"2":{"64":1,"109":1,"292":2,"310":1,"320":1,"382":2,"595":1,"868":1,"894":1,"934":1,"970":1,"1024":2,"1054":1,"1056":1,"1061":1,"1071":1,"1110":2,"1199":1,"1218":2,"1239":2,"1254":1,"1320":2,"1342":3,"1361":1,"1409":2,"1410":1,"1500":2,"1521":1,"1527":1,"1677":1,"1718":1,"1783":1,"1791":1,"1792":28,"1798":1,"1799":1,"1800":3,"1801":1,"1802":5,"1803":2,"1804":8,"1805":4,"1806":2,"1807":2,"1809":2,"1810":4,"1844":4,"1845":3,"1861":1,"2007":3,"2011":1,"2094":1,"2104":2,"2108":3,"2111":1,"2114":1,"2124":2,"2208":3,"2221":1,"2223":1,"2261":1,"2328":1,"2330":2,"2334":2,"2348":1,"2354":1,"2363":1,"2366":2,"2372":2,"2380":1,"2384":1,"2401":1,"2482":2,"2495":1,"2532":1,"2535":2,"2536":2,"2537":3,"2544":2,"2551":1,"2597":2,"2628":3,"2629":2,"2699":2,"2701":1,"2721":1,"2749":2,"2750":2,"2751":1,"2752":2,"2794":1,"2795":3,"2797":1,"2798":2,"2799":1,"2800":3,"2801":1,"2802":2,"2803":5,"2804":9,"2809":1,"2824":2,"2825":1,"2830":1,"2840":1,"2880":2}}],["logs",{"0":{"2384":1,"2802":1},"2":{"64":1,"190":1,"214":1,"236":1,"298":1,"316":1,"368":1,"388":1,"589":1,"595":1,"868":1,"1015":2,"1071":1,"1111":1,"1318":1,"1386":1,"1449":1,"1470":1,"1609":2,"1670":1,"1704":1,"1792":9,"1799":1,"1800":1,"1804":2,"1807":1,"1811":1,"1822":2,"1825":1,"1844":2,"2011":1,"2176":1,"2216":1,"2255":1,"2328":2,"2354":1,"2364":1,"2366":1,"2384":1,"2414":1,"2428":1,"2481":2,"2492":1,"2493":1,"2529":1,"2533":2,"2535":1,"2536":1,"2543":1,"2558":2,"2629":2,"2659":2,"2721":1,"2749":1,"2794":1,"2795":3,"2798":1,"2802":1,"2803":2,"2805":1,"2835":1,"2841":1,"2855":1,"2865":1,"2880":1}}],["logically",{"2":{"841":1,"848":1}}],["logical",{"0":{"1414":1},"2":{"663":1,"841":14,"845":3,"848":4,"1205":1,"1405":1,"1416":1}}],["logic",{"0":{"213":1,"1032":1,"1247":1,"1394":1,"1739":1,"2287":1},"1":{"1395":1,"1396":1,"1740":1,"1741":1,"1742":1,"2288":1,"2289":1,"2290":1},"2":{"41":1,"54":1,"66":1,"414":1,"832":1,"836":1,"838":1,"841":1,"849":1,"859":6,"860":2,"861":1,"868":1,"873":1,"876":1,"902":1,"911":1,"921":1,"945":2,"956":1,"974":4,"1005":1,"1011":1,"1035":1,"1037":1,"1049":1,"1052":1,"1067":1,"1086":1,"1096":3,"1104":1,"1105":1,"1106":2,"1108":2,"1115":1,"1121":2,"1126":1,"1127":1,"1135":1,"1179":1,"1180":1,"1181":6,"1184":1,"1205":1,"1209":1,"1211":1,"1244":1,"1247":1,"1281":1,"1303":1,"1320":1,"1343":1,"1350":1,"1351":1,"1377":1,"1378":2,"1385":2,"1394":2,"1396":4,"1403":2,"1405":2,"1617":1,"1684":1,"1825":1,"1868":1,"2230":1,"2300":1,"2320":1,"2329":1,"2423":1,"2438":1,"2481":1,"2773":1,"2855":1,"2858":1}}],["loginhandler",{"2":{"2615":1}}],["loginurl",{"2":{"1416":1,"1581":1,"2655":1}}],["loginpath",{"2":{"1226":1,"1469":1,"1479":1,"1483":1,"1792":5,"1876":1}}],["loginoptionspath",{"2":{"1226":1,"1792":1,"1876":1}}],["loginresult",{"2":{"1218":3}}],["logins",{"2":{"1060":1,"1458":1,"1792":1,"2375":1,"2468":1}}],["logincommand",{"2":{"1059":1,"1062":1,"1683":1,"1684":1,"1686":1,"1687":1,"1689":1,"1698":1,"1792":1,"2496":1}}],["login",{"0":{"296":1,"297":1,"312":1,"314":1,"364":1,"366":1,"593":1,"691":1,"934":1,"1055":1,"1060":1,"1222":1,"1308":1,"1371":1,"1455":1,"1471":1,"1479":1,"1480":1,"1686":1,"1689":1,"1872":1,"1959":1,"2176":1,"2180":1,"2259":1,"2471":1},"1":{"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"309":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"365":1,"366":1,"1056":1,"1480":1,"1481":1,"1687":1,"1688":1,"1689":1,"2177":1,"2178":1},"2":{"10":1,"11":1,"12":1,"26":1,"27":1,"32":1,"35":1,"43":2,"65":1,"224":1,"293":1,"294":1,"296":2,"297":4,"298":6,"299":1,"300":1,"301":4,"302":1,"304":2,"305":1,"306":2,"308":1,"309":3,"310":2,"312":6,"313":4,"315":2,"316":1,"364":2,"366":5,"368":1,"531":1,"593":1,"597":1,"691":1,"700":5,"701":1,"922":1,"926":1,"934":7,"937":1,"938":4,"1037":1,"1045":1,"1048":1,"1050":2,"1053":1,"1055":6,"1056":3,"1058":2,"1059":1,"1060":6,"1061":2,"1062":1,"1064":2,"1065":1,"1068":1,"1078":2,"1098":3,"1123":1,"1197":2,"1209":1,"1210":1,"1216":1,"1218":3,"1222":5,"1226":3,"1234":2,"1235":1,"1236":2,"1239":3,"1308":4,"1318":1,"1371":3,"1435":1,"1455":1,"1458":10,"1465":1,"1466":1,"1467":1,"1468":1,"1470":3,"1471":1,"1472":1,"1473":1,"1479":2,"1480":1,"1483":2,"1484":1,"1486":1,"1503":1,"1504":3,"1505":1,"1507":1,"1550":1,"1616":2,"1683":1,"1684":4,"1686":2,"1687":1,"1688":2,"1689":5,"1693":2,"1694":2,"1695":1,"1698":1,"1699":1,"1700":1,"1792":55,"1825":3,"1866":1,"1872":2,"1876":3,"1884":1,"1886":1,"1888":2,"1898":1,"1958":6,"1959":5,"2035":1,"2042":1,"2107":1,"2164":1,"2167":2,"2170":2,"2171":8,"2175":1,"2176":7,"2177":3,"2180":2,"2181":2,"2182":2,"2187":5,"2188":1,"2189":2,"2224":1,"2227":1,"2259":1,"2267":1,"2323":1,"2375":7,"2420":1,"2428":1,"2431":1,"2434":1,"2437":1,"2441":3,"2442":1,"2468":3,"2470":2,"2471":5,"2481":1,"2529":1,"2535":1,"2537":3,"2545":1,"2554":3,"2581":1,"2655":3,"2737":1,"2836":1,"2856":1,"2865":1,"2879":1,"2881":2}}],["loose",{"2":{"2428":1,"2456":1}}],["loosen",{"2":{"2020":1}}],["looming",{"2":{"1405":1}}],["loopback",{"2":{"2346":1,"2347":1}}],["looping",{"2":{"2157":1,"2543":1}}],["loops",{"2":{"1081":1,"1394":2,"1704":1,"2362":1,"2607":1}}],["loop",{"0":{"1418":1,"1442":1,"2857":1},"2":{"3":1,"860":4,"861":1,"871":1,"872":2,"874":1,"876":1,"928":2,"929":2,"996":1,"1021":2,"1044":1,"1073":1,"1076":1,"1080":1,"1081":2,"1133":1,"1376":2,"1382":1,"1386":1,"1393":1,"1401":1,"1418":1,"1419":1,"1421":1,"1442":1,"1443":1,"2159":1,"2289":1,"2339":1,"2372":1,"2402":1,"2403":2,"2504":5,"2532":1,"2537":1,"2857":1,"2878":1}}],["looking",{"2":{"948":1,"1064":1,"1082":1,"2191":1}}],["looked",{"2":{"534":1,"1664":1,"1923":1,"2284":1,"2291":1,"2395":1,"2509":1}}],["looks",{"0":{"2392":1},"2":{"388":1,"395":1,"856":1,"915":1,"916":2,"917":1,"968":1,"1037":1,"1416":1,"1417":1,"1566":1,"1567":1,"2226":1,"2247":1,"2429":1,"2823":1}}],["lookups",{"2":{"2614":1}}],["lookup",{"0":{"2621":1},"2":{"136":3,"277":1,"388":1,"452":1,"577":1,"1154":4,"1244":1,"1599":1,"1792":1,"1974":1,"2236":1,"2381":1,"2422":1,"2477":1,"2580":1,"2607":1,"2614":1,"2621":5,"2815":1}}],["look",{"2":{"1":1,"841":1,"845":1,"849":1,"851":1,"852":1,"857":1,"860":2,"876":1,"918":1,"919":1,"1098":1,"1234":1,"1385":1,"1386":2,"1399":1,"1406":1,"1439":1,"1442":1,"1792":1,"2823":1}}],["lazy",{"2":{"2462":1,"2482":1,"2502":1,"2614":1}}],["lazily",{"2":{"1522":1}}],["lack",{"2":{"2428":1}}],["lacking",{"2":{"1825":1}}],["lacks",{"2":{"25":1,"857":1,"876":1,"1674":1,"2423":1,"2755":1}}],["layout",{"0":{"2538":1},"2":{"2095":1,"2167":1,"2537":1,"2539":1,"2545":1,"2861":1}}],["layouts",{"2":{"1792":1,"2095":1}}],["layering",{"2":{"868":1}}],["layered",{"2":{"868":1,"869":1,"873":1,"1005":1,"1193":2,"2537":1}}],["layer",{"0":{"1336":1},"2":{"838":1,"841":1,"843":2,"849":1,"851":1,"860":2,"864":1,"865":1,"866":1,"867":2,"868":1,"869":2,"871":4,"873":3,"874":1,"875":1,"876":1,"946":1,"953":1,"973":1,"974":1,"984":1,"996":1,"1006":3,"1007":1,"1008":1,"1011":2,"1037":1,"1038":1,"1039":1,"1046":2,"1077":1,"1094":1,"1098":1,"1101":1,"1104":1,"1105":1,"1106":1,"1111":1,"1184":1,"1193":1,"1276":1,"1303":1,"1333":1,"1350":1,"1390":1,"1401":1,"1405":1,"1409":1,"1421":1,"2175":1,"2347":1,"2438":1,"2456":1,"2466":1,"2481":2,"2712":1}}],["layers",{"0":{"831":1},"1":{"832":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1},"2":{"836":1,"851":2,"868":1,"871":1,"1006":1,"1009":2,"1136":1,"1276":1,"1328":1,"1382":1,"1405":1,"1418":1,"1422":1}}],["lax",{"2":{"1447":2,"1792":2,"2425":2,"2426":1,"2428":1,"2436":1,"2492":1}}],["laptop",{"0":{"1429":1},"2":{"1423":1,"2164":1}}],["laptops",{"2":{"1423":1}}],["lags",{"2":{"1271":1}}],["launched",{"2":{"1130":1}}],["laid",{"2":{"851":1}}],["land",{"2":{"1107":1,"1414":1,"2398":2,"2419":1,"2438":1}}],["lands",{"2":{"352":1,"2866":1,"2871":1}}],["lang=en",{"2":{"541":2}}],["languages",{"0":{"1970":1,"1971":1,"1972":1},"2":{"841":2,"1382":2,"1394":2,"1403":1,"1792":3,"1969":1,"1970":1,"1971":1}}],["language",{"0":{"1969":1},"1":{"1970":1,"1971":1,"1972":1},"2":{"7":1,"16":1,"18":1,"19":1,"20":1,"21":1,"37":2,"38":2,"39":2,"40":1,"48":1,"50":1,"60":1,"61":1,"62":1,"71":1,"72":1,"104":1,"115":1,"116":1,"117":1,"119":1,"128":1,"136":1,"137":1,"157":1,"184":1,"186":1,"206":1,"207":1,"208":1,"209":1,"247":1,"248":1,"249":1,"250":1,"254":1,"255":1,"256":1,"257":1,"263":2,"264":2,"288":1,"289":1,"290":1,"291":1,"292":1,"298":1,"308":2,"309":1,"310":2,"312":1,"313":1,"322":1,"332":1,"333":1,"334":1,"335":1,"351":1,"360":1,"361":1,"365":1,"366":1,"374":1,"386":1,"401":1,"405":1,"406":1,"408":2,"415":1,"423":1,"426":1,"427":1,"428":1,"436":1,"438":1,"439":1,"449":1,"451":2,"452":1,"453":1,"454":1,"466":1,"467":1,"468":1,"469":1,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"503":1,"510":1,"511":1,"520":1,"521":1,"523":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"592":1,"593":1,"594":1,"611":1,"646":1,"658":1,"664":2,"677":1,"679":1,"722":1,"723":1,"733":1,"734":1,"735":1,"736":1,"750":1,"751":1,"752":1,"755":1,"756":1,"764":2,"765":1,"766":1,"774":2,"777":1,"797":1,"798":1,"799":1,"811":1,"812":1,"813":1,"814":1,"815":1,"835":1,"841":1,"848":2,"851":1,"860":3,"865":1,"871":2,"872":2,"873":1,"874":1,"876":2,"883":1,"884":1,"886":1,"888":1,"904":2,"914":2,"915":1,"916":3,"918":1,"928":1,"929":1,"934":1,"935":1,"936":1,"956":1,"979":1,"980":1,"982":1,"988":1,"990":1,"994":1,"1005":1,"1021":1,"1029":1,"1037":1,"1054":2,"1055":1,"1056":2,"1057":1,"1058":1,"1060":1,"1068":1,"1076":1,"1078":1,"1105":4,"1113":1,"1135":1,"1138":1,"1139":1,"1141":1,"1142":1,"1149":1,"1179":3,"1188":1,"1192":1,"1197":1,"1214":1,"1215":1,"1216":1,"1232":1,"1234":1,"1235":1,"1236":1,"1239":1,"1255":1,"1308":1,"1309":1,"1310":1,"1321":1,"1331":1,"1332":1,"1337":1,"1338":1,"1339":1,"1345":2,"1347":1,"1348":1,"1357":1,"1362":1,"1368":1,"1382":4,"1387":1,"1390":1,"1393":1,"1394":9,"1401":2,"1403":2,"1404":1,"1427":1,"1429":1,"1431":1,"1458":3,"1504":1,"1547":1,"1567":1,"1632":1,"1655":2,"1689":1,"1727":1,"1736":1,"1742":1,"1745":1,"1787":1,"1792":4,"1794":1,"1920":1,"1921":1,"1924":1,"1926":1,"1967":2,"1972":3,"1973":1,"1974":1,"2076":1,"2078":1,"2079":1,"2147":1,"2156":1,"2176":1,"2177":2,"2183":1,"2184":1,"2186":1,"2187":3,"2264":1,"2277":4,"2283":1,"2290":1,"2292":1,"2293":1,"2303":1,"2304":1,"2319":1,"2344":2,"2346":1,"2375":3,"2542":1,"2549":4,"2572":1,"2575":1,"2580":2,"2586":1,"2587":1,"2588":1,"2589":1,"2607":1,"2762":1,"2764":1,"2766":1,"2767":1,"2775":1,"2802":1,"2803":1,"2809":1,"2810":1,"2812":1,"2813":1,"2815":1,"2822":1,"2829":1,"2834":2,"2836":2,"2839":1,"2855":1}}],["latency",{"2":{"1090":1,"1091":1,"1164":1,"1165":1,"1180":1,"1263":1,"1268":1,"1271":1,"1280":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1349":2,"1440":1,"2398":3,"2504":1}}],["lately",{"2":{"912":1,"1254":1}}],["latest",{"0":{"1792":1,"2221":1},"1":{"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1},"2":{"531":1,"1019":1,"1023":1,"1026":1,"1032":1,"1117":2,"1118":1,"1254":1,"1343":2,"1773":1,"1775":1,"1785":2,"1792":1,"2385":3,"2550":3,"2576":2,"2717":1,"2764":2,"2766":1,"2776":1,"2779":1,"2781":1,"2782":1,"2783":1,"2784":1,"2788":5,"2789":4,"2790":4,"2791":4,"2792":1}}],["lateral",{"2":{"857":1,"1096":1}}],["later",{"2":{"180":1,"529":1,"686":1,"844":1,"848":1,"859":1,"865":1,"872":1,"874":1,"888":1,"902":1,"903":1,"911":1,"1080":1,"1157":1,"1187":1,"1214":1,"1232":1,"1401":1,"1403":2,"1792":1,"1948":1,"1949":1,"1960":1,"2156":1,"2171":1,"2257":1,"2434":1,"2542":1,"2546":1,"2684":1,"2742":1,"2819":1}}],["lat",{"2":{"333":2}}],["lastname",{"2":{"914":2,"915":1,"916":6,"917":4,"918":2,"919":2,"920":5,"1375":1}}],["lastresult",{"2":{"763":2,"885":1,"887":1,"894":1,"903":3}}],["last",{"2":{"213":1,"319":2,"427":1,"763":1,"773":1,"840":1,"841":1,"851":1,"856":1,"880":1,"885":1,"913":2,"914":4,"915":4,"916":5,"918":3,"921":1,"1020":1,"1021":2,"1026":1,"1050":2,"1056":3,"1058":2,"1060":2,"1073":1,"1213":1,"1216":2,"1239":1,"1249":1,"1254":2,"1336":1,"1338":1,"1339":2,"1375":2,"1376":2,"1401":1,"1405":1,"1440":1,"1741":1,"1792":2,"2050":1,"2110":1,"2289":1,"2407":1,"2530":1,"2531":1,"2533":2,"2537":1}}],["largeobjectuploadhandler",{"2":{"2615":1}}],["largeobjectchecktext",{"2":{"1792":1,"2123":1,"2126":2}}],["largeobjectcheckimage",{"2":{"1356":1,"1792":1,"2123":1,"2126":2}}],["largeobjectkey",{"2":{"1356":1,"1792":1,"2123":1,"2126":2}}],["largeobjectenabled",{"2":{"1356":1,"1792":1,"2123":1,"2126":2,"2132":1}}],["largeobject",{"2":{"1353":1}}],["largest",{"2":{"872":1,"873":1,"2398":2}}],["larger",{"0":{"1091":1},"2":{"872":2,"1067":1,"1091":1,"1133":1,"1193":1,"1262":1,"2245":1,"2398":1,"2604":1,"2789":1}}],["large",{"0":{"85":1,"749":1,"753":1,"782":1,"1262":1,"1268":1,"1298":1,"1352":1,"1362":1,"1363":1,"2126":1,"2517":1},"1":{"750":1,"751":1,"752":1,"753":1,"783":1,"1299":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":2,"1364":1,"1365":1,"1366":1,"1367":1},"2":{"75":1,"87":1,"745":1,"746":3,"747":2,"748":3,"749":1,"751":2,"753":9,"777":3,"781":1,"782":12,"783":2,"791":1,"852":1,"902":3,"903":6,"904":1,"911":1,"919":1,"968":1,"971":1,"1037":1,"1067":1,"1099":2,"1121":1,"1126":1,"1149":2,"1161":2,"1165":1,"1255":3,"1258":1,"1274":1,"1280":1,"1285":4,"1299":1,"1351":1,"1352":1,"1353":1,"1354":2,"1355":1,"1356":1,"1358":7,"1359":1,"1362":1,"1363":1,"1364":1,"1365":1,"1410":5,"1412":1,"1431":1,"1432":1,"1511":1,"1516":2,"1632":2,"1792":7,"1925":4,"1927":1,"1928":1,"1974":1,"2122":1,"2123":2,"2124":1,"2125":1,"2126":4,"2134":1,"2164":1,"2165":1,"2222":1,"2265":3,"2270":2,"2398":1,"2466":1,"2517":1,"2521":1,"2549":1,"2607":1,"2664":2,"2812":1}}],["labelled",{"2":{"2451":1}}],["labeling",{"2":{"1134":1}}],["label>",{"2":{"1061":8}}],["labels",{"0":{"1128":1},"1":{"1129":1,"1130":1,"1131":1,"1132":1,"1133":1,"1134":1},"2":{"948":1,"1037":1,"1128":1,"1134":1,"1386":2,"2535":1}}],["label",{"2":{"1":1,"334":2,"859":1,"1133":1,"1386":1,"1792":1,"1974":2,"2038":1,"2040":4,"2474":1,"2476":3,"2482":1,"2607":2,"2732":1}}],["labor",{"2":{"1":1,"1211":1}}],["libgssapi",{"2":{"2385":1}}],["libssl3",{"2":{"2385":1}}],["lib",{"2":{"1654":1,"2297":1,"2757":1}}],["libraries",{"2":{"849":1,"851":1,"881":1,"911":1,"958":1,"1010":1,"1036":1,"1064":1,"1099":1,"1209":1,"1248":1,"2289":1,"2625":1,"2772":1,"2775":1}}],["library",{"2":{"1":1,"845":1,"856":1,"879":1,"910":1,"951":1,"971":2,"1011":1,"1078":1,"1096":1,"1181":1,"1416":1,"1422":1,"1515":1,"1572":1,"1581":1,"1840":2,"2077":1,"2148":1,"2195":1,"2226":1,"2254":1,"2257":1,"2258":1,"2274":1,"2386":1,"2389":3,"2409":1,"2431":1,"2440":1,"2448":1,"2455":1,"2465":1,"2555":1,"2571":1,"2628":2,"2652":1,"2711":1,"2729":1,"2795":1}}],["licenses",{"2":{"1206":3,"1208":1}}],["licensed",{"2":{"2":1}}],["lifted",{"2":{"2403":1}}],["lifting",{"2":{"876":1,"1017":1}}],["lifetime",{"2":{"872":2,"873":1,"1616":3,"1792":3}}],["life",{"2":{"861":1,"1404":2}}],["lifecycle",{"2":{"716":1,"851":1,"1099":1,"1303":1,"1824":1,"2112":1,"2481":1,"2498":1,"2875":1}}],["lightweight",{"2":{"1087":1,"1269":1,"1343":1,"1385":2,"2369":1,"2550":1,"2791":1,"2806":1}}],["lighthouse",{"2":{"913":1}}],["light",{"2":{"852":1}}],["lied",{"2":{"854":1}}],["lie",{"2":{"844":1,"873":1,"875":1,"1279":1,"2452":1}}],["lies",{"2":{"841":1,"872":1}}],["liteprofile",{"2":{"1692":1,"1792":1}}],["literals",{"0":{"2399":1},"2":{"1575":1,"2040":1,"2399":1,"2528":1,"2863":1}}],["literally",{"2":{"389":1,"452":1,"1403":1}}],["literal",{"2":{"212":1,"378":1,"379":1,"388":2,"389":2,"390":1,"395":1,"408":3,"460":2,"462":1,"463":1,"464":2,"467":1,"468":1,"469":4,"551":2,"555":1,"616":1,"848":1,"1067":1,"1523":1,"1582":1,"1792":4,"1854":2,"1855":1,"1956":1,"2261":1,"2277":1,"2333":2,"2339":1,"2379":1,"2380":1,"2381":1,"2400":1,"2476":1,"2493":1,"2529":1,"2531":1,"2533":1,"2595":2,"2596":1,"2603":1,"2665":3}}],["little",{"2":{"841":1,"1385":1,"1401":1,"1435":1,"2398":1}}],["likely",{"2":{"1401":1,"1402":1,"1792":1,"1861":1,"2835":1}}],["like",{"0":{"1017":1,"2392":1},"2":{"165":1,"184":1,"374":1,"376":2,"388":2,"390":2,"395":1,"448":1,"452":1,"587":1,"690":1,"775":1,"801":1,"832":1,"834":1,"835":1,"837":1,"840":1,"841":2,"845":1,"847":1,"851":3,"852":1,"857":1,"859":2,"876":1,"879":1,"880":1,"904":1,"915":1,"916":3,"917":1,"918":2,"919":1,"920":1,"948":1,"968":1,"1012":1,"1033":1,"1037":1,"1050":1,"1067":1,"1073":2,"1081":1,"1096":1,"1097":1,"1098":2,"1102":1,"1114":1,"1122":1,"1127":1,"1129":1,"1130":1,"1139":1,"1167":1,"1210":1,"1326":1,"1385":2,"1386":7,"1390":1,"1396":1,"1398":1,"1399":3,"1401":2,"1402":2,"1403":3,"1404":2,"1405":3,"1409":1,"1416":1,"1417":1,"1421":1,"1422":1,"1424":1,"1432":1,"1437":1,"1477":1,"1566":1,"1567":2,"1609":1,"1619":1,"1623":1,"1792":2,"2106":1,"2183":1,"2184":1,"2193":2,"2225":1,"2226":1,"2247":1,"2266":1,"2277":1,"2282":1,"2284":1,"2287":1,"2292":1,"2313":1,"2323":1,"2328":1,"2336":1,"2342":1,"2347":1,"2369":1,"2378":1,"2395":1,"2407":1,"2410":1,"2413":1,"2420":1,"2429":1,"2441":1,"2468":1,"2476":1,"2493":2,"2511":1,"2519":1,"2528":1,"2531":1,"2532":3,"2535":1,"2537":2,"2589":1,"2645":1,"2661":1,"2664":1,"2667":1,"2679":1,"2721":1,"2758":1,"2810":1,"2823":2,"2863":1,"2866":1,"2878":1}}],["likes",{"2":{"1":1}}],["limitation",{"2":{"919":2,"927":1,"928":1,"1097":1,"1145":1,"2319":1,"2529":1,"2588":1,"2590":2,"2855":1}}],["limitations",{"0":{"919":1,"2466":1,"2855":1},"2":{"851":1,"919":2,"920":1,"1106":1,"1378":1,"1394":2,"2481":1,"2586":2}}],["limited",{"0":{"2069":1},"2":{"916":1,"919":1,"945":1,"1013":1,"1111":1,"1160":1,"1163":1,"1179":1,"1185":1,"1382":1,"1458":1,"1618":2,"1620":1,"1742":5,"1771":1,"1792":3,"1822":1,"1958":1,"2256":2,"2290":5,"2375":1,"2468":1,"2608":1}}],["limiter",{"0":{"473":1,"1947":1,"2257":1},"1":{"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"482":1,"483":1,"1948":1,"1949":1,"1950":1,"1951":1,"1952":1,"1953":1,"1954":1,"1955":1,"1956":1,"1957":1,"1958":1,"1959":1,"1960":1,"1961":1,"1962":1,"1963":1,"1964":1},"2":{"235":1,"473":3,"474":2,"476":2,"477":2,"478":1,"479":1,"480":1,"481":1,"483":1,"835":1,"868":1,"869":1,"873":1,"1069":3,"1113":1,"1158":1,"1161":2,"1163":3,"1179":2,"1182":2,"1217":1,"1224":1,"1253":1,"1406":1,"1718":1,"1790":1,"1792":14,"1797":1,"1822":4,"1824":2,"1874":1,"1894":1,"1895":1,"1947":1,"1949":1,"1951":2,"1952":1,"1953":1,"1954":1,"1955":1,"1956":1,"1959":2,"1961":3,"1962":1,"1964":1,"2047":1,"2061":1,"2070":1,"2218":2,"2224":1,"2240":1,"2257":11,"2258":1,"2379":3,"2438":1,"2441":1,"2447":2,"2468":1,"2470":1,"2471":1,"2472":1,"2481":2,"2558":1,"2634":1,"2635":1,"2747":2}}],["limits",{"0":{"1066":1,"1069":1,"1077":1,"1990":1,"1991":1},"1":{"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1991":1},"2":{"879":1,"1037":1,"1066":1,"1115":1,"1121":1,"1158":1,"1161":1,"1163":1,"1177":1,"1185":1,"1258":1,"1609":1,"1703":1,"1706":1,"1792":3,"1951":1,"1952":1,"1953":1,"1954":1,"1984":1,"1990":2,"1992":1,"1993":1,"1995":1,"2379":1,"2633":1,"2645":1,"2661":1}}],["limit=",{"2":{"212":1}}],["limit",{"0":{"927":1,"944":1,"1706":1},"1":{"928":1,"929":1,"930":1},"2":{"119":2,"212":3,"263":1,"478":2,"480":1,"488":1,"531":2,"919":1,"921":1,"926":1,"927":1,"928":1,"944":1,"1049":2,"1101":1,"1105":1,"1107":2,"1149":1,"1158":1,"1162":1,"1179":1,"1232":1,"1245":2,"1385":1,"1429":1,"1511":1,"1517":2,"1594":1,"1624":1,"1704":1,"1717":1,"1792":9,"1804":2,"1824":1,"1893":2,"1925":1,"1949":2,"1951":1,"1952":1,"1953":1,"1954":1,"1961":2,"2061":2,"2257":5,"2265":2,"2344":1,"2441":1,"2463":2,"2464":2,"2465":2,"2466":1,"2517":1,"2848":1}}],["limiting",{"0":{"479":1,"1156":1,"1157":1,"1161":1,"1162":1,"1245":1,"1955":1,"1961":1,"2061":1,"2218":1,"2379":1,"2747":1},"1":{"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1956":1,"1957":1},"2":{"41":1,"235":1,"473":1,"478":1,"479":1,"480":2,"481":1,"483":1,"835":1,"836":1,"837":1,"868":2,"869":3,"873":1,"877":1,"1032":1,"1037":2,"1066":1,"1069":1,"1086":1,"1101":9,"1105":1,"1109":1,"1113":1,"1121":1,"1125":1,"1127":3,"1135":1,"1156":2,"1159":1,"1163":1,"1179":1,"1180":2,"1181":1,"1182":3,"1245":1,"1250":1,"1252":1,"1351":1,"1386":1,"1407":1,"1704":1,"1718":1,"1739":1,"1790":1,"1792":6,"1797":1,"1824":1,"1894":1,"1895":1,"1947":1,"1949":2,"1950":3,"1951":1,"1952":1,"1953":1,"1954":1,"1962":1,"1964":1,"2070":1,"2257":5,"2287":1,"2378":1,"2389":1,"2438":1,"2580":1,"2634":1,"2635":1,"2809":1}}],["listens",{"2":{"2830":1,"2832":1,"2838":1}}],["listening",{"2":{"1460":1,"1792":2,"2116":1,"2117":2,"2119":2,"2375":2,"2699":1,"2701":1,"2702":2,"2704":2,"2823":1,"2824":2,"2825":1}}],["listener",{"2":{"1325":1,"1326":3,"2828":1}}],["listeners",{"2":{"663":1,"669":1,"1326":1}}],["listen",{"0":{"1324":1},"1":{"1325":1},"2":{"650":1,"1037":1,"1103":2,"1106":2,"1324":2,"1325":1,"1792":1,"2118":1,"2342":1,"2703":1}}],["listed",{"2":{"175":1,"179":1,"213":1,"685":1,"704":1,"1074":1,"1690":1,"1741":1,"1792":5,"1832":1,"2097":1,"2289":1,"2389":1,"2477":1,"2483":1,"2494":1,"2526":1,"2531":1,"2535":1,"2860":1,"2869":2}}],["listings",{"2":{"1432":1}}],["listing",{"2":{"102":1,"109":1,"1150":1,"1527":1,"1792":1,"1832":1,"2164":1,"2380":1}}],["list",{"0":{"2200":1,"2494":1},"2":{"101":1,"105":1,"108":2,"109":1,"213":1,"305":1,"317":1,"323":3,"384":1,"529":1,"684":1,"781":2,"833":1,"834":1,"852":1,"868":1,"876":1,"885":1,"902":1,"916":1,"1013":1,"1032":1,"1039":2,"1042":2,"1043":1,"1102":1,"1155":1,"1175":1,"1360":1,"1382":2,"1385":1,"1386":1,"1436":1,"1437":1,"1442":4,"1460":1,"1521":2,"1523":1,"1527":1,"1533":1,"1596":1,"1616":1,"1639":4,"1644":1,"1674":1,"1703":3,"1714":1,"1740":1,"1792":31,"1813":1,"1821":1,"1823":2,"1824":1,"1832":1,"1833":1,"1838":4,"1898":2,"1956":1,"1967":2,"2038":1,"2040":2,"2107":1,"2125":1,"2168":2,"2196":1,"2200":1,"2223":2,"2288":1,"2375":1,"2379":1,"2380":3,"2431":2,"2436":2,"2477":1,"2481":3,"2486":1,"2492":1,"2494":2,"2498":1,"2504":1,"2626":1,"2633":3,"2662":1,"2749":1,"2765":1,"2785":1,"2797":1,"2812":1}}],["lists",{"2":{"14":1,"113":1,"220":1,"637":1,"687":1,"1409":1,"1792":2,"1833":1,"1862":1,"1928":1,"2097":1,"2104":1,"2476":1,"2481":1,"2535":1,"2537":1,"2549":1,"2880":1}}],["linux",{"0":{"2576":1,"2782":1,"2783":1},"2":{"1117":1,"1118":2,"1653":3,"1664":1,"1792":2,"2157":1,"2237":1,"2297":1,"2353":1,"2385":1,"2450":1,"2543":1,"2576":4,"2716":1,"2757":1,"2776":1,"2779":2,"2783":1,"2790":1,"2792":3}}],["linux64",{"2":{"1117":3,"2779":1,"2782":1}}],["linq",{"2":{"852":6}}],["liner",{"2":{"2873":1}}],["line2",{"2":{"2589":1}}],["line1",{"2":{"2589":3}}],["lines",{"0":{"873":1,"1281":1},"2":{"319":3,"809":1,"856":1,"867":1,"868":10,"869":4,"871":1,"873":2,"874":1,"875":1,"879":1,"910":4,"911":4,"968":1,"1010":1,"1021":1,"1027":6,"1036":2,"1037":2,"1059":1,"1064":12,"1079":1,"1102":1,"1181":2,"1281":3,"1302":2,"1309":1,"1322":4,"1350":7,"1368":2,"1401":1,"1408":1,"1414":1,"1432":1,"1565":1,"1608":1,"1792":1,"1802":1,"2192":1,"2272":1,"2366":1,"2372":2,"2393":1,"2452":1,"2481":2,"2529":3,"2533":2,"2535":1,"2537":1,"2575":1,"2795":1,"2800":1,"2802":1,"2865":1}}],["line",{"0":{"24":1,"251":1,"339":1,"342":1,"343":1,"562":1,"563":1,"1009":1,"2365":1,"2691":1,"2692":1,"2699":1,"2780":1,"2785":1},"1":{"340":1,"341":1,"342":1,"343":1,"344":1,"345":1,"346":1,"2692":1,"2781":1,"2782":1,"2783":1,"2784":1},"2":{"128":2,"129":1,"131":1,"159":3,"203":1,"211":2,"229":1,"251":1,"319":1,"323":1,"324":1,"339":1,"340":1,"342":1,"343":1,"344":1,"378":1,"489":1,"490":1,"491":1,"493":1,"494":1,"496":1,"560":3,"562":1,"563":1,"606":1,"619":3,"666":1,"685":2,"687":1,"689":1,"694":1,"704":1,"706":2,"709":1,"714":1,"845":1,"852":3,"860":1,"864":1,"865":1,"869":1,"871":1,"872":5,"873":1,"919":1,"921":1,"947":1,"981":1,"1042":1,"1076":1,"1136":1,"1181":3,"1189":2,"1281":1,"1366":1,"1368":1,"1373":1,"1382":1,"1386":2,"1401":1,"1402":1,"1408":1,"1409":2,"1419":1,"1431":1,"1608":1,"1731":2,"1785":1,"1792":6,"1917":1,"1925":1,"1991":1,"2094":1,"2111":1,"2155":1,"2190":1,"2191":3,"2192":2,"2206":1,"2208":1,"2222":2,"2264":1,"2272":1,"2323":1,"2328":3,"2329":1,"2333":1,"2340":3,"2358":1,"2359":1,"2365":4,"2366":3,"2393":1,"2482":1,"2489":1,"2502":1,"2505":2,"2517":1,"2528":2,"2529":8,"2531":6,"2532":1,"2533":2,"2535":3,"2537":2,"2663":1,"2679":1,"2680":1,"2681":3,"2684":1,"2687":1,"2691":2,"2697":2,"2719":1,"2726":2,"2727":1,"2729":1,"2760":1,"2762":3,"2765":1,"2772":1,"2795":1,"2802":1,"2812":1,"2823":2,"2824":1,"2825":2,"2840":1,"2852":1,"2864":1,"2865":7,"2874":1,"2879":1,"2880":1,"2881":1}}],["linking",{"2":{"1792":1}}],["linkedin",{"0":{"1692":1},"2":{"868":1,"1060":1,"1393":1,"1403":1,"1445":1,"1465":1,"1682":1,"1690":1,"1692":5,"1788":1,"1792":8,"1894":1,"2736":1}}],["links",{"2":{"386":1,"970":1,"1572":1,"2182":1}}],["link",{"2":{"0":1,"158":1,"834":1,"841":1,"919":1,"920":1,"961":1,"1200":2,"1401":1}}],["livez",{"2":{"1780":2}}],["livenessprobe",{"2":{"1773":1}}],["liveness",{"0":{"1768":1},"2":{"1764":1,"1774":2,"1776":1,"1792":2,"2634":3}}],["livepath",{"2":{"1763":1,"1764":1,"1776":1,"1780":1,"1792":1,"2634":1}}],["live=false",{"2":{"1525":1}}],["live=true",{"2":{"1067":3,"1101":1,"1150":1,"1519":1,"1525":1}}],["lived",{"0":{"1068":1},"2":{"855":1,"1037":1,"1066":2,"1068":1,"1121":2,"1325":1,"1458":2,"1792":3,"2375":2,"2427":2,"2835":1}}],["lives",{"0":{"855":1},"2":{"354":1,"840":1,"844":2,"845":1,"851":1,"854":1,"861":1,"865":1,"866":1,"868":1,"956":1,"978":1,"1010":1,"1039":1,"1070":1,"1077":1,"1086":1,"1108":1,"1184":1,"1368":1,"1423":1,"1435":1,"1442":1,"2171":1,"2481":1,"2520":1,"2542":1,"2762":1,"2860":1}}],["live",{"0":{"1067":1,"1768":1},"2":{"3":1,"83":1,"94":1,"278":1,"832":1,"848":1,"851":1,"852":2,"857":1,"860":1,"865":1,"868":1,"873":2,"988":1,"1037":1,"1043":1,"1067":6,"1076":1,"1080":2,"1100":2,"1115":1,"1121":1,"1150":4,"1323":1,"1327":1,"1368":1,"1373":1,"1378":1,"1394":1,"1406":2,"1408":1,"1414":1,"1524":1,"1525":1,"1529":3,"1763":1,"1764":1,"1770":1,"1773":1,"1792":2,"1826":1,"2050":1,"2156":1,"2166":1,"2267":1,"2407":1,"2409":1,"2431":1,"2440":1,"2465":1,"2466":1,"2537":1,"2542":1,"2546":2,"2634":3,"2742":1,"2860":1}}],["ns",{"2":{"2621":10}}],["nswag",{"2":{"869":1,"873":1}}],["nline2",{"2":{"2589":2}}],["nginxnginxlocation",{"2":{"1711":1}}],["nginx",{"0":{"1711":1},"2":{"1101":1,"1106":1,"1701":1,"1792":1,"1859":1,"2633":2,"2835":2}}],["nkquuqudndsnbn8bacvcqlcqkhs",{"2":{"1051":1}}],["npm",{"0":{"2786":1},"2":{"1117":2,"2106":1,"2532":1,"2716":2,"2786":3,"2878":1}}],["npx",{"2":{"1047":1,"1117":1,"2786":5}}],["npoi",{"2":{"968":1}}],["npgsqlretryextensions",{"2":{"2372":1}}],["npgsqlrestserializercontext",{"2":{"2600":1}}],["npgsqlrestbuilder",{"2":{"2372":1}}],["npgsqlrestendpoint",{"2":{"2372":4,"2384":1,"2615":1,"2621":1}}],["npgsqlrestparameter",{"2":{"2372":1}}],["npgsqlrestauthenticationoptions",{"2":{"2259":4,"2554":1}}],["npgsqlrest=debug",{"2":{"2208":1,"2699":1,"2795":1,"2824":2}}],["npgsqlrestoptions",{"0":{"2455":1},"2":{"1840":1,"2148":1,"2264":1,"2266":1,"2369":1,"2455":1,"2483":1,"2575":1,"2714":1}}],["npgsqlresttests",{"2":{"2258":1,"2417":2,"2435":4,"2447":1,"2448":1,"2456":1,"2457":3,"2465":1,"2472":1,"2513":1,"2523":2,"2546":1}}],["npgsqlresttest",{"2":{"1792":3,"1802":2,"2093":1,"2094":1,"2104":1,"2108":1,"2535":1,"2536":2,"2537":1,"2544":1,"2752":1,"2795":2,"2800":2,"2804":1,"2805":1,"2880":2}}],["npgsqlrestclient",{"0":{"2567":1},"2":{"1792":2,"1802":3,"2104":1,"2157":1,"2386":1,"2389":2,"2409":1,"2419":1,"2422":1,"2440":1,"2448":2,"2536":1,"2543":1,"2544":1,"2575":1,"2627":1,"2628":3,"2752":1,"2795":4,"2800":1,"2804":1,"2880":1}}],["npgsqlrest",{"0":{"831":1,"835":1,"868":1,"878":1,"880":1,"921":1,"937":1,"949":1,"1010":1,"1015":1,"1016":1,"1049":1,"1066":1,"1083":1,"1086":1,"1105":1,"1113":1,"1117":1,"1121":1,"1125":1,"1126":1,"1135":1,"1209":1,"1243":1,"1263":1,"1276":1,"1304":1,"1305":1,"1319":1,"1321":1,"1325":1,"1328":1,"1330":1,"1333":1,"1401":1,"1402":1,"1403":1,"1406":1,"1630":1,"1631":1,"1835":1,"2317":1,"2481":1,"2611":1,"2709":1,"2713":1,"2716":1,"2751":1,"2777":1,"2823":1},"1":{"832":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1,"879":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1,"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"1011":1,"1012":1,"1013":1,"1014":1,"1015":1,"1016":1,"1017":1,"1018":1,"1019":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1084":1,"1085":1,"1086":1,"1087":1,"1088":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1094":1,"1095":1,"1096":1,"1097":1,"1098":1,"1099":1,"1100":1,"1101":1,"1102":1,"1103":1,"1104":1,"1105":1,"1106":1,"1107":1,"1108":1,"1109":1,"1110":1,"1111":1,"1112":1,"1113":1,"1114":1,"1115":1,"1116":1,"1117":1,"1118":1,"1119":1,"1120":1,"1121":1,"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1136":1,"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1151":1,"1152":1,"1153":1,"1154":1,"1155":1,"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1164":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"1172":1,"1173":1,"1174":1,"1175":1,"1176":1,"1177":1,"1178":1,"1179":1,"1180":1,"1181":1,"1182":1,"1210":1,"1211":1,"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1242":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1320":1,"1321":1,"1329":1,"1330":1,"1331":2,"1332":2,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1341":1,"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1,"1631":1,"1632":1,"1836":1,"1837":1,"1838":1,"1839":1,"1840":1,"1841":1,"1842":1,"1843":1,"1844":1,"1845":1,"1846":1,"1847":1,"1848":1,"1849":1,"1850":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":1,"1859":1,"1860":1,"1861":1,"1862":1,"1863":1,"1864":1,"1865":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"1":1,"2":1,"11":1,"31":1,"33":1,"38":3,"40":1,"46":1,"52":1,"56":1,"57":2,"58":2,"61":2,"62":4,"76":1,"89":1,"134":1,"139":1,"141":1,"143":1,"150":1,"151":1,"164":1,"202":1,"220":1,"239":1,"259":1,"267":1,"279":1,"284":1,"285":1,"297":4,"298":2,"300":1,"305":3,"306":1,"307":1,"308":1,"309":4,"310":2,"317":1,"336":1,"354":1,"364":1,"388":2,"390":2,"395":1,"410":1,"414":1,"429":1,"430":1,"435":1,"436":5,"448":1,"449":1,"453":1,"455":1,"470":1,"471":1,"504":1,"505":1,"513":1,"525":1,"534":1,"556":1,"557":1,"634":1,"647":1,"650":1,"668":1,"670":1,"672":1,"689":1,"693":1,"698":1,"703":1,"708":1,"710":3,"713":1,"831":3,"832":1,"833":2,"834":1,"835":4,"836":2,"837":2,"838":3,"839":1,"866":3,"868":4,"869":2,"872":2,"873":2,"876":5,"878":4,"881":1,"889":1,"894":1,"907":1,"909":1,"910":1,"911":1,"912":1,"913":2,"914":1,"916":1,"917":2,"918":3,"919":2,"920":2,"921":3,"922":1,"934":2,"935":1,"936":1,"937":1,"938":1,"946":1,"947":4,"949":1,"954":1,"958":1,"961":1,"963":1,"964":1,"965":1,"968":1,"969":1,"970":3,"972":1,"975":2,"976":4,"978":1,"979":1,"984":1,"985":1,"986":2,"995":1,"997":2,"998":2,"1005":2,"1007":1,"1008":1,"1010":3,"1015":4,"1016":2,"1017":1,"1022":1,"1024":1,"1027":1,"1037":12,"1038":1,"1039":2,"1043":1,"1045":2,"1048":5,"1049":5,"1051":3,"1052":2,"1053":1,"1055":4,"1056":2,"1058":1,"1060":2,"1062":1,"1064":1,"1066":1,"1067":1,"1070":1,"1072":1,"1073":2,"1074":2,"1078":1,"1080":2,"1083":1,"1084":1,"1086":2,"1088":3,"1090":5,"1091":2,"1092":1,"1094":5,"1095":3,"1096":6,"1097":5,"1098":10,"1099":2,"1100":6,"1101":4,"1102":6,"1103":2,"1104":1,"1105":5,"1108":2,"1109":1,"1110":2,"1111":2,"1117":8,"1125":1,"1126":1,"1127":27,"1135":2,"1136":1,"1138":1,"1140":1,"1144":1,"1148":1,"1151":1,"1156":1,"1166":1,"1167":1,"1170":1,"1172":1,"1176":1,"1177":1,"1178":1,"1181":4,"1183":4,"1184":1,"1190":2,"1196":1,"1197":1,"1199":1,"1205":1,"1206":1,"1207":4,"1209":1,"1211":5,"1214":1,"1215":1,"1216":1,"1219":1,"1231":1,"1241":1,"1243":1,"1248":1,"1254":2,"1255":2,"1257":1,"1263":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1272":1,"1276":1,"1277":2,"1278":1,"1279":1,"1280":2,"1281":2,"1284":2,"1285":2,"1287":2,"1288":2,"1289":2,"1290":2,"1291":2,"1293":2,"1295":2,"1297":2,"1299":2,"1301":2,"1302":4,"1304":2,"1305":3,"1309":1,"1317":2,"1322":2,"1325":3,"1326":3,"1327":1,"1328":3,"1329":1,"1331":2,"1332":1,"1333":1,"1337":1,"1338":2,"1340":1,"1342":1,"1343":4,"1348":1,"1350":2,"1351":1,"1352":4,"1356":1,"1357":1,"1359":1,"1361":1,"1366":3,"1367":1,"1368":3,"1376":1,"1377":1,"1380":3,"1381":1,"1383":1,"1384":2,"1385":8,"1386":4,"1388":1,"1394":1,"1396":4,"1398":4,"1400":3,"1401":5,"1402":3,"1403":4,"1404":4,"1405":1,"1406":4,"1408":3,"1414":1,"1418":4,"1419":1,"1420":5,"1421":1,"1422":1,"1423":1,"1426":1,"1430":1,"1431":2,"1434":1,"1435":1,"1436":1,"1443":2,"1444":1,"1445":1,"1468":1,"1469":1,"1482":1,"1483":1,"1485":2,"1498":1,"1499":1,"1502":1,"1503":1,"1505":1,"1518":1,"1536":2,"1539":1,"1548":1,"1552":1,"1553":1,"1579":1,"1580":1,"1581":1,"1582":1,"1584":2,"1606":2,"1609":2,"1612":2,"1620":3,"1621":1,"1626":1,"1630":2,"1633":1,"1654":1,"1672":1,"1680":1,"1682":1,"1690":1,"1721":1,"1723":1,"1733":1,"1735":1,"1736":1,"1744":1,"1749":2,"1751":1,"1752":1,"1753":1,"1758":3,"1759":1,"1761":2,"1765":1,"1773":2,"1775":1,"1785":1,"1787":1,"1792":38,"1794":1,"1800":1,"1802":2,"1810":2,"1813":1,"1814":1,"1818":1,"1822":2,"1825":6,"1833":1,"1835":1,"1836":2,"1839":3,"1840":1,"1842":1,"1848":2,"1851":1,"1852":1,"1856":1,"1859":1,"1863":3,"1866":1,"1868":4,"1869":1,"1881":1,"1890":1,"1894":2,"1896":1,"1897":2,"1898":1,"1899":1,"1900":1,"1907":1,"1909":1,"1911":2,"1912":1,"1914":2,"1915":1,"1916":1,"1923":1,"1927":1,"1929":1,"1931":1,"1933":2,"1966":1,"1968":1,"1970":1,"1971":1,"1973":1,"1974":2,"1975":1,"1977":1,"1999":1,"2011":1,"2012":1,"2013":1,"2073":1,"2075":1,"2077":1,"2080":1,"2082":2,"2092":4,"2104":1,"2111":2,"2123":1,"2126":1,"2127":1,"2128":1,"2130":1,"2132":1,"2135":2,"2148":1,"2153":2,"2154":1,"2155":2,"2156":2,"2160":2,"2162":4,"2164":1,"2167":1,"2168":1,"2170":1,"2171":3,"2175":1,"2176":2,"2177":2,"2181":1,"2182":1,"2183":3,"2184":2,"2187":2,"2190":1,"2193":1,"2207":1,"2208":2,"2219":1,"2221":1,"2223":2,"2224":1,"2226":1,"2228":1,"2245":2,"2253":1,"2254":4,"2255":2,"2258":1,"2264":3,"2265":3,"2267":2,"2291":1,"2297":1,"2302":1,"2308":1,"2310":1,"2313":1,"2317":2,"2323":1,"2330":1,"2382":1,"2383":1,"2386":1,"2389":6,"2391":1,"2392":1,"2394":1,"2406":1,"2414":1,"2416":2,"2419":3,"2422":1,"2430":2,"2431":1,"2434":1,"2436":1,"2438":5,"2451":1,"2455":1,"2457":1,"2466":1,"2479":1,"2481":4,"2483":1,"2484":2,"2493":1,"2495":1,"2509":1,"2525":1,"2529":1,"2532":2,"2533":1,"2536":1,"2537":1,"2539":1,"2541":2,"2542":1,"2544":1,"2549":3,"2550":4,"2551":4,"2571":1,"2576":3,"2581":2,"2587":1,"2595":1,"2596":1,"2607":2,"2611":1,"2628":3,"2638":1,"2641":1,"2659":1,"2669":1,"2678":2,"2680":1,"2681":1,"2682":1,"2684":4,"2685":2,"2686":2,"2687":1,"2689":3,"2690":2,"2691":5,"2692":6,"2694":1,"2695":3,"2697":5,"2699":5,"2700":5,"2701":3,"2709":1,"2713":1,"2714":1,"2716":1,"2717":2,"2719":2,"2721":2,"2724":1,"2729":2,"2739":1,"2742":2,"2749":3,"2750":4,"2751":1,"2752":1,"2754":1,"2757":1,"2759":1,"2760":3,"2761":1,"2762":1,"2766":1,"2767":1,"2768":1,"2769":2,"2772":1,"2773":2,"2774":1,"2775":1,"2776":3,"2781":4,"2782":6,"2783":6,"2784":6,"2785":8,"2786":6,"2788":7,"2789":5,"2790":5,"2791":6,"2792":4,"2794":1,"2795":4,"2797":2,"2798":2,"2799":1,"2800":1,"2801":1,"2802":1,"2804":4,"2806":1,"2807":3,"2808":1,"2809":1,"2810":2,"2812":1,"2814":2,"2815":1,"2818":1,"2819":1,"2820":1,"2821":2,"2823":7,"2824":17,"2825":16,"2826":2,"2827":3,"2828":1,"2830":1,"2833":1,"2835":2,"2839":1,"2841":1,"2855":1,"2856":1,"2860":2,"2875":4,"2878":1,"2880":2}}],["npgsqlexception",{"2":{"2255":2}}],["npgsqlmultihostdatasource",{"2":{"1626":1,"2266":1}}],["npgsqlbatchcommand",{"2":{"1852":1,"2320":1,"2383":1}}],["npgsqlbatch",{"2":{"1070":1,"1102":1,"1370":1,"2320":1,"2372":2,"2850":1}}],["npgsqldatasource>",{"2":{"2266":1}}],["npgsqldatareader",{"2":{"949":1}}],["npgsqldbtype",{"2":{"379":1,"2333":1,"2394":1,"2621":1}}],["npgsql",{"2":{"379":1,"869":1,"874":1,"1070":1,"1167":1,"1170":1,"1172":1,"1174":1,"1175":1,"1182":2,"1276":2,"1616":1,"1626":1,"1628":1,"1792":3,"1851":1,"2266":2,"2333":1,"2382":1,"2451":2,"2498":1,"2545":1,"2634":1,"2823":2}}],["nitpick",{"2":{"1389":1}}],["nice",{"2":{"876":1,"1388":1,"1392":1,"2430":1}}],["nicely",{"2":{"860":1}}],["nine",{"2":{"868":1}}],["nightly",{"2":{"855":1,"861":1}}],["n+1",{"2":{"856":1,"861":1,"948":1,"1096":1,"1133":1}}],["nyc",{"2":{"851":1}}],["n3",{"2":{"833":1}}],["n2",{"2":{"833":1}}],["n1",{"2":{"833":1}}],["nr",{"2":{"833":1,"836":3,"881":4,"1184":2,"2760":4,"2807":2}}],["nanoseconds",{"2":{"2309":1}}],["nag",{"2":{"1792":1,"2107":1,"2537":1}}],["nagged",{"2":{"1385":1}}],["naive",{"2":{"1430":1,"1792":2,"1856":3,"2224":1,"2450":1,"2451":2,"2454":1,"2455":2,"2456":2}}],["narration",{"0":{"1382":1}}],["narrowing",{"2":{"1792":1,"2107":1,"2537":1}}],["narrows",{"2":{"1091":1,"1268":1,"2537":1}}],["narrow",{"2":{"852":1,"1106":1,"2094":1,"2261":1,"2537":1,"2877":1}}],["narrowed",{"2":{"708":1,"1263":1,"1266":1,"1792":1,"2094":1,"2107":2,"2537":3,"2879":1}}],["navigator",{"2":{"1220":1,"1221":1,"1222":1,"1792":10}}],["navigate",{"2":{"856":1,"961":2,"970":1,"1207":1,"2162":1}}],["navigation",{"0":{"1413":1},"2":{"679":1,"720":1,"723":1,"852":1,"1037":1,"1412":1,"1413":1,"1792":3,"2656":1}}],["natural",{"2":{"974":1,"1078":1,"1390":1,"1401":1,"2829":1}}],["naturally",{"0":{"984":1},"2":{"214":1,"843":1,"1178":1,"1193":1,"1404":2,"2502":1}}],["nature",{"2":{"841":1,"861":1}}],["natively",{"2":{"865":1,"1378":2,"2576":1,"2790":1,"2858":1}}],["native",{"0":{"952":1},"2":{"376":1,"436":1,"458":1,"909":1,"918":1,"947":1,"952":1,"968":1,"971":1,"1007":1,"1037":1,"1073":3,"1080":1,"1098":3,"1099":1,"1127":6,"1274":1,"1279":1,"1374":1,"1382":1,"1385":1,"1386":4,"1792":2,"1851":1,"1866":1,"2382":1,"2385":1,"2508":1,"2540":1,"2544":1,"2576":2,"2600":1,"2625":1,"2732":1,"2744":1,"2762":1,"2776":1,"2792":1,"2812":1,"2827":1,"2845":1,"2848":1,"2855":1}}],["naming",{"0":{"565":1,"566":1,"699":1,"1841":1,"2690":1},"1":{"1842":1},"2":{"245":1,"259":1,"309":1,"374":1,"388":1,"410":1,"871":1,"976":1,"1581":1,"1605":2,"1787":1,"1794":1,"2094":1,"2107":1,"2197":1,"2240":1,"2252":1,"2320":1,"2359":1,"2376":1,"2394":1,"2395":1,"2492":1,"2493":1,"2497":2,"2530":1,"2537":1,"2546":1,"2688":2,"2689":1,"2701":1,"2731":1,"2879":1}}],["nameconverter",{"2":{"2327":1,"2540":1,"2724":1,"2842":1,"2845":1}}],["name→default",{"2":{"2040":1,"2476":1}}],["namepattern",{"2":{"1752":1,"1753":1,"1758":1,"1792":1,"2551":1}}],["name=example",{"2":{"2824":1,"2825":1}}],["name=value",{"2":{"2529":1,"2865":1}}],["name=hello",{"2":{"2321":1}}],["name=file",{"2":{"1366":1}}],["name=",{"2":{"1061":3,"1491":1,"1792":1,"2039":1}}],["name=john",{"2":{"520":1}}],["namenotsimilarto",{"2":{"349":1,"1792":2,"1836":1,"1838":1,"1839":1,"1897":1,"1898":1,"1909":2,"1910":1,"1911":1,"2225":1,"2419":1,"2431":1,"2433":1,"2434":1,"2435":1,"2436":1,"2701":1}}],["name>`",{"2":{"1792":4}}],["name>",{"2":{"45":2,"69":1,"102":1,"145":2,"193":2,"318":1,"348":2,"370":26,"474":2,"508":1,"528":1,"537":1,"560":2,"570":4,"582":1,"674":1,"719":1,"809":3,"1792":2}}],["named",{"0":{"147":1,"195":1,"573":1,"1392":1,"2375":1,"2410":1,"2420":1,"2532":1,"2540":1,"2731":1,"2845":1,"2871":1},"1":{"2411":1,"2412":1,"2413":1,"2421":1,"2422":1,"2423":1,"2424":1},"2":{"39":1,"101":1,"123":1,"144":1,"230":1,"236":1,"239":3,"299":1,"309":1,"385":1,"569":1,"693":1,"700":1,"701":1,"703":1,"713":1,"747":1,"868":1,"869":1,"934":1,"964":1,"1060":1,"1073":1,"1082":1,"1086":1,"1095":1,"1097":1,"1098":3,"1101":2,"1109":1,"1111":4,"1150":1,"1174":1,"1176":1,"1217":1,"1224":1,"1250":1,"1370":1,"1378":1,"1379":1,"1392":1,"1458":2,"1511":1,"1520":1,"1533":1,"1535":1,"1559":1,"1571":1,"1588":1,"1613":1,"1614":1,"1634":1,"1636":1,"1670":1,"1673":1,"1688":1,"1764":1,"1771":1,"1792":13,"1822":1,"1849":1,"1874":1,"1949":1,"1958":1,"2047":1,"2094":1,"2103":1,"2111":3,"2139":1,"2161":1,"2167":2,"2181":1,"2221":2,"2225":2,"2227":1,"2228":1,"2255":1,"2256":1,"2266":1,"2332":1,"2340":1,"2375":1,"2380":2,"2413":4,"2419":2,"2420":3,"2421":3,"2422":3,"2423":4,"2424":2,"2435":6,"2470":1,"2484":1,"2490":1,"2525":1,"2532":2,"2533":4,"2534":1,"2537":1,"2538":1,"2540":2,"2544":1,"2545":3,"2546":2,"2635":1,"2649":1,"2664":1,"2731":1,"2733":1,"2740":1,"2752":1,"2758":1,"2844":1,"2859":1,"2870":3,"2871":1,"2874":1}}],["nameidentifier",{"2":{"34":1}}],["name",{"0":{"19":1,"48":1,"68":1,"325":1,"407":1,"507":1,"510":1,"511":1,"534":1,"559":1,"662":1,"1240":1,"1619":1,"1620":1,"1658":1,"1838":1,"1889":1,"1909":1,"2249":1,"2314":1,"2410":1,"2441":1,"2483":1,"2493":1,"2494":1,"2497":2,"2518":1,"2519":1,"2540":1,"2845":1},"1":{"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"508":1,"509":1,"510":1,"511":1,"512":1,"513":1,"514":1,"560":1,"561":1,"562":1,"563":1,"564":1,"565":1,"566":1,"567":1,"568":1,"1839":1,"2411":1,"2412":1,"2413":1,"2442":1,"2443":1,"2444":1},"2":{"19":1,"22":2,"25":1,"31":1,"33":2,"34":3,"35":1,"37":2,"38":7,"39":2,"40":2,"44":1,"45":2,"51":1,"58":1,"60":3,"61":8,"62":3,"63":1,"68":1,"69":1,"71":2,"72":1,"74":7,"75":3,"102":3,"108":1,"109":3,"119":2,"128":4,"144":1,"145":1,"148":1,"156":2,"159":1,"166":4,"167":1,"168":1,"184":1,"186":4,"203":1,"208":3,"210":1,"212":3,"215":1,"226":4,"228":1,"238":1,"239":1,"245":1,"248":3,"250":1,"257":4,"258":2,"286":1,"297":2,"299":2,"304":2,"305":3,"306":6,"309":2,"310":2,"318":3,"319":1,"325":2,"326":3,"327":1,"332":1,"333":2,"334":2,"347":1,"352":1,"355":2,"366":2,"369":1,"370":7,"374":2,"376":5,"378":1,"384":2,"386":4,"387":2,"388":9,"390":12,"395":6,"396":1,"407":2,"428":1,"436":3,"447":1,"448":2,"452":1,"453":1,"454":1,"473":1,"479":2,"480":2,"488":2,"489":3,"493":4,"504":1,"506":2,"507":2,"508":1,"510":2,"511":1,"513":1,"520":5,"526":1,"527":3,"528":4,"529":1,"532":5,"534":2,"535":1,"541":1,"544":1,"562":3,"563":2,"565":1,"570":1,"582":1,"588":1,"609":2,"611":3,"612":2,"613":1,"614":2,"617":1,"621":2,"623":2,"626":1,"650":1,"653":1,"663":1,"674":2,"675":4,"677":2,"678":1,"679":3,"692":1,"694":1,"695":1,"696":1,"698":1,"699":1,"701":2,"702":1,"704":2,"705":1,"709":2,"714":1,"715":1,"720":2,"723":3,"733":4,"736":2,"738":2,"747":1,"748":1,"756":4,"757":6,"762":3,"764":2,"765":1,"766":1,"770":1,"772":4,"773":1,"774":4,"775":1,"776":2,"779":1,"781":1,"784":3,"785":1,"788":3,"797":5,"798":3,"801":1,"802":3,"809":5,"813":4,"814":4,"816":1,"834":4,"835":3,"841":3,"861":1,"876":1,"880":1,"882":1,"883":2,"884":4,"888":5,"892":2,"893":1,"894":1,"898":3,"899":1,"900":1,"903":1,"904":3,"913":6,"914":8,"915":12,"916":10,"918":7,"956":1,"957":5,"960":1,"961":2,"964":1,"973":2,"996":1,"997":3,"998":1,"1017":2,"1031":1,"1038":3,"1040":4,"1042":1,"1044":3,"1045":1,"1052":1,"1053":1,"1054":5,"1056":4,"1060":2,"1067":1,"1068":2,"1069":5,"1070":1,"1076":4,"1080":1,"1082":1,"1094":1,"1098":2,"1102":3,"1105":3,"1107":1,"1111":1,"1113":1,"1138":1,"1142":1,"1149":2,"1150":2,"1157":2,"1162":2,"1176":2,"1185":1,"1187":1,"1188":5,"1189":2,"1191":3,"1192":2,"1193":4,"1197":2,"1204":1,"1213":1,"1214":8,"1215":3,"1217":1,"1220":3,"1221":2,"1224":1,"1225":2,"1232":5,"1234":5,"1240":2,"1308":1,"1309":3,"1321":3,"1343":1,"1347":1,"1355":2,"1357":1,"1358":3,"1366":3,"1372":7,"1373":2,"1374":1,"1375":4,"1398":1,"1405":1,"1409":3,"1410":3,"1413":1,"1414":1,"1431":3,"1436":2,"1447":2,"1451":1,"1454":1,"1458":10,"1460":1,"1469":5,"1470":1,"1474":1,"1476":2,"1477":3,"1478":2,"1480":1,"1483":5,"1489":3,"1494":1,"1504":4,"1520":1,"1522":1,"1523":1,"1527":3,"1539":4,"1540":1,"1541":2,"1542":2,"1543":1,"1544":3,"1545":2,"1546":2,"1547":5,"1548":4,"1554":2,"1557":1,"1559":3,"1563":2,"1564":1,"1571":3,"1576":1,"1577":1,"1581":2,"1588":1,"1592":1,"1593":1,"1594":1,"1595":1,"1596":1,"1604":2,"1605":2,"1608":1,"1616":1,"1618":3,"1620":2,"1631":1,"1651":2,"1655":6,"1669":1,"1670":1,"1673":1,"1674":1,"1678":1,"1684":1,"1685":1,"1687":2,"1688":1,"1689":12,"1695":1,"1697":2,"1722":6,"1728":1,"1730":2,"1732":1,"1733":2,"1738":1,"1752":1,"1753":5,"1755":1,"1758":1,"1773":2,"1792":202,"1800":1,"1802":3,"1806":1,"1807":1,"1808":3,"1818":2,"1822":3,"1824":4,"1834":1,"1837":1,"1839":1,"1847":1,"1848":4,"1851":1,"1852":3,"1862":4,"1874":1,"1875":2,"1882":3,"1884":1,"1889":2,"1898":2,"1902":1,"1903":1,"1904":1,"1905":1,"1906":2,"1907":2,"1909":1,"1911":1,"1913":1,"1918":6,"1922":2,"1924":2,"1925":1,"1926":1,"1948":4,"1949":2,"1951":1,"1955":2,"1957":6,"1960":2,"1968":2,"1973":1,"1974":5,"2009":4,"2010":1,"2012":1,"2013":1,"2034":1,"2038":6,"2039":2,"2040":5,"2042":1,"2047":1,"2075":1,"2076":2,"2077":3,"2078":1,"2079":8,"2081":1,"2093":1,"2094":1,"2098":1,"2108":1,"2109":6,"2110":2,"2111":4,"2112":1,"2117":1,"2119":2,"2124":1,"2125":1,"2126":1,"2127":1,"2128":1,"2130":2,"2141":3,"2143":1,"2146":2,"2147":9,"2156":1,"2164":1,"2171":1,"2175":1,"2180":2,"2181":4,"2182":2,"2183":2,"2184":1,"2185":1,"2186":1,"2193":1,"2197":1,"2202":2,"2204":1,"2214":1,"2218":1,"2221":3,"2222":5,"2223":4,"2224":1,"2225":2,"2229":1,"2247":1,"2252":1,"2254":7,"2255":10,"2256":2,"2257":8,"2259":1,"2264":10,"2266":2,"2272":1,"2277":6,"2283":1,"2284":3,"2285":4,"2293":3,"2297":2,"2314":2,"2320":1,"2321":3,"2322":2,"2323":6,"2326":1,"2328":1,"2329":2,"2330":1,"2332":4,"2335":1,"2336":1,"2339":6,"2340":4,"2343":1,"2359":2,"2364":1,"2369":1,"2375":8,"2378":6,"2379":9,"2380":4,"2382":1,"2383":3,"2394":1,"2395":1,"2410":1,"2411":2,"2412":2,"2413":1,"2417":1,"2419":1,"2422":4,"2423":2,"2427":1,"2431":1,"2432":2,"2434":1,"2435":1,"2436":3,"2437":3,"2440":2,"2442":3,"2443":2,"2444":1,"2447":2,"2470":1,"2476":4,"2477":1,"2481":6,"2482":1,"2483":6,"2484":4,"2493":1,"2497":3,"2498":2,"2504":3,"2505":1,"2509":1,"2518":9,"2519":5,"2521":1,"2522":2,"2523":6,"2525":1,"2526":1,"2528":2,"2529":4,"2530":7,"2531":1,"2532":5,"2533":11,"2534":2,"2535":2,"2537":5,"2540":11,"2542":1,"2546":2,"2549":3,"2551":2,"2554":1,"2555":1,"2572":3,"2575":10,"2581":1,"2586":4,"2587":1,"2597":1,"2607":6,"2634":3,"2635":1,"2653":7,"2666":1,"2671":1,"2678":1,"2681":1,"2687":3,"2688":2,"2695":1,"2701":1,"2702":1,"2704":2,"2717":2,"2719":2,"2723":1,"2726":1,"2731":3,"2733":2,"2764":2,"2769":6,"2771":1,"2774":1,"2775":2,"2785":1,"2788":3,"2789":1,"2790":1,"2791":1,"2795":4,"2799":1,"2803":1,"2804":2,"2812":1,"2816":1,"2829":5,"2836":3,"2840":1,"2842":2,"2844":1,"2845":7,"2852":1,"2858":1,"2859":1,"2860":1,"2864":2,"2865":3,"2869":1,"2870":3,"2871":2,"2873":1,"2875":1,"2879":1,"2880":2}}],["namespaced",{"2":{"2434":1,"2482":1}}],["namespace",{"2":{"1802":2,"2825":1}}],["namesimilarto",{"2":{"349":1,"1792":3,"1836":1,"1838":1,"1839":1,"1897":1,"1898":2,"1909":2,"1910":1,"2225":1,"2419":1,"2431":2,"2433":1,"2435":1,"2436":1,"2438":1,"2701":1}}],["names",{"0":{"125":1,"449":1,"643":1,"814":1,"964":1,"1918":1,"2249":1,"2724":1},"1":{"126":1,"127":1,"128":1,"129":1,"130":1,"131":1},"2":{"13":1,"14":2,"33":1,"34":1,"41":1,"74":1,"102":1,"125":2,"129":1,"159":3,"210":2,"212":1,"229":1,"245":1,"258":1,"269":1,"286":2,"299":2,"300":2,"305":2,"346":1,"369":3,"372":2,"382":1,"384":1,"388":1,"390":1,"407":1,"447":2,"448":2,"449":2,"496":1,"537":1,"606":1,"638":3,"641":1,"643":2,"704":1,"706":3,"709":1,"714":1,"784":1,"814":1,"818":3,"852":1,"915":2,"948":1,"995":1,"1031":1,"1057":1,"1102":1,"1193":1,"1240":1,"1249":1,"1341":1,"1370":1,"1378":1,"1386":2,"1390":1,"1392":1,"1408":1,"1416":2,"1460":3,"1471":1,"1475":3,"1477":4,"1481":1,"1540":1,"1544":2,"1546":1,"1554":1,"1562":3,"1567":1,"1576":5,"1581":3,"1609":1,"1651":1,"1658":1,"1686":1,"1725":1,"1732":3,"1733":1,"1792":44,"1838":6,"1841":3,"1862":3,"1889":1,"1898":1,"1918":1,"1921":1,"1922":2,"1967":3,"1968":1,"1974":1,"2009":1,"2038":1,"2040":1,"2102":2,"2111":1,"2124":1,"2127":1,"2167":1,"2197":1,"2206":1,"2221":1,"2225":1,"2264":2,"2277":1,"2279":1,"2297":1,"2321":1,"2324":1,"2326":2,"2329":1,"2332":1,"2334":1,"2340":1,"2359":1,"2372":3,"2375":3,"2378":1,"2380":2,"2385":1,"2411":1,"2413":1,"2417":1,"2422":1,"2431":2,"2438":1,"2442":1,"2444":1,"2445":2,"2446":2,"2476":2,"2483":2,"2493":1,"2518":1,"2530":1,"2532":2,"2533":2,"2537":1,"2549":1,"2575":3,"2607":1,"2608":1,"2635":1,"2661":1,"2695":1,"2723":3,"2724":3,"2763":1,"2769":1,"2795":1,"2810":1,"2814":1,"2842":1,"2846":2,"2865":1,"2870":1,"2871":1,"2880":2}}],["n",{"2":{"128":2,"129":1,"297":2,"340":2,"342":1,"343":1,"489":1,"490":1,"491":1,"493":1,"599":1,"860":1,"871":1,"881":1,"885":1,"996":1,"1108":6,"1138":1,"1189":2,"1305":4,"1333":4,"1373":1,"1381":1,"1431":2,"1792":3,"2093":1,"2107":1,"2109":2,"2110":1,"2140":2,"2206":1,"2459":1,"2464":2,"2504":1,"2530":3,"2531":1,"2537":2,"2540":1,"2543":1,"2575":2,"2589":1,"2614":1,"2726":1,"2845":1}}],["neighboring",{"2":{"2534":1}}],["neither",{"2":{"301":1,"436":1,"529":1,"838":1,"841":1,"1095":1,"1107":1,"1571":1,"1792":2,"1823":1,"2155":1,"2435":1,"2465":1,"2481":1,"2482":2,"2484":1,"2490":1,"2518":1,"2541":1}}],["neutral",{"2":{"2223":1,"2479":1,"2481":1,"2482":1}}],["neat",{"2":{"1393":1,"1398":1,"1403":1}}],["nearly",{"2":{"869":1,"884":1,"994":1,"1090":1,"1266":1,"1269":1,"1272":1}}],["near",{"2":{"868":1,"2397":1,"2533":1,"2534":1,"2537":1}}],["negligible",{"2":{"1974":1,"2607":1}}],["negotiating",{"2":{"871":1}}],["negative",{"2":{"87":2,"865":1,"1910":1,"2433":1}}],["necessary",{"2":{"869":1,"922":1,"1386":1,"1708":1,"2840":1}}],["nest",{"2":{"917":1,"1097":1,"1285":2,"2531":1,"2869":1}}],["nesting",{"2":{"334":1,"337":1,"919":4,"920":1,"1097":3,"2369":1,"2611":2}}],["nestedjsonforcompositetypes",{"0":{"2010":1},"2":{"336":2,"338":2,"917":2,"1792":2,"1966":1,"1967":1,"1973":5,"1975":1,"1999":1,"2000":1,"2010":2,"2325":1,"2330":2,"2369":3,"2587":3,"2611":2,"2641":2,"2642":1}}],["nested",{"0":{"328":1,"330":1,"334":1,"406":1,"912":1,"917":1,"918":1,"1097":1,"1296":1,"1375":1,"1973":1,"1974":1,"2217":1,"2587":1,"2607":1,"2611":1},"1":{"329":1,"330":1,"331":1,"332":1,"333":1,"334":1,"335":1,"336":1,"337":1,"338":1,"913":1,"914":1,"915":1,"916":1,"917":1,"918":1,"919":2,"920":2,"1297":1},"2":{"227":2,"328":3,"329":1,"330":2,"332":3,"333":1,"334":3,"335":3,"336":2,"337":1,"338":1,"860":1,"912":1,"917":3,"918":5,"919":3,"1037":1,"1077":1,"1097":8,"1127":1,"1133":2,"1255":5,"1258":2,"1285":2,"1297":1,"1375":3,"1606":1,"1792":5,"1967":2,"1973":2,"1974":6,"2000":2,"2010":4,"2092":1,"2154":1,"2164":1,"2165":1,"2184":1,"2217":4,"2236":2,"2325":2,"2329":2,"2330":2,"2356":1,"2398":1,"2586":4,"2587":9,"2588":3,"2589":1,"2590":2,"2600":1,"2603":1,"2607":7,"2611":4,"2614":1,"2641":3,"2689":1,"2701":1,"2725":1,"2856":1}}],["nextresultasync",{"2":{"2372":1}}],["nextval",{"2":{"695":1,"1079":1,"2867":1,"2873":1}}],["next",{"0":{"1383":1,"1466":1,"1485":1,"1496":1,"1507":1,"1536":1,"1550":1,"1584":1,"1601":1,"1611":1,"1635":1,"1648":1,"1666":1,"1680":1,"1700":1,"1719":1,"1749":1,"1761":1,"1784":1,"1812":1,"1865":1,"1895":1,"1914":1,"1933":1,"1946":1,"1963":1,"1977":1,"1997":1,"2031":1,"2044":1,"2071":1,"2082":1,"2091":1,"2121":1,"2135":1,"2151":1,"2169":1,"2219":1,"2706":1,"2793":1,"2826":1},"2":{"214":1,"560":1,"581":1,"614":1,"615":1,"619":1,"685":1,"760":1,"761":2,"770":1,"771":2,"831":1,"843":1,"852":1,"857":1,"860":1,"864":1,"868":1,"872":1,"873":1,"875":1,"883":1,"885":1,"914":1,"982":1,"1070":2,"1074":1,"1080":1,"1101":1,"1158":1,"1173":1,"1183":1,"1203":1,"1208":1,"1253":1,"1320":3,"1401":1,"1409":1,"1416":1,"1421":1,"1422":3,"1438":1,"1574":1,"1792":1,"1851":1,"2095":1,"2157":1,"2167":1,"2320":1,"2339":1,"2340":1,"2382":1,"2428":1,"2438":1,"2502":1,"2537":1,"2543":1,"2821":1,"2823":1,"2852":1,"2861":1,"2878":1}}],["net9",{"2":{"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["net10",{"2":{"1287":2,"1288":2,"1289":2,"1290":2,"1291":2,"1293":2,"1295":2,"1297":2,"1299":2,"1301":2,"2258":1}}],["networks",{"0":{"1708":1},"2":{"1100":1,"1792":1,"2633":1}}],["network",{"0":{"1014":1},"2":{"213":2,"421":1,"445":1,"861":1,"918":1,"993":1,"1014":2,"1015":1,"1032":1,"1067":1,"1070":1,"1078":1,"1137":1,"1204":3,"1208":1,"1324":1,"1439":1,"1516":1,"1703":1,"1708":2,"1712":1,"1715":1,"1739":1,"1740":1,"1741":2,"1792":1,"1852":1,"1929":1,"2157":1,"2265":1,"2287":1,"2288":1,"2289":2,"2346":1,"2347":1,"2383":2,"2398":2,"2527":1,"2543":1,"2633":1,"2811":1,"2860":1}}],["net",{"0":{"869":1,"2246":1,"2711":1,"2714":1},"2":{"182":1,"188":1,"408":1,"832":1,"868":3,"869":10,"871":2,"873":6,"874":2,"876":2,"954":1,"963":1,"986":1,"1005":1,"1049":3,"1054":1,"1098":1,"1100":1,"1104":1,"1105":1,"1106":1,"1107":2,"1126":1,"1156":1,"1164":1,"1255":7,"1257":8,"1265":2,"1269":1,"1275":1,"1277":3,"1279":1,"1281":2,"1284":3,"1285":3,"1366":1,"1409":1,"1421":1,"1445":1,"1447":2,"1450":2,"1457":2,"1458":1,"1460":1,"1523":1,"1718":1,"1783":1,"1792":8,"1802":2,"1822":1,"2077":2,"2240":1,"2245":2,"2246":1,"2257":1,"2258":1,"2291":1,"2296":1,"2324":1,"2375":2,"2380":1,"2397":1,"2419":1,"2421":1,"2422":1,"2424":1,"2425":1,"2426":1,"2427":1,"2428":1,"2435":1,"2436":2,"2437":1,"2438":1,"2470":1,"2481":1,"2527":1,"2554":2,"2645":1,"2665":1,"2711":1,"2776":2,"2789":1,"2792":2,"2794":1,"2795":2,"2862":1}}],["nevertheless",{"2":{"1386":1}}],["never",{"0":{"1040":1,"2381":1},"1":{"1041":1},"2":{"74":1,"107":1,"177":1,"184":1,"188":1,"212":1,"214":1,"215":1,"298":1,"317":1,"319":1,"320":1,"383":1,"388":1,"390":2,"394":1,"424":1,"438":1,"446":1,"448":1,"453":2,"527":1,"528":1,"582":1,"587":2,"650":1,"664":1,"669":1,"683":1,"710":1,"715":1,"838":1,"840":1,"844":1,"848":1,"849":1,"851":3,"852":4,"863":1,"864":3,"865":1,"872":1,"936":1,"937":1,"942":1,"949":2,"989":1,"1033":1,"1037":1,"1042":1,"1043":1,"1046":1,"1067":1,"1074":1,"1075":2,"1078":2,"1079":4,"1105":1,"1137":1,"1138":1,"1195":1,"1210":1,"1305":1,"1331":2,"1363":1,"1382":1,"1403":1,"1409":1,"1419":2,"1420":1,"1424":1,"1437":1,"1441":2,"1532":1,"1664":1,"1738":2,"1741":1,"1743":1,"1792":8,"2018":1,"2019":1,"2038":1,"2040":2,"2094":1,"2095":1,"2107":1,"2111":1,"2156":2,"2183":1,"2282":1,"2283":2,"2289":1,"2292":1,"2296":1,"2307":1,"2320":1,"2337":2,"2362":1,"2381":7,"2384":1,"2391":3,"2459":1,"2463":1,"2465":1,"2466":3,"2477":3,"2481":3,"2492":1,"2493":1,"2502":1,"2505":1,"2506":1,"2518":1,"2527":4,"2532":1,"2533":1,"2534":1,"2535":1,"2537":1,"2538":2,"2540":2,"2542":2,"2546":1,"2632":1,"2712":2,"2741":1,"2768":2,"2795":1,"2807":1,"2809":3,"2813":1,"2815":1,"2828":1,"2834":2,"2845":2,"2861":1,"2862":4,"2868":5,"2871":2,"2872":2,"2878":1}}],["newest",{"2":{"2297":1}}],["newer",{"2":{"876":1,"2385":2,"2710":1}}],["newdb",{"2":{"2167":1,"2545":1,"2860":1,"2872":1}}],["newguid",{"2":{"1366":1}}],["newstock",{"2":{"1045":1}}],["newuser",{"2":{"994":2}}],["newly",{"2":{"989":1}}],["newlines",{"2":{"1360":1,"2589":1}}],["newline",{"2":{"340":2,"599":1,"1189":1,"1792":1,"1800":1,"1809":2,"1810":1}}],["neward",{"2":{"840":2,"857":1}}],["newname",{"2":{"257":1,"2277":1}}],["new",{"0":{"339":1,"917":1,"918":1,"1220":1,"1256":1,"1258":1,"1285":1,"1449":1,"1870":1,"1908":1,"2251":1,"2282":1,"2287":1,"2291":1,"2300":1,"2317":1,"2331":1,"2332":1,"2337":1,"2338":1,"2339":1,"2344":1,"2365":1,"2375":1,"2377":1,"2379":1,"2380":1,"2382":1,"2383":1,"2390":1,"2391":1,"2471":1,"2480":1,"2481":1,"2501":1,"2625":1,"2632":1,"2633":1,"2634":1,"2635":1,"2649":1,"2650":1,"2659":1},"1":{"340":1,"341":1,"342":1,"343":1,"344":1,"345":1,"346":1,"919":1,"920":1,"1257":1,"1258":1,"1259":1,"1260":1,"1909":1,"1910":1,"1911":1,"2283":1,"2284":1,"2285":1,"2286":1,"2288":1,"2289":1,"2290":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1,"2381":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2481":1,"2482":1,"2483":1,"2484":1,"2502":1,"2651":1,"2652":1,"2653":1},"2":{"74":1,"128":2,"129":1,"131":1,"159":3,"229":1,"257":4,"317":1,"332":3,"339":1,"340":1,"342":1,"343":1,"344":1,"347":1,"370":14,"390":1,"408":1,"469":1,"489":1,"490":1,"491":1,"493":1,"494":1,"496":1,"531":1,"592":2,"606":1,"663":1,"666":1,"843":1,"852":1,"860":1,"865":1,"871":2,"872":1,"874":1,"876":1,"885":3,"888":2,"894":4,"912":1,"915":1,"961":1,"973":1,"977":1,"980":1,"984":1,"985":2,"990":6,"994":1,"996":1,"997":2,"1026":2,"1063":1,"1067":1,"1069":1,"1073":1,"1107":1,"1139":1,"1165":2,"1166":1,"1175":1,"1189":2,"1192":1,"1193":1,"1203":3,"1214":1,"1216":2,"1220":1,"1224":1,"1226":2,"1232":1,"1233":2,"1238":2,"1239":3,"1254":2,"1255":5,"1257":1,"1258":2,"1259":1,"1277":1,"1317":1,"1320":2,"1335":2,"1338":1,"1366":9,"1373":1,"1377":1,"1382":1,"1384":1,"1386":1,"1401":2,"1402":1,"1404":3,"1406":1,"1409":2,"1410":4,"1416":1,"1419":3,"1422":1,"1438":1,"1453":1,"1456":1,"1458":1,"1464":1,"1569":1,"1573":1,"1609":1,"1701":1,"1722":1,"1759":1,"1762":1,"1792":15,"1804":1,"1813":1,"1850":1,"1856":1,"1866":1,"1870":1,"1874":1,"1876":2,"1883":1,"1888":1,"1912":1,"1925":1,"1955":1,"1958":1,"1973":3,"2010":2,"2014":1,"2045":1,"2056":1,"2094":1,"2100":1,"2106":1,"2107":1,"2148":6,"2157":1,"2160":1,"2165":1,"2167":1,"2206":1,"2216":1,"2221":6,"2222":3,"2223":4,"2224":3,"2225":2,"2226":1,"2228":2,"2245":1,"2247":2,"2251":1,"2252":2,"2254":3,"2255":13,"2256":1,"2259":1,"2264":1,"2265":2,"2266":1,"2272":1,"2273":1,"2277":5,"2279":2,"2287":1,"2291":1,"2297":1,"2300":1,"2314":3,"2323":1,"2329":1,"2332":1,"2337":1,"2338":1,"2339":1,"2354":1,"2359":1,"2365":1,"2370":1,"2372":4,"2376":2,"2378":1,"2383":1,"2389":1,"2391":1,"2392":1,"2393":1,"2406":2,"2407":4,"2409":1,"2417":1,"2419":1,"2425":1,"2429":1,"2435":2,"2436":2,"2438":2,"2447":1,"2448":3,"2455":2,"2456":1,"2457":1,"2461":2,"2466":1,"2472":1,"2476":1,"2477":1,"2481":1,"2482":3,"2484":1,"2489":1,"2490":1,"2498":1,"2502":1,"2515":1,"2517":1,"2520":1,"2521":1,"2537":3,"2538":1,"2539":1,"2540":1,"2543":1,"2545":1,"2546":1,"2550":1,"2554":2,"2565":1,"2572":1,"2575":6,"2576":2,"2581":1,"2587":3,"2614":1,"2615":1,"2621":1,"2629":1,"2634":1,"2654":1,"2659":1,"2667":1,"2714":1,"2726":2,"2829":2,"2836":2,"2857":1,"2879":1}}],["needing",{"2":{"2165":1,"2381":1}}],["needsescape",{"2":{"2621":1}}],["needs",{"2":{"453":1,"454":1,"683":1,"835":1,"836":1,"841":1,"851":1,"854":1,"864":1,"865":1,"873":1,"916":1,"926":1,"932":1,"956":1,"1036":1,"1038":1,"1049":1,"1059":1,"1065":1,"1070":1,"1132":1,"1179":1,"1205":1,"1281":1,"1382":1,"1388":1,"1390":2,"1394":1,"1402":2,"1405":1,"1420":1,"1519":1,"1738":1,"1792":4,"1825":1,"1922":1,"2020":1,"2155":1,"2157":1,"2438":1,"2534":1,"2540":1,"2541":1,"2543":1,"2632":1,"2721":1,"2722":1,"2733":1,"2776":1,"2868":3,"2873":1}}],["needed",{"2":{"169":1,"177":1,"304":1,"309":1,"363":1,"683":2,"686":1,"868":1,"869":1,"911":1,"914":1,"916":1,"920":1,"946":1,"953":1,"968":1,"971":1,"994":1,"1036":1,"1049":1,"1052":1,"1063":1,"1065":1,"1075":1,"1086":2,"1097":1,"1098":1,"1103":1,"1121":1,"1125":1,"1126":1,"1165":1,"1177":1,"1206":3,"1208":1,"1247":1,"1304":1,"1327":1,"1328":2,"1329":1,"1351":1,"1353":1,"1367":1,"1385":1,"1408":1,"1419":1,"1690":1,"1792":2,"1859":1,"2020":1,"2176":1,"2256":1,"2282":1,"2317":1,"2353":1,"2379":1,"2437":1,"2534":1,"2538":1,"2731":1,"2845":2,"2867":1,"2871":1}}],["need",{"0":{"1205":1,"2741":1},"2":{"73":1,"101":1,"165":1,"168":1,"175":1,"177":2,"209":1,"215":1,"297":1,"308":1,"316":1,"373":1,"376":1,"448":1,"624":1,"656":1,"696":1,"826":1,"836":1,"837":2,"838":2,"840":2,"845":1,"848":2,"851":2,"873":1,"879":1,"884":1,"902":1,"904":1,"911":1,"918":1,"949":1,"960":1,"971":1,"974":1,"993":1,"994":1,"1026":1,"1050":1,"1063":1,"1065":2,"1073":1,"1074":1,"1077":1,"1079":1,"1081":1,"1096":1,"1098":1,"1099":1,"1106":1,"1121":5,"1122":2,"1123":1,"1125":1,"1127":2,"1134":1,"1135":1,"1139":1,"1140":1,"1141":1,"1142":1,"1191":1,"1205":2,"1206":1,"1220":2,"1252":1,"1320":1,"1323":1,"1326":1,"1327":1,"1328":1,"1335":1,"1337":1,"1351":1,"1353":1,"1354":3,"1366":1,"1377":1,"1378":1,"1385":2,"1386":1,"1388":3,"1389":2,"1390":3,"1395":1,"1396":2,"1398":1,"1401":6,"1403":2,"1405":1,"1410":1,"1411":3,"1415":1,"1417":1,"1419":2,"1431":1,"1432":2,"1441":1,"1515":2,"1518":1,"1572":1,"1582":1,"1690":3,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1792":5,"1825":1,"2098":2,"2177":1,"2265":1,"2338":1,"2351":1,"2380":1,"2381":1,"2389":1,"2424":1,"2438":2,"2534":1,"2540":1,"2550":1,"2551":1,"2634":1,"2642":1,"2751":1,"2763":1,"2772":1,"2791":1,"2809":1,"2810":1,"2821":1,"2853":1,"2855":1,"2866":1,"2868":1,"2873":1}}],["nuget",{"0":{"2386":1},"2":{"869":2,"1071":1,"1096":1,"2254":1,"2389":1,"2711":1,"2714":2,"2716":1,"2729":1}}],["numbering",{"2":{"699":1,"2530":1,"2531":1,"2869":1}}],["numbered",{"2":{"625":1,"848":1}}],["number>>",{"2":{"1026":1}}],["number>",{"2":{"268":2,"1026":1}}],["numbers",{"0":{"911":1,"1027":1,"1322":1,"1349":1},"1":{"1350":1},"2":{"133":1,"866":1,"869":1,"872":1,"877":1,"952":2,"963":1,"1037":2,"1276":1,"1279":1,"1280":1,"1383":1,"1421":1,"1431":1,"1664":1,"1792":2,"1824":1,"1924":1,"2212":1,"2291":1,"2342":1,"2398":1,"2509":1,"2576":1,"2662":1,"2744":1}}],["number",{"2":{"78":1,"81":1,"119":1,"213":1,"214":1,"268":2,"280":1,"378":1,"426":1,"575":1,"594":1,"618":1,"625":1,"772":1,"773":1,"817":1,"849":1,"855":1,"867":1,"871":2,"873":1,"883":2,"893":1,"894":6,"916":1,"920":23,"929":1,"938":4,"948":1,"952":3,"995":7,"996":1,"1024":1,"1032":1,"1040":1,"1133":2,"1164":1,"1165":1,"1193":1,"1222":1,"1317":2,"1342":4,"1366":6,"1382":1,"1386":3,"1408":3,"1410":2,"1416":1,"1431":2,"1511":1,"1553":1,"1558":1,"1567":3,"1569":1,"1571":3,"1575":1,"1623":1,"1651":1,"1703":1,"1722":1,"1740":1,"1743":1,"1792":17,"1804":1,"1947":1,"1952":1,"1953":1,"1954":1,"1974":2,"1991":3,"2086":4,"2099":1,"2101":1,"2141":2,"2144":1,"2146":1,"2148":1,"2156":1,"2247":3,"2257":1,"2265":1,"2273":2,"2288":1,"2333":1,"2357":4,"2359":4,"2360":1,"2446":1,"2464":2,"2502":1,"2531":1,"2537":1,"2575":1,"2590":8,"2607":2,"2611":5,"2633":1,"2765":1,"2848":1}}],["numeric",{"0":{"963":1},"2":{"9":1,"263":2,"301":2,"333":2,"585":1,"594":2,"677":1,"814":2,"885":1,"898":1,"916":1,"952":1,"956":5,"1038":1,"1040":1,"1187":2,"1192":2,"1193":2,"1203":1,"1255":1,"1336":2,"1339":2,"1374":4,"1427":2,"1429":2,"1431":1,"1436":1,"1471":1,"1792":4,"1930":1,"2076":1,"2077":1,"2078":1,"2079":1,"2214":1,"2258":1,"2344":2,"2397":1,"2456":1,"2540":1,"2588":1,"2621":1,"2652":1,"2762":3,"2802":1,"2815":2,"2845":1}}],["nullability",{"2":{"1408":1}}],["nullable",{"0":{"2495":1},"2":{"466":5,"845":1,"995":2,"1040":1,"1050":1,"1222":1,"1355":1,"1818":1,"1820":1,"1821":1,"1822":1,"1830":1,"1831":1,"2481":1,"2495":1}}],["nullif",{"2":{"1057":1,"1058":5,"2184":5}}],["nulls",{"2":{"816":1,"1079":1,"2149":1,"2869":1}}],["nullliteral",{"0":{"464":1},"2":{"470":1,"556":1,"1854":1,"1855":1,"2595":1,"2596":1}}],["null",{"0":{"458":1,"466":1,"467":2,"549":1,"553":1,"554":1,"555":1,"1134":3,"1853":1,"2594":1},"1":{"459":1,"460":1,"461":1,"462":1,"463":1,"464":1,"465":1,"466":1,"467":1,"468":1,"469":1,"470":1,"471":1,"472":1,"550":1,"551":1,"552":1,"553":1,"554":1,"555":1,"556":1,"557":1,"558":1,"1854":1,"1855":1,"2595":1,"2596":1},"2":{"31":1,"35":1,"40":2,"60":1,"61":1,"62":1,"101":1,"106":3,"140":2,"188":4,"212":1,"226":2,"227":2,"286":1,"291":2,"313":2,"337":2,"378":8,"379":1,"380":4,"388":2,"395":1,"408":9,"439":6,"446":1,"447":2,"448":1,"449":3,"452":3,"454":2,"458":6,"459":2,"460":6,"462":5,"463":4,"464":8,"466":3,"467":3,"468":3,"469":9,"471":1,"472":2,"503":1,"510":1,"511":1,"512":1,"526":2,"529":3,"544":1,"549":4,"550":3,"551":2,"553":2,"554":2,"555":4,"557":1,"558":2,"614":1,"616":4,"617":1,"679":2,"723":5,"747":6,"750":1,"751":1,"755":1,"756":1,"761":2,"764":4,"768":2,"771":3,"774":4,"776":2,"777":1,"786":3,"798":1,"801":1,"811":2,"812":2,"814":1,"816":3,"819":1,"826":1,"845":1,"852":1,"864":1,"872":1,"885":1,"886":1,"891":2,"892":3,"894":2,"896":1,"897":2,"904":2,"913":4,"914":1,"916":4,"918":1,"920":50,"924":3,"936":3,"938":7,"956":10,"961":3,"977":5,"995":12,"996":7,"1023":2,"1024":10,"1026":10,"1033":1,"1038":4,"1040":1,"1050":7,"1054":2,"1067":3,"1079":1,"1105":3,"1134":6,"1139":1,"1150":3,"1157":1,"1188":1,"1213":13,"1214":3,"1215":1,"1216":1,"1224":4,"1225":4,"1226":1,"1232":2,"1234":7,"1235":1,"1236":5,"1239":2,"1241":1,"1307":6,"1309":2,"1318":3,"1321":2,"1332":5,"1336":2,"1338":5,"1339":7,"1342":4,"1347":2,"1348":1,"1355":5,"1357":2,"1360":1,"1366":5,"1371":4,"1372":2,"1373":1,"1374":8,"1375":2,"1386":5,"1393":2,"1394":1,"1395":1,"1398":2,"1408":10,"1410":3,"1413":3,"1419":2,"1427":2,"1431":2,"1446":6,"1447":13,"1450":1,"1451":3,"1454":7,"1459":1,"1464":1,"1469":8,"1470":2,"1472":2,"1475":3,"1477":2,"1479":4,"1482":2,"1488":1,"1489":2,"1498":2,"1499":3,"1501":1,"1510":3,"1511":5,"1520":1,"1521":1,"1523":3,"1524":2,"1525":1,"1526":2,"1529":2,"1539":1,"1540":1,"1553":6,"1554":2,"1555":1,"1558":1,"1560":2,"1564":1,"1567":11,"1569":3,"1570":6,"1571":5,"1603":1,"1604":1,"1617":2,"1618":4,"1620":2,"1630":1,"1631":2,"1633":1,"1650":5,"1651":9,"1655":2,"1656":1,"1657":1,"1658":1,"1663":1,"1669":12,"1671":3,"1672":2,"1673":10,"1678":13,"1684":1,"1689":1,"1691":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1703":1,"1706":1,"1738":1,"1752":1,"1753":2,"1763":1,"1764":3,"1769":2,"1792":229,"1806":1,"1814":6,"1818":2,"1819":1,"1820":2,"1821":2,"1822":2,"1824":1,"1830":2,"1831":2,"1836":13,"1837":4,"1838":8,"1846":2,"1847":2,"1848":2,"1853":2,"1854":5,"1855":3,"1863":1,"1864":4,"1874":4,"1875":4,"1876":1,"1884":1,"1885":1,"1890":1,"1893":1,"1897":4,"1898":7,"1916":1,"1917":1,"1921":6,"1924":6,"1926":2,"1948":1,"1949":1,"1951":1,"1952":1,"1953":1,"1954":1,"1966":3,"1967":6,"1975":1,"1991":2,"2010":2,"2015":5,"2016":8,"2038":2,"2039":1,"2040":2,"2046":3,"2047":5,"2060":1,"2062":1,"2073":4,"2075":4,"2077":9,"2080":2,"2085":4,"2086":8,"2093":3,"2094":4,"2107":1,"2109":2,"2116":1,"2117":1,"2123":3,"2125":5,"2128":1,"2130":3,"2132":1,"2138":2,"2140":3,"2142":2,"2146":2,"2149":1,"2183":3,"2184":1,"2187":2,"2223":1,"2253":2,"2254":5,"2255":17,"2256":6,"2257":3,"2258":2,"2265":5,"2267":2,"2271":2,"2273":2,"2283":1,"2284":2,"2296":4,"2297":1,"2309":1,"2333":13,"2335":2,"2338":1,"2339":3,"2359":2,"2375":1,"2377":1,"2380":7,"2400":1,"2426":3,"2428":1,"2431":2,"2436":4,"2461":1,"2476":2,"2481":1,"2495":4,"2496":1,"2498":2,"2528":1,"2530":2,"2537":6,"2540":1,"2544":1,"2545":1,"2549":15,"2551":1,"2558":1,"2565":3,"2572":1,"2575":6,"2580":2,"2586":2,"2588":1,"2590":12,"2595":6,"2596":4,"2607":7,"2611":11,"2632":13,"2633":1,"2634":3,"2635":8,"2648":1,"2665":9,"2701":10,"2702":1,"2723":1,"2732":1,"2762":1,"2763":1,"2764":2,"2803":4,"2810":6,"2812":2,"2814":1,"2815":5,"2829":4,"2836":6,"2845":1,"2848":2,"2864":1,"2868":2,"2869":5}}],["noise",{"2":{"2342":1,"2364":1,"2366":1,"2397":2,"2629":1,"2869":1}}],["noinherit",{"2":{"926":1,"1435":1}}],["nosniff",{"2":{"1792":2,"2015":1,"2016":1,"2017":2,"2027":1,"2028":1,"2029":1,"2632":3}}],["nosuperuser",{"2":{"926":1,"1435":1}}],["nocompression",{"2":{"1792":1,"1937":1,"1938":1}}],["nocontent",{"2":{"556":2,"1855":1,"2596":2}}],["nocreaterole",{"2":{"926":1,"1435":1}}],["nocreatedb",{"2":{"926":1,"1435":1}}],["noah",{"2":{"913":1}}],["novel",{"2":{"913":1}}],["nodes",{"2":{"1046":1,"2481":1}}],["node",{"0":{"1026":1},"2":{"848":1,"866":1,"867":1,"868":1,"1025":1,"1027":1,"1064":1,"1106":1,"1255":1,"1320":1,"1350":1,"1429":4}}],["nobody",{"2":{"843":1,"860":2,"1435":1,"2391":1,"2869":1}}],["noreplication",{"2":{"926":1}}],["normalizes",{"2":{"2590":1}}],["normalize",{"2":{"2528":1,"2861":3,"2864":1}}],["normalizedprice",{"2":{"1429":1}}],["normalized",{"2":{"888":1,"1385":1,"1429":1,"2530":1,"2861":1}}],["normal",{"0":{"1068":1},"2":{"436":1,"448":1,"915":1,"1051":1,"1066":1,"1068":2,"1098":1,"1121":1,"1134":1,"1171":1,"1180":1,"1394":1,"1458":1,"1792":1,"2092":1,"2157":1,"2171":1,"2176":1,"2309":1,"2363":1,"2375":1,"2414":1,"2415":1,"2416":1,"2527":1,"2535":1,"2543":1,"2545":1,"2862":1}}],["normally",{"2":{"261":1,"829":1,"1171":1,"1329":1,"1382":1,"1722":1,"1792":1,"1925":1,"2410":1,"2414":1,"2502":1,"2829":1,"2872":1}}],["nor",{"2":{"301":1,"436":1,"529":1,"841":1,"851":1,"1095":1,"1792":2,"1823":1,"2482":1,"2518":1}}],["nowhere",{"2":{"865":1,"2510":1}}],["now",{"0":{"2314":1,"2378":1,"2402":1,"2405":1,"2414":1,"2420":1,"2446":1,"2451":1,"2491":1},"1":{"2415":1,"2416":1,"2421":1,"2422":1,"2423":1,"2424":1},"2":{"106":1,"310":2,"427":1,"531":1,"566":2,"576":1,"840":1,"841":1,"844":3,"845":1,"848":1,"849":1,"851":2,"852":1,"855":1,"857":1,"860":1,"864":2,"865":1,"888":1,"898":1,"904":1,"912":1,"913":1,"914":1,"915":1,"916":4,"917":3,"918":4,"948":1,"977":1,"986":1,"990":2,"992":1,"994":1,"1056":1,"1059":1,"1060":1,"1067":2,"1068":2,"1069":1,"1071":3,"1073":2,"1074":1,"1080":1,"1097":1,"1101":1,"1150":2,"1157":1,"1193":1,"1209":1,"1213":3,"1214":1,"1216":1,"1232":1,"1234":1,"1235":1,"1239":1,"1254":3,"1259":1,"1262":1,"1266":1,"1272":2,"1280":1,"1307":1,"1336":2,"1338":1,"1339":2,"1355":1,"1382":1,"1384":2,"1385":1,"1386":6,"1392":1,"1394":1,"1397":1,"1398":2,"1399":2,"1400":3,"1401":3,"1402":3,"1405":1,"1517":1,"1519":1,"1524":1,"1571":1,"1574":1,"1595":1,"1624":1,"1644":1,"1792":3,"1924":2,"1948":1,"1955":1,"1958":1,"2222":4,"2223":4,"2224":4,"2225":1,"2229":1,"2247":2,"2250":1,"2253":2,"2258":1,"2259":1,"2265":2,"2267":3,"2271":2,"2273":1,"2310":1,"2313":2,"2314":2,"2317":1,"2333":1,"2334":1,"2335":1,"2336":1,"2342":1,"2346":1,"2347":2,"2348":2,"2350":1,"2351":1,"2352":1,"2353":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":2,"2362":2,"2364":1,"2366":1,"2367":1,"2369":1,"2370":1,"2371":1,"2372":1,"2378":1,"2379":1,"2384":1,"2385":1,"2391":1,"2392":1,"2393":2,"2394":1,"2395":1,"2397":1,"2399":1,"2402":1,"2403":1,"2404":1,"2405":2,"2412":1,"2413":1,"2415":1,"2419":1,"2422":2,"2443":1,"2445":1,"2446":2,"2451":1,"2453":1,"2454":2,"2456":1,"2462":1,"2464":1,"2470":2,"2471":1,"2481":1,"2482":2,"2483":1,"2486":6,"2487":1,"2489":2,"2491":1,"2492":2,"2493":2,"2495":2,"2496":2,"2500":1,"2502":1,"2505":2,"2509":1,"2510":1,"2511":2,"2517":1,"2518":3,"2519":1,"2521":1,"2532":1,"2540":1,"2544":1,"2551":1,"2555":2,"2558":2,"2566":1,"2572":2,"2577":1,"2580":1,"2586":1,"2588":1,"2589":1,"2590":1,"2591":2,"2597":1,"2603":1,"2615":2,"2621":2,"2622":1,"2641":2,"2645":1,"2648":1,"2662":2,"2663":1,"2664":1,"2665":1,"2673":1,"2674":1,"2677":1,"2679":2,"2802":1,"2823":1,"2826":1,"2836":1}}],["nonclosingmemorystream",{"2":{"2372":1}}],["nonsense",{"2":{"1403":2,"2540":1}}],["nonewlines",{"2":{"1360":1}}],["none",{"2":{"448":1,"747":1,"840":1,"844":1,"857":2,"869":1,"872":1,"969":1,"1027":1,"1067":1,"1108":1,"1217":1,"1227":1,"1230":1,"1322":2,"1447":4,"1449":1,"1556":1,"1557":1,"1650":1,"1651":2,"1660":1,"1753":1,"1755":1,"1792":17,"1801":1,"1877":1,"1880":1,"1893":1,"2023":1,"2024":1,"2028":2,"2125":1,"2221":1,"2297":1,"2319":1,"2425":1,"2426":3,"2427":1,"2428":1,"2429":1,"2436":4,"2438":1,"2451":1,"2540":1,"2544":2,"2565":2,"2632":2,"2711":1,"2752":1,"2801":1}}],["non",{"0":{"2394":1},"2":{"35":1,"64":1,"188":1,"213":1,"214":1,"245":1,"298":2,"320":1,"448":1,"624":2,"694":1,"695":1,"716":1,"747":2,"753":2,"757":2,"770":1,"771":1,"772":1,"773":1,"776":1,"782":3,"784":3,"786":3,"930":1,"992":1,"1069":1,"1070":1,"1079":2,"1107":1,"1109":1,"1162":1,"1174":1,"1447":1,"1605":1,"1618":1,"1740":1,"1741":2,"1743":1,"1792":14,"1856":1,"1862":1,"1898":1,"1924":1,"1956":1,"1957":1,"2003":1,"2099":1,"2106":1,"2125":1,"2156":1,"2197":1,"2221":1,"2226":1,"2256":2,"2270":1,"2288":1,"2289":2,"2296":1,"2309":1,"2342":1,"2379":2,"2406":1,"2429":1,"2450":2,"2454":1,"2456":1,"2481":1,"2482":1,"2483":1,"2497":1,"2498":1,"2502":1,"2512":1,"2527":1,"2529":1,"2531":1,"2532":1,"2537":1,"2542":1,"2614":1,"2687":1,"2688":1,"2862":1,"2867":1}}],["no",{"0":{"275":1,"308":1,"320":1,"468":1,"888":2,"942":1,"1004":1,"1042":1,"1106":1,"1200":1,"1248":1,"1388":1,"1389":1,"1390":1,"1417":1,"1420":1,"1580":1,"1660":1,"2343":1,"2348":1,"2352":1,"2384":1,"2492":1,"2494":1,"2517":1},"1":{"1418":1,"1419":1,"1420":1,"1421":1},"2":{"2":2,"31":1,"35":2,"60":2,"63":2,"74":1,"106":1,"109":1,"110":1,"167":1,"169":1,"175":1,"179":1,"182":1,"188":1,"214":3,"227":1,"286":1,"297":2,"299":2,"301":1,"304":2,"317":1,"319":1,"320":6,"325":2,"327":1,"347":1,"370":1,"376":1,"378":1,"388":1,"389":2,"390":1,"422":1,"436":1,"438":1,"446":4,"452":2,"453":3,"458":1,"460":1,"462":1,"487":1,"529":1,"540":1,"543":1,"544":1,"551":3,"554":2,"565":1,"567":1,"582":2,"583":1,"586":2,"587":3,"615":1,"616":3,"618":1,"646":1,"650":2,"663":2,"664":1,"665":1,"683":1,"684":2,"686":2,"690":1,"701":1,"703":1,"713":1,"745":1,"761":1,"771":1,"823":1,"826":1,"829":4,"832":3,"833":2,"835":7,"837":1,"841":3,"843":3,"844":2,"845":1,"847":1,"848":7,"849":5,"851":12,"852":4,"861":4,"864":5,"866":3,"867":5,"868":4,"871":7,"872":5,"873":3,"874":4,"875":2,"876":3,"880":4,"888":1,"894":1,"901":1,"904":1,"907":3,"908":1,"909":1,"911":4,"916":1,"920":2,"922":1,"926":4,"941":2,"944":1,"946":1,"949":2,"954":3,"958":3,"961":1,"968":1,"971":4,"973":1,"974":1,"975":2,"991":1,"993":3,"994":3,"997":1,"1000":1,"1006":6,"1007":3,"1009":2,"1010":4,"1014":1,"1015":1,"1036":6,"1037":9,"1038":1,"1042":2,"1045":1,"1046":2,"1049":2,"1051":1,"1052":1,"1061":1,"1063":1,"1065":2,"1068":1,"1069":2,"1070":4,"1075":1,"1076":4,"1077":1,"1078":6,"1079":1,"1081":1,"1086":3,"1094":1,"1095":2,"1096":2,"1097":1,"1098":3,"1099":1,"1100":4,"1101":3,"1102":5,"1103":1,"1105":3,"1106":4,"1107":2,"1108":4,"1111":5,"1121":1,"1125":1,"1126":2,"1127":2,"1137":2,"1138":2,"1141":1,"1150":3,"1165":1,"1168":1,"1169":1,"1176":1,"1180":1,"1181":5,"1183":1,"1185":2,"1193":1,"1200":3,"1208":4,"1209":3,"1210":3,"1217":1,"1226":4,"1229":1,"1233":1,"1247":1,"1248":2,"1251":2,"1255":2,"1257":4,"1276":3,"1281":3,"1304":2,"1325":4,"1326":1,"1327":1,"1329":1,"1331":2,"1332":1,"1333":1,"1337":2,"1342":1,"1349":1,"1351":1,"1354":1,"1360":1,"1366":4,"1367":1,"1368":3,"1369":1,"1372":2,"1378":7,"1382":1,"1384":2,"1385":5,"1386":1,"1389":2,"1390":1,"1394":4,"1396":2,"1398":1,"1399":1,"1400":1,"1401":12,"1402":2,"1403":2,"1405":2,"1406":3,"1408":3,"1409":1,"1410":1,"1412":1,"1413":1,"1417":1,"1419":3,"1420":1,"1422":3,"1423":2,"1427":1,"1428":1,"1429":1,"1431":2,"1432":1,"1435":5,"1436":1,"1438":3,"1442":4,"1480":1,"1481":1,"1501":1,"1518":1,"1521":1,"1522":3,"1523":1,"1524":1,"1527":1,"1529":1,"1531":1,"1532":1,"1557":1,"1559":1,"1569":1,"1571":2,"1577":1,"1588":1,"1605":1,"1609":1,"1613":1,"1618":1,"1639":1,"1640":1,"1651":1,"1655":1,"1696":4,"1742":1,"1743":2,"1746":3,"1753":1,"1755":1,"1759":1,"1792":40,"1806":1,"1813":1,"1816":1,"1820":1,"1824":1,"1825":3,"1828":1,"1834":1,"1840":1,"1850":1,"1852":3,"1854":1,"1855":2,"1856":2,"1859":2,"1861":2,"1868":1,"1879":1,"1908":2,"1912":2,"1917":1,"1920":1,"1928":2,"1929":1,"1938":1,"1956":1,"1957":2,"1974":2,"2002":1,"2007":1,"2019":2,"2028":1,"2033":3,"2037":3,"2040":2,"2041":3,"2094":1,"2095":1,"2099":1,"2105":1,"2109":1,"2113":1,"2141":2,"2156":2,"2157":2,"2164":1,"2171":2,"2176":1,"2183":1,"2195":1,"2222":2,"2223":4,"2225":2,"2226":1,"2265":2,"2270":1,"2278":1,"2284":1,"2287":1,"2289":4,"2290":1,"2291":1,"2296":1,"2309":1,"2317":1,"2319":1,"2320":1,"2324":2,"2328":1,"2333":1,"2337":3,"2338":3,"2339":3,"2347":3,"2348":1,"2357":1,"2359":1,"2360":2,"2363":1,"2371":1,"2378":1,"2379":3,"2380":3,"2381":3,"2383":4,"2385":1,"2389":5,"2391":3,"2392":4,"2393":1,"2395":1,"2396":1,"2398":4,"2406":1,"2409":2,"2415":1,"2419":3,"2420":1,"2423":4,"2426":1,"2429":2,"2430":2,"2431":4,"2432":1,"2435":1,"2436":2,"2437":1,"2438":2,"2448":3,"2450":2,"2451":2,"2452":1,"2454":3,"2456":1,"2457":2,"2461":2,"2472":1,"2476":1,"2481":8,"2482":1,"2484":1,"2487":1,"2489":2,"2490":1,"2494":1,"2495":3,"2497":1,"2498":1,"2502":3,"2518":1,"2520":2,"2522":1,"2523":3,"2527":4,"2529":3,"2530":1,"2531":2,"2534":1,"2535":2,"2536":1,"2537":4,"2538":1,"2539":1,"2540":1,"2542":2,"2543":2,"2544":2,"2549":2,"2551":3,"2558":1,"2566":1,"2575":2,"2586":1,"2588":1,"2590":1,"2595":1,"2596":2,"2607":2,"2632":2,"2659":1,"2679":1,"2684":1,"2685":1,"2688":1,"2694":1,"2709":2,"2712":1,"2721":1,"2723":1,"2731":1,"2732":1,"2741":2,"2744":2,"2760":2,"2767":1,"2774":3,"2792":1,"2802":2,"2807":4,"2809":2,"2811":5,"2814":1,"2815":1,"2824":1,"2825":1,"2835":6,"2836":2,"2839":4,"2845":1,"2848":1,"2853":3,"2854":1,"2858":1,"2859":1,"2860":3,"2862":1,"2865":2,"2867":1,"2868":4,"2874":2,"2878":1,"2879":1,"2880":1,"2881":3}}],["notable",{"0":{"1071":1},"2":{"1107":1,"1266":1}}],["notation",{"0":{"2377":1},"2":{"851":1,"1071":1,"2376":1}}],["notoriously",{"2":{"1064":1}}],["notnull",{"2":{"816":1,"1788":1,"1792":2,"1795":1,"2138":1,"2140":2,"2141":1,"2142":1,"2146":1,"2446":1,"2575":4}}],["notion",{"2":{"841":1}}],["noting",{"2":{"841":1,"1386":1}}],["notifies",{"2":{"2834":1}}],["notifications",{"2":{"646":2,"1323":2,"1326":2,"1327":1,"1386":2,"1824":1,"2391":1,"2481":1,"2490":1,"2833":1}}],["notification",{"2":{"621":1,"643":1,"644":1,"1035":1,"1313":1,"1324":1}}],["notify",{"0":{"1324":1},"1":{"1325":1},"2":{"621":2,"1030":1,"1037":1,"1103":2,"1106":2,"1324":5,"1325":4,"2342":1,"2343":1,"2803":1,"2833":1}}],["notice`",{"2":{"1792":2}}],["noticed",{"2":{"1401":1}}],["notices",{"2":{"650":2,"668":3,"868":1,"1305":1,"1325":2,"1792":2,"1811":1,"2094":1,"2104":1,"2392":1,"2535":2,"2537":1,"2802":1}}],["notice",{"0":{"632":1,"660":1,"1845":1,"1858":1,"2251":1},"2":{"233":1,"627":1,"629":2,"631":1,"632":2,"646":4,"648":1,"651":1,"653":3,"655":1,"656":4,"660":2,"662":3,"671":1,"852":1,"860":1,"864":1,"865":1,"915":1,"930":1,"992":1,"1056":1,"1103":1,"1305":2,"1309":1,"1316":3,"1325":2,"1327":1,"1386":1,"1408":1,"1416":1,"1442":1,"1792":4,"1844":1,"1857":2,"1858":2,"1859":1,"1860":1,"1861":1,"2104":1,"2108":1,"2251":2,"2252":11,"2392":2,"2535":1,"2536":1,"2802":2,"2828":1,"2832":7,"2833":2,"2835":2,"2838":1,"2880":2}}],["nothing",{"2":{"74":1,"167":1,"298":2,"388":2,"665":1,"847":1,"849":3,"851":3,"857":1,"860":1,"864":1,"932":1,"968":1,"1040":1,"1046":1,"1070":1,"1073":3,"1074":1,"1077":1,"1080":2,"1106":1,"1137":1,"1185":1,"1382":1,"1384":1,"1391":1,"1401":3,"1403":1,"1406":1,"1432":1,"1435":1,"1792":1,"1821":1,"1825":1,"2019":3,"2157":1,"2176":1,"2186":2,"2398":1,"2412":1,"2468":1,"2518":1,"2537":1,"2543":1,"2544":1,"2733":1,"2758":1,"2815":1,"2868":1,"2881":1}}],["notempty",{"2":{"816":1,"1026":3,"1792":2,"2140":2,"2141":1,"2142":1,"2146":1,"2149":1,"2446":1,"2575":4}}],["notes",{"0":{"696":1,"701":1,"2296":1,"2512":1,"2522":1,"2545":1},"2":{"319":1,"320":1,"452":2,"1037":1,"1066":1,"1067":1,"1071":1,"1347":2,"1380":1,"1381":1,"1382":1,"1664":1,"2013":1,"2482":1,"2802":1,"2859":1}}],["note",{"0":{"324":1,"1054":1,"1279":1,"1528":1,"2477":1,"2511":1},"2":{"60":1,"209":1,"324":1,"762":1,"771":1,"772":1,"916":1,"918":1,"926":2,"1096":1,"1098":1,"1142":1,"1225":1,"1382":1,"1477":1,"1618":1,"1792":18,"1875":1,"1924":1,"2220":1,"2252":1,"2319":1,"2455":1,"2461":1,"2551":1,"2571":1,"2586":1,"2611":1,"2621":1,"2632":2,"2634":1,"2635":1,"2800":1,"2815":1}}],["not",{"0":{"395":1,"691":1,"836":1,"854":1,"855":1,"856":1,"857":1,"1012":1,"1170":1,"1324":1,"1395":1,"1924":1,"2365":1,"2378":1,"2410":1,"2441":1,"2490":1,"2491":1,"2734":1},"1":{"1013":1,"1014":1,"1015":1,"1325":1,"2411":1,"2412":1,"2413":1,"2442":1,"2443":1,"2444":1},"2":{"1":1,"31":1,"46":1,"63":1,"64":1,"109":1,"119":1,"134":1,"165":2,"173":1,"174":2,"175":1,"188":3,"209":1,"223":1,"238":1,"239":1,"244":2,"245":2,"252":1,"261":1,"263":2,"280":1,"300":1,"308":1,"309":1,"317":1,"324":1,"347":1,"348":1,"370":1,"377":1,"383":1,"387":2,"388":2,"389":1,"390":1,"423":1,"429":1,"436":2,"439":2,"446":1,"448":2,"449":1,"452":2,"454":1,"462":2,"480":1,"518":1,"524":1,"527":1,"534":1,"535":1,"567":1,"587":1,"618":2,"621":1,"624":2,"625":2,"650":4,"656":8,"668":1,"669":1,"673":1,"675":1,"679":1,"684":1,"701":1,"704":1,"706":1,"722":1,"747":1,"757":1,"762":1,"764":3,"774":3,"801":1,"811":2,"812":3,"813":1,"814":1,"815":1,"816":2,"831":1,"834":3,"835":2,"837":1,"841":5,"844":5,"845":4,"847":3,"848":1,"849":1,"851":6,"852":18,"853":1,"854":2,"857":5,"860":8,"861":3,"864":7,"865":1,"868":4,"869":4,"872":2,"873":4,"874":1,"875":1,"876":5,"877":2,"878":1,"893":1,"910":1,"913":4,"916":1,"918":2,"919":1,"920":1,"924":4,"926":1,"930":7,"934":1,"937":1,"946":2,"952":1,"956":2,"957":1,"963":1,"968":1,"973":1,"977":5,"979":1,"980":1,"983":2,"985":1,"986":1,"988":1,"989":1,"990":2,"991":1,"993":1,"994":1,"996":2,"997":1,"1001":2,"1005":1,"1013":1,"1015":2,"1044":1,"1050":3,"1054":2,"1055":2,"1060":2,"1066":1,"1067":2,"1068":1,"1075":2,"1076":1,"1077":2,"1079":2,"1080":3,"1081":1,"1094":2,"1096":2,"1097":1,"1098":1,"1100":2,"1101":3,"1102":1,"1104":1,"1105":2,"1106":1,"1111":4,"1125":1,"1127":1,"1132":1,"1138":1,"1141":1,"1149":1,"1157":1,"1169":1,"1170":1,"1174":1,"1180":1,"1181":2,"1184":1,"1185":1,"1188":1,"1198":1,"1206":3,"1210":1,"1213":10,"1214":1,"1225":1,"1228":1,"1233":1,"1234":1,"1235":1,"1236":1,"1239":1,"1279":1,"1305":1,"1307":6,"1328":1,"1329":1,"1332":2,"1335":1,"1336":2,"1338":2,"1339":4,"1351":1,"1355":5,"1358":1,"1360":2,"1362":1,"1366":1,"1368":1,"1372":1,"1374":1,"1382":2,"1385":4,"1386":2,"1388":1,"1390":1,"1393":2,"1394":2,"1395":1,"1396":1,"1397":1,"1399":1,"1400":1,"1401":2,"1402":3,"1403":6,"1405":1,"1408":2,"1409":2,"1410":2,"1411":1,"1416":1,"1417":2,"1419":3,"1420":1,"1426":1,"1427":1,"1432":1,"1435":1,"1438":2,"1447":1,"1459":1,"1460":1,"1475":2,"1477":2,"1500":1,"1511":2,"1517":2,"1518":1,"1523":1,"1527":1,"1528":1,"1570":1,"1571":1,"1574":1,"1581":2,"1593":1,"1596":2,"1605":2,"1620":1,"1621":1,"1624":2,"1628":2,"1641":2,"1644":1,"1651":1,"1653":1,"1655":3,"1678":1,"1690":1,"1703":1,"1704":1,"1716":1,"1717":1,"1722":1,"1738":1,"1741":1,"1747":1,"1767":1,"1768":1,"1792":97,"1822":3,"1824":1,"1825":3,"1832":1,"1840":1,"1847":1,"1856":1,"1858":2,"1861":1,"1875":1,"1885":1,"1921":1,"1922":1,"1923":1,"1924":2,"1929":1,"1930":2,"1937":1,"1961":2,"1994":1,"2006":1,"2016":3,"2019":1,"2038":1,"2040":2,"2072":1,"2077":2,"2092":1,"2098":1,"2106":2,"2107":1,"2109":1,"2110":1,"2117":1,"2124":1,"2138":1,"2142":2,"2145":1,"2146":3,"2147":2,"2154":1,"2177":1,"2193":1,"2197":2,"2223":1,"2225":1,"2242":1,"2245":1,"2247":1,"2251":1,"2253":1,"2254":2,"2255":4,"2258":2,"2261":1,"2265":3,"2266":3,"2267":3,"2271":1,"2289":1,"2296":3,"2309":1,"2310":1,"2314":1,"2319":1,"2322":1,"2323":1,"2328":1,"2333":1,"2336":1,"2337":1,"2342":2,"2343":1,"2344":2,"2346":1,"2359":1,"2363":1,"2365":1,"2372":1,"2375":2,"2380":2,"2384":2,"2388":1,"2392":1,"2394":2,"2398":2,"2411":1,"2412":1,"2414":1,"2424":1,"2429":1,"2430":1,"2437":2,"2438":7,"2450":1,"2451":1,"2453":2,"2455":1,"2459":1,"2463":1,"2464":1,"2465":1,"2466":4,"2476":1,"2481":3,"2482":1,"2490":1,"2491":2,"2492":1,"2496":1,"2497":2,"2498":1,"2502":1,"2504":1,"2506":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2519":2,"2528":2,"2529":3,"2530":2,"2531":1,"2533":1,"2534":1,"2537":4,"2539":1,"2540":1,"2542":1,"2549":1,"2551":2,"2572":1,"2575":5,"2577":1,"2581":1,"2586":1,"2588":2,"2589":1,"2597":1,"2626":1,"2632":8,"2633":1,"2634":1,"2641":1,"2645":2,"2648":2,"2666":1,"2682":1,"2688":2,"2702":1,"2721":1,"2723":1,"2729":1,"2762":1,"2763":1,"2788":1,"2803":3,"2807":1,"2809":1,"2810":1,"2814":2,"2815":2,"2823":1,"2828":2,"2830":1,"2832":2,"2836":4,"2840":2,"2842":1,"2845":1,"2848":1,"2849":1,"2855":1,"2864":2,"2865":3,"2868":2,"2869":5,"2876":1,"2878":1}}],["rm",{"2":{"1792":1,"2111":1,"2532":1,"2534":1,"2875":1}}],["rss",{"2":{"1432":1}}],["rs256",{"2":{"1236":1,"1237":1,"1792":1,"1886":1,"1887":1}}],["rsa",{"2":{"1211":1,"1243":1}}],["rpid",{"2":{"1222":1}}],["rp",{"2":{"1220":1,"1225":1,"1875":1}}],["rpc",{"2":{"1039":1,"1041":1,"1046":1,"1097":1,"1121":1,"1125":2,"1792":1,"1813":1,"1817":1,"1822":1,"1824":2,"2481":3}}],["rls",{"0":{"1114":1,"1115":1},"2":{"1084":1,"1098":2,"1115":1,"1122":1,"1125":2,"1385":1}}],["rfpqb6nkcot2ll",{"2":{"1051":2}}],["rfc7231",{"2":{"1676":1,"1677":1}}],["rfc3986",{"2":{"1671":1,"1792":1,"2255":1}}],["rfc",{"0":{"1833":1},"2":{"835":1,"1017":1,"1109":1,"1111":5,"1127":1,"1218":1,"1398":1,"1401":1,"1445":1,"1453":1,"1457":1,"1670":1,"1676":1,"1726":1,"1792":4,"1827":1,"1830":1,"1831":1,"2193":1,"2207":1,"2223":2,"2240":1,"2255":2,"2264":1,"2271":1,"2481":4,"2554":1,"2581":1}}],["rbac",{"2":{"1037":1,"1048":1,"1057":1,"1098":1,"2164":2,"2165":1,"2737":1}}],["rds",{"0":{"1070":1},"2":{"1013":1,"1066":1,"1070":1,"1101":1,"1102":2,"1121":1,"1528":1,"1792":1,"1851":1,"2382":1}}],["rdbms",{"2":{"841":4,"843":1,"844":6,"845":2,"847":1,"848":6,"849":1,"851":1,"1037":1,"1403":1,"1405":6}}],["rn",{"2":{"881":2}}],["rnd3",{"2":{"2534":3}}],["rndn",{"2":{"1792":2,"2534":2,"2871":2}}],["rnd6",{"2":{"1792":1,"2534":3}}],["rnd10",{"2":{"1792":1,"2098":1,"2534":1,"2871":1}}],["rnd1",{"2":{"1792":1,"2098":1,"2534":1,"2871":1}}],["rnd",{"2":{"696":1,"697":1,"2103":1,"2111":1,"2221":1,"2532":1,"2758":1,"2874":1,"2881":1}}],["rnd5",{"2":{"695":2,"696":2,"705":3,"1079":1,"1792":2,"2098":4,"2111":4,"2167":1,"2532":4,"2545":2,"2740":1,"2871":2,"2872":4,"2873":12,"2874":3}}],["r2",{"2":{"881":2,"1220":2,"1221":2,"1222":2}}],["r1",{"2":{"881":2,"1220":2,"1221":2,"1222":2}}],["r",{"2":{"297":2,"340":1,"343":1,"845":3,"849":1,"851":6,"916":4,"924":1,"928":1,"929":1,"934":1,"935":1,"936":1,"938":1,"976":2,"977":1,"1055":1,"1056":2,"1057":1,"1060":1,"1179":2,"1197":3,"1419":4,"1429":6,"1504":6,"2540":3,"2589":1,"2792":3}}],["rigid",{"0":{"879":1}}],["rightfully",{"2":{"852":1}}],["right",{"0":{"947":1},"1":{"948":1,"949":1,"950":1,"951":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1},"2":{"307":1,"841":1,"844":2,"849":2,"854":1,"864":1,"913":1,"988":1,"1010":1,"1037":1,"1043":2,"1067":1,"1070":2,"1076":2,"1078":1,"1127":1,"1148":1,"1399":2,"1400":2,"1401":2,"1403":3,"1405":1,"1421":2,"1430":1,"2164":1,"2421":1,"2424":1,"2466":1,"2498":1,"2537":1,"2804":1,"2866":1}}],["ride",{"2":{"1431":1,"1823":1}}],["riddance",{"2":{"1401":1}}],["riddle",{"2":{"844":1,"848":1}}],["rid",{"2":{"851":1,"2668":1,"2792":1}}],["risks",{"2":{"2466":1}}],["risk",{"2":{"874":1,"969":1,"1070":1,"1102":1,"1706":1,"1852":1,"2383":1}}],["risky",{"2":{"195":1,"1111":1}}],["rise",{"0":{"1274":1},"2":{"841":1}}],["rivals",{"0":{"836":1}}],["richer",{"2":{"2094":1,"2104":1,"2438":1}}],["rich",{"2":{"835":1,"1385":2,"1403":1,"1405":1}}],["ring",{"2":{"188":1,"2296":1,"2297":2}}],["rust",{"2":{"832":1,"1090":1,"1255":2,"1257":1,"1265":1,"1268":1,"1277":1,"1279":1,"1281":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["rule3",{"2":{"2575":1}}],["rule3>",{"2":{"809":1}}],["rule2",{"2":{"2575":1}}],["rule2>",{"2":{"809":1}}],["rule1",{"2":{"2575":1}}],["rule1>",{"2":{"809":1}}],["rule",{"0":{"811":1,"2141":1,"2144":1,"2446":1},"2":{"74":1,"109":2,"299":1,"301":1,"560":1,"619":1,"809":3,"816":1,"819":1,"845":1,"848":2,"854":1,"863":2,"865":1,"922":1,"1067":2,"1071":1,"1150":1,"1378":1,"1523":2,"1527":7,"1792":5,"1924":1,"2141":1,"2143":1,"2180":1,"2225":1,"2340":1,"2380":4,"2384":1,"2415":1,"2445":1,"2446":4,"2447":1,"2509":1,"2518":1,"2520":1,"2575":1,"2666":1,"2722":1}}],["rules`",{"2":{"1792":1}}],["rules",{"0":{"74":1,"379":1,"812":1,"816":1,"817":1,"1523":1,"2142":1,"2143":1,"2145":1,"2192":1,"2446":1,"2690":1,"2692":1,"2851":1},"1":{"75":1,"1524":1,"1525":1,"1526":1,"2144":1,"2145":1},"2":{"101":1,"104":1,"105":1,"108":2,"109":1,"110":1,"123":1,"156":1,"214":1,"230":1,"382":1,"390":1,"395":2,"422":1,"544":1,"712":1,"809":1,"816":1,"817":2,"818":1,"820":1,"822":1,"836":1,"845":1,"848":1,"849":2,"863":2,"865":1,"868":2,"869":1,"1037":1,"1067":3,"1069":1,"1101":3,"1127":2,"1135":1,"1150":3,"1247":1,"1403":1,"1511":1,"1521":1,"1523":2,"1527":1,"1688":1,"1788":1,"1792":7,"1795":1,"1922":1,"1948":1,"2111":1,"2138":1,"2139":3,"2142":2,"2143":2,"2144":1,"2145":1,"2146":2,"2147":1,"2148":1,"2149":2,"2150":1,"2152":1,"2225":1,"2320":1,"2333":1,"2334":1,"2378":1,"2380":2,"2384":1,"2440":1,"2442":2,"2446":3,"2448":1,"2481":1,"2498":1,"2502":1,"2529":1,"2575":6}}],["runmigrationtool",{"2":{"1792":1,"2111":1,"2532":1}}],["runaway",{"2":{"1067":1}}],["runnable",{"2":{"1047":1,"1433":1,"2188":1,"2837":1}}],["runners",{"0":{"2874":1},"2":{"2111":1,"2456":1,"2576":1,"2790":1}}],["runner",{"0":{"1074":1,"2092":1,"2167":1,"2526":1,"2800":1},"1":{"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":1,"2111":1,"2112":1,"2113":1,"2114":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1},"2":{"239":1,"689":1,"693":2,"697":1,"698":1,"702":1,"703":1,"707":1,"708":1,"712":1,"713":1,"717":1,"876":1,"986":2,"1073":3,"1074":1,"1076":1,"1078":1,"1094":2,"1379":1,"1385":1,"1442":1,"1789":2,"1792":6,"1802":1,"2092":1,"2094":1,"2104":1,"2107":1,"2108":1,"2112":1,"2156":1,"2158":1,"2159":2,"2167":1,"2221":1,"2450":1,"2525":1,"2526":2,"2527":1,"2528":1,"2532":2,"2536":1,"2537":5,"2541":1,"2542":1,"2544":1,"2545":1,"2722":1,"2739":1,"2752":1,"2758":1,"2786":1,"2794":1,"2795":2,"2800":1,"2802":1,"2859":1,"2860":3,"2861":1,"2862":1,"2871":1,"2875":1,"2879":1,"2880":1,"2882":1}}],["running",{"0":{"137":1,"970":1},"2":{"1":1,"284":1,"395":1,"574":1,"658":4,"844":1,"852":1,"860":3,"865":1,"868":1,"885":1,"926":1,"966":1,"1014":1,"1043":1,"1044":1,"1080":2,"1104":1,"1107":1,"1255":1,"1320":1,"1334":1,"1382":1,"1385":2,"1396":1,"1416":1,"1443":1,"1515":1,"1654":1,"1701":1,"1762":1,"1768":1,"1770":1,"1792":7,"1859":1,"2052":2,"2094":1,"2099":1,"2161":2,"2184":1,"2221":1,"2346":1,"2398":1,"2414":1,"2476":1,"2527":1,"2543":1,"2600":1,"2615":2,"2633":2,"2634":3,"2635":1,"2694":1,"2742":1,"2818":1,"2819":1,"2823":1,"2826":1,"2833":1,"2857":1,"2860":1,"2878":1}}],["run",{"0":{"2110":1,"2717":1,"2740":1,"2823":1,"2872":1},"2":{"239":4,"310":1,"453":1,"528":1,"529":1,"689":1,"690":1,"693":2,"696":2,"698":1,"703":2,"704":1,"705":1,"707":1,"708":1,"713":2,"714":1,"716":2,"717":1,"832":1,"836":1,"848":2,"860":1,"861":1,"864":1,"873":1,"874":1,"876":1,"914":1,"920":1,"924":2,"926":1,"930":1,"932":4,"970":2,"976":3,"982":1,"985":1,"986":1,"988":1,"993":2,"997":5,"1003":1,"1005":2,"1044":1,"1045":1,"1047":4,"1073":1,"1075":1,"1076":1,"1079":3,"1081":1,"1082":1,"1086":1,"1094":1,"1105":1,"1107":1,"1115":1,"1117":1,"1118":2,"1121":1,"1130":2,"1145":1,"1202":1,"1207":1,"1254":3,"1343":1,"1380":2,"1401":2,"1407":1,"1418":2,"1419":3,"1420":3,"1422":1,"1433":5,"1435":1,"1442":1,"1789":1,"1792":21,"1832":1,"1833":1,"1850":1,"1911":1,"2092":1,"2094":6,"2098":2,"2103":2,"2106":4,"2107":4,"2110":3,"2111":2,"2112":4,"2113":1,"2156":1,"2158":1,"2162":3,"2167":6,"2168":5,"2383":2,"2397":1,"2415":1,"2433":1,"2438":1,"2456":1,"2463":1,"2466":1,"2481":1,"2490":1,"2525":1,"2527":2,"2528":1,"2530":3,"2532":8,"2533":3,"2534":6,"2535":1,"2537":14,"2542":1,"2545":2,"2546":1,"2667":1,"2689":1,"2717":1,"2721":1,"2739":2,"2740":2,"2754":1,"2755":1,"2758":1,"2760":1,"2766":1,"2785":1,"2788":5,"2789":2,"2790":2,"2791":2,"2792":1,"2806":1,"2807":2,"2809":1,"2830":1,"2835":2,"2857":1,"2858":1,"2860":1,"2861":1,"2862":2,"2864":1,"2866":1,"2868":2,"2869":1,"2870":4,"2871":3,"2872":3,"2873":3,"2874":3,"2875":2,"2876":1,"2878":2,"2879":3,"2880":1,"2881":2}}],["runs",{"0":{"2751":1},"2":{"215":1,"297":1,"307":3,"320":1,"324":1,"347":1,"453":1,"527":1,"529":1,"587":1,"618":1,"666":1,"694":1,"705":1,"707":1,"708":1,"710":1,"711":1,"714":1,"715":1,"717":1,"818":1,"829":1,"860":1,"871":3,"875":1,"924":1,"926":1,"933":1,"934":1,"979":1,"982":1,"985":1,"986":2,"994":1,"1009":1,"1041":1,"1049":3,"1070":1,"1076":1,"1078":1,"1079":2,"1080":2,"1081":1,"1106":1,"1188":1,"1255":1,"1343":1,"1379":1,"1406":1,"1409":1,"1418":2,"1420":1,"1423":1,"1433":1,"1438":1,"1442":1,"1704":1,"1792":15,"2092":1,"2094":1,"2096":1,"2097":1,"2099":1,"2106":4,"2107":2,"2111":1,"2112":3,"2149":1,"2153":2,"2156":1,"2157":1,"2158":2,"2177":2,"2184":1,"2221":2,"2391":1,"2394":1,"2421":1,"2422":1,"2438":1,"2452":1,"2465":1,"2466":1,"2481":2,"2527":3,"2528":1,"2529":1,"2531":1,"2532":4,"2533":5,"2534":1,"2537":12,"2541":3,"2542":2,"2543":1,"2608":1,"2712":1,"2742":3,"2760":2,"2762":1,"2766":1,"2776":1,"2807":1,"2809":1,"2810":1,"2813":2,"2815":1,"2828":1,"2829":1,"2834":1,"2854":1,"2862":2,"2863":1,"2865":1,"2871":2,"2872":1,"2875":1,"2877":1,"2878":6,"2879":1}}],["runtimes",{"2":{"1104":1,"1108":1}}],["runtime",{"0":{"1004":1,"1023":1,"1107":1,"1343":1,"2550":1,"2750":1,"2791":1},"2":{"1":1,"156":1,"238":1,"582":1,"585":1,"587":3,"646":1,"650":1,"832":1,"860":1,"872":1,"954":1,"973":1,"985":1,"997":1,"1007":1,"1080":1,"1104":1,"1106":1,"1107":1,"1108":3,"1115":1,"1126":1,"1127":1,"1316":1,"1343":1,"1407":1,"1420":2,"1422":3,"1527":1,"1568":1,"1974":2,"2161":1,"2238":1,"2245":2,"2283":1,"2337":2,"2372":1,"2378":1,"2380":1,"2385":1,"2394":1,"2414":2,"2443":1,"2448":1,"2479":1,"2496":1,"2519":1,"2540":1,"2550":2,"2577":1,"2590":1,"2607":2,"2668":1,"2744":1,"2789":2,"2790":1,"2791":3,"2792":1,"2831":1,"2833":1,"2840":2,"2845":1}}],["raspberry",{"2":{"2576":1,"2779":1,"2783":1,"2790":1}}],["rare",{"2":{"1403":1,"2424":1}}],["rarely",{"2":{"177":1,"683":1,"916":1,"1069":1,"1162":1,"1179":1,"1230":1,"1412":1,"1792":1,"1880":1,"2351":1,"2466":1}}],["rabbitmq",{"2":{"1303":1}}],["rapidly",{"2":{"1329":1}}],["rapid",{"2":{"1094":1,"1324":1}}],["radio",{"2":{"1061":3}}],["radius",{"2":{"868":1,"1458":1,"1792":1,"2375":1}}],["races",{"2":{"865":1,"2498":1}}],["race",{"0":{"1440":1},"2":{"864":1,"865":1,"1181":1,"1402":1,"1440":1,"1441":1,"1442":1,"2375":1,"2532":1,"2576":1}}],["ramp",{"2":{"876":1}}],["ram",{"2":{"847":1,"848":3,"852":1,"857":1,"860":1,"1255":1}}],["rage",{"2":{"840":1}}],["rants",{"2":{"1403":1}}],["rant",{"2":{"1400":1,"1403":1}}],["ranks",{"2":{"1429":1}}],["ranking",{"2":{"860":1,"1429":1}}],["rank",{"2":{"860":1}}],["randomuuid",{"2":{"1317":1,"1366":1,"1416":1,"2247":1}}],["random",{"2":{"845":1,"1079":1,"1214":6,"1232":4,"1234":2,"1792":3,"1882":2,"1884":1,"2098":1,"2534":1,"2871":2}}],["ranges",{"2":{"845":1,"863":1,"864":1,"1703":1,"1708":2,"1714":1,"1792":1,"2633":1}}],["range",{"2":{"841":1,"869":1,"1067":2,"1096":1,"1258":1,"1265":1,"1385":1,"1712":1,"1715":1,"1792":2,"2380":2,"2445":1,"2633":1}}],["ran",{"2":{"695":1,"919":1,"1044":1,"2392":1,"2421":1,"2450":1,"2495":1,"2758":1,"2867":1,"2881":1}}],["raising",{"2":{"216":1,"1106":1,"2184":1,"2535":1}}],["raised",{"2":{"777":1,"2384":1,"2763":1,"2802":1}}],["raises",{"2":{"650":1,"663":1,"777":1,"903":1,"1309":1,"1792":1,"2255":1,"2528":2,"2795":1,"2864":2}}],["raise",{"0":{"646":1,"1316":1,"1861":1,"2392":1,"2832":1},"2":{"208":1,"308":1,"631":3,"632":2,"633":1,"641":1,"646":5,"650":4,"656":6,"658":4,"659":3,"660":1,"661":1,"663":1,"664":2,"665":1,"666":1,"668":1,"777":3,"868":1,"897":2,"930":1,"1056":2,"1060":1,"1103":2,"1111":1,"1121":1,"1302":1,"1304":2,"1305":6,"1309":2,"1316":3,"1321":1,"1324":1,"1325":4,"1327":1,"1366":2,"1372":2,"1394":2,"1395":2,"1416":2,"1427":2,"1442":1,"1674":2,"1792":5,"1799":1,"1844":1,"1857":1,"1858":4,"1861":1,"2104":2,"2108":1,"2164":1,"2226":1,"2255":3,"2384":1,"2391":2,"2392":4,"2406":1,"2466":1,"2490":1,"2535":1,"2536":1,"2762":1,"2795":2,"2802":5,"2805":1,"2827":2,"2828":3,"2829":6,"2832":4,"2833":4,"2834":2,"2835":2,"2836":1,"2880":2}}],["raw",{"0":{"229":1,"484":1,"487":1,"488":1,"2206":1},"1":{"485":1,"486":1,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"494":1,"495":1,"496":1},"2":{"68":1,"73":1,"90":2,"125":1,"128":2,"129":1,"131":2,"159":6,"188":1,"229":4,"339":2,"342":1,"343":1,"344":1,"346":2,"379":1,"429":1,"439":1,"484":3,"485":1,"487":2,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"548":2,"598":2,"601":1,"602":1,"603":1,"604":1,"606":2,"617":2,"747":1,"830":2,"857":1,"861":1,"869":1,"871":1,"872":1,"880":1,"888":2,"904":1,"911":1,"942":1,"971":1,"1060":1,"1070":1,"1096":1,"1102":1,"1109":1,"1127":1,"1189":2,"1196":1,"1260":1,"1279":1,"1362":2,"1373":2,"1382":2,"1412":3,"1426":1,"1429":3,"1431":1,"1687":1,"1792":2,"1824":1,"1852":1,"1917":1,"1924":1,"1925":1,"1927":2,"2193":4,"2206":4,"2296":1,"2309":1,"2310":1,"2313":1,"2323":1,"2329":5,"2333":1,"2372":1,"2383":1,"2405":2,"2483":1,"2509":1,"2549":2,"2581":3,"2591":3,"2664":1,"2726":2,"2751":1,"2799":1,"2814":1,"2846":1,"2856":1}}],["rationale",{"2":{"2319":1}}],["ratios",{"2":{"1940":1}}],["ratio",{"2":{"1792":1,"1938":3,"2107":1,"2537":1,"2879":1}}],["rating",{"2":{"913":3,"916":2,"919":5,"1423":1,"1429":7,"2611":1}}],["rated",{"2":{"1429":1}}],["ratelimiting",{"2":{"1245":1,"1893":1}}],["ratelimiterperpolicytestfixture",{"2":{"2472":1}}],["ratelimiterperpolicytests",{"2":{"2472":1}}],["ratelimiterpolicy",{"0":{"1822":1},"2":{"480":1,"967":1,"1217":1,"1224":1,"1245":1,"1792":4,"1814":1,"1822":2,"1824":1,"1874":1,"1893":1,"1961":1,"2046":1,"2047":1,"2061":1,"2068":1,"2257":1,"2481":2,"2634":1,"2635":1}}],["ratelimiteroptions",{"0":{"2378":1,"2441":1},"1":{"2442":1,"2443":1,"2444":1},"2":{"476":1,"477":1,"478":1,"479":1,"1069":2,"1157":2,"1162":1,"1177":1,"1792":4,"1948":2,"1951":2,"1952":2,"1953":2,"1954":2,"1955":1,"1958":3,"1960":1,"2047":1,"2061":1,"2225":1,"2257":1,"2379":1,"2440":1,"2441":2,"2442":1,"2443":1,"2468":2,"2470":2,"2551":4,"2634":2,"2635":1,"2701":1}}],["rates",{"2":{"263":6,"1010":1,"1011":1,"1018":1,"1020":2,"1021":8,"1024":1,"1026":3,"1376":7,"1516":1,"1930":3,"2265":1,"2344":7,"2764":4,"2766":1}}],["rate",{"0":{"473":1,"479":1,"1066":1,"1069":1,"1156":1,"1157":1,"1162":1,"1245":1,"1947":1,"1955":1,"1961":1,"2061":1,"2218":1,"2257":1,"2379":1,"2747":1},"1":{"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"482":1,"483":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1948":1,"1949":1,"1950":1,"1951":1,"1952":1,"1953":1,"1954":1,"1955":1,"1956":2,"1957":2,"1958":1,"1959":1,"1960":1,"1961":1,"1962":1,"1963":1,"1964":1},"2":{"41":1,"235":2,"383":2,"473":4,"474":2,"476":2,"477":2,"478":2,"479":2,"480":3,"481":2,"483":2,"835":2,"836":1,"837":1,"868":3,"869":4,"873":2,"877":1,"969":1,"1018":1,"1019":4,"1021":12,"1023":2,"1024":2,"1032":2,"1037":3,"1066":2,"1069":3,"1086":1,"1101":10,"1105":1,"1109":1,"1113":2,"1121":2,"1125":1,"1127":3,"1135":1,"1156":2,"1158":1,"1159":1,"1160":2,"1161":4,"1163":4,"1177":1,"1179":3,"1180":2,"1181":1,"1182":5,"1217":1,"1224":1,"1245":1,"1250":1,"1252":1,"1253":1,"1351":1,"1376":14,"1382":1,"1386":1,"1406":1,"1407":1,"1704":1,"1718":2,"1739":1,"1742":5,"1790":2,"1792":18,"1797":2,"1822":4,"1824":4,"1874":1,"1894":2,"1895":2,"1947":2,"1949":5,"1950":2,"1951":2,"1952":1,"1953":1,"1954":1,"1955":1,"1958":1,"1959":2,"1961":5,"1962":2,"1964":2,"2047":1,"2061":1,"2070":2,"2218":2,"2224":1,"2240":1,"2257":16,"2258":1,"2287":1,"2290":5,"2348":2,"2378":1,"2379":2,"2389":1,"2438":2,"2441":1,"2447":2,"2468":2,"2470":1,"2471":1,"2481":2,"2558":1,"2580":1,"2634":2,"2635":2,"2747":2,"2764":4,"2766":7,"2809":1}}],["rather",{"2":{"1":1,"214":1,"216":1,"325":1,"701":1,"723":1,"847":1,"868":1,"872":1,"876":1,"1102":1,"1159":1,"1161":1,"1272":1,"1326":1,"1413":1,"1416":1,"1443":1,"1527":1,"1607":1,"1856":1,"1925":1,"2222":1,"2377":1,"2380":1,"2384":1,"2405":1,"2440":1,"2454":1,"2463":1,"2466":1,"2511":1,"2513":1,"2531":1,"2535":1,"2603":1,"2656":1,"2802":1,"2812":1}}],["roof",{"2":{"1385":1}}],["room",{"2":{"1320":2,"1386":1}}],["rooms",{"2":{"1312":1}}],["rootpath",{"2":{"937":1,"998":1,"1792":3,"2033":1,"2034":1,"2036":1,"2042":1}}],["root",{"0":{"2411":1,"2421":1,"2426":1,"2442":1},"2":{"108":1,"863":2,"1067":3,"1068":1,"1150":4,"1458":1,"1459":2,"1460":1,"1520":2,"1522":2,"1529":1,"1792":4,"2034":1,"2225":1,"2365":1,"2375":5,"2380":1,"2427":2,"2435":3,"2445":1,"2495":1}}],["robust",{"2":{"1428":1}}],["robin",{"2":{"1175":1}}],["robinson",{"2":{"913":1}}],["robert",{"2":{"847":1}}],["romance",{"2":{"913":1}}],["road",{"0":{"833":1},"2":{"1385":1}}],["rotates",{"2":{"1175":1,"2297":1}}],["rotate",{"2":{"188":1,"1251":1,"2296":1,"2438":3}}],["rotated",{"2":{"188":1,"1651":1,"1792":1,"2296":1}}],["rotation",{"2":{"188":1,"189":1,"1110":1,"2296":1,"2297":1,"2405":1,"2438":2}}],["rough",{"2":{"2493":1}}],["roughly",{"2":{"868":3,"871":1,"872":6,"873":1,"1414":1,"2324":1}}],["rounds",{"2":{"1382":1}}],["round",{"2":{"854":1,"861":1,"874":1,"894":1,"1070":2,"1076":1,"1102":2,"1137":1,"1175":1,"1361":1,"1370":1,"1410":1,"1427":1,"1429":1,"1439":1,"1440":1,"1792":1,"1850":1,"1852":1,"2282":1,"2320":1,"2383":2,"2398":1,"2456":2,"2496":1,"2498":1,"2546":1,"2762":2,"2767":1,"2774":1,"2811":1,"2850":1}}],["roundtrip",{"0":{"187":1,"2294":1}}],["router",{"2":{"1026":4}}],["routed",{"2":{"876":1,"1929":1,"2483":1}}],["route",{"0":{"320":1,"1042":1},"2":{"261":1,"320":4,"325":1,"327":1,"395":1,"448":1,"480":1,"835":1,"859":1,"865":1,"867":1,"868":2,"873":1,"1011":1,"1042":1,"1345":1,"1382":2,"1431":1,"1632":2,"1792":1,"1822":1,"1824":2,"1834":1,"1840":1,"1961":7,"2195":1,"2223":1,"2344":1,"2372":1,"2429":1,"2463":1,"2481":4,"2482":1,"2489":3,"2803":1}}],["routes",{"2":{"108":1,"835":1,"1026":1,"1027":1,"1046":1,"1177":1,"1406":1,"1747":1,"1930":1,"2277":1,"2438":1,"2461":1}}],["routing",{"0":{"223":1,"1176":1},"2":{"212":1,"390":1,"395":1,"650":1,"835":2,"868":1,"869":1,"1007":1,"1074":1,"1114":1,"1174":1,"1181":2,"1182":1,"1255":1,"1276":1,"1281":1,"1329":1,"1351":1,"1822":1,"2347":1,"2407":1,"2527":1,"2739":1,"2860":1}}],["routinecachetests",{"2":{"2465":1}}],["routinecache",{"2":{"2462":1}}],["routinetype",{"2":{"2372":1}}],["routineendpoints",{"2":{"2435":1}}],["routineendpoint",{"0":{"2482":1},"2":{"2223":2,"2461":1,"2482":2,"2487":2,"2518":1,"2520":1}}],["routineoptions",{"2":{"336":1,"917":1,"1792":1,"1836":2,"1966":1,"1968":1,"1970":1,"1971":1,"1973":1,"1974":1,"1975":1,"2156":1,"2350":2,"2587":1,"2607":1,"2641":1,"2701":1}}],["routinesstatspath",{"2":{"1792":1,"2046":1,"2047":1,"2064":1,"2635":1}}],["routines",{"0":{"352":1,"1378":1,"1387":1,"2049":2,"2775":1},"1":{"1388":1,"1389":1,"1390":1,"1391":1,"1392":1,"1393":1,"1394":1,"1395":1,"1396":1},"2":{"244":3,"673":2,"868":1,"917":1,"966":1,"1038":1,"1042":1,"1067":1,"1096":1,"1100":1,"1126":1,"1385":2,"1386":1,"1389":1,"1392":2,"1393":3,"1394":1,"1396":2,"1406":1,"1407":1,"1509":1,"1511":1,"1516":3,"1530":1,"1630":1,"1631":1,"1632":1,"1789":1,"1792":13,"1813":2,"1824":2,"1837":1,"1838":1,"1840":4,"1848":1,"1849":1,"1898":1,"1961":1,"1965":1,"1969":1,"1970":1,"2046":1,"2047":1,"2056":1,"2072":1,"2156":1,"2223":1,"2258":1,"2265":2,"2350":1,"2388":1,"2389":1,"2397":1,"2430":1,"2434":2,"2438":1,"2479":1,"2481":1,"2527":1,"2542":1,"2608":2,"2614":1,"2635":2,"2674":1,"2857":1,"2862":1,"2878":1}}],["routinesources",{"2":{"2369":1}}],["routinesource",{"0":{"2164":1,"2350":1},"2":{"175":1,"179":1,"684":1,"2317":1,"2352":1,"2364":1,"2369":1}}],["routine",{"0":{"322":1,"351":1,"1530":1,"1965":1,"2265":1,"2432":1,"2494":1,"2542":1},"1":{"1531":1,"1532":1,"1533":1,"1966":1,"1967":1,"1968":1,"1969":1,"1970":1,"1971":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":1,"1977":1},"2":{"112":1,"171":1,"174":1,"175":1,"176":2,"179":1,"181":1,"223":1,"239":1,"296":1,"305":1,"317":3,"318":1,"319":2,"320":2,"322":1,"334":1,"338":1,"347":2,"349":1,"352":1,"354":1,"386":1,"390":1,"527":2,"528":1,"531":2,"675":2,"683":2,"685":1,"693":1,"703":1,"708":1,"713":1,"833":1,"868":1,"915":1,"917":3,"967":1,"1038":1,"1040":3,"1041":1,"1042":2,"1043":1,"1045":2,"1046":2,"1070":4,"1094":1,"1102":4,"1378":1,"1385":1,"1387":1,"1388":1,"1392":1,"1396":1,"1398":1,"1401":1,"1416":1,"1470":1,"1471":1,"1521":1,"1522":1,"1523":1,"1524":1,"1527":1,"1531":1,"1556":1,"1557":2,"1562":1,"1563":1,"1576":2,"1581":2,"1753":1,"1755":2,"1758":1,"1787":2,"1789":1,"1792":42,"1794":2,"1813":1,"1822":3,"1824":8,"1825":1,"1832":1,"1834":1,"1836":1,"1838":4,"1840":1,"1847":1,"1850":2,"1852":1,"1862":2,"1865":2,"1898":2,"1908":1,"1909":1,"1910":1,"1913":1,"1923":1,"1961":1,"1967":2,"1974":1,"2010":1,"2047":1,"2049":1,"2077":1,"2106":2,"2154":1,"2156":3,"2157":1,"2171":1,"2195":1,"2223":1,"2224":1,"2225":1,"2239":1,"2255":1,"2258":1,"2265":1,"2266":1,"2325":1,"2330":1,"2356":1,"2370":2,"2372":2,"2380":3,"2383":2,"2392":1,"2419":1,"2430":1,"2431":2,"2432":2,"2433":1,"2436":2,"2438":2,"2459":1,"2481":10,"2483":1,"2489":2,"2494":3,"2495":1,"2502":1,"2509":2,"2537":1,"2540":1,"2542":2,"2543":1,"2546":1,"2607":1,"2608":1,"2635":1,"2672":1,"2721":2,"2742":2,"2759":1,"2760":2,"2806":1,"2807":3,"2824":1,"2825":1,"2828":1,"2845":1,"2878":3}}],["rollonfilesizelimit",{"2":{"1792":1,"1800":1,"1804":2,"1810":1}}],["rolling",{"2":{"1438":1,"1792":1,"1804":1,"2794":1,"2804":2}}],["rollup",{"2":{"1418":4,"1420":1}}],["rolls",{"2":{"903":1,"1073":1,"1074":1,"1442":1,"2527":1,"2531":1,"2533":1,"2739":1,"2862":1,"2869":1}}],["roll",{"2":{"835":1,"860":1,"1078":1,"1094":1,"2869":1}}],["rolled",{"2":{"777":2,"869":2,"875":1,"881":1,"901":1,"992":1,"1046":1,"2481":1}}],["rollbackasync",{"2":{"2267":1}}],["rollbacks",{"2":{"1792":1,"2110":1,"2530":1}}],["rollback",{"0":{"777":1,"989":1,"2867":1},"2":{"174":1,"624":1,"695":1,"715":1,"777":1,"779":1,"876":1,"879":1,"880":1,"986":1,"989":4,"990":2,"991":1,"992":2,"993":1,"994":3,"1005":2,"1074":2,"1076":1,"1079":3,"1393":1,"1419":1,"1442":2,"2110":1,"2342":1,"2526":1,"2527":2,"2530":1,"2531":1,"2533":1,"2537":1,"2545":1,"2739":1,"2741":1,"2858":1,"2860":1,"2862":2,"2866":1,"2867":3,"2868":3,"2869":3,"2873":1,"2881":2}}],["role2",{"2":{"305":1}}],["role1",{"2":{"305":1}}],["role",{"0":{"18":1,"107":1,"314":1,"926":1,"1048":1,"1057":1,"2059":1,"2200":1},"1":{"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":1,"1055":1,"1056":1,"1057":1,"1058":2,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1},"2":{"14":1,"18":1,"22":1,"25":1,"34":2,"37":2,"305":2,"314":1,"320":1,"327":1,"638":1,"642":1,"643":1,"664":1,"665":1,"690":1,"700":2,"834":1,"835":1,"907":1,"922":2,"926":4,"932":4,"937":2,"943":1,"946":1,"1037":1,"1045":1,"1048":2,"1057":6,"1061":1,"1064":3,"1065":1,"1078":1,"1094":1,"1098":1,"1102":1,"1105":1,"1107":1,"1108":1,"1113":1,"1174":1,"1185":2,"1197":1,"1326":1,"1382":1,"1414":1,"1441":1,"1504":2,"1792":3,"1824":1,"1825":3,"1834":1,"2042":1,"2164":1,"2181":2,"2188":1,"2252":6,"2314":2,"2423":4,"2438":1,"2481":2,"2490":5,"2498":3,"2529":1,"2540":2,"2635":1,"2755":2,"2834":2,"2876":4}}],["roles=viewer",{"2":{"691":1}}],["roles=auditor",{"2":{"689":1}}],["roles=admin",{"2":{"689":1,"691":1,"2529":1,"2865":1}}],["roles",{"0":{"21":1,"22":1,"642":1,"1313":1},"2":{"13":1,"21":1,"302":1,"304":1,"305":5,"309":2,"312":3,"314":2,"453":1,"638":1,"641":1,"663":3,"664":4,"665":4,"666":2,"669":1,"690":2,"724":1,"733":4,"738":3,"797":5,"798":3,"801":1,"802":3,"967":1,"1048":2,"1050":1,"1051":2,"1055":2,"1058":4,"1060":2,"1061":2,"1062":5,"1078":1,"1098":1,"1179":1,"1197":2,"1313":1,"1414":2,"1469":5,"1474":2,"1476":2,"1477":1,"1478":2,"1483":5,"1504":4,"1539":4,"1541":2,"1542":2,"1543":1,"1545":2,"1546":2,"1547":5,"1548":4,"1618":1,"1792":9,"1926":1,"2047":1,"2059":1,"2164":1,"2165":2,"2171":1,"2178":1,"2179":1,"2180":2,"2181":7,"2183":1,"2184":4,"2187":13,"2188":1,"2199":2,"2200":1,"2226":1,"2256":2,"2258":1,"2314":2,"2392":1,"2395":4,"2459":1,"2498":1,"2529":1,"2540":1,"2549":1,"2635":1,"2728":1,"2797":1,"2831":2,"2834":8}}],["rowbuilder",{"2":{"2614":1}}],["rowdescription",{"2":{"2324":1}}],["row2",{"2":{"1088":1}}],["row1",{"2":{"1088":1}}],["rowversion",{"2":{"854":1}}],["rowindex",{"2":{"762":1,"772":4,"893":2}}],["rowcommanduserclaimskey",{"2":{"762":2,"765":1,"772":2,"905":1,"1792":1,"2123":1,"2125":1,"2129":1,"2131":1,"2572":2}}],["rows`",{"2":{"894":1}}],["rows",{"0":{"78":1,"896":1,"1131":1,"1133":1},"1":{"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"1132":1,"1133":1},"2":{"35":2,"78":1,"79":2,"80":1,"81":3,"83":1,"84":1,"85":1,"87":2,"119":2,"142":1,"159":2,"231":1,"299":1,"494":1,"529":1,"567":2,"586":1,"614":1,"615":1,"616":1,"622":1,"624":1,"746":2,"761":2,"770":1,"771":3,"772":2,"773":4,"829":1,"833":1,"848":2,"860":1,"861":1,"864":1,"865":1,"871":1,"881":1,"885":1,"887":2,"893":1,"902":1,"903":1,"909":1,"948":1,"953":2,"971":1,"991":3,"1037":1,"1041":1,"1067":1,"1077":1,"1079":2,"1098":1,"1133":2,"1149":1,"1511":1,"1517":1,"1651":1,"1655":1,"1688":1,"1792":2,"1824":1,"2103":1,"2128":1,"2130":1,"2265":3,"2270":1,"2284":1,"2320":2,"2329":1,"2337":1,"2339":2,"2342":1,"2357":2,"2398":3,"2463":1,"2465":1,"2466":1,"2527":2,"2528":1,"2621":1,"2741":2,"2813":2,"2851":1,"2858":1,"2862":2,"2864":1,"2868":2,"2869":1}}],["row",{"0":{"344":1,"760":1,"761":1,"762":1,"765":1,"770":1,"771":1,"772":1,"775":1,"878":1,"882":1,"883":1,"884":1,"885":1,"893":1,"900":1,"2129":1,"2131":1,"2725":1},"1":{"879":1,"880":1,"881":1,"882":1,"883":2,"884":2,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1},"2":{"16":2,"19":1,"20":1,"34":1,"35":1,"41":1,"81":1,"83":1,"87":1,"116":1,"125":1,"131":1,"136":2,"142":1,"229":1,"231":1,"264":1,"297":6,"298":1,"299":3,"301":2,"308":1,"309":1,"332":1,"333":2,"334":2,"335":2,"339":1,"346":1,"401":1,"415":2,"426":1,"496":2,"531":1,"567":1,"606":2,"609":1,"615":1,"759":1,"760":8,"761":13,"762":3,"763":1,"764":11,"765":6,"766":5,"767":2,"768":3,"769":1,"770":9,"771":11,"772":5,"773":1,"774":11,"775":5,"776":5,"786":3,"787":2,"788":6,"789":2,"791":1,"811":2,"844":2,"848":2,"849":1,"852":1,"854":2,"865":1,"878":2,"880":7,"881":5,"882":4,"883":13,"884":7,"885":5,"886":3,"888":11,"891":2,"892":4,"893":4,"897":6,"898":3,"899":2,"900":4,"901":2,"902":4,"903":2,"904":9,"905":2,"907":2,"910":1,"911":2,"916":5,"918":2,"948":3,"949":3,"951":1,"969":1,"992":1,"996":4,"1037":3,"1075":1,"1079":1,"1098":1,"1099":4,"1105":2,"1114":2,"1122":1,"1133":1,"1142":2,"1189":2,"1192":1,"1370":1,"1375":1,"1382":1,"1410":1,"1412":1,"1688":1,"1792":11,"1973":1,"1974":5,"2010":1,"2110":1,"2123":2,"2125":2,"2128":3,"2129":2,"2130":4,"2131":2,"2132":2,"2134":1,"2164":2,"2165":2,"2171":1,"2176":2,"2177":1,"2180":1,"2184":1,"2206":1,"2303":1,"2320":1,"2339":1,"2348":1,"2372":1,"2397":3,"2398":4,"2463":1,"2496":2,"2498":1,"2528":2,"2530":1,"2572":7,"2586":3,"2587":1,"2607":5,"2614":1,"2649":2,"2664":2,"2725":1,"2813":2,"2829":1,"2852":1,"2864":1,"2868":1}}],["rerun",{"2":{"2106":1,"2156":2,"2537":1,"2542":1,"2546":2}}],["rebinding",{"2":{"1792":1,"1823":1,"2481":1}}],["rebuilt",{"2":{"852":2}}],["rebuilds",{"2":{"1792":1,"2106":1,"2153":1,"2162":1,"2168":1,"2221":1,"2541":1,"2542":1,"2742":1,"2878":2}}],["rebuilding",{"2":{"876":1,"2474":1}}],["rebuild",{"2":{"324":3,"1080":1,"1792":1,"2040":1,"2106":1,"2156":1,"2158":1,"2221":1,"2537":3}}],["rewards",{"2":{"876":1}}],["rewrote",{"2":{"874":1}}],["rewriting",{"0":{"2348":1},"2":{"872":1,"2348":2,"2545":1}}],["rewriter",{"2":{"2540":1,"2546":1}}],["rewrites",{"2":{"871":1,"872":2,"1409":1,"1418":2,"1422":1,"2527":1,"2862":1}}],["rewrite",{"2":{"860":1,"872":1,"874":2,"1438":1}}],["rewritten",{"2":{"383":1,"861":1,"872":2,"2540":1,"2845":1}}],["reinventing",{"2":{"869":1}}],["reimplementation",{"2":{"861":1}}],["reimplemented",{"2":{"852":1}}],["redundancy",{"2":{"1354":1}}],["reducing",{"2":{"1516":1,"1935":1,"2017":1,"2265":1,"2359":1,"2580":1,"2604":1,"2614":1}}],["reduces",{"2":{"1511":1,"1559":1,"1792":2,"1974":1,"2265":1,"2366":1,"2506":1,"2607":1}}],["reduce",{"2":{"974":1,"1011":1,"1036":1,"1135":1,"1431":1,"1645":1,"2060":1,"2364":1,"2466":1,"2559":1,"2629":1}}],["reduced",{"2":{"843":1,"1349":1,"1439":1,"2270":1,"2397":1,"2398":1,"2614":1,"2615":1}}],["reduction",{"2":{"871":1,"911":1,"2398":1}}],["red",{"2":{"1076":1,"1080":1,"2415":1,"2535":3}}],["redeployment",{"0":{"888":1},"2":{"879":1,"880":1,"888":1,"911":1}}],["redeploy",{"2":{"878":1,"879":1,"910":2,"974":1}}],["redesign",{"2":{"865":1}}],["redraws",{"2":{"864":1}}],["redoing",{"2":{"861":1}}],["redoc",{"2":{"352":1,"2432":1}}],["reddit",{"2":{"845":2,"854":1,"863":1,"864":1}}],["redirected",{"2":{"1982":1,"2535":1,"2662":1,"2667":1,"2673":1,"2679":2,"2694":1}}],["redirection",{"0":{"1982":1}}],["redirecting",{"0":{"75":1},"2":{"1792":1}}],["redirectcount",{"2":{"1792":2}}],["redirects",{"2":{"1704":1}}],["redirect",{"2":{"1684":2,"1685":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1704":1,"1792":10,"1980":1,"2034":1,"2518":1,"2521":1,"2523":3}}],["redirecturl",{"2":{"1684":1,"1792":1}}],["rediscache",{"2":{"2462":1}}],["rediscover",{"2":{"861":1}}],["redisconfiguration",{"2":{"121":1,"1067":2,"1146":1,"1147":1,"1150":1,"1177":1,"1510":1,"1511":1,"1514":1,"1515":1,"1522":1,"1534":1,"1792":1,"2274":1}}],["redis",{"0":{"1146":1,"1514":1},"2":{"101":1,"105":2,"121":4,"122":1,"835":1,"868":1,"869":2,"1067":12,"1101":3,"1121":1,"1146":1,"1147":2,"1150":8,"1177":2,"1181":2,"1303":1,"1320":8,"1322":4,"1511":6,"1514":3,"1515":4,"1516":5,"1519":1,"1520":2,"1521":1,"1522":4,"1529":2,"1534":4,"1792":16,"2265":5,"2274":7,"2380":4,"2381":1,"2386":1,"2445":2,"2462":1,"2465":1,"2466":1,"2494":1,"2495":2,"2745":1}}],["reliability",{"2":{"2265":1,"2776":1}}],["reliable",{"0":{"2393":1},"2":{"1385":1,"2226":1}}],["reliably",{"0":{"2518":1},"2":{"349":1,"2540":1}}],["relied",{"2":{"1125":1,"1644":1,"2451":1,"2454":1,"2539":1}}],["relies",{"2":{"1114":1,"1718":1,"2297":1,"2465":1,"2498":1}}],["relabels",{"2":{"2451":1}}],["relaxing",{"2":{"2869":1}}],["relaxation",{"2":{"2543":1}}],["relaxed",{"2":{"2040":1,"2481":1,"2857":1,"2869":1}}],["relax",{"2":{"1079":1,"2869":3}}],["relates",{"2":{"841":1}}],["related",{"0":{"11":1,"12":1,"26":1,"27":1,"42":1,"43":1,"53":1,"54":1,"65":1,"66":1,"76":1,"77":1,"89":1,"90":1,"98":1,"99":1,"110":1,"122":1,"123":1,"130":1,"131":1,"141":1,"142":1,"151":1,"152":1,"164":1,"170":1,"176":1,"181":1,"189":1,"190":1,"198":1,"199":1,"217":1,"218":1,"259":1,"260":1,"266":1,"281":1,"293":1,"294":1,"315":1,"316":1,"327":1,"338":1,"345":1,"346":1,"356":1,"367":1,"368":1,"385":1,"396":1,"410":1,"411":1,"431":1,"456":1,"471":1,"472":1,"481":1,"482":1,"495":1,"496":1,"505":1,"506":1,"513":1,"514":1,"525":1,"526":1,"535":1,"547":1,"548":1,"557":1,"558":1,"568":1,"578":1,"579":1,"588":1,"596":1,"597":1,"605":1,"606":1,"617":1,"626":1,"634":1,"635":1,"647":1,"648":1,"670":1,"671":1,"680":1,"681":1,"688":1,"692":1,"697":1,"702":1,"707":1,"712":1,"717":1,"725":1,"726":1,"740":1,"741":1,"790":1,"792":1,"804":1,"805":1,"820":1,"821":1,"830":1,"1182":1,"1434":1,"1465":1,"1484":1,"1495":1,"1506":1,"1535":1,"1549":1,"1583":1,"1600":1,"1610":1,"1634":1,"1647":1,"1665":1,"1679":1,"1699":1,"1718":1,"1748":1,"1760":1,"1783":1,"1793":1,"1811":1,"1834":1,"1860":1,"1864":1,"1894":1,"1913":1,"1932":1,"1945":1,"1962":1,"1976":1,"1996":1,"2013":1,"2030":1,"2043":1,"2070":1,"2081":1,"2090":1,"2114":1,"2120":1,"2133":1,"2150":1,"2159":1,"2189":1,"2249":1,"2771":1,"2805":1,"2817":1,"2838":1,"2859":1},"1":{"1794":1,"1795":1,"1796":1,"1797":1,"1798":1},"2":{"221":1,"841":1,"948":1,"992":1,"1096":1,"1189":1,"1397":1,"1630":1,"1836":1,"1979":1,"2164":1,"2166":1,"2493":1,"2700":1,"2802":1}}],["relation",{"2":{"852":1}}],["relations",{"2":{"851":1}}],["relationships",{"2":{"918":2,"1974":1,"2607":1}}],["relationship",{"2":{"845":1,"913":1}}],["relational",{"0":{"841":1},"2":{"840":3,"841":13,"844":2,"845":1,"848":4,"851":9,"852":2,"856":1,"859":1,"871":1,"1078":1,"1394":1,"1403":4,"1429":1}}],["relative",{"0":{"421":1,"445":1,"1744":1,"1929":1,"2346":1},"1":{"1745":1,"1746":1,"1747":1,"1930":1},"2":{"243":1,"261":1,"421":1,"422":2,"423":1,"436":1,"445":1,"446":5,"1398":3,"1744":1,"1792":5,"1917":1,"1929":3,"2036":1,"2096":1,"2329":1,"2344":1,"2346":3,"2347":1,"2372":1,"2398":2,"2531":2,"2537":1,"2648":1,"2767":1,"2811":2,"2869":2,"2877":1}}],["reloads",{"2":{"1094":1}}],["reload",{"2":{"967":1,"1094":1,"1792":2,"2049":2,"2635":2}}],["rely",{"2":{"941":1,"1054":1,"1098":1,"1193":1,"1664":1,"2393":1,"2438":1}}],["relyingpartyorigins",{"2":{"1225":1,"1792":1,"1875":1,"1893":1,"2492":1}}],["relyingpartyname",{"2":{"1225":1,"1792":1,"1875":1,"1893":1}}],["relyingpartyid",{"2":{"1225":1,"1792":1,"1875":1,"1893":1}}],["relying",{"0":{"1225":1,"1875":1},"2":{"868":1,"1176":1,"1225":1,"1243":1,"1792":2,"1875":1,"2551":1}}],["relevant",{"2":{"1419":1,"2428":1}}],["released",{"0":{"2403":1,"2404":1},"2":{"2226":1,"2403":1}}],["releases",{"2":{"1117":1,"1118":1,"1792":1,"2781":1,"2782":1,"2783":1,"2784":1,"2792":2}}],["release",{"2":{"865":2,"872":1,"1071":1,"1380":1,"1384":1,"2013":1,"2342":1,"2385":1,"2388":1,"2407":1,"2419":1,"2424":1,"2435":1,"2437":1,"2438":1,"2440":2,"2450":1,"2455":1,"2459":1,"2468":1,"2474":1,"2479":2,"2500":2,"2508":1,"2515":1,"2525":1,"2576":3,"2779":2,"2792":3,"2859":1}}],["relentlessly",{"2":{"840":1}}],["reluctantly",{"2":{"859":1}}],["regression",{"2":{"2447":1,"2498":1,"2506":1,"2537":1}}],["regtype",{"2":{"2370":1,"2608":1}}],["region",{"2":{"1107":1,"1191":1,"2531":1,"2533":1}}],["registry",{"2":{"703":1,"704":1,"707":1,"713":1,"714":1,"2106":1,"2221":1,"2532":1,"2537":1,"2871":1}}],["registrationpath",{"2":{"1226":1,"1792":1,"1876":1}}],["registrationoptionspath",{"2":{"1226":1,"1792":1,"1876":1}}],["registrations",{"2":{"864":1,"873":1,"1249":1}}],["registration",{"0":{"360":1,"361":1,"364":1,"365":1,"1052":1,"1220":1,"1870":1},"1":{"365":1,"366":1},"2":{"308":1,"316":1,"357":1,"364":1,"366":1,"835":1,"867":1,"868":1,"869":1,"1037":1,"1052":2,"1210":1,"1213":2,"1214":3,"1215":1,"1217":2,"1218":2,"1220":8,"1221":1,"1224":1,"1225":1,"1226":2,"1232":2,"1233":1,"1235":2,"1238":1,"1253":1,"1792":14,"1870":3,"1874":1,"1875":1,"1876":2,"1883":1,"1885":1,"1893":2,"2410":1,"2422":3,"2424":1,"2435":1}}],["registerauthschemes",{"2":{"2412":1}}],["registerpath",{"2":{"1792":2}}],["registers",{"2":{"650":1,"664":1,"669":1,"1309":1,"1408":1,"1458":1,"1792":1,"2375":1,"2828":1,"2829":1,"2830":1}}],["register",{"2":{"360":3,"365":3,"813":2,"1068":1,"1098":1,"1150":1,"1218":1,"1220":4,"1226":2,"1233":1,"1238":1,"1244":1,"1521":1,"1792":4,"1870":2,"1876":2,"2147":3,"2389":2,"2407":1,"2420":1,"2422":1,"2575":2,"2834":1}}],["registering",{"2":{"308":1,"309":1,"2177":2,"2378":1}}],["registeredapps",{"2":{"1792":1}}],["registered",{"2":{"102":1,"109":1,"174":1,"1218":1,"1422":1,"1458":1,"1527":2,"1792":2,"1816":1,"1822":1,"1824":1,"2352":1,"2380":1,"2393":1,"2419":1,"2421":1,"2422":1,"2423":1,"2430":1,"2441":1,"2481":2}}],["regenerating",{"2":{"1094":1,"1409":1,"2221":1,"2742":1,"2878":1}}],["regeneration",{"2":{"871":1}}],["regenerates",{"2":{"872":1,"975":1,"978":1,"984":1,"985":1,"997":2,"1080":1,"1407":1,"1419":1,"2543":1,"2857":1}}],["regenerate",{"2":{"871":1,"1005":1,"1407":2,"2157":1}}],["regenerated",{"2":{"868":1,"869":1,"872":1,"873":1,"1379":1,"1414":1}}],["regexp",{"2":{"1427":2,"1428":1}}],["regex",{"0":{"1427":1,"1428":1,"2144":1},"2":{"812":1,"816":1,"817":1,"1424":1,"1428":2,"1788":1,"1792":3,"1795":1,"1909":1,"2140":1,"2141":2,"2142":1,"2144":3,"2146":3,"2148":1,"2446":1,"2575":5,"2762":1}}],["regularly",{"2":{"851":1,"1401":1}}],["regular",{"2":{"448":2,"663":1,"669":1,"1060":1,"1105":1,"1316":1,"1333":1,"1386":1,"1407":1,"1792":1,"2140":1,"2141":1,"2282":1,"2575":2}}],["regardless",{"2":{"317":1,"319":1,"335":1,"347":1,"422":1,"446":1,"639":1,"645":1,"650":1,"720":1,"872":1,"951":1,"953":1,"1129":1,"1161":1,"1176":1,"1326":1,"1567":1,"1741":1,"1792":3,"1856":1,"2005":1,"2006":1,"2011":1,"2102":1,"2106":1,"2107":1,"2271":1,"2284":1,"2289":1,"2323":1,"2354":1,"2380":1,"2413":1,"2414":1,"2421":1,"2424":1,"2432":1,"2445":1,"2446":1,"2451":1,"2468":1,"2481":2,"2494":1,"2495":1,"2509":1,"2537":2,"2692":1,"2795":1,"2800":1,"2833":1,"2858":1}}],["reusing",{"0":{"2531":1,"2869":1},"2":{"701":1,"2504":1}}],["reuse",{"0":{"1190":1},"1":{"1191":1,"1192":1,"1193":1},"2":{"884":1,"915":1,"1190":1,"1192":1,"1209":1,"1386":1,"1398":2,"1792":1,"1994":1,"2438":1,"2533":1,"2614":1,"2622":1}}],["reused",{"2":{"386":1,"914":1,"951":1,"1070":1,"1181":1,"1187":1,"1193":1,"1792":1,"1851":1,"1867":1,"2382":1,"2500":1,"2622":2}}],["reuses",{"2":{"214":1,"1430":1,"1459":1,"1743":1,"1792":1,"1825":2,"2375":1,"2481":2}}],["reusable",{"0":{"1187":1},"2":{"308":1,"916":1,"1792":1,"2094":1,"2111":1,"2359":1,"2407":1,"2531":1,"2537":1,"2869":1,"2871":1}}],["revalidate",{"2":{"1138":1,"1792":1,"2033":1,"2037":1,"2041":1,"2551":1}}],["revalidation",{"2":{"1101":1}}],["revolve",{"2":{"912":1}}],["revoke",{"2":{"292":1,"2156":1,"2438":1,"2542":1}}],["reveal",{"2":{"1792":2,"2059":1,"2634":1,"2635":1}}],["reveals",{"2":{"1258":1,"1269":1,"1398":1,"1832":1}}],["reverts",{"2":{"1957":1,"2379":1}}],["revert",{"2":{"1129":2}}],["reversible",{"2":{"876":1}}],["reversed",{"2":{"2533":1}}],["reverses",{"2":{"414":1,"2300":1,"2813":1}}],["reverse",{"0":{"1328":1,"1344":1,"2549":1},"1":{"1329":1,"1330":1,"1331":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1341":1,"1342":1,"1343":1,"1344":1,"1345":2,"1346":2,"1347":2,"1348":2,"1349":1,"1350":1,"1351":1},"2":{"223":1,"266":1,"431":1,"433":2,"435":1,"835":1,"876":1,"1037":1,"1100":2,"1101":1,"1106":1,"1328":1,"1330":1,"1333":1,"1351":1,"1396":1,"1701":1,"1704":1,"1789":1,"1792":2,"1824":1,"1915":1,"2164":3,"2165":1,"2238":1,"2549":1,"2633":2,"2806":1,"2807":1,"2816":2,"2817":1}}],["revenue",{"2":{"325":2,"351":2,"566":2}}],["revives",{"2":{"2543":1}}],["revised",{"2":{"869":1}}],["revisit",{"2":{"324":1}}],["reviewed",{"2":{"1402":2,"1404":1}}],["reviewername",{"2":{"919":5,"2611":1}}],["reviewer",{"2":{"913":2}}],["reviewtext",{"2":{"919":5,"2611":1}}],["reviewid",{"2":{"919":5,"2611":1}}],["reviews",{"2":{"255":2,"256":2,"861":1,"913":5,"916":2,"919":6,"920":1,"2277":4,"2611":3}}],["review",{"2":{"255":5,"913":3,"916":1,"945":1,"1081":1,"1382":2,"2277":5}}],["refined",{"2":{"2531":1}}],["refactored",{"2":{"2576":1}}],["refactor",{"0":{"2249":1},"2":{"874":1,"994":1,"2240":1,"2258":1}}],["refactoring",{"0":{"2369":1},"2":{"872":1,"876":2,"1409":1,"1581":1,"2228":1,"2258":4}}],["refactors",{"2":{"872":2}}],["reflecting",{"2":{"995":1}}],["reflection",{"2":{"954":1,"1046":1,"2481":1,"2600":2,"2744":1}}],["reflect",{"0":{"2249":1},"2":{"841":1,"2259":1}}],["reflects",{"2":{"531":1,"772":1,"843":1}}],["refused",{"2":{"1830":1}}],["refuses",{"2":{"845":1,"1045":1,"1406":1}}],["refuse",{"2":{"841":1}}],["referrerpolicy",{"2":{"1792":1,"2015":1,"2016":1,"2019":1,"2027":1,"2028":1,"2029":1,"2632":1}}],["referrer",{"0":{"2019":1},"2":{"1100":1,"1792":6,"2016":1,"2019":4,"2028":1,"2632":6}}],["refer",{"2":{"814":1}}],["referencing",{"0":{"421":1,"445":1,"1398":1,"1744":1,"1929":1,"2345":1,"2346":1},"1":{"1399":1,"1745":1,"1746":1,"1747":1,"1930":1,"2346":1,"2347":1,"2348":1},"2":{"165":1,"167":1,"261":1,"266":2,"421":1,"445":1,"446":1,"528":1,"1079":1,"1150":1,"1399":1,"1746":1,"1747":1,"1929":2,"2111":1,"2322":1,"2329":1,"2344":1,"2347":1,"2372":2,"2378":1,"2484":1,"2504":1,"2532":1,"2607":1,"2741":1,"2868":1}}],["references",{"0":{"232":1},"2":{"109":2,"150":1,"156":1,"197":1,"575":1,"583":1,"587":1,"775":1,"841":1,"856":1,"876":1,"900":1,"913":2,"975":1,"977":1,"992":1,"997":1,"1079":1,"1176":1,"1213":1,"1307":1,"1409":1,"1527":2,"2007":1,"2328":1,"2389":1,"2394":1,"2545":1,"2840":1,"2854":1,"2868":2}}],["referenced",{"2":{"109":1,"390":1,"529":1,"704":1,"876":1,"1111":1,"1150":1,"1504":1,"1527":1,"1678":1,"1689":1,"1792":6,"2111":1,"2139":1,"2185":1,"2380":2,"2532":2,"2537":1,"2681":1,"2687":1,"2871":1}}],["reference",{"0":{"220":1,"221":1,"267":1,"1223":1,"1231":1,"1447":1,"1451":1,"1454":1,"1489":1,"1511":1,"1588":1,"1604":1,"1618":1,"1623":1,"1631":1,"1639":1,"1651":1,"1670":1,"1684":1,"1696":1,"1703":1,"1722":1,"1753":1,"1764":1,"1785":1,"1786":1,"1792":1,"1873":1,"1881":1,"1898":1,"1917":1,"1937":1,"1949":1,"1980":1,"1991":1,"2016":1,"2034":1,"2038":1,"2047":1,"2086":1,"2117":1,"2139":1,"2211":1,"2330":1,"2537":1,"2698":1,"2882":1},"1":{"221":1,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"237":1,"238":1,"239":1,"240":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"278":1,"279":1,"280":1,"281":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":2,"1233":2,"1234":2,"1235":2,"1236":2,"1237":2,"1238":2,"1239":2,"1240":1,"1241":1,"1685":1,"1697":1,"1786":1,"1787":2,"1788":2,"1789":2,"1790":2,"1791":2,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":1,"1879":1,"1880":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"2699":1,"2700":1},"2":{"98":1,"110":2,"121":1,"122":1,"141":1,"215":1,"217":1,"220":1,"296":1,"349":1,"384":1,"430":1,"431":1,"455":1,"456":1,"529":2,"577":1,"851":1,"1037":1,"1047":1,"1066":1,"1111":2,"1135":1,"1150":1,"1182":1,"1214":1,"1217":1,"1223":1,"1252":1,"1305":1,"1368":1,"1380":1,"1415":1,"1416":1,"1533":1,"1535":1,"1664":1,"1671":1,"1678":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1738":1,"1743":1,"1748":1,"1750":1,"1785":2,"1792":10,"1922":1,"2020":1,"2030":1,"2111":1,"2169":2,"2170":1,"2210":1,"2217":1,"2219":2,"2255":1,"2284":2,"2321":1,"2322":1,"2381":1,"2577":1,"2632":3,"2633":1,"2634":1,"2705":1,"2706":4,"2759":1,"2768":1,"2793":4,"2794":1,"2803":1,"2806":1,"2826":4,"2827":1,"2841":1,"2858":1,"2860":1,"2870":1}}],["refreshexpiresin",{"2":{"1455":1,"2554":1}}],["refreshing",{"2":{"1451":1,"1454":1}}],["refreshtoken",{"2":{"1222":1,"1452":1,"1455":1,"1456":1,"1792":2,"2554":2}}],["refresh",{"0":{"1452":1,"1456":1},"2":{"215":1,"292":2,"351":7,"531":2,"1053":2,"1062":2,"1064":2,"1067":1,"1147":1,"1183":1,"1203":1,"1208":1,"1450":1,"1451":1,"1452":4,"1453":1,"1454":2,"1456":5,"1458":3,"1460":3,"1511":1,"1738":1,"1792":11,"2174":1,"2375":7,"2377":1,"2423":1,"2432":1,"2438":2,"2554":8,"2615":2}}],["req",{"2":{"207":4,"215":1,"510":4,"527":1,"532":1,"1026":3,"1033":1,"1084":2,"1090":4,"1104":1,"1105":1,"1107":2,"1262":2,"1263":1,"1264":6,"1265":5,"1266":1,"1268":5,"1269":19,"1270":12,"1272":6,"1275":1,"1280":2,"1281":2,"1283":1,"1335":9,"1431":1,"1727":5,"1733":2,"1738":1,"1742":4,"1792":2,"2171":2,"2264":6,"2283":3,"2290":4,"2398":11,"2768":1,"2807":1}}],["requiring",{"2":{"336":1,"1098":1,"1100":1,"1146":1,"1792":2,"2034":1,"2035":1,"2207":1,"2254":1,"2282":1,"2625":1}}],["requiremnt",{"2":{"2824":1}}],["requirement",{"0":{"244":1,"1178":1,"1500":1},"2":{"133":1,"1077":1,"1499":1,"1792":2,"1832":1,"1910":1,"2212":1}}],["requirements",{"0":{"64":1,"2486":1},"2":{"871":1,"872":2,"1067":1,"1113":1,"1272":1,"1382":1,"1686":1,"1792":3,"1825":1}}],["requireauthenticatedsignin",{"2":{"1792":1}}],["requireauthorization",{"0":{"1827":1},"2":{"967":2,"1792":4,"1814":1,"1825":1,"1833":1,"2046":1,"2047":2,"2052":1,"2058":1,"2059":2,"2067":1,"2068":1,"2069":1,"2481":3,"2634":1,"2635":2,"2638":1}}],["required>",{"2":{"1792":2}}],["required",{"0":{"1200":1,"1318":1,"1605":1,"2497":1,"2688":1,"2711":1},"2":{"64":1,"182":1,"244":1,"297":1,"298":1,"381":1,"436":1,"448":1,"664":1,"768":1,"776":1,"803":1,"812":2,"813":2,"814":1,"816":2,"817":1,"863":1,"864":1,"869":1,"872":1,"880":1,"891":1,"892":1,"897":2,"911":1,"961":1,"1000":1,"1015":1,"1026":3,"1064":1,"1066":1,"1086":1,"1102":1,"1108":1,"1199":2,"1217":2,"1226":4,"1227":2,"1228":2,"1229":1,"1243":1,"1322":1,"1353":1,"1419":1,"1447":1,"1459":1,"1469":1,"1482":1,"1498":1,"1499":2,"1500":1,"1502":1,"1503":1,"1505":1,"1521":1,"1523":2,"1528":1,"1604":1,"1605":1,"1651":1,"1664":1,"1674":1,"1696":1,"1788":1,"1792":26,"1795":1,"1823":1,"1825":1,"1851":1,"1877":2,"1878":2,"1879":1,"1893":2,"1957":1,"2049":1,"2140":1,"2141":3,"2142":3,"2146":3,"2147":4,"2148":3,"2149":1,"2162":1,"2223":2,"2245":1,"2289":1,"2291":1,"2333":1,"2366":1,"2375":1,"2379":2,"2382":1,"2385":1,"2423":2,"2429":2,"2436":1,"2446":1,"2486":2,"2495":1,"2497":1,"2498":1,"2546":1,"2555":2,"2575":12,"2632":1,"2633":1,"2688":1,"2719":1,"2723":1,"2732":1,"2848":1,"2874":1}}],["requires",{"0":{"60":1},"2":{"13":1,"17":1,"63":1,"121":1,"150":1,"320":1,"390":1,"641":2,"673":1,"710":1,"718":1,"841":1,"871":2,"876":1,"879":1,"907":1,"909":1,"935":1,"945":1,"948":1,"1008":1,"1011":1,"1019":1,"1049":3,"1064":1,"1068":1,"1088":1,"1098":1,"1099":1,"1100":1,"1101":1,"1102":2,"1108":4,"1118":1,"1119":1,"1127":1,"1178":1,"1205":1,"1214":1,"1221":3,"1226":2,"1280":1,"1303":1,"1325":1,"1363":1,"1368":1,"1378":1,"1582":1,"1644":1,"1792":7,"1827":1,"1871":1,"1876":2,"2040":1,"2175":1,"2187":1,"2194":1,"2330":1,"2540":2,"2586":1,"2588":1,"2635":1,"2687":1,"2728":1,"2775":1,"2823":1}}],["requiresauthorization=false",{"2":{"2691":1,"2697":1,"2699":1,"2824":2}}],["requiresauthorization=true",{"2":{"2689":1}}],["requiresauthorizationonly",{"2":{"349":1,"356":1,"1792":1,"1897":1,"1898":1,"1909":1,"1910":1,"1911":1,"2225":1,"2419":1,"2431":1,"2433":1,"2434":1,"2435":1,"2436":1}}],["requiresauthorization",{"2":{"4":1,"10":1,"11":1,"298":1,"937":1,"998":1,"1045":1,"1062":1,"1792":1,"1836":1,"1843":1,"1863":2,"2175":1,"2187":1,"2201":1,"2431":1,"2433":1,"2686":1,"2687":1,"2697":2,"2701":1,"2728":1}}],["require",{"0":{"16":1,"18":1,"2058":1,"2199":1},"2":{"12":1,"13":1,"216":1,"224":1,"260":1,"294":1,"456":1,"482":1,"597":1,"741":1,"805":1,"821":1,"908":1,"957":1,"1008":1,"1026":4,"1095":1,"1097":2,"1100":1,"1113":1,"1114":1,"1189":1,"1200":1,"1221":1,"1279":1,"1320":2,"1378":3,"1460":1,"1465":1,"1467":1,"1486":1,"1616":1,"1696":1,"1699":1,"1792":9,"1843":1,"1867":1,"1871":1,"1898":1,"2024":4,"2029":1,"2047":1,"2049":1,"2160":1,"2175":1,"2199":2,"2270":1,"2375":1,"2401":1,"2438":2,"2632":1,"2634":2,"2635":1,"2761":1,"2820":1,"2858":1}}],["requestbody",{"2":{"1912":1,"2520":1}}],["requesting",{"2":{"1840":1,"2466":1}}],["requestinit",{"2":{"1063":2,"1415":1,"1561":2,"1792":2}}],["request=>request`",{"2":{"1792":1}}],["requestverificationtoken",{"2":{"1488":2,"1489":2,"1491":1,"1492":1,"1792":4}}],["requestparam",{"2":{"1366":1}}],["requestparamtype",{"2":{"436":1,"1924":1,"2222":1,"2509":1,"2511":2,"2513":1}}],["requestheader",{"2":{"1070":1,"1102":1,"1792":1,"1852":1,"2383":1}}],["requestheaderstimeout",{"2":{"1792":1,"1990":1,"1991":1,"1995":1}}],["requestheadersparametername",{"2":{"504":1,"1792":1,"1836":1,"1848":1,"1849":1,"1863":1,"2701":1}}],["requestheaderscontextkey",{"2":{"504":1,"1792":1,"1836":1,"1848":1,"2701":1}}],["requestheadersmode",{"2":{"504":1,"1792":2,"1836":1,"1848":1,"1863":1,"2551":1,"2701":1}}],["requested",{"2":{"312":1,"320":1,"1021":1,"1026":1,"1643":1,"2481":1}}],["request",{"0":{"206":1,"208":1,"226":1,"497":1,"507":1,"515":1,"639":1,"736":1,"1370":1,"1848":1,"1849":1,"2056":1,"2203":1,"2384":1,"2395":1,"2484":1,"2491":2,"2504":1,"2520":1,"2811":1},"1":{"498":1,"499":1,"500":1,"501":1,"502":1,"503":1,"504":1,"505":1,"506":1,"508":1,"509":1,"510":1,"511":1,"512":1,"513":1,"514":1,"516":1,"517":1,"518":1,"519":1,"520":1,"521":1,"522":1,"523":1,"524":1,"525":1,"526":1,"1849":1,"2204":1},"2":{"31":1,"41":1,"68":1,"73":1,"74":1,"75":1,"77":2,"88":1,"106":2,"108":1,"165":2,"201":1,"202":2,"203":2,"206":1,"210":1,"211":2,"212":2,"214":9,"215":1,"216":1,"223":1,"226":3,"253":1,"260":1,"266":1,"302":1,"306":3,"377":1,"385":1,"386":3,"387":1,"388":2,"390":3,"394":1,"395":2,"414":8,"419":1,"423":2,"435":1,"436":4,"439":1,"446":5,"447":2,"448":3,"452":2,"453":6,"454":1,"466":1,"467":1,"468":1,"472":1,"497":2,"498":2,"499":1,"501":1,"502":2,"503":2,"505":1,"506":1,"507":2,"508":1,"510":7,"511":1,"512":1,"514":1,"515":3,"516":1,"517":1,"520":2,"521":1,"522":1,"524":1,"527":1,"529":1,"531":1,"534":2,"639":1,"689":1,"690":1,"710":1,"719":1,"720":2,"723":3,"733":6,"734":2,"735":1,"736":4,"738":4,"741":2,"752":1,"766":1,"778":1,"829":1,"835":1,"864":1,"869":1,"871":1,"872":2,"873":1,"874":2,"876":1,"894":2,"938":3,"948":1,"961":3,"967":1,"1010":2,"1016":2,"1017":1,"1019":2,"1024":1,"1030":1,"1036":1,"1041":1,"1057":1,"1058":9,"1062":4,"1063":4,"1064":1,"1067":1,"1069":3,"1070":6,"1071":1,"1074":1,"1077":1,"1078":1,"1101":2,"1102":12,"1104":2,"1105":4,"1106":2,"1107":1,"1109":1,"1110":1,"1122":1,"1137":1,"1147":2,"1150":3,"1160":1,"1161":1,"1162":2,"1167":1,"1169":1,"1225":1,"1228":2,"1229":1,"1230":1,"1232":1,"1233":1,"1234":2,"1236":1,"1255":1,"1258":1,"1317":1,"1326":2,"1329":1,"1331":1,"1332":1,"1333":1,"1340":1,"1341":1,"1342":2,"1349":1,"1363":2,"1366":3,"1370":1,"1396":1,"1398":1,"1401":1,"1407":3,"1410":2,"1413":3,"1415":1,"1416":2,"1423":1,"1426":1,"1427":1,"1430":1,"1431":2,"1434":1,"1469":4,"1475":1,"1476":3,"1483":4,"1487":1,"1521":1,"1523":2,"1539":4,"1540":2,"1541":3,"1542":6,"1543":5,"1548":4,"1559":1,"1561":1,"1564":1,"1567":2,"1568":2,"1569":4,"1571":1,"1572":3,"1575":2,"1582":1,"1618":1,"1620":5,"1639":1,"1643":1,"1645":1,"1674":2,"1676":1,"1677":1,"1678":1,"1696":1,"1718":1,"1722":2,"1723":1,"1728":1,"1730":1,"1731":2,"1732":1,"1733":2,"1736":1,"1738":5,"1742":2,"1743":3,"1745":1,"1746":1,"1759":3,"1787":1,"1792":72,"1794":1,"1822":1,"1823":1,"1824":1,"1825":1,"1827":2,"1830":2,"1835":1,"1836":1,"1848":4,"1849":1,"1850":1,"1851":2,"1852":3,"1856":1,"1864":2,"1878":2,"1879":1,"1880":1,"1882":1,"1883":1,"1884":1,"1898":1,"1912":1,"1917":3,"1918":1,"1922":2,"1924":3,"1925":5,"1926":3,"1928":2,"1929":1,"1950":1,"1951":2,"1952":2,"1953":2,"1954":2,"1955":2,"1956":1,"1957":1,"1958":3,"1961":1,"1974":1,"1990":1,"1991":6,"2040":2,"2047":1,"2056":1,"2060":1,"2110":1,"2123":1,"2124":1,"2164":1,"2171":2,"2182":1,"2183":1,"2184":11,"2185":2,"2204":2,"2222":4,"2223":2,"2226":1,"2247":1,"2250":1,"2255":4,"2258":1,"2264":7,"2267":1,"2270":1,"2277":2,"2278":1,"2282":1,"2283":1,"2286":1,"2290":2,"2302":4,"2305":1,"2320":1,"2322":1,"2323":1,"2333":1,"2346":1,"2347":1,"2357":1,"2363":1,"2372":2,"2379":4,"2380":1,"2382":3,"2383":3,"2394":1,"2395":4,"2397":1,"2420":1,"2421":2,"2422":1,"2423":1,"2424":1,"2428":1,"2438":2,"2465":1,"2466":1,"2468":1,"2470":1,"2476":1,"2481":1,"2482":1,"2483":2,"2484":1,"2489":1,"2491":2,"2493":2,"2502":7,"2504":2,"2505":2,"2509":2,"2512":1,"2515":1,"2517":2,"2518":3,"2519":2,"2520":5,"2521":1,"2523":1,"2529":11,"2530":1,"2536":1,"2549":8,"2555":2,"2572":1,"2580":1,"2597":1,"2607":1,"2614":2,"2615":5,"2621":1,"2622":3,"2656":1,"2674":1,"2701":3,"2712":1,"2723":1,"2732":1,"2759":1,"2760":2,"2762":6,"2764":1,"2765":2,"2767":2,"2806":2,"2807":2,"2811":1,"2812":2,"2813":1,"2814":3,"2815":1,"2829":2,"2830":2,"2831":1,"2833":2,"2835":1,"2848":1,"2865":8,"2881":1}}],["requestsendpoint",{"2":{"2482":1}}],["requests",{"0":{"1030":1,"1090":1,"2420":1,"2764":1},"1":{"2421":1,"2422":1,"2423":1,"2424":1},"2":{"3":1,"10":1,"16":1,"25":1,"60":1,"64":3,"120":1,"201":1,"214":3,"216":1,"431":1,"433":1,"451":1,"480":4,"855":1,"934":1,"957":1,"1007":1,"1012":1,"1014":1,"1023":1,"1033":1,"1067":1,"1069":1,"1070":2,"1090":1,"1091":1,"1105":1,"1106":2,"1107":2,"1137":1,"1141":1,"1142":1,"1147":1,"1157":1,"1158":3,"1160":1,"1161":3,"1162":2,"1164":1,"1165":5,"1166":1,"1168":2,"1169":2,"1170":1,"1171":1,"1177":1,"1180":1,"1241":1,"1283":1,"1285":1,"1287":2,"1288":2,"1289":2,"1290":2,"1291":2,"1293":2,"1295":2,"1297":2,"1299":2,"1301":2,"1328":2,"1329":1,"1340":1,"1345":1,"1363":1,"1386":1,"1420":1,"1422":1,"1423":1,"1430":2,"1449":1,"1487":1,"1489":1,"1492":1,"1515":1,"1620":1,"1639":4,"1640":1,"1641":1,"1644":2,"1645":1,"1704":1,"1720":1,"1723":1,"1739":1,"1743":4,"1745":1,"1753":1,"1755":1,"1757":1,"1783":1,"1789":1,"1792":39,"1807":1,"1823":2,"1827":1,"1840":2,"1848":1,"1851":1,"1890":1,"1915":1,"1917":1,"1947":1,"1948":1,"1949":1,"1951":3,"1952":3,"1953":2,"1954":4,"1955":1,"1958":2,"1960":1,"1980":1,"1982":1,"1994":1,"2016":1,"2019":2,"2025":2,"2034":1,"2087":1,"2172":1,"2195":1,"2224":1,"2225":1,"2257":3,"2264":2,"2274":1,"2282":1,"2287":1,"2346":1,"2380":1,"2382":1,"2398":1,"2419":1,"2422":1,"2425":1,"2441":1,"2459":1,"2463":1,"2464":1,"2465":2,"2466":1,"2470":1,"2482":2,"2486":1,"2491":1,"2502":2,"2504":1,"2549":1,"2580":1,"2614":1,"2615":4,"2627":1,"2632":2,"2744":1,"2759":1,"2765":1,"2840":1,"2841":1}}],["remarks",{"2":{"1386":1,"2247":1,"2358":1}}],["remarkable",{"2":{"863":1}}],["remains",{"2":{"173":1,"362":1,"848":1,"1091":1,"1171":1,"1266":1,"1280":1,"1350":1,"1569":1,"1830":1,"1851":1,"2382":1,"2389":2,"2423":1,"2429":1,"2481":1,"2532":1,"2731":1}}],["remain",{"2":{"101":1,"848":1,"944":1,"975":1,"1097":1,"1227":1,"1271":1,"1405":1,"1522":1,"1609":1,"1877":1,"2278":1,"2297":1,"2416":1,"2504":1,"2511":1,"2611":1,"2661":1}}],["remaining",{"2":{"75":1,"1097":1,"1925":1,"2459":1,"2521":1,"2533":1}}],["remember",{"2":{"852":1,"854":1,"1401":1,"1402":1,"1403":1,"2103":1,"2427":2}}],["removal",{"2":{"2319":1}}],["removetraceid",{"2":{"1669":1,"1670":1,"1677":1,"1678":2,"1792":1,"2255":1,"2267":1}}],["removetypeurl",{"2":{"1669":1,"1670":1,"1671":1,"1676":1,"1678":2,"1792":2,"2255":2}}],["removed",{"0":{"2250":1,"2376":1,"2389":1,"2660":1},"2":{"996":1,"1071":1,"1096":1,"1382":4,"1385":1,"1464":3,"1513":1,"1518":1,"2223":1,"2224":1,"2242":1,"2250":1,"2255":3,"2258":1,"2265":1,"2267":2,"2376":3,"2389":1,"2406":1,"2436":1,"2446":1,"2448":1,"2487":1,"2660":1,"2673":1}}],["removes",{"2":{"849":1,"865":1,"947":1,"992":1,"1518":2,"1580":1,"1792":1,"2265":2,"2558":1,"2576":1,"2875":1}}],["remove",{"2":{"849":1,"851":1,"1405":1,"1670":2,"1774":1,"1792":2,"2255":2,"2258":1,"2389":1,"2394":1}}],["removing",{"2":{"174":1,"851":1,"1324":1}}],["remoteipaddress",{"2":{"1957":1,"2379":1}}],["remote",{"2":{"848":1,"876":1}}],["rented",{"2":{"2402":1,"2403":1}}],["rents",{"2":{"2402":1}}],["rent",{"0":{"2402":1},"2":{"2397":1,"2614":1}}],["rentals",{"0":{"2403":1},"2":{"2226":1}}],["renowned",{"2":{"851":1}}],["rendermessage",{"2":{"2836":2}}],["renderpost",{"2":{"996":2}}],["renderuserrow",{"2":{"996":2}}],["renders",{"2":{"679":1,"831":1,"965":1,"966":1,"1792":3,"2075":1,"2076":1,"2077":1,"2466":1,"2535":1,"2651":1,"2652":1}}],["renderers",{"0":{"2650":1},"1":{"2651":1,"2652":1,"2653":1},"2":{"2233":1}}],["renderer",{"2":{"675":1,"1105":1,"1107":1,"2400":1}}],["rendered",{"2":{"415":1,"673":2,"919":1,"1432":1,"1792":1,"2016":1,"2018":1,"2072":1,"2303":1,"2632":1,"2650":1,"2813":1}}],["render",{"2":{"415":6,"420":4,"423":2,"426":2,"614":1,"616":1,"675":2,"834":2,"996":2,"1105":1,"1107":1,"1432":1,"2083":1,"2303":4,"2339":1,"2397":1,"2535":1,"2813":5}}],["rendering",{"0":{"426":1},"2":{"161":1,"164":1,"228":1,"414":1,"673":2,"680":1,"682":1,"726":1,"868":1,"949":1,"966":1,"1043":1,"1099":1,"1104":1,"1105":1,"1396":1,"1789":1,"1792":1,"2072":2,"2300":1,"2339":1,"2372":3,"2396":1,"2398":2,"2403":1,"2650":1,"2813":1}}],["renaming",{"2":{"382":1,"384":1,"872":1,"1409":1,"2221":1,"2228":1,"2334":1,"2540":1}}],["renames",{"2":{"382":1,"2320":1,"2332":1,"2334":1}}],["renamed",{"0":{"376":1,"2279":1},"2":{"376":1,"384":1,"565":2,"567":1,"875":1,"996":3,"1409":1,"2279":1,"2369":2,"2406":1,"2411":1,"2436":1,"2558":1}}],["rename",{"0":{"372":1,"373":1,"374":1,"382":1,"2332":1,"2334":1},"2":{"170":1,"237":1,"238":1,"369":1,"372":2,"374":2,"376":1,"378":3,"384":2,"559":1,"568":1,"588":1,"617":1,"626":1,"872":1,"985":1,"1409":2,"1436":1,"2013":2,"2249":1,"2323":5,"2332":5,"2333":5,"2372":2,"2540":1,"2769":1,"2845":1,"2852":1,"2859":1}}],["repetition",{"2":{"2359":1,"2540":1,"2546":1,"2845":1}}],["repeating",{"2":{"1424":1,"1428":1,"2359":1}}],["repeats",{"2":{"847":1,"1165":1}}],["repeatable",{"2":{"690":1,"704":1,"709":1,"714":1,"924":1,"976":2,"1385":2,"1792":1,"2529":1,"2533":1,"2858":1,"2865":1,"2870":1}}],["repeat",{"2":{"319":1,"930":3,"1254":2}}],["repeatedly",{"2":{"2615":1,"2731":1}}],["repeated",{"2":{"310":1,"918":2,"1338":1,"1823":1,"2221":1,"2359":1,"2500":1,"2530":1,"2546":1,"2815":1}}],["reproducible",{"2":{"1037":1,"1381":1,"1382":2}}],["reproduces",{"2":{"1856":1,"2455":1}}],["reproduce",{"2":{"871":1,"1078":1,"2110":1,"2530":1}}],["reprocess",{"2":{"902":1}}],["represents",{"2":{"1792":1}}],["representation",{"2":{"852":1,"1403":1,"2586":1}}],["representations",{"2":{"848":1}}],["represent",{"2":{"458":1,"2689":1}}],["repos",{"2":{"2105":1}}],["repositories",{"2":{"851":1,"873":1,"1401":1}}],["repository",{"0":{"867":1},"2":{"840":1,"849":1,"851":6,"852":1,"860":1,"866":1,"867":1,"868":1,"869":2,"871":2,"872":1,"873":2,"970":1,"1006":2,"1207":1,"1281":1,"1366":2,"1368":1,"1382":1,"1400":1,"1405":2,"1408":1,"1417":1,"1579":1,"2160":1,"2162":1,"2792":2,"2839":1,"2856":1,"2860":1}}],["repo",{"0":{"1579":1},"2":{"1382":2,"1405":1,"1441":1,"2465":1}}],["reporter",{"2":{"2880":2}}],["reported",{"2":{"877":1,"1792":2,"1818":1,"1819":1,"1823":1,"2100":1,"2101":1,"2106":1,"2528":4,"2531":1,"2763":1,"2864":4,"2869":1}}],["reportid=3",{"2":{"415":2,"2303":2,"2813":1}}],["reporting",{"0":{"148":1,"2535":1,"2880":1},"2":{"3":1,"148":1,"844":1,"876":1,"956":1,"986":1,"1184":1,"1205":2,"1206":2,"1208":1,"1410":1,"2221":1,"2412":1,"2742":1}}],["report",{"0":{"1188":1},"2":{"97":1,"105":1,"117":2,"137":2,"148":1,"167":2,"277":1,"325":9,"386":4,"415":11,"423":6,"429":1,"448":1,"492":3,"543":3,"544":3,"677":3,"678":3,"836":1,"887":2,"947":1,"948":2,"949":1,"956":3,"960":3,"964":4,"965":1,"971":3,"986":1,"1042":3,"1044":1,"1080":1,"1142":1,"1161":3,"1176":1,"1179":2,"1183":1,"1184":2,"1185":3,"1187":2,"1188":3,"1189":2,"1191":2,"1192":7,"1193":10,"1196":1,"1200":2,"1202":1,"1203":3,"1207":1,"1254":1,"1373":1,"1413":1,"1632":3,"1792":3,"2076":3,"2078":2,"2079":5,"2094":2,"2102":1,"2104":2,"2107":3,"2158":1,"2207":2,"2303":8,"2304":4,"2310":1,"2322":2,"2452":1,"2528":1,"2535":3,"2537":3,"2546":1,"2651":1,"2652":1,"2653":4,"2800":2,"2805":1,"2813":12,"2833":1,"2864":1,"2876":1,"2880":1}}],["reports",{"2":{"3":1,"353":2,"372":4,"677":2,"836":1,"866":1,"1001":1,"1037":1,"1073":2,"1203":1,"1208":1,"1632":2,"1764":1,"1766":1,"1792":5,"2007":1,"2035":1,"2076":2,"2078":1,"2079":1,"2107":1,"2207":1,"2314":1,"2319":3,"2327":2,"2364":1,"2415":2,"2526":1,"2537":2,"2634":2,"2731":2,"2845":3,"2846":3,"2879":1}}],["replenishment",{"2":{"1953":1}}],["replenishmentperiodseconds",{"2":{"477":1,"1160":1,"1792":1,"1953":2,"1960":1,"2257":1,"2443":1,"2551":1}}],["replenish",{"2":{"1951":1,"1952":1,"1953":1}}],["replay",{"2":{"1078":1,"1213":1}}],["replacing",{"2":{"369":1,"868":1,"2621":1}}],["replacement",{"0":{"2039":1},"2":{"1385":2,"2376":1,"2627":1,"2645":1}}],["replaces",{"2":{"388":1,"867":1,"1094":1,"1388":1,"2038":1}}],["replace",{"2":{"347":1,"348":2,"355":2,"878":1,"880":1,"883":1,"884":1,"886":1,"888":2,"904":2,"910":1,"928":1,"929":1,"934":1,"935":1,"936":1,"956":1,"961":1,"979":1,"980":1,"982":1,"988":1,"990":1,"994":1,"1055":1,"1056":2,"1057":1,"1060":1,"1076":3,"1080":1,"1086":1,"1125":3,"1126":6,"1134":1,"1203":1,"1209":1,"1214":1,"1215":1,"1216":1,"1232":1,"1234":1,"1235":1,"1236":1,"1239":1,"1357":1,"1362":1,"1364":1,"1368":2,"1379":1,"1386":1,"1387":1,"1390":1,"1393":1,"1398":1,"1407":1,"1419":1,"1427":1,"1428":1,"1429":1,"1436":1,"1438":1,"1442":1,"1604":1,"1792":4,"2037":1,"2106":1,"2111":1,"2156":2,"2297":1,"2432":1,"2532":1,"2542":2,"2546":1,"2742":1,"2878":1}}],["replaced",{"2":{"212":1,"386":1,"595":1,"865":1,"926":1,"983":1,"998":1,"1017":1,"1577":1,"1684":1,"1733":1,"1792":3,"2039":2,"2264":1,"2267":1,"2456":1,"2559":1,"2614":1,"2622":1,"2645":1,"2764":1}}],["reply",{"2":{"857":1}}],["replication",{"2":{"1205":1}}],["replicating",{"2":{"1205":1}}],["replicated",{"2":{"848":1}}],["replica3",{"2":{"1175":1}}],["replica2",{"2":{"1173":1,"1175":1,"1176":1,"1177":2,"1627":1,"1629":2,"2266":1}}],["replica1",{"2":{"1173":1,"1177":1,"1627":1,"1629":1,"2266":1}}],["replicas",{"2":{"844":2,"1176":2,"1177":2,"1178":1,"1180":1,"1382":1,"1614":1,"1632":2}}],["replica",{"0":{"149":1,"1176":1},"2":{"149":1,"844":1,"967":1,"1101":1,"1174":1,"1178":1,"1181":1,"1205":1,"1206":1,"1208":1,"1629":1,"1633":1,"1792":1,"2063":1}}],["retention",{"2":{"2804":1}}],["returing",{"2":{"2267":1}}],["returnerrorasync",{"2":{"2559":1,"2615":1}}],["returned",{"2":{"119":1,"182":1,"186":1,"188":2,"286":2,"297":3,"298":1,"301":1,"303":1,"304":1,"412":1,"415":1,"424":1,"438":1,"549":1,"609":2,"613":1,"615":1,"700":1,"778":1,"885":1,"901":1,"934":1,"980":1,"1067":1,"1105":1,"1107":1,"1133":2,"1149":1,"1239":1,"1244":1,"1386":1,"1390":1,"1480":1,"1481":1,"1511":1,"1517":2,"1664":1,"1742":1,"1792":12,"1820":1,"1823":1,"1824":2,"1853":1,"1915":1,"1920":1,"1949":1,"1951":1,"1952":1,"1953":1,"1954":1,"1958":2,"2141":1,"2265":2,"2271":1,"2290":1,"2291":1,"2293":1,"2296":2,"2300":1,"2303":1,"2307":1,"2339":1,"2352":1,"2384":1,"2402":1,"2420":2,"2421":1,"2468":1,"2494":1,"2495":1,"2549":1,"2554":1,"2580":1,"2611":1,"2813":1,"2866":1}}],["returnnpgsqlexceptionmessage",{"2":{"2255":2}}],["returntopathquerystringkey",{"2":{"1684":1,"1792":1}}],["returntopath",{"2":{"1683":1,"1684":1,"1698":1,"1792":2}}],["returning",{"0":{"119":1,"914":1,"916":1,"1149":1,"1332":1,"1517":1},"2":{"87":1,"119":1,"120":1,"186":1,"237":1,"248":1,"304":1,"310":1,"360":2,"361":1,"365":1,"377":1,"567":2,"587":1,"592":1,"673":3,"849":1,"880":1,"885":1,"915":1,"916":2,"918":2,"928":1,"934":1,"973":1,"982":1,"1021":1,"1045":1,"1067":1,"1077":1,"1084":1,"1098":1,"1100":1,"1149":1,"1185":1,"1193":1,"1214":1,"1215":1,"1232":1,"1234":1,"1235":1,"1309":1,"1321":1,"1329":1,"1351":1,"1357":1,"1363":1,"1372":1,"1378":1,"1402":1,"1410":1,"1458":2,"1511":1,"1517":1,"1689":2,"1792":7,"1928":1,"1956":1,"1973":1,"2009":1,"2072":2,"2075":1,"2077":1,"2147":1,"2186":2,"2265":2,"2270":1,"2293":1,"2320":2,"2324":1,"2333":1,"2357":1,"2375":1,"2379":1,"2389":1,"2437":1,"2482":1,"2528":1,"2549":1,"2618":2,"2829":2,"2836":1,"2851":1,"2864":1}}],["return",{"0":{"32":1,"286":1,"299":1,"309":1,"553":1,"554":1,"555":1,"982":1,"983":1,"1020":1,"1396":1,"2337":1,"2726":1},"1":{"33":1,"34":1,"35":1},"2":{"29":1,"34":1,"35":4,"39":1,"60":1,"90":1,"186":2,"207":2,"208":1,"209":3,"227":2,"229":1,"238":1,"261":1,"264":1,"298":2,"299":1,"308":1,"309":1,"313":3,"364":1,"414":1,"415":1,"423":1,"426":1,"427":1,"428":1,"429":3,"439":3,"449":2,"452":2,"454":1,"484":1,"528":1,"548":1,"567":1,"568":1,"581":1,"583":1,"586":1,"587":1,"588":1,"607":1,"609":1,"614":1,"615":2,"617":1,"626":1,"673":1,"720":1,"722":1,"748":1,"750":1,"751":1,"752":1,"755":1,"756":1,"760":1,"761":2,"763":1,"764":1,"765":1,"766":1,"770":1,"771":2,"773":1,"774":1,"777":1,"812":1,"813":1,"814":1,"815":1,"823":1,"852":1,"869":1,"872":2,"883":3,"884":1,"885":3,"888":2,"894":2,"896":1,"903":1,"904":1,"914":4,"915":1,"916":7,"918":4,"919":1,"928":1,"929":3,"934":1,"935":1,"956":1,"974":1,"979":1,"982":2,"983":6,"984":1,"985":1,"989":1,"990":1,"991":2,"995":3,"996":4,"1003":1,"1005":1,"1020":2,"1021":1,"1026":5,"1029":1,"1040":1,"1049":1,"1060":2,"1063":2,"1065":1,"1076":1,"1095":1,"1097":5,"1105":6,"1107":1,"1129":3,"1133":1,"1134":1,"1179":1,"1189":1,"1191":1,"1192":1,"1197":1,"1214":1,"1215":1,"1216":2,"1231":1,"1232":3,"1233":1,"1234":4,"1235":3,"1236":3,"1237":1,"1238":1,"1239":4,"1279":1,"1318":1,"1332":4,"1335":5,"1338":5,"1339":4,"1342":1,"1346":1,"1347":1,"1348":1,"1357":1,"1366":9,"1368":1,"1376":1,"1378":3,"1386":4,"1390":2,"1391":2,"1396":3,"1398":1,"1402":2,"1408":1,"1409":1,"1410":2,"1415":1,"1416":1,"1423":2,"1427":2,"1431":1,"1432":1,"1460":1,"1480":1,"1481":1,"1504":3,"1557":1,"1558":1,"1567":1,"1568":2,"1574":2,"1575":1,"1651":2,"1655":2,"1671":1,"1684":2,"1686":1,"1688":1,"1689":2,"1727":2,"1736":2,"1742":1,"1745":1,"1755":1,"1781":1,"1782":1,"1792":36,"1824":2,"1851":1,"1882":2,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1921":2,"1924":1,"1926":1,"1967":1,"2000":1,"2009":1,"2033":1,"2034":2,"2035":1,"2042":1,"2072":1,"2147":1,"2156":1,"2164":2,"2177":2,"2181":1,"2186":1,"2206":1,"2247":2,"2255":4,"2258":1,"2264":2,"2267":2,"2271":2,"2273":1,"2283":1,"2290":1,"2293":2,"2302":1,"2303":1,"2304":1,"2310":4,"2313":2,"2318":1,"2320":1,"2324":1,"2330":1,"2338":2,"2339":3,"2346":1,"2375":1,"2382":1,"2468":1,"2481":1,"2498":1,"2542":1,"2549":5,"2572":1,"2575":1,"2608":1,"2614":1,"2672":1,"2725":2,"2760":1,"2762":1,"2766":1,"2774":1,"2807":1,"2810":2,"2815":4,"2840":1,"2841":1,"2842":1,"2852":1,"2853":1,"2854":1,"2855":3,"2858":1}}],["returns",{"0":{"581":1,"1134":1,"2337":1,"2491":1,"2618":1,"2725":1,"2854":1},"1":{"582":1,"583":1,"584":1,"585":1,"586":1,"587":1,"588":1},"2":{"7":1,"16":1,"18":1,"19":1,"20":1,"21":1,"25":2,"30":1,"34":1,"37":2,"38":3,"39":2,"40":2,"41":1,"48":1,"50":1,"60":1,"61":2,"62":3,"63":1,"71":1,"72":1,"104":1,"115":1,"116":1,"117":1,"119":2,"128":1,"136":1,"137":1,"139":1,"157":1,"184":1,"186":2,"187":2,"206":1,"207":1,"208":1,"209":1,"238":1,"247":1,"248":1,"249":1,"250":1,"251":1,"254":1,"255":1,"256":1,"257":1,"263":3,"264":2,"285":1,"286":1,"288":1,"289":1,"290":1,"291":2,"292":1,"297":3,"298":1,"299":3,"301":2,"305":2,"308":2,"309":2,"312":1,"313":1,"322":1,"324":1,"330":1,"332":1,"333":1,"334":1,"335":1,"351":1,"360":1,"361":1,"365":1,"366":1,"374":1,"386":1,"401":1,"405":1,"406":1,"408":2,"415":2,"423":1,"426":1,"427":1,"428":1,"429":1,"435":1,"436":1,"438":1,"439":1,"447":1,"449":1,"451":2,"452":1,"453":1,"454":1,"466":1,"467":1,"468":1,"469":1,"480":1,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"494":1,"503":1,"510":1,"511":1,"520":1,"521":1,"523":1,"524":1,"529":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"549":1,"551":3,"565":1,"575":1,"582":3,"583":1,"584":3,"585":3,"586":3,"587":4,"592":1,"593":1,"594":1,"611":1,"614":1,"615":1,"616":1,"646":1,"658":1,"677":1,"679":2,"690":1,"722":1,"723":1,"733":1,"734":1,"735":1,"736":1,"750":1,"751":1,"752":1,"755":1,"756":1,"760":1,"761":1,"764":2,"765":1,"766":1,"770":1,"771":1,"774":2,"777":1,"797":1,"798":1,"799":1,"803":1,"811":1,"812":1,"813":1,"814":1,"815":1,"818":1,"819":1,"826":2,"829":1,"833":1,"835":1,"843":1,"852":1,"871":1,"872":2,"881":1,"883":1,"884":1,"885":1,"886":1,"888":1,"904":2,"914":4,"915":2,"916":4,"918":2,"928":1,"929":1,"934":1,"935":1,"936":1,"937":1,"956":1,"975":1,"979":2,"980":2,"982":5,"983":4,"986":2,"988":2,"989":2,"990":2,"991":1,"994":1,"995":2,"1002":1,"1021":1,"1023":1,"1029":1,"1033":1,"1041":1,"1042":1,"1049":1,"1053":1,"1054":1,"1055":4,"1057":1,"1058":1,"1060":1,"1068":2,"1069":1,"1070":1,"1076":2,"1105":4,"1113":1,"1133":1,"1134":1,"1135":1,"1138":1,"1139":1,"1141":1,"1142":1,"1148":2,"1149":1,"1179":2,"1185":1,"1188":1,"1190":1,"1191":3,"1192":1,"1193":5,"1197":1,"1203":1,"1214":2,"1215":1,"1216":2,"1220":3,"1221":3,"1222":4,"1232":1,"1234":1,"1235":2,"1236":1,"1239":1,"1255":2,"1279":1,"1308":1,"1310":1,"1331":3,"1332":2,"1337":2,"1338":4,"1339":1,"1345":2,"1347":1,"1348":1,"1357":2,"1362":2,"1368":1,"1369":1,"1370":1,"1372":1,"1376":3,"1378":1,"1386":2,"1387":1,"1390":1,"1393":1,"1396":2,"1399":1,"1408":1,"1410":1,"1412":1,"1416":1,"1427":1,"1431":1,"1455":1,"1456":1,"1458":6,"1470":1,"1504":1,"1517":1,"1518":3,"1547":1,"1567":1,"1632":1,"1655":1,"1664":2,"1688":1,"1689":1,"1727":1,"1733":1,"1736":1,"1742":3,"1745":1,"1770":2,"1792":17,"1824":4,"1825":2,"1855":3,"1885":1,"1920":1,"1921":1,"1922":1,"1924":1,"1926":1,"1930":1,"1957":1,"1958":2,"1973":1,"1974":2,"2049":1,"2050":1,"2051":1,"2052":1,"2076":1,"2078":2,"2079":1,"2147":1,"2149":1,"2156":1,"2164":1,"2171":3,"2176":3,"2177":2,"2180":1,"2181":1,"2183":1,"2184":2,"2186":1,"2187":3,"2194":1,"2223":1,"2247":2,"2258":1,"2264":1,"2265":4,"2267":1,"2277":4,"2283":2,"2284":1,"2290":3,"2292":1,"2293":2,"2294":2,"2303":2,"2304":1,"2310":1,"2313":1,"2320":1,"2337":9,"2338":1,"2339":4,"2344":4,"2346":1,"2375":6,"2379":1,"2402":1,"2422":1,"2466":1,"2470":1,"2472":2,"2489":1,"2529":1,"2542":1,"2546":1,"2549":4,"2554":1,"2572":1,"2575":1,"2580":2,"2586":2,"2587":2,"2588":1,"2589":2,"2596":4,"2607":2,"2634":5,"2635":4,"2665":2,"2678":1,"2725":1,"2762":1,"2764":1,"2766":1,"2767":2,"2775":1,"2802":1,"2806":1,"2807":1,"2809":1,"2810":2,"2812":1,"2813":2,"2815":1,"2822":1,"2824":1,"2836":1,"2839":1,"2840":1,"2842":2,"2854":7,"2855":1,"2859":1}}],["retyping",{"2":{"2228":1}}],["retypes",{"2":{"2221":1,"2332":1}}],["retype",{"0":{"2332":1},"2":{"170":1,"237":1,"369":1,"568":1,"2013":1,"2323":1,"2332":2,"2333":1,"2372":1,"2540":1,"2546":1,"2845":1,"2859":1}}],["retainedfilecountlimit",{"2":{"1792":1,"1800":1,"1804":2,"1810":1,"2804":1}}],["retain",{"2":{"1792":1,"1804":1}}],["retried",{"2":{"1741":1,"1742":1,"1792":1,"2253":1,"2289":1,"2290":1,"2438":1}}],["retrieval",{"2":{"1244":1}}],["retrieving",{"2":{"903":1}}],["retrieves",{"2":{"1655":1,"1792":1}}],["retrieve",{"2":{"187":1,"1362":1,"1651":1,"1664":1,"1886":1,"2294":1,"2590":1}}],["retries",{"0":{"1152":1,"1153":1,"2765":1},"1":{"1154":1},"2":{"213":6,"575":3,"1032":3,"1105":1,"1151":2,"1154":2,"1177":2,"1179":1,"1180":2,"1181":2,"1589":2,"1590":1,"1591":1,"1598":1,"1601":1,"1623":1,"1625":1,"1739":1,"1740":2,"1741":5,"1775":1,"1792":2,"2287":1,"2288":2,"2289":5,"2759":1,"2765":2}}],["retrying",{"2":{"2258":1}}],["retryoptions",{"2":{"1152":2,"1177":1,"1617":1,"1622":2,"1625":1,"1633":1,"1792":1}}],["retrysequenceseconds=1",{"2":{"2824":1,"2825":1}}],["retrysequenceseconds",{"2":{"575":1,"577":3,"1152":3,"1153":1,"1154":3,"1177":2,"1587":1,"1589":1,"1590":2,"1597":3,"1598":1,"1617":1,"1622":1,"1623":1,"1625":1,"1633":1,"1792":2}}],["retry",{"0":{"213":1,"569":1,"576":1,"1032":1,"1151":1,"1154":1,"1586":1,"1590":1,"1622":1,"1623":1,"1625":1,"1739":1,"2287":1},"1":{"570":1,"571":1,"572":1,"573":1,"574":1,"575":1,"576":1,"577":1,"578":1,"579":1,"580":1,"1152":1,"1153":1,"1154":1,"1155":1,"1587":1,"1588":1,"1589":1,"1590":1,"1591":1,"1592":1,"1593":1,"1594":1,"1595":1,"1596":1,"1597":1,"1598":1,"1599":1,"1600":1,"1601":1,"1602":1,"1623":1,"1624":1,"1625":1,"1740":1,"1741":1,"1742":1,"2288":1,"2289":1,"2290":1},"2":{"142":2,"203":3,"213":9,"214":1,"231":2,"569":3,"570":4,"572":1,"573":1,"574":1,"575":3,"577":5,"578":2,"580":2,"837":1,"868":1,"869":1,"1011":1,"1032":3,"1037":1,"1101":4,"1104":2,"1105":3,"1108":2,"1109":1,"1113":1,"1121":1,"1126":1,"1135":1,"1151":1,"1152":5,"1153":3,"1154":4,"1155":3,"1171":1,"1179":1,"1180":1,"1181":3,"1182":6,"1217":1,"1224":1,"1250":2,"1351":1,"1586":1,"1588":4,"1589":1,"1590":5,"1592":1,"1599":6,"1600":2,"1601":1,"1602":2,"1617":1,"1622":1,"1623":2,"1739":1,"1740":6,"1741":2,"1742":2,"1790":2,"1792":9,"1797":2,"1874":1,"1958":1,"2222":1,"2230":2,"2287":2,"2288":6,"2289":4,"2290":2,"2320":1,"2329":1,"2372":1,"2459":1,"2466":1,"2470":1,"2502":1,"2505":1,"2765":4,"2824":1,"2825":1}}],["rec",{"2":{"2398":4}}],["recipients",{"0":{"2833":1},"2":{"1792":1,"2827":1}}],["recipes",{"0":{"2796":1},"1":{"2797":1,"2798":1,"2799":1,"2800":1,"2801":1},"2":{"1799":1,"1811":1}}],["recipe",{"0":{"1065":1,"1424":1},"2":{"1429":1}}],["recall",{"2":{"1324":1}}],["recap",{"2":{"1073":1}}],["recreation",{"2":{"984":1,"985":1}}],["recreating",{"2":{"983":1,"985":1,"993":1}}],["recreates",{"2":{"982":1,"997":2}}],["recreated",{"0":{"985":1},"2":{"978":1,"2110":1,"2530":1}}],["recreate",{"2":{"976":2,"977":1,"1005":1,"1076":1}}],["recursively",{"2":{"1792":2,"1974":1,"2537":1,"2607":1,"2611":1,"2825":1}}],["recursive",{"0":{"2371":1},"2":{"857":1,"860":2,"1096":1,"1792":1,"2003":2,"2228":1,"2330":1,"2356":1,"2371":2}}],["receiving",{"2":{"1991":1,"2496":1}}],["received",{"2":{"1792":1,"2395":1,"2513":1,"2523":1}}],["receives",{"0":{"2831":1},"2":{"31":1,"68":1,"212":1,"361":2,"362":1,"414":1,"419":1,"439":1,"453":1,"462":1,"507":1,"524":2,"636":1,"658":1,"660":1,"661":1,"666":1,"760":1,"763":1,"770":1,"773":1,"779":1,"871":1,"880":1,"881":1,"885":2,"886":1,"887":1,"903":1,"904":1,"911":1,"1015":1,"1052":1,"1105":1,"1108":1,"1111":1,"1137":1,"1165":1,"1197":1,"1304":1,"1311":1,"1326":1,"1327":1,"1331":1,"1338":1,"1357":1,"1410":1,"1431":1,"1544":2,"1651":1,"1655":1,"1687":1,"1733":1,"1792":1,"1806":1,"1923":1,"1924":1,"1927":1,"2264":1,"2302":1,"2305":1,"2319":1,"2509":2,"2549":1,"2827":1,"2828":1,"2831":1,"2834":1,"2836":1,"2838":1}}],["receive",{"2":{"16":1,"310":1,"358":1,"423":1,"638":3,"641":2,"642":1,"644":1,"645":1,"650":1,"880":3,"1019":1,"1056":1,"1057":1,"1165":1,"1309":1,"1312":1,"1313":2,"1314":1,"1326":1,"1372":1,"1396":1,"1473":1,"1767":1,"1792":3,"1918":1,"2247":1,"2304":1,"2319":1,"2393":1,"2490":1,"2634":1,"2829":1,"2831":1,"2855":1,"2858":1}}],["recently",{"2":{"1401":1}}],["recent",{"2":{"320":1,"874":1}}],["reconnectiondelay",{"2":{"1320":1}}],["reconnectionattempts",{"2":{"1320":1}}],["reconnection",{"2":{"1303":1,"1309":1,"1320":2,"1323":1}}],["reconnections",{"2":{"1303":1}}],["recognizable",{"2":{"2535":1}}],["recognize",{"2":{"1382":1,"2482":1}}],["recognizes",{"2":{"429":1,"2310":1,"2313":1}}],["recognized",{"0":{"326":1,"355":1},"2":{"221":1,"383":1,"390":1,"675":1,"1792":1,"2191":1,"2505":1}}],["recognition",{"2":{"1210":1}}],["recovers",{"2":{"1180":1}}],["recovery",{"2":{"1066":1,"1068":10,"1098":1,"1174":1,"1176":2,"1249":1,"1324":1,"1774":1,"1792":2,"2546":1}}],["recompiles",{"2":{"1418":1}}],["recomputed",{"2":{"308":1}}],["recommendation",{"2":{"851":1,"1253":1,"2297":1}}],["recommended",{"0":{"271":1,"2027":1,"2821":1},"2":{"307":2,"309":1,"363":1,"448":1,"967":1,"1049":1,"1067":1,"1111":1,"1220":1,"1230":1,"1232":1,"1416":1,"1448":1,"1516":1,"1574":1,"1615":1,"1641":1,"1703":1,"1792":8,"1856":2,"1870":1,"1874":1,"1880":1,"1882":1,"1994":1,"2017":1,"2019":1,"2160":1,"2177":3,"2193":2,"2212":1,"2223":1,"2265":1,"2296":1,"2389":1,"2429":1,"2455":1,"2490":1,"2492":1,"2632":3,"2633":1,"2729":1,"2740":1,"2789":1,"2820":1}}],["recorded",{"2":{"860":1}}],["record",{"0":{"299":1,"854":1,"1090":1,"1265":1,"1287":1,"1289":1},"2":{"119":1,"120":1,"227":1,"297":1,"299":2,"428":1,"554":1,"607":2,"852":2,"854":1,"857":2,"915":1,"934":1,"982":1,"990":1,"1026":3,"1041":1,"1060":1,"1111":2,"1187":1,"1188":1,"1190":1,"1192":4,"1193":7,"1263":1,"1264":2,"1272":1,"1284":1,"1339":1,"1386":2,"1393":1,"1419":1,"1480":1,"1517":1,"1574":1,"1678":2,"1688":1,"1792":8,"1824":1,"2265":1,"2339":2,"2366":1,"2398":1,"2481":1,"2498":1,"2815":1}}],["records",{"0":{"1091":1,"1288":1,"1290":1,"1291":1,"1295":1},"2":{"87":1,"568":1,"588":1,"626":1,"869":1,"1035":1,"1100":1,"1185":1,"1255":2,"1262":2,"1264":2,"1268":2,"1270":2,"1271":1,"1272":1,"1284":1,"1285":1,"1352":1,"1386":1,"1480":1,"1664":1,"1792":4,"2265":1,"2291":1,"2422":1,"2463":1,"2466":1,"2537":1,"2879":1}}],["rejectionstatuscode",{"2":{"2470":1}}],["rejection",{"0":{"897":1},"2":{"1792":2,"1910":1,"1958":1,"1959":1,"2224":1,"2417":1,"2468":1,"2470":1,"2471":1,"2546":1}}],["reject",{"2":{"894":3,"1199":1,"1366":3,"1410":2,"2149":1}}],["rejected",{"2":{"75":1,"302":1,"382":2,"691":1,"710":1,"1511":1,"1593":1,"1624":2,"1792":6,"1823":1,"1827":1,"1830":1,"1958":4,"2178":1,"2187":1,"2334":2,"2380":1,"2423":1,"2441":1,"2468":1,"2470":1,"2481":1,"2497":1,"2517":1,"2529":1,"2540":2,"2845":1,"2865":1}}],["rejects",{"2":{"64":1,"1431":1,"1792":1,"1925":1,"1951":2,"1952":2,"1953":2,"1954":2,"2107":1,"2224":1,"2433":1,"2453":2,"2495":1,"2537":1}}],["resume",{"2":{"2407":1}}],["resulttypename",{"2":{"2359":1}}],["resulting",{"2":{"916":2}}],["resultprefix",{"0":{"2008":1},"2":{"567":1,"1792":1,"1999":1,"2000":1,"2008":3,"2320":1,"2330":2,"2841":1}}],["result3",{"2":{"567":1,"614":1,"826":1,"2008":1,"2320":1,"2338":1,"2339":1,"2342":1}}],["result2",{"2":{"559":1,"565":2,"567":1,"614":1,"622":1,"826":1,"1386":1,"1792":1,"2008":2,"2320":2,"2330":1,"2338":1,"2339":1,"2340":1,"2342":2,"2357":1,"2841":1,"2852":1}}],["result1",{"2":{"559":1,"567":1,"614":1,"622":1,"826":1,"1386":1,"1792":1,"2008":2,"2320":1,"2330":1,"2338":1,"2339":1,"2340":1,"2342":4,"2841":1,"2852":1}}],["results",{"0":{"565":1,"566":1,"616":1,"1041":1,"1260":1,"1282":1},"1":{"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1301":1},"2":{"112":1,"120":1,"159":1,"238":1,"484":1,"549":1,"567":1,"568":2,"582":1,"583":1,"586":1,"609":1,"614":1,"615":2,"616":1,"622":1,"626":1,"673":3,"830":1,"833":1,"834":1,"848":2,"869":1,"918":1,"965":1,"990":2,"1029":1,"1067":3,"1089":1,"1098":1,"1129":3,"1254":3,"1260":1,"1279":1,"1281":1,"1283":1,"1284":1,"1285":1,"1338":1,"1357":2,"1358":1,"1370":1,"1376":1,"1385":1,"1393":2,"1398":2,"1789":1,"1792":4,"1824":1,"1853":1,"2072":2,"2075":1,"2077":1,"2083":1,"2102":1,"2205":1,"2320":1,"2337":1,"2339":4,"2347":1,"2464":1,"2481":1,"2494":1,"2526":1,"2535":1,"2536":1,"2621":1,"2650":1,"2651":1,"2652":1,"2855":1,"2858":1,"2880":2}}],["result",{"0":{"185":1,"559":1,"1391":1,"1396":1,"1688":1,"2293":1,"2340":1,"2343":2,"2359":1,"2813":1,"2851":1},"1":{"186":1,"560":1,"561":1,"562":1,"563":1,"564":1,"565":1,"566":1,"567":1,"568":1},"2":{"1":1,"31":1,"32":1,"35":2,"41":1,"43":1,"88":1,"109":1,"119":2,"182":1,"186":2,"214":1,"215":1,"216":1,"223":1,"237":1,"238":2,"286":1,"297":1,"298":1,"299":2,"320":1,"337":1,"395":1,"412":1,"414":3,"419":1,"421":1,"423":2,"439":1,"456":1,"460":1,"527":1,"553":1,"554":1,"555":1,"559":1,"560":4,"562":3,"563":4,"564":2,"565":3,"566":3,"567":3,"582":1,"584":8,"586":2,"587":3,"588":2,"607":1,"609":1,"613":1,"617":3,"618":4,"619":1,"621":1,"622":2,"623":1,"625":1,"626":2,"700":3,"701":1,"760":2,"761":1,"764":2,"765":2,"766":2,"770":2,"771":1,"773":3,"774":2,"823":1,"824":1,"829":1,"848":3,"879":1,"880":1,"882":1,"883":2,"884":2,"885":6,"887":2,"888":2,"904":2,"918":3,"928":4,"934":1,"948":1,"949":2,"990":3,"1005":1,"1016":1,"1020":1,"1021":15,"1023":1,"1041":2,"1044":1,"1046":1,"1067":1,"1076":4,"1084":1,"1086":1,"1095":1,"1100":1,"1104":1,"1105":2,"1149":1,"1180":1,"1189":1,"1197":1,"1218":3,"1259":1,"1332":5,"1335":2,"1338":10,"1339":13,"1342":3,"1346":1,"1370":4,"1376":15,"1378":5,"1386":5,"1390":7,"1391":6,"1393":4,"1396":8,"1399":5,"1416":1,"1435":1,"1460":1,"1501":1,"1511":1,"1517":2,"1527":1,"1664":1,"1684":1,"1686":2,"1688":2,"1792":10,"1824":3,"1856":1,"1924":1,"1968":1,"1999":1,"2000":2,"2008":4,"2009":1,"2013":2,"2076":1,"2129":1,"2131":1,"2156":1,"2157":1,"2162":1,"2176":1,"2228":1,"2265":3,"2267":1,"2283":1,"2291":1,"2293":2,"2300":1,"2302":2,"2304":1,"2305":1,"2320":9,"2323":6,"2330":4,"2337":7,"2338":1,"2339":1,"2340":10,"2342":2,"2343":1,"2348":1,"2357":1,"2359":1,"2372":3,"2375":1,"2403":1,"2421":1,"2451":3,"2462":1,"2466":2,"2481":2,"2502":1,"2510":1,"2526":1,"2527":1,"2529":1,"2543":1,"2545":1,"2546":1,"2586":1,"2725":1,"2760":1,"2767":1,"2774":2,"2806":1,"2807":2,"2813":1,"2815":10,"2817":1,"2841":2,"2850":2,"2852":3,"2853":1,"2854":5,"2859":2,"2862":1}}],["res2",{"2":{"1220":2,"1221":2,"1222":2}}],["res1",{"2":{"1220":2,"1221":2,"1222":2}}],["residue",{"2":{"2531":1}}],["resident",{"2":{"1792":1}}],["residentkeyrequirement",{"0":{"1229":1,"1879":1},"2":{"1217":1,"1227":1,"1792":1,"1877":1,"1893":1,"2223":1,"2486":1}}],["resistant",{"2":{"1792":1,"1866":1,"2625":1}}],["resilience",{"0":{"1250":1},"2":{"2498":1}}],["resilient",{"2":{"1180":1}}],["res",{"2":{"1026":3}}],["reshaping",{"2":{"2546":1}}],["reshape",{"2":{"2806":1,"2809":1,"2869":1}}],["reshapes",{"2":{"2156":1,"2542":1}}],["reshaped",{"2":{"872":1}}],["reshuffles",{"2":{"872":1}}],["rescue",{"2":{"855":1}}],["research",{"2":{"918":2}}],["reserved",{"2":{"2459":1}}],["reserve",{"2":{"390":1,"1327":1,"1792":1,"1862":1,"2483":1}}],["resets",{"2":{"771":1,"1925":1}}],["reset",{"2":{"310":1,"624":1,"1070":1,"1674":1,"1792":1,"2255":4,"2342":1,"2517":1,"2531":1,"2824":1,"2825":1,"2841":1}}],["restock",{"2":{"1045":2}}],["restoring",{"2":{"994":1,"2466":1}}],["restored",{"2":{"1792":1}}],["restores",{"2":{"1079":1,"2869":1}}],["restore",{"2":{"993":1,"2224":1,"2455":1,"2539":1}}],["rests",{"2":{"922":1}}],["restructuring",{"2":{"872":1}}],["restructured",{"2":{"872":1}}],["restricts",{"2":{"1057":1,"1130":1}}],["restriction",{"2":{"1068":1,"1130":1}}],["restricting",{"2":{"1048":1,"1792":1}}],["restrictive",{"2":{"663":1,"1792":1,"2020":1}}],["restricted",{"0":{"926":1,"1130":1},"2":{"932":1,"937":2,"946":1,"1064":1,"1130":1,"2876":3}}],["restrict",{"0":{"2728":1},"2":{"13":1,"967":1,"1013":1,"1709":1,"1792":1,"2047":1,"2314":1,"2635":1,"2831":1}}],["restarting",{"2":{"2543":1}}],["restart",{"0":{"2757":1},"2":{"390":1,"844":1,"871":2,"872":2,"875":1,"880":1,"888":1,"911":1,"1054":1,"1151":1,"1155":1,"1368":1,"1406":1,"1409":1,"1414":1,"1418":1,"1419":1,"1422":2,"1438":1,"1653":1,"1768":2,"1774":2,"1789":1,"1792":7,"2040":2,"2049":1,"2157":5,"2297":1,"2353":1,"2476":1,"2495":1,"2525":1,"2537":2,"2542":1,"2543":5,"2634":2,"2635":1,"2878":1}}],["restarts",{"2":{"214":1,"1054":2,"1067":1,"1094":1,"1146":1,"1379":1,"1654":1,"1743":1,"1792":1,"2153":1,"2221":1,"2502":1,"2541":1,"2542":1,"2543":1,"2546":2,"2742":1,"2857":1,"2878":1}}],["restful",{"2":{"253":1,"2277":1}}],["rest",{"0":{"912":1,"1042":1,"1254":1,"1368":1,"1384":1,"1386":1},"1":{"913":1,"914":1,"915":1,"916":1,"917":1,"918":1,"919":1,"920":1,"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"1263":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":1,"1275":1,"1276":1,"1277":1,"1278":1,"1279":1,"1280":1,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1301":1,"1369":1,"1370":1,"1371":1,"1372":1,"1373":1,"1374":1,"1375":1,"1376":1,"1377":1,"1378":1,"1379":1,"1380":1,"1385":1,"1386":1,"1387":1,"1388":1,"1389":1,"1390":1,"1391":1,"1392":1,"1393":1,"1394":1,"1395":1,"1396":1,"1397":1,"1398":1,"1399":1,"1400":1,"1401":1,"1402":1,"1403":1,"1404":1},"2":{"214":1,"299":1,"319":1,"320":5,"325":1,"831":2,"833":2,"835":1,"836":1,"876":1,"918":1,"920":1,"947":1,"973":1,"1010":1,"1037":8,"1038":2,"1042":1,"1043":2,"1045":1,"1046":2,"1073":1,"1074":1,"1079":1,"1083":1,"1084":2,"1086":3,"1088":1,"1089":1,"1094":2,"1095":1,"1104":1,"1106":1,"1111":1,"1121":1,"1135":1,"1156":1,"1253":1,"1281":1,"1303":1,"1304":1,"1327":1,"1368":1,"1381":1,"1382":1,"1383":1,"1385":7,"1386":5,"1398":2,"1405":1,"1432":1,"1435":1,"1659":1,"1660":1,"1664":1,"1751":1,"1757":1,"1789":1,"1792":4,"1899":1,"1907":2,"1910":1,"1911":1,"1925":1,"1998":1,"2166":3,"2176":1,"2193":1,"2228":1,"2291":1,"2297":2,"2317":1,"2318":1,"2388":1,"2389":2,"2433":1,"2434":1,"2455":1,"2462":1,"2463":1,"2479":1,"2481":1,"2502":1,"2528":1,"2535":1,"2543":1,"2565":1,"2672":1,"2709":1,"2712":1,"2772":3,"2773":1,"2774":1,"2818":1,"2826":1,"2839":1,"2840":1,"2857":1,"2864":1}}],["respawns",{"2":{"2543":1}}],["responding",{"2":{"1768":1,"1774":1,"1781":1,"1792":1,"2634":1,"2810":1}}],["responds",{"2":{"386":1,"436":1,"1792":1,"2634":1,"2861":1}}],["responsibilities",{"2":{"2391":1}}],["responsibility",{"2":{"1830":1}}],["responsiveness",{"2":{"1168":1}}],["responsive",{"2":{"1049":1,"1171":1}}],["responseheadersfield",{"2":{"1721":1,"1722":1,"1792":1,"2264":1,"2769":1}}],["responseheadersparameter",{"2":{"448":1,"1792":1,"1916":1,"1918":1,"2549":1}}],["responsetypecolumnname",{"2":{"1469":1,"1471":1,"1792":1,"2259":1}}],["responsetext",{"2":{"894":2,"1366":2,"1410":2}}],["responsetemptable",{"0":{"2109":1},"1":{"2110":1},"2":{"699":1,"1792":1,"2093":1,"2094":1,"2110":1,"2530":3,"2537":1,"2866":1}}],["responseerrormessagefield",{"2":{"1721":1,"1722":1,"1792":1,"2264":1,"2769":1}}],["responseerrormessageparameter",{"2":{"448":1,"1792":1,"1916":1,"1918":1,"2549":1}}],["responseentity",{"2":{"1366":4}}],["responsecompression",{"2":{"1792":1,"1936":1,"1944":2,"2626":1,"2627":1,"2701":1,"2746":1}}],["responsecontenttypefield",{"2":{"1721":1,"1722":1,"1792":1,"2264":1,"2769":1}}],["responsecontenttypeparameter",{"2":{"448":1,"1792":1,"1916":1,"1918":1,"2549":1}}],["responsecache",{"2":{"873":1}}],["responsecacheattribute",{"2":{"869":1}}],["response>",{"2":{"429":1,"2310":1,"2313":1}}],["responsesuccessfield",{"2":{"1721":1,"1722":1,"1792":1,"2264":1,"2769":1}}],["responsesuccessparameter",{"2":{"448":1,"449":1,"1792":1,"1916":1,"1918":1,"2549":1}}],["responsestatuscode",{"2":{"1923":1,"2509":1}}],["responsestatuscodefield",{"2":{"1721":1,"1722":1,"1792":1,"2264":1,"2769":1}}],["responsestatuscodeparameter",{"2":{"448":1,"449":1,"1792":1,"1916":1,"1918":1,"2549":1}}],["responses",{"0":{"2110":1,"2271":1,"2384":1},"2":{"88":1,"140":1,"214":2,"227":1,"472":1,"549":1,"916":1,"920":1,"967":1,"1011":1,"1014":1,"1019":1,"1023":1,"1037":2,"1071":1,"1078":1,"1097":1,"1105":1,"1107":1,"1109":2,"1111":5,"1137":1,"1177":1,"1180":1,"1255":1,"1274":1,"1279":1,"1328":2,"1349":1,"1376":2,"1398":1,"1413":1,"1430":1,"1558":2,"1645":1,"1668":1,"1670":3,"1673":1,"1676":1,"1677":1,"1722":3,"1743":2,"1746":1,"1764":1,"1769":1,"1782":1,"1792":18,"1853":1,"1857":1,"1864":1,"1865":1,"1928":1,"1937":2,"1942":1,"1994":1,"2000":1,"2008":1,"2010":1,"2014":1,"2016":1,"2047":1,"2060":1,"2110":3,"2151":1,"2164":2,"2165":1,"2224":1,"2255":4,"2271":2,"2273":2,"2278":1,"2347":1,"2388":1,"2393":1,"2397":1,"2445":1,"2459":1,"2463":2,"2465":1,"2466":1,"2502":2,"2506":1,"2530":2,"2549":1,"2558":1,"2566":1,"2580":2,"2596":1,"2627":1,"2632":3,"2634":2,"2635":2,"2769":1,"2816":1,"2835":1}}],["responsebodyfield",{"2":{"1721":1,"1722":1,"1792":1,"2264":1,"2769":1}}],["responsebodyparameter",{"2":{"448":1,"449":1,"1792":1,"1916":1,"1918":1,"2549":1}}],["responsebody",{"2":{"74":1,"75":3,"1569":4,"1923":1,"2509":1,"2518":2,"2519":3,"2520":1,"2523":2}}],["response",{"0":{"84":1,"140":1,"210":1,"214":1,"227":1,"361":1,"447":1,"536":1,"549":1,"698":1,"819":1,"1031":1,"1341":1,"1455":1,"1471":1,"1558":1,"1568":1,"1675":1,"1732":1,"1743":1,"1782":1,"1918":1,"1922":1,"1935":1,"2202":1,"2338":1,"2484":1,"2502":1,"2530":1,"2580":1,"2626":1,"2746":1,"2763":1,"2866":1},"1":{"448":1,"449":1,"537":1,"538":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"546":1,"547":1,"548":1,"550":1,"551":1,"552":1,"553":1,"554":1,"555":1,"556":1,"557":1,"558":1,"699":1,"700":1,"701":1,"702":1,"1676":1,"1677":1,"1936":1,"1937":1,"1938":1,"1939":1,"1940":1,"1941":1,"1942":1,"1943":1,"1944":1,"1945":1,"1946":1},"2":{"33":1,"45":1,"48":1,"51":1,"74":3,"75":2,"78":1,"81":1,"83":1,"84":1,"87":2,"88":1,"112":1,"120":1,"139":1,"140":2,"141":1,"186":1,"197":1,"202":1,"206":4,"208":4,"210":2,"212":2,"213":1,"214":1,"215":2,"227":3,"230":1,"239":2,"285":1,"300":1,"303":1,"383":2,"386":1,"387":2,"388":1,"390":4,"396":1,"412":1,"414":1,"415":1,"429":6,"435":1,"436":1,"438":2,"439":5,"447":3,"448":1,"454":1,"472":1,"492":1,"493":1,"496":1,"527":1,"536":1,"542":1,"544":1,"546":1,"549":2,"550":3,"551":1,"553":2,"554":1,"555":2,"559":1,"586":1,"587":2,"588":1,"616":3,"617":1,"618":2,"621":1,"622":1,"624":2,"636":1,"669":1,"675":1,"689":1,"691":5,"692":2,"695":1,"698":1,"699":4,"700":1,"701":4,"705":1,"710":1,"720":1,"819":1,"823":1,"829":1,"835":1,"868":4,"869":3,"872":2,"873":3,"876":2,"877":1,"894":7,"914":1,"915":1,"916":1,"917":2,"918":1,"938":3,"948":1,"949":1,"968":1,"995":18,"996":2,"1010":1,"1011":1,"1016":1,"1021":12,"1023":3,"1024":10,"1026":11,"1031":2,"1035":1,"1058":1,"1063":1,"1074":3,"1078":5,"1082":1,"1097":1,"1101":6,"1104":2,"1105":10,"1106":1,"1107":1,"1108":1,"1109":1,"1111":1,"1135":1,"1137":1,"1138":2,"1218":1,"1220":2,"1221":2,"1222":2,"1235":1,"1239":1,"1255":2,"1258":1,"1331":3,"1332":7,"1335":5,"1337":1,"1338":5,"1341":2,"1342":10,"1349":2,"1351":1,"1355":3,"1357":1,"1361":4,"1362":1,"1363":1,"1366":4,"1372":1,"1376":13,"1378":1,"1386":11,"1391":2,"1396":2,"1398":2,"1407":2,"1408":11,"1409":1,"1410":9,"1412":1,"1413":1,"1415":2,"1416":8,"1427":6,"1430":1,"1431":4,"1455":1,"1456":1,"1470":1,"1471":3,"1480":1,"1553":1,"1558":4,"1567":11,"1568":2,"1569":2,"1575":4,"1671":2,"1672":1,"1691":1,"1692":1,"1694":1,"1695":1,"1697":1,"1722":4,"1723":1,"1725":1,"1730":3,"1731":2,"1732":2,"1733":2,"1736":6,"1737":1,"1738":2,"1741":2,"1743":1,"1745":1,"1766":1,"1767":1,"1768":1,"1790":2,"1791":1,"1792":63,"1797":2,"1798":1,"1855":2,"1859":1,"1862":3,"1864":1,"1885":1,"1915":1,"1917":2,"1918":3,"1920":2,"1921":2,"1922":4,"1928":3,"1935":2,"1937":2,"1949":1,"1951":1,"1952":1,"1953":1,"1954":1,"1991":1,"1994":1,"2016":1,"2017":1,"2038":1,"2093":2,"2094":1,"2109":8,"2110":6,"2165":1,"2167":1,"2185":1,"2202":1,"2205":1,"2221":1,"2222":3,"2223":1,"2235":1,"2237":1,"2247":8,"2255":5,"2259":1,"2264":12,"2267":1,"2270":1,"2273":2,"2283":5,"2289":2,"2293":1,"2300":1,"2302":1,"2303":1,"2310":6,"2313":6,"2329":1,"2338":1,"2339":1,"2342":1,"2343":1,"2346":1,"2348":1,"2356":1,"2357":1,"2359":2,"2360":1,"2363":1,"2372":1,"2396":1,"2397":2,"2398":4,"2400":1,"2463":1,"2466":3,"2483":3,"2484":1,"2491":1,"2493":2,"2494":1,"2500":1,"2502":1,"2504":1,"2506":1,"2518":4,"2519":2,"2523":2,"2525":1,"2526":2,"2527":3,"2529":4,"2530":18,"2531":2,"2536":1,"2537":4,"2545":1,"2549":9,"2554":2,"2559":1,"2562":5,"2566":4,"2580":2,"2590":1,"2596":2,"2614":1,"2615":2,"2626":2,"2632":1,"2641":1,"2648":1,"2656":1,"2723":1,"2726":2,"2739":2,"2746":1,"2759":2,"2760":6,"2762":7,"2763":4,"2764":4,"2765":1,"2766":7,"2769":2,"2771":1,"2806":2,"2807":6,"2809":1,"2810":5,"2812":1,"2813":2,"2814":4,"2817":1,"2835":1,"2836":1,"2841":1,"2851":1,"2852":1,"2853":1,"2860":3,"2861":2,"2862":3,"2865":3,"2866":10,"2868":1,"2869":3,"2873":1,"2876":1,"2881":1,"2882":1}}],["respect",{"2":{"2339":1,"2615":1}}],["respects",{"2":{"347":1}}],["respective",{"2":{"336":1}}],["respectively",{"2":{"213":1,"1740":1,"2185":1,"2288":1,"2377":1}}],["resort",{"2":{"319":1}}],["resolute",{"2":{"2385":1}}],["resolution",{"0":{"52":1,"422":1,"446":1,"2607":1},"2":{"334":1,"422":1,"436":1,"1126":1,"1593":1,"1792":2,"1917":1,"1929":2,"1956":1,"2024":1,"2236":1,"2346":1,"2379":1,"2477":1,"2498":1,"2518":1,"2597":1,"2632":1,"2666":2}}],["resolveenv",{"2":{"2498":1}}],["resolver",{"2":{"2493":1,"2498":1}}],["resolvetypedescriptor",{"2":{"2370":1}}],["resolvenestedcompositetypes",{"0":{"2607":1},"2":{"334":1,"337":1,"338":1,"919":4,"1097":1,"1792":1,"1966":1,"1967":1,"1974":3,"1975":1,"2586":4,"2607":3}}],["resolve",{"0":{"1974":1,"2483":1},"2":{"167":1,"238":1,"384":1,"388":1,"390":1,"581":1,"696":1,"894":3,"933":1,"1162":1,"1366":3,"1410":3,"1416":2,"2223":1,"2247":2,"2337":1,"2346":1,"2370":1,"2385":1,"2476":1,"2483":2,"2493":1,"2518":1,"2608":1,"2666":1,"2764":1,"2771":1,"2847":1,"2854":1,"2868":1}}],["resolvedoptions",{"2":{"1792":1}}],["resolved",{"0":{"215":1,"388":1,"527":1,"532":1,"533":1,"1033":1,"1738":1,"2282":1,"2285":1,"2286":1},"1":{"389":1,"528":1,"529":1,"530":1,"531":1,"532":1,"533":1,"534":1,"535":1,"2283":1,"2284":1,"2285":1,"2286":1},"2":{"156":1,"212":1,"214":6,"215":2,"337":1,"388":1,"390":1,"395":2,"396":1,"436":1,"446":3,"527":1,"528":1,"529":7,"533":1,"534":1,"535":1,"582":1,"584":1,"841":1,"961":1,"1033":1,"1067":1,"1069":1,"1104":1,"1105":3,"1108":1,"1109":1,"1150":1,"1153":1,"1398":1,"1523":1,"1527":1,"1569":1,"1592":1,"1738":3,"1743":5,"1759":1,"1792":7,"1818":1,"1862":1,"1912":1,"1923":1,"1924":1,"1958":1,"1967":1,"1974":1,"2038":1,"2040":1,"2079":1,"2184":1,"2185":1,"2222":2,"2230":1,"2282":3,"2283":1,"2284":4,"2285":1,"2286":1,"2324":1,"2337":1,"2380":1,"2470":1,"2476":1,"2483":2,"2493":1,"2502":5,"2509":1,"2510":1,"2513":1,"2520":1,"2607":2,"2653":1,"2764":1,"2765":1,"2771":1,"2811":1,"2812":1,"2854":1}}],["resolves",{"2":{"74":1,"215":1,"390":2,"919":1,"957":1,"1033":1,"1069":1,"1097":1,"1101":1,"1162":1,"1738":1,"1792":1,"1956":1,"1974":1,"2098":1,"2379":1,"2394":1,"2476":1,"2496":1,"2498":1,"2504":1,"2518":1,"2607":1,"2768":1,"2854":1}}],["resources",{"2":{"576":1,"1278":1,"1594":1,"1792":2,"2016":1,"2024":3,"2632":1}}],["resource",{"0":{"1277":1,"1594":1,"1808":1,"1825":1,"1833":1,"2025":1},"1":{"1278":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1},"2":{"37":3,"51":1,"478":1,"533":1,"1045":2,"1096":2,"1115":1,"1122":1,"1127":1,"1139":1,"1155":1,"1254":1,"1259":1,"1278":1,"1632":1,"1637":1,"1639":1,"1788":1,"1792":12,"1795":1,"1807":1,"1808":1,"1825":2,"1827":1,"1828":1,"1829":1,"1830":3,"1831":3,"1833":1,"1963":1,"2016":1,"2025":2,"2030":1,"2223":2,"2286":1,"2481":5,"2615":2,"2632":5,"2804":1}}],["reaping",{"2":{"2543":1}}],["reassemble",{"2":{"2522":1}}],["reassurance",{"2":{"876":1}}],["reasonably",{"2":{"1432":1}}],["reasonable",{"2":{"843":1,"859":2,"864":1}}],["reason",{"2":{"841":2,"849":1,"872":1,"1079":1,"1081":1,"1220":1,"1856":1,"1974":1,"2540":1,"2607":1}}],["reasons",{"2":{"307":1,"663":1,"1254":1,"1385":1,"1386":1,"1969":1}}],["react",{"2":{"310":1,"1436":1}}],["reaching",{"2":{"2385":1,"2435":1}}],["reaches",{"2":{"664":1,"972":1,"1011":1,"1137":1,"1251":1,"1423":1,"1822":1,"2490":2,"2768":1}}],["reached",{"2":{"177":1,"843":1,"1158":1,"1405":1,"1624":1,"1792":1,"1804":1,"1951":1,"1952":1,"1953":1,"1954":1,"1958":1,"1961":1,"2392":1,"2470":1}}],["reach",{"2":{"175":1,"298":1,"324":1,"436":1,"452":1,"454":1,"650":2,"683":1,"837":3,"1005":1,"1042":1,"1052":1,"1208":1,"1441":1,"1770":1,"2176":1,"2717":1,"2797":1,"2876":1}}],["reachable",{"2":{"174":1,"322":1,"347":1,"351":1,"1621":1,"1911":1,"2040":1,"2432":1}}],["readtoendasync",{"2":{"2615":1}}],["readasync",{"2":{"2615":1}}],["readallasync",{"2":{"2362":1}}],["readability",{"2":{"2261":1}}],["readable",{"0":{"2667":1},"1":{"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1},"2":{"701":1,"1054":1,"1142":1,"1225":1,"1792":1,"1875":1,"2056":2,"2232":1,"2389":1}}],["readinessprobe",{"2":{"1773":1}}],["readiness",{"0":{"1767":1,"2438":1},"2":{"1351":1,"1764":1,"1770":1,"1774":1,"1776":1,"1792":3,"2634":4}}],["reading",{"0":{"2763":1},"2":{"1":1,"296":1,"315":1,"782":1,"784":1,"876":1,"913":1,"919":2,"1047":1,"1401":2,"1428":1,"1489":1,"2189":1,"2448":1,"2759":1}}],["readreplica",{"2":{"1176":5,"1177":2,"1179":3,"1614":1,"1632":2,"1633":1}}],["readwrite",{"2":{"1174":1,"1628":1,"1792":1,"2266":2}}],["readonlyspan",{"2":{"2399":1,"2400":1}}],["readonly",{"2":{"1174":2,"1628":2,"1629":2,"1792":1,"2266":3,"2399":1}}],["readyz",{"2":{"1780":2}}],["readypath",{"2":{"1763":1,"1764":1,"1776":1,"1780":1,"1792":1,"2634":1}}],["ready",{"0":{"1767":1,"1959":1,"2471":1},"2":{"1064":1,"1065":1,"1100":2,"1403":1,"1763":1,"1764":1,"1767":4,"1770":1,"1773":1,"1774":1,"1792":5,"1995":1,"2224":1,"2634":5,"2682":1,"2694":1,"2726":1,"2772":1,"2775":1,"2833":1,"2871":1}}],["reader",{"2":{"952":1,"1792":5,"2324":2,"2403":1}}],["readers",{"2":{"859":1,"2372":1}}],["reads",{"2":{"133":1,"277":1,"297":2,"309":1,"454":1,"636":1,"650":1,"663":1,"848":1,"1042":1,"1070":1,"1102":3,"1174":1,"1305":1,"1382":2,"1408":1,"1418":1,"1429":1,"1605":1,"1957":3,"2040":1,"2176":1,"2187":2,"2191":1,"2212":1,"2223":1,"2379":3,"2391":1,"2412":1,"2476":1,"2497":1,"2681":1,"2688":1,"2763":1,"2828":1,"2867":1}}],["read",{"0":{"9":1,"149":1,"1176":1,"1427":1,"2214":1,"2465":1},"2":{"9":1,"149":2,"175":1,"187":1,"188":1,"212":1,"215":1,"299":1,"306":4,"316":2,"390":2,"448":1,"453":1,"454":1,"528":1,"531":1,"835":1,"836":1,"844":1,"861":1,"863":1,"868":2,"907":1,"913":1,"940":1,"967":1,"1100":1,"1101":1,"1102":1,"1174":3,"1176":2,"1177":1,"1180":1,"1181":1,"1206":1,"1366":2,"1400":1,"1403":1,"1406":1,"1407":1,"1422":1,"1427":1,"1432":1,"1439":2,"1441":1,"1471":1,"1524":1,"1614":1,"1628":2,"1632":2,"1771":1,"1792":12,"1823":3,"1833":1,"1862":1,"2040":1,"2051":1,"2063":2,"2106":1,"2156":1,"2171":1,"2184":1,"2188":2,"2266":2,"2294":1,"2296":1,"2319":1,"2338":1,"2369":1,"2399":1,"2410":1,"2415":1,"2452":1,"2466":1,"2476":1,"2483":1,"2497":1,"2498":1,"2533":1,"2535":1,"2537":1,"2539":1,"2542":1,"2633":1,"2635":1,"2867":1}}],["realtime",{"2":{"1088":2,"1119":1,"1126":1}}],["realistic",{"2":{"869":2,"1170":1,"1254":2}}],["realized",{"2":{"1403":1}}],["realize",{"2":{"868":1,"1403":1,"1405":6}}],["reality",{"0":{"844":1,"848":1,"852":1,"860":1,"864":1},"2":{"844":1,"848":1,"855":1,"993":1,"1006":1,"2452":1}}],["really",{"2":{"843":1,"847":1,"849":1,"860":1,"865":1,"1037":1,"1384":3,"1386":2,"1403":2,"1435":1,"1442":1}}],["realms",{"2":{"51":1}}],["realm=",{"2":{"48":1,"63":1}}],["realm",{"0":{"44":1,"48":1,"52":1},"1":{"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1},"2":{"31":1,"37":1,"38":4,"39":1,"40":1,"43":2,"44":3,"45":6,"46":1,"48":2,"49":1,"50":2,"51":4,"52":3,"53":1,"66":2,"225":2,"1469":1,"1482":1,"1498":1,"1499":2,"1501":1,"1502":1,"1503":1,"1505":1,"1506":2,"1508":2,"1792":3}}],["real",{"0":{"1044":1,"1103":1,"1302":1,"1304":1,"1320":1,"1372":1,"1416":1,"1417":1,"1437":1,"2740":1,"2836":1},"1":{"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1308":1,"1309":1,"1310":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1,"1418":1,"1419":1,"1420":1,"1421":1},"2":{"1":1,"327":1,"338":1,"448":1,"527":1,"585":1,"690":2,"691":1,"836":1,"837":1,"841":1,"844":3,"848":1,"851":4,"852":1,"857":1,"864":2,"865":2,"866":1,"869":2,"873":2,"874":2,"875":1,"876":2,"877":2,"916":1,"956":1,"986":1,"1018":1,"1037":7,"1038":1,"1043":1,"1044":1,"1066":1,"1067":1,"1073":2,"1074":2,"1075":1,"1078":1,"1080":1,"1081":3,"1094":2,"1103":2,"1121":1,"1127":1,"1302":3,"1303":1,"1309":2,"1323":1,"1324":1,"1325":1,"1327":1,"1335":1,"1372":1,"1381":1,"1382":4,"1385":2,"1386":1,"1394":1,"1399":1,"1403":2,"1406":1,"1409":1,"1414":1,"1417":1,"1428":1,"1432":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1,"1519":1,"1525":1,"1566":1,"1569":1,"1581":1,"1704":1,"1705":1,"1792":2,"1834":1,"1857":1,"1957":1,"2092":1,"2164":2,"2165":1,"2166":1,"2333":1,"2379":1,"2388":1,"2393":1,"2395":1,"2472":1,"2479":1,"2505":1,"2529":1,"2534":1,"2621":1,"2633":2,"2739":1,"2827":2,"2836":1,"2837":1,"2838":1,"2860":1,"2872":1}}],["re",{"0":{"836":1},"2":{"1":1,"176":1,"177":1,"180":1,"214":1,"390":1,"453":1,"688":1,"837":3,"841":1,"852":1,"860":1,"865":1,"868":2,"874":1,"876":1,"948":1,"952":1,"953":1,"994":1,"1013":1,"1036":1,"1068":1,"1071":1,"1080":4,"1096":1,"1122":1,"1123":1,"1140":1,"1141":2,"1170":1,"1181":1,"1210":1,"1232":2,"1318":1,"1333":1,"1371":1,"1377":2,"1382":2,"1401":1,"1407":1,"1409":1,"1414":1,"1419":2,"1426":1,"1436":2,"1441":1,"1442":1,"1443":1,"1493":1,"1528":1,"1690":1,"1789":1,"1792":9,"1856":1,"2040":1,"2106":6,"2110":1,"2153":2,"2156":2,"2158":2,"2160":1,"2181":1,"2185":1,"2221":1,"2377":1,"2398":2,"2432":1,"2438":2,"2455":1,"2463":1,"2466":1,"2476":1,"2502":1,"2525":1,"2530":1,"2537":6,"2541":2,"2542":3,"2543":1,"2555":1,"2633":1,"2634":1,"2635":1,"2722":1,"2742":3,"2809":1,"2812":1,"2820":1,"2855":1,"2878":5}}],["2+",{"2":{"1792":1,"2109":1,"2537":1}}],["2x",{"2":{"1267":1}}],["2xx",{"2":{"210":1,"214":1,"447":1,"1031":1,"1341":1,"1722":1,"1732":1,"1740":1,"1743":1,"1918":1,"1922":1,"2109":1,"2264":1,"2288":1,"2502":1,"2530":1,"2549":1,"2763":1,"2765":1,"2810":1}}],["292",{"2":{"1284":1,"1295":1}}],["291",{"2":{"1281":1,"1288":1}}],["297",{"2":{"1269":1}}],["29",{"2":{"1189":1,"1192":1,"1277":2,"1287":1,"1288":1,"1289":2,"1299":1,"2546":1,"2621":1,"2824":10}}],["29ms",{"2":{"1090":1,"1289":1,"1291":1,"1295":1}}],["2d",{"2":{"1097":1,"2588":3,"2589":1}}],["27ms",{"2":{"1297":1,"1299":1}}],["277",{"2":{"1295":1}}],["275",{"2":{"1289":1}}],["2754",{"2":{"1023":1}}],["270",{"2":{"1287":1,"1299":1,"1301":1}}],["27",{"0":{"2243":1},"1":{"2244":1,"2245":1,"2246":1,"2247":1,"2248":1,"2249":1,"2250":1,"2251":1,"2252":1,"2253":1,"2254":1,"2255":1,"2256":1,"2257":1,"2258":1,"2259":1},"2":{"1287":2,"1289":1,"2240":1,"2397":1,"2621":1,"2823":1}}],["272",{"2":{"1287":1}}],["276",{"2":{"1277":1}}],["271",{"2":{"1090":1,"1267":1,"1284":2,"1287":1,"1289":1}}],["286",{"2":{"1297":1}}],["281",{"2":{"1290":1,"1293":1}}],["28ms",{"2":{"1288":1}}],["288",{"2":{"1288":1,"2824":1}}],["284",{"2":{"1287":1,"1288":1}}],["287",{"2":{"1285":1}}],["285",{"2":{"1284":1}}],["282",{"2":{"1284":1,"1295":1}}],["289",{"2":{"1284":1}}],["28+",{"2":{"1096":2,"1127":1}}],["28",{"0":{"2241":1,"2623":1},"1":{"2242":1,"2624":1,"2625":1,"2626":1,"2627":1,"2628":1,"2629":1},"2":{"1090":1,"1287":5,"1289":1,"1290":1,"1293":1,"1295":1,"1382":1,"2235":1,"2240":1}}],["267",{"2":{"1293":1}}],["269",{"2":{"1293":1}}],["2616",{"2":{"1398":1,"1401":1}}],["261",{"2":{"1289":1,"1297":1}}],["264",{"2":{"1288":1}}],["266",{"2":{"1285":1,"1295":1}}],["260",{"2":{"1284":1}}],["262",{"2":{"1284":1,"1288":1,"1289":1,"1297":1}}],["265",{"2":{"1284":1,"1289":1,"1301":1}}],["26",{"0":{"2385":1,"2616":1},"1":{"2617":1,"2618":1},"2":{"1071":1,"1290":1,"1299":1,"2222":1,"2236":1,"2385":2,"2823":1}}],["2bkqdk4rhhwlfwlxx7mnpcluupdtqli1jidqyqmnjbgu",{"2":{"1051":2}}],["2gb+",{"2":{"969":1}}],["212",{"2":{"1290":1}}],["21ms",{"2":{"1290":1,"1293":1}}],["210",{"2":{"1289":1,"1366":1}}],["219",{"2":{"1288":1}}],["216",{"2":{"1281":1}}],["21",{"0":{"2275":1,"2612":1,"2619":1},"1":{"2276":1,"2277":1,"2278":1,"2279":1,"2613":1,"2614":1,"2615":1,"2620":1,"2621":1,"2622":1},"2":{"1082":1,"1277":1,"1278":1,"1281":2,"1287":1,"1290":2,"1295":1,"1301":1,"1714":1,"2167":1,"2236":2,"2239":1,"2531":1,"2545":1,"2546":1,"2860":1,"2873":1}}],["2147483647",{"2":{"956":1,"1374":1}}],["217",{"2":{"867":1,"868":1,"1290":1}}],["2394",{"2":{"2546":1}}],["23ms",{"2":{"1293":1,"1299":1,"1301":1}}],["234",{"2":{"1293":1,"1299":1,"1714":1}}],["236",{"2":{"1289":1}}],["232",{"2":{"1288":1,"2621":1}}],["235",{"2":{"1285":1}}],["23503",{"2":{"1111":2,"1678":1}}],["23505",{"2":{"1111":3,"1678":1}}],["231",{"2":{"1285":1,"1295":1}}],["2301",{"2":{"2523":1}}],["230",{"2":{"1285":1,"1301":1}}],["233",{"2":{"1284":1}}],["237",{"2":{"1277":1,"1301":1}}],["23",{"0":{"2315":1,"2552":1,"2675":1},"1":{"2316":1,"2317":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1,"2368":1,"2369":1,"2370":1,"2371":1,"2372":1,"2553":1,"2554":1,"2555":1,"2676":1,"2677":1,"2678":1,"2679":1},"2":{"956":2,"1255":1,"1288":1,"1290":1,"1297":1,"1374":2,"2222":2,"2228":1,"2231":1,"2238":1,"2397":1,"2621":1}}],["2pd$e7e",{"2":{"927":1}}],["2pd$e7emore",{"2":{"927":1}}],["2288",{"2":{"2513":1}}],["229",{"2":{"1297":1}}],["22ms",{"2":{"1291":1,"1293":1,"1301":1}}],["225",{"2":{"1288":1,"1297":1}}],["22",{"0":{"2547":1},"1":{"2548":1,"2549":1,"2550":1,"2551":1},"2":{"1287":1,"1289":1,"1290":3,"1299":1,"1714":6,"2238":1,"2546":1,"2621":1}}],["222",{"2":{"1285":1,"1301":1}}],["221",{"2":{"1285":1}}],["223",{"2":{"1284":1,"1288":1}}],["226",{"2":{"1270":1}}],["2201980+01",{"2":{"995":1}}],["220",{"2":{"873":1,"1284":2,"1288":1,"1301":1}}],["22c",{"2":{"322":1}}],["245",{"2":{"1714":1}}],["245678",{"2":{"1359":1}}],["24ms",{"2":{"1301":1}}],["241",{"2":{"1295":1}}],["246",{"2":{"1289":1}}],["248",{"2":{"1285":1,"1289":1,"1299":1}}],["244",{"2":{"1284":1,"1288":1,"1714":1}}],["243",{"2":{"1284":1,"1288":1}}],["240",{"2":{"1255":1,"1714":2}}],["24",{"0":{"2373":1,"2556":1},"1":{"2374":1,"2375":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2557":1,"2558":1,"2559":1},"2":{"566":2,"867":1,"1255":1,"1257":3,"1290":1,"1295":1,"1714":1,"2227":1,"2238":1}}],["2weeks",{"2":{"272":1}}],["2w",{"2":{"271":1}}],["20x",{"2":{"2861":1}}],["20t03",{"2":{"2453":1}}],["20t08",{"2":{"1856":1}}],["20t06",{"2":{"1856":2,"2452":1}}],["20th",{"0":{"839":1},"1":{"840":1,"841":1,"842":1,"843":1,"844":1,"845":1,"846":1,"847":1,"848":1,"849":1,"850":1,"851":1,"852":1,"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"859":1,"860":1,"861":1,"862":1,"863":1,"864":1,"865":1}}],["20email",{"2":{"1694":1,"1695":1,"1792":2}}],["20profile",{"2":{"1694":1,"1792":1}}],["20r",{"2":{"1692":1,"1792":1}}],["208",{"2":{"1295":1}}],["205",{"2":{"1289":1,"1297":1,"1669":1,"1673":1,"1674":1,"1678":1,"1792":2,"2255":8}}],["20ms",{"2":{"1289":1,"1295":1}}],["20k+",{"2":{"1275":1}}],["203",{"2":{"1069":1,"1281":1,"1293":1,"2386":1}}],["201",{"2":{"2386":1}}],["2018",{"2":{"933":1}}],["2013",{"2":{"863":1}}],["2014",{"2":{"851":1,"1122":1}}],["20",{"0":{"1300":1,"2268":1,"2449":1},"1":{"1301":1,"2269":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1,"2450":1,"2451":1,"2452":1,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1},"2":{"857":1,"869":3,"872":1,"874":1,"910":1,"947":1,"977":1,"980":1,"990":1,"1082":1,"1107":1,"1255":1,"1258":1,"1264":1,"1266":1,"1269":4,"1277":1,"1280":1,"1281":1,"1285":2,"1290":1,"1293":1,"1322":1,"1366":3,"1714":3,"2144":2,"2167":1,"2224":1,"2239":1,"2270":1,"2398":1,"2545":1,"2860":1,"2861":1,"2868":1,"2872":1}}],["202",{"2":{"1824":1,"2481":1}}],["2023",{"2":{"1400":1,"1402":1}}],["2024",{"2":{"977":5,"980":5,"990":5,"1189":2,"1192":1,"1391":2}}],["202601211416",{"2":{"1260":2}}],["2026",{"0":{"1254":1,"1272":1,"2280":1,"2298":1,"2311":1,"2315":1,"2373":1,"2387":1,"2408":1,"2439":1,"2449":1,"2458":1,"2467":1,"2473":1,"2675":1},"1":{"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"1263":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":1,"1275":1,"1276":1,"1277":1,"1278":1,"1279":1,"1280":1,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1301":1,"2281":1,"2282":1,"2283":1,"2284":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1,"2299":1,"2300":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2312":1,"2313":1,"2314":1,"2316":1,"2317":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1,"2368":1,"2369":1,"2370":1,"2371":1,"2372":1,"2374":1,"2375":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2398":1,"2399":1,"2400":1,"2401":1,"2402":1,"2403":1,"2404":1,"2405":1,"2406":1,"2407":1,"2409":1,"2410":1,"2411":1,"2412":1,"2413":1,"2414":1,"2415":1,"2416":1,"2417":1,"2440":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":1,"2446":1,"2447":1,"2448":1,"2450":1,"2451":1,"2452":1,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1,"2459":1,"2460":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2474":1,"2475":1,"2476":1,"2477":1,"2676":1,"2677":1,"2678":1,"2679":1},"2":{"831":1,"866":1,"878":1,"912":1,"919":10,"921":1,"947":1,"964":2,"1010":1,"1023":1,"1037":1,"1038":1,"1048":1,"1066":1,"1072":1,"1083":1,"1089":1,"1128":1,"1135":1,"1183":1,"1209":1,"1254":1,"1280":1,"1302":1,"1328":1,"1352":1,"1368":1,"1384":1,"1400":1,"1405":1,"1406":1,"1408":1,"1423":1,"1435":1,"1856":3,"2221":1,"2222":3,"2223":1,"2224":4,"2225":3,"2226":1,"2227":1,"2228":1,"2229":2,"2230":1,"2231":1,"2452":1,"2453":1}}],["202512280753",{"2":{"1260":1}}],["2025",{"0":{"1266":1,"2241":1,"2243":1,"2260":1,"2262":1,"2268":1,"2275":1,"2547":1,"2552":1,"2556":1,"2560":1,"2563":1,"2568":1,"2570":1,"2573":1,"2578":1,"2583":1,"2592":1,"2598":1,"2601":1,"2605":1,"2609":1,"2612":1,"2616":1,"2619":1,"2623":1,"2630":1,"2636":1,"2639":1,"2643":1,"2646":1,"2657":1},"1":{"2242":1,"2244":1,"2245":1,"2246":1,"2247":1,"2248":1,"2249":1,"2250":1,"2251":1,"2252":1,"2253":1,"2254":1,"2255":1,"2256":1,"2257":1,"2258":1,"2259":1,"2261":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2269":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1,"2276":1,"2277":1,"2278":1,"2279":1,"2548":1,"2549":1,"2550":1,"2551":1,"2553":1,"2554":1,"2555":1,"2557":1,"2558":1,"2559":1,"2561":1,"2562":1,"2564":1,"2565":1,"2566":1,"2567":1,"2569":1,"2571":1,"2572":1,"2574":1,"2575":1,"2576":1,"2577":1,"2579":1,"2580":1,"2581":1,"2582":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2591":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2599":1,"2600":1,"2602":1,"2603":1,"2604":1,"2606":1,"2607":1,"2608":1,"2610":1,"2611":1,"2613":1,"2614":1,"2615":1,"2617":1,"2618":1,"2620":1,"2621":1,"2622":1,"2624":1,"2625":1,"2626":1,"2627":1,"2628":1,"2629":1,"2631":1,"2632":1,"2633":1,"2634":1,"2635":1,"2637":1,"2638":1,"2640":1,"2641":1,"2642":1,"2644":1,"2645":1,"2647":1,"2648":1,"2649":1,"2650":1,"2651":1,"2652":1,"2653":1,"2654":1,"2655":1,"2656":1,"2658":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1,"2665":1,"2666":1,"2667":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1,"2674":1},"2":{"308":1,"309":1,"317":1,"363":1,"956":2,"972":1,"995":1,"1039":1,"1049":1,"1254":1,"1256":1,"1260":1,"1262":1,"1266":1,"1374":2,"1400":1,"1401":1,"1402":1,"1792":1,"1813":1,"1824":3,"2177":1,"2232":1,"2233":1,"2234":4,"2235":1,"2236":9,"2237":2,"2238":7,"2239":4,"2240":2,"2481":2,"2744":1,"2823":1,"2824":1}}],["2048",{"2":{"1792":2,"1916":1,"1917":1,"1925":1,"1931":1,"2222":1,"2517":1,"2812":1,"2814":1}}],["204",{"0":{"554":1},"2":{"227":1,"551":2,"554":2,"586":1,"587":1,"616":1,"823":1,"826":1,"829":1,"1372":1,"1792":1,"1855":1,"2337":1,"2338":2,"2339":1,"2596":1,"2853":1,"2859":1}}],["2000",{"2":{"956":2,"1374":2}}],["2007",{"2":{"852":1}}],["2002",{"2":{"851":1}}],["2003",{"2":{"851":2,"859":1}}],["2004",{"2":{"843":1}}],["200",{"2":{"33":1,"35":1,"210":1,"301":2,"313":1,"447":1,"551":2,"689":1,"691":1,"700":1,"705":1,"872":1,"894":2,"930":2,"968":1,"996":2,"1064":1,"1074":2,"1078":1,"1104":1,"1105":1,"1107":1,"1168":4,"1169":4,"1181":1,"1214":2,"1215":1,"1232":3,"1234":3,"1236":3,"1237":2,"1254":1,"1255":2,"1258":1,"1267":1,"1269":1,"1288":1,"1322":1,"1341":1,"1342":1,"1361":1,"1366":1,"1391":1,"1409":1,"1410":2,"1471":1,"1480":1,"1714":1,"1732":1,"1766":1,"1767":1,"1768":1,"1770":1,"1782":1,"1792":9,"1855":2,"1882":2,"1884":2,"1886":2,"1887":2,"1922":1,"2247":1,"2264":1,"2526":2,"2536":1,"2549":1,"2562":2,"2596":2,"2634":2,"2739":2,"2824":1,"2860":2,"2861":1,"2866":1}}],["200+",{"2":{"1":1}}],["2s",{"2":{"213":5,"214":1,"1032":1,"1105":1,"1740":4,"1742":2,"1792":2,"2106":1,"2154":2,"2156":1,"2288":4,"2290":2,"2542":3,"2765":2,"2878":1}}],["2min",{"2":{"137":1,"211":1,"277":1,"574":1,"1731":1,"2765":1}}],["258",{"2":{"1293":1}}],["250ms",{"2":{"1590":1}}],["250",{"2":{"1289":1,"1293":1,"2245":1,"2789":1}}],["250+",{"2":{"1036":1}}],["259",{"2":{"1288":1,"1295":1}}],["254",{"2":{"1287":1}}],["257",{"2":{"1236":1,"1237":1,"1290":1,"1792":1,"1886":1,"1887":1}}],["255",{"2":{"841":2}}],["256",{"2":{"308":2,"309":1,"363":1,"1049":1,"1067":3,"1107":1,"1243":1,"1277":1,"1510":1,"1511":1,"1516":1,"1656":5,"1657":1,"1663":1,"1792":3,"2177":1,"2265":3,"2495":1}}],["25",{"0":{"1299":1,"2280":1},"1":{"2281":1,"2282":1,"2283":1,"2284":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1},"2":{"80":1,"81":2,"88":1,"268":1,"317":1,"869":1,"872":1,"1037":1,"1039":1,"1044":1,"1071":1,"1255":1,"1257":1,"1268":1,"1284":1,"1285":1,"1287":2,"1288":1,"1289":1,"1290":1,"1291":2,"1293":1,"1295":1,"1297":2,"1299":1,"1301":1,"1309":1,"1322":1,"1366":1,"1590":1,"1623":1,"1792":3,"1813":1,"1824":3,"2230":1,"2385":1,"2481":2}}],["2",{"0":{"846":1,"941":1,"957":1,"1001":1,"1020":1,"1068":1,"1214":1,"1221":1,"1248":1,"1308":1,"1356":1,"1389":1,"1396":1,"1402":1,"1726":1,"1825":1,"1871":1,"1992":1,"2176":1,"2238":1,"2268":1,"2439":1,"2467":1,"2514":1,"2518":1,"2539":1,"2547":1,"2552":1,"2556":2,"2560":1,"2563":1,"2568":1,"2570":1,"2587":1,"2598":1,"2639":1,"2823":1},"1":{"847":1,"848":1,"849":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"2177":1,"2178":1,"2269":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1,"2440":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":1,"2446":1,"2447":1,"2448":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2548":1,"2549":1,"2550":1,"2551":1,"2553":1,"2554":1,"2555":1,"2557":2,"2558":2,"2559":2,"2561":1,"2562":1,"2564":1,"2565":1,"2566":1,"2567":1,"2569":1,"2571":1,"2572":1,"2599":1,"2600":1,"2640":1,"2641":1,"2642":1},"2":{"1":1,"35":1,"74":3,"128":1,"271":1,"272":1,"274":2,"275":1,"310":1,"335":2,"363":1,"489":1,"493":1,"577":2,"622":1,"691":2,"696":1,"699":1,"761":1,"864":1,"865":1,"867":1,"868":1,"869":2,"871":1,"872":2,"881":1,"883":1,"885":1,"888":2,"897":3,"898":1,"911":1,"913":4,"914":1,"916":7,"917":6,"918":7,"919":8,"927":2,"929":1,"930":2,"956":2,"976":4,"977":11,"979":8,"980":6,"982":4,"986":2,"988":8,"989":2,"990":11,"991":4,"992":2,"994":5,"995":4,"997":1,"998":4,"1027":1,"1044":2,"1045":1,"1049":1,"1053":1,"1073":1,"1074":3,"1090":1,"1107":1,"1117":1,"1121":1,"1127":1,"1130":2,"1142":1,"1152":1,"1153":1,"1154":2,"1177":2,"1181":1,"1187":2,"1189":1,"1191":1,"1192":2,"1193":1,"1203":1,"1220":1,"1221":1,"1222":1,"1257":4,"1270":2,"1272":1,"1285":12,"1287":10,"1293":2,"1295":3,"1297":7,"1301":8,"1309":1,"1336":2,"1369":1,"1374":2,"1382":2,"1386":1,"1391":1,"1400":1,"1408":3,"1409":1,"1427":2,"1431":1,"1433":2,"1442":2,"1451":1,"1453":2,"1569":2,"1587":1,"1589":1,"1590":2,"1597":2,"1598":1,"1625":1,"1633":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1706":1,"1713":1,"1714":1,"1731":1,"1740":1,"1759":2,"1792":17,"1824":1,"1825":1,"1899":1,"1912":2,"1925":2,"1958":1,"1974":2,"1991":1,"1992":1,"1994":1,"2094":1,"2101":1,"2107":3,"2113":1,"2141":1,"2148":2,"2164":2,"2165":2,"2171":1,"2222":1,"2223":1,"2224":1,"2225":3,"2234":1,"2236":1,"2238":8,"2239":1,"2258":1,"2264":1,"2288":1,"2385":1,"2386":2,"2397":1,"2398":1,"2481":1,"2526":1,"2530":1,"2534":1,"2535":3,"2537":3,"2545":1,"2550":1,"2569":1,"2571":3,"2575":1,"2586":4,"2588":9,"2590":1,"2607":3,"2621":1,"2622":1,"2756":1,"2760":1,"2762":4,"2770":1,"2815":1,"2836":1,"2842":1,"2860":3,"2866":1,"2873":2,"2879":1,"2880":1}}],["yy",{"2":{"1792":1,"2077":1}}],["yyyy",{"2":{"776":2,"889":2,"892":2,"963":4,"1792":5,"1810":1,"2077":3,"2080":1,"2123":2,"2130":4,"2652":3}}],["yyy",{"2":{"40":2}}],["yamlyaml",{"2":{"2880":1}}],["yamlyamlservices",{"2":{"1775":1}}],["yamlyamlapiversion",{"2":{"1773":1}}],["yaaaarr",{"2":{"1386":1}}],["yields",{"2":{"2038":1,"2534":1}}],["yield",{"2":{"1399":1}}],["yellow",{"2":{"2415":1}}],["yeah",{"2":{"844":1,"851":1,"1402":1,"1403":1,"1442":1}}],["year=2026",{"2":{"964":1}}],["year",{"2":{"105":3,"113":1,"117":2,"137":1,"840":1,"860":2,"871":1,"964":3,"1139":1,"1142":1,"1254":3,"1363":1,"1401":1,"2385":1}}],["years",{"0":{"1076":1},"2":{"1":1,"840":2,"848":1,"851":2,"857":1,"859":1,"947":1,"1071":1,"1382":2,"1385":1,"1386":1,"1400":1,"1401":1,"1403":1}}],["yet",{"2":{"584":1,"868":1,"913":1,"919":2,"948":1,"1196":1,"1399":1,"1443":1,"2337":1,"2438":2}}],["yes",{"2":{"446":3,"803":2,"911":1,"1257":8,"1402":1,"1696":3,"1957":2,"2141":1,"2575":1,"2712":1,"2714":1,"2719":1,"2740":1,"2741":1,"2807":1,"2811":1}}],["y",{"2":{"369":1,"375":1,"834":1,"836":1,"930":1,"1521":1,"1792":1,"2332":2,"2380":1,"2528":2,"2795":1,"2861":1,"2864":2,"2866":1}}],["york",{"2":{"332":3,"1973":3,"2010":2,"2587":3}}],["younger",{"2":{"876":1}}],["yourself",{"2":{"298":1,"307":1,"308":1,"859":1,"1096":1,"1402":1,"1410":1,"1655":1,"2869":1}}],["your",{"0":{"306":1,"956":1,"1065":1,"1202":1,"1304":1,"2182":1,"2767":1,"2802":1,"2820":1},"1":{"2183":1,"2184":1,"2185":1,"2821":1,"2822":1},"2":{"296":1,"297":2,"298":1,"305":2,"307":1,"309":1,"310":1,"319":3,"320":1,"435":1,"436":1,"448":2,"455":1,"646":1,"653":1,"654":1,"801":1,"833":1,"834":4,"836":2,"837":2,"838":1,"840":1,"841":2,"848":2,"851":3,"852":11,"854":1,"855":1,"857":1,"859":1,"860":3,"861":1,"864":2,"876":1,"878":1,"879":1,"880":3,"881":3,"894":1,"903":2,"904":1,"911":1,"921":1,"926":1,"946":1,"948":1,"949":1,"952":2,"956":3,"958":1,"961":1,"965":1,"966":1,"968":1,"972":1,"973":5,"974":1,"975":2,"982":2,"988":1,"989":1,"994":2,"1002":1,"1003":1,"1005":2,"1010":1,"1013":1,"1022":1,"1031":2,"1035":1,"1037":1,"1038":3,"1042":1,"1044":1,"1045":2,"1049":2,"1052":2,"1053":1,"1060":1,"1062":1,"1065":3,"1071":1,"1073":1,"1074":1,"1078":2,"1079":2,"1080":3,"1081":1,"1082":1,"1086":2,"1094":3,"1098":2,"1107":1,"1111":1,"1113":3,"1122":2,"1123":2,"1126":1,"1127":1,"1128":1,"1135":2,"1136":1,"1137":3,"1139":3,"1141":2,"1147":1,"1156":1,"1165":1,"1169":2,"1170":3,"1171":1,"1173":1,"1176":1,"1187":1,"1191":1,"1193":1,"1195":1,"1196":1,"1197":1,"1199":1,"1202":2,"1204":3,"1207":1,"1209":2,"1210":3,"1211":2,"1215":2,"1217":1,"1220":1,"1225":1,"1231":1,"1239":1,"1240":1,"1244":1,"1247":2,"1251":1,"1252":2,"1253":2,"1281":1,"1324":1,"1327":1,"1332":3,"1340":1,"1341":1,"1350":1,"1359":1,"1363":1,"1365":1,"1366":4,"1367":1,"1368":2,"1378":1,"1381":2,"1382":4,"1385":3,"1386":6,"1396":2,"1401":1,"1402":1,"1403":14,"1404":2,"1405":3,"1406":6,"1407":1,"1409":3,"1412":1,"1413":1,"1414":2,"1416":2,"1417":2,"1418":2,"1419":6,"1422":3,"1423":1,"1432":1,"1435":2,"1436":1,"1441":3,"1443":1,"1448":1,"1453":3,"1457":1,"1464":1,"1477":1,"1581":1,"1685":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1697":2,"1704":4,"1732":1,"1757":1,"1792":23,"1825":1,"1833":1,"1868":4,"1870":1,"1875":1,"1881":1,"1889":1,"1922":1,"1942":1,"1948":1,"1974":3,"1981":1,"1990":1,"2016":1,"2019":1,"2020":1,"2021":1,"2023":1,"2059":1,"2092":1,"2111":2,"2166":1,"2170":1,"2171":1,"2175":2,"2176":1,"2177":4,"2179":1,"2180":1,"2181":4,"2182":1,"2183":1,"2184":1,"2279":1,"2376":1,"2378":1,"2388":1,"2389":2,"2391":1,"2394":1,"2406":1,"2438":1,"2481":1,"2486":1,"2487":1,"2525":1,"2532":1,"2543":1,"2551":1,"2554":3,"2586":1,"2607":3,"2632":3,"2634":2,"2635":1,"2682":1,"2713":2,"2714":1,"2717":1,"2737":1,"2741":1,"2759":3,"2760":2,"2763":1,"2766":1,"2767":1,"2772":2,"2773":2,"2775":2,"2776":1,"2785":1,"2786":1,"2793":1,"2795":3,"2802":3,"2803":1,"2807":2,"2809":1,"2811":1,"2813":1,"2818":2,"2821":1,"2822":1,"2823":1,"2825":1,"2826":1,"2833":1,"2836":1,"2840":1,"2857":1,"2859":1,"2860":1,"2861":1,"2868":1,"2881":1}}],["you",{"0":{"910":1,"1205":1,"1244":1},"1":{"911":1},"2":{"1":2,"62":1,"73":1,"88":1,"101":1,"165":1,"168":1,"175":1,"177":3,"180":1,"253":1,"286":1,"297":1,"298":2,"304":3,"306":1,"307":2,"308":3,"310":1,"319":3,"334":1,"336":1,"370":1,"373":1,"376":1,"389":1,"390":3,"436":1,"448":2,"449":1,"469":1,"470":1,"527":2,"556":1,"583":1,"587":1,"624":2,"650":1,"653":1,"654":2,"656":2,"669":1,"751":1,"832":2,"833":2,"834":1,"835":3,"836":2,"837":9,"838":3,"841":1,"843":1,"844":4,"845":1,"847":1,"848":12,"851":8,"852":10,"854":2,"856":5,"857":3,"859":4,"860":6,"861":1,"866":1,"869":2,"873":2,"876":3,"877":1,"878":1,"879":3,"880":4,"884":2,"887":1,"888":1,"894":1,"901":1,"902":2,"903":2,"904":2,"907":1,"910":1,"911":3,"920":3,"934":1,"948":1,"949":1,"953":1,"960":2,"961":2,"965":1,"966":2,"971":2,"973":1,"974":3,"982":3,"983":1,"985":3,"986":1,"990":1,"992":2,"994":3,"997":2,"1001":1,"1005":1,"1006":2,"1008":1,"1009":2,"1010":1,"1013":1,"1026":1,"1036":1,"1037":1,"1038":1,"1039":1,"1040":1,"1044":1,"1045":1,"1046":2,"1049":2,"1054":1,"1061":1,"1063":2,"1064":1,"1065":6,"1068":3,"1069":1,"1073":6,"1074":3,"1075":1,"1076":1,"1077":2,"1078":1,"1079":3,"1080":5,"1081":7,"1086":1,"1088":1,"1094":2,"1095":2,"1096":9,"1098":2,"1099":1,"1102":1,"1104":1,"1105":1,"1121":13,"1122":5,"1123":5,"1127":2,"1128":1,"1130":1,"1133":4,"1134":2,"1138":1,"1139":4,"1140":2,"1141":2,"1145":2,"1147":1,"1150":2,"1155":1,"1157":1,"1160":1,"1161":1,"1162":2,"1165":1,"1166":1,"1170":1,"1174":1,"1176":2,"1180":1,"1181":3,"1184":1,"1191":2,"1193":1,"1202":1,"1203":3,"1205":3,"1206":2,"1209":2,"1210":1,"1215":1,"1218":1,"1219":1,"1220":3,"1240":1,"1241":1,"1249":1,"1251":1,"1252":1,"1253":1,"1254":1,"1281":1,"1302":1,"1304":1,"1305":1,"1320":1,"1323":1,"1324":1,"1326":2,"1328":1,"1352":1,"1354":5,"1359":1,"1365":1,"1366":3,"1377":5,"1378":1,"1382":6,"1384":5,"1385":11,"1386":18,"1391":1,"1393":6,"1394":1,"1395":1,"1396":1,"1398":2,"1400":2,"1401":5,"1402":4,"1403":14,"1404":5,"1405":13,"1406":3,"1407":1,"1408":1,"1409":4,"1410":2,"1414":1,"1417":1,"1419":4,"1421":1,"1431":2,"1432":2,"1435":2,"1436":1,"1438":2,"1441":3,"1443":4,"1464":1,"1493":1,"1515":2,"1516":1,"1519":1,"1527":1,"1528":1,"1568":1,"1569":1,"1572":1,"1574":1,"1576":1,"1580":1,"1581":1,"1607":1,"1614":1,"1625":1,"1640":1,"1644":1,"1655":1,"1685":1,"1690":4,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1697":1,"1704":1,"1706":1,"1732":1,"1757":1,"1759":1,"1771":1,"1781":1,"1792":14,"1822":1,"1825":2,"1856":1,"1868":1,"1869":1,"1870":1,"1912":1,"1922":1,"1942":1,"1948":2,"1961":1,"1969":1,"1974":1,"1983":1,"1989":1,"2001":1,"2004":1,"2039":1,"2040":1,"2143":1,"2148":1,"2161":1,"2171":2,"2175":2,"2177":3,"2178":1,"2180":3,"2184":3,"2192":1,"2193":1,"2200":1,"2252":2,"2257":1,"2265":1,"2270":1,"2314":1,"2376":1,"2378":2,"2380":2,"2381":1,"2389":4,"2391":2,"2406":1,"2424":1,"2430":1,"2438":7,"2455":1,"2486":1,"2520":1,"2530":2,"2531":1,"2532":2,"2533":1,"2539":1,"2540":2,"2543":1,"2549":1,"2550":1,"2551":2,"2587":1,"2607":1,"2633":2,"2635":1,"2684":1,"2693":2,"2696":1,"2712":1,"2713":2,"2728":1,"2729":2,"2741":1,"2751":1,"2759":1,"2763":2,"2769":2,"2771":1,"2772":1,"2776":1,"2779":1,"2785":2,"2791":1,"2792":1,"2795":1,"2799":1,"2803":2,"2806":2,"2809":3,"2810":4,"2812":1,"2818":2,"2819":1,"2825":1,"2826":1,"2827":1,"2830":3,"2834":1,"2835":1,"2836":1,"2840":1,"2855":1,"2857":1,"2858":1,"2868":1,"2869":1,"2871":1,"2878":1}}],["mv",{"2":{"2782":1,"2783":1,"2784":1}}],["mcr",{"2":{"2450":1}}],["mcrowbuilder",{"2":{"2403":1}}],["mccompositebuffer",{"2":{"2403":1}}],["mcpoptions",{"2":{"317":1,"480":1,"1792":1,"1813":1,"1814":1,"1826":1,"1961":1,"2481":3}}],["mcp",{"0":{"317":1,"320":1,"322":1,"1038":1,"1039":1,"1042":1,"1813":1,"2166":1,"2481":2},"1":{"318":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":1,"1825":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"1834":1},"2":{"223":2,"317":6,"318":5,"319":4,"320":15,"322":2,"323":2,"324":4,"325":5,"326":5,"327":5,"480":1,"529":1,"1037":4,"1038":4,"1039":3,"1040":5,"1042":9,"1043":3,"1044":2,"1045":2,"1046":3,"1047":5,"1383":1,"1401":1,"1789":2,"1792":13,"1813":5,"1814":1,"1816":3,"1817":2,"1818":1,"1819":1,"1820":1,"1822":7,"1824":9,"1825":5,"1827":1,"1831":1,"1833":3,"1834":7,"1840":3,"1961":3,"2166":7,"2195":2,"2223":6,"2479":4,"2481":27,"2482":11,"2489":4,"2498":1,"2714":1,"2721":1,"2841":1}}],["m4",{"2":{"2397":1}}],["mdn",{"2":{"2020":1,"2021":1}}],["md5",{"2":{"1332":2,"1338":1,"1339":1,"2815":1}}],["md",{"2":{"1260":1,"2267":4}}],["mb",{"2":{"1107":2,"1277":26,"1278":6,"1511":1,"1792":1,"1804":1,"1991":2,"2245":2,"2397":2,"2398":2,"2789":2}}],["mrs",{"2":{"913":1}}],["mm",{"2":{"776":4,"889":4,"892":4,"963":7,"1792":14,"1800":1,"1809":2,"1810":2,"1917":1,"2077":6,"2080":1,"2094":1,"2101":1,"2123":4,"2130":8,"2156":1,"2537":1,"2542":1,"2652":5,"2814":1}}],["ml",{"0":{"427":1},"2":{"414":1,"427":2,"1104":1,"1105":1,"1335":1,"1343":1,"1346":1,"1396":1,"2300":1}}],["mssql",{"2":{"1391":1}}],["msg",{"2":{"1318":2,"1320":4,"2830":3}}],["msec",{"2":{"269":1}}],["ms",{"2":{"269":1,"874":2}}],["meet",{"2":{"2776":1}}],["meets",{"2":{"1792":1}}],["mental",{"2":{"1435":1}}],["mentor",{"2":{"1403":1}}],["mentioned",{"2":{"1402":1}}],["mention",{"2":{"1401":1,"2394":1,"2869":1}}],["mentioning",{"2":{"1389":1,"1396":1,"1397":1}}],["menu",{"2":{"841":1}}],["messaging",{"2":{"1037":1,"1309":2,"1327":1}}],["message>",{"2":{"2405":1}}],["messageonly",{"2":{"1792":1,"1845":1,"2802":1}}],["messageinput",{"2":{"1318":2}}],["messagetext",{"2":{"1318":3,"1321":1,"1326":1,"1372":1,"2836":1}}],["messageevent",{"2":{"1317":1,"1318":1,"1416":1,"2247":1}}],["messagecolumnname",{"2":{"1240":1,"1792":1,"1889":1,"2259":1}}],["messages",{"0":{"631":1,"2802":1},"2":{"658":1,"660":1,"661":1,"826":1,"1105":1,"1303":1,"1304":2,"1305":1,"1307":2,"1309":2,"1310":3,"1320":4,"1321":1,"1323":1,"1325":1,"1372":1,"1792":2,"1799":1,"1809":1,"2247":1,"2251":1,"2338":1,"2364":2,"2366":1,"2372":2,"2490":1,"2795":1,"2802":2,"2829":2,"2836":7}}],["message",{"0":{"313":1,"1309":1,"1310":1,"1958":1,"2119":1,"2704":1},"1":{"1959":1},"2":{"33":1,"206":1,"207":2,"208":2,"209":3,"210":2,"216":1,"300":1,"303":1,"313":1,"439":2,"447":2,"480":1,"748":1,"817":2,"818":1,"819":1,"826":3,"1019":2,"1021":2,"1026":2,"1031":1,"1037":1,"1071":1,"1103":1,"1105":5,"1111":2,"1192":4,"1193":2,"1214":1,"1215":1,"1216":1,"1220":1,"1221":1,"1232":3,"1234":3,"1236":3,"1237":2,"1239":2,"1240":1,"1302":1,"1303":3,"1304":1,"1305":2,"1307":2,"1309":13,"1310":4,"1317":2,"1318":1,"1320":9,"1321":12,"1332":2,"1338":2,"1339":2,"1341":1,"1351":1,"1372":15,"1382":1,"1398":2,"1416":1,"1426":1,"1427":1,"1431":1,"1460":1,"1464":1,"1471":1,"1480":1,"1671":1,"1684":2,"1721":1,"1722":2,"1725":1,"1727":2,"1728":1,"1732":2,"1736":3,"1742":3,"1787":1,"1792":32,"1794":1,"1800":1,"1806":1,"1809":2,"1810":1,"1845":3,"1882":2,"1884":2,"1886":2,"1887":2,"1889":1,"1916":1,"1918":2,"1921":2,"1922":2,"1949":1,"1951":2,"1952":2,"1953":2,"1954":2,"1958":3,"1959":1,"2011":2,"2117":1,"2119":1,"2138":1,"2141":2,"2142":4,"2144":3,"2145":2,"2146":8,"2148":3,"2247":1,"2255":4,"2259":1,"2264":7,"2289":1,"2290":3,"2321":1,"2324":2,"2338":3,"2354":2,"2363":2,"2375":1,"2376":1,"2391":1,"2394":1,"2428":1,"2435":1,"2446":1,"2468":2,"2470":1,"2471":1,"2472":4,"2528":3,"2535":2,"2549":5,"2551":2,"2575":8,"2663":1,"2702":1,"2704":1,"2762":3,"2763":3,"2764":2,"2766":2,"2769":2,"2803":4,"2810":3,"2814":1,"2815":2,"2821":1,"2828":4,"2829":25,"2830":4,"2833":1,"2836":16,"2864":2}}],["members",{"2":{"1974":2,"2607":2}}],["membership",{"2":{"1910":2,"2423":2,"2433":2}}],["mem",{"2":{"919":2}}],["memorystream",{"2":{"2404":1}}],["memorycachepruneintervalseconds",{"2":{"1145":1,"1510":1,"1511":1,"1513":2,"1534":1,"1792":1}}],["memory",{"0":{"86":1,"953":1,"969":1,"1145":1,"1513":1},"2":{"87":1,"88":3,"101":1,"104":3,"106":1,"108":1,"121":3,"122":1,"214":1,"835":1,"840":1,"841":2,"843":4,"844":12,"845":1,"848":5,"849":5,"851":21,"852":9,"854":3,"855":2,"859":2,"860":2,"861":2,"863":1,"864":2,"865":1,"868":1,"875":1,"909":1,"919":4,"920":1,"947":2,"948":3,"949":1,"951":1,"958":1,"968":2,"969":1,"1007":1,"1037":1,"1054":1,"1067":1,"1075":1,"1099":1,"1101":3,"1107":1,"1121":1,"1141":1,"1145":2,"1147":1,"1149":1,"1150":7,"1155":1,"1168":1,"1169":2,"1170":1,"1171":1,"1259":1,"1274":1,"1277":3,"1278":3,"1403":1,"1406":1,"1407":1,"1422":1,"1510":1,"1511":6,"1513":2,"1515":3,"1516":3,"1517":1,"1519":1,"1520":4,"1521":1,"1522":2,"1529":5,"1533":1,"1534":2,"1594":1,"1722":2,"1743":1,"1792":20,"1927":1,"1928":1,"1974":3,"2038":1,"2089":1,"2246":1,"2265":5,"2274":5,"2297":1,"2346":1,"2380":6,"2381":1,"2401":1,"2445":2,"2462":1,"2465":2,"2466":1,"2494":1,"2495":2,"2502":2,"2549":2,"2607":3,"2614":1,"2634":1,"2635":1,"2745":1,"2757":1,"2769":1}}],["measurably",{"2":{"876":1}}],["measures",{"2":{"1258":1}}],["measurement",{"2":{"1132":1}}],["measured",{"2":{"872":2,"874":1,"1076":1,"1381":1,"1382":4,"1443":1,"2397":1,"2398":2}}],["measure",{"2":{"851":1,"1386":1,"2744":1}}],["meanwhile",{"2":{"1366":1}}],["meant",{"2":{"916":1,"1067":1,"1068":1,"1069":1,"1385":1,"2394":1,"2414":1}}],["mean",{"2":{"841":1,"868":1,"1079":1,"1385":2,"1386":1,"1393":1,"1395":1,"1402":1,"1403":1,"2376":1,"2388":1,"2758":1}}],["meaningfully",{"2":{"872":1,"2529":1}}],["meaningful",{"2":{"372":1,"666":1,"669":1,"852":1,"869":1,"876":1,"1400":1,"2326":1,"2342":1,"2846":1}}],["meaning",{"2":{"92":1,"703":1,"713":1,"1073":1,"1138":1,"1386":1,"1401":1,"1792":2,"2113":1,"2763":1,"2810":1}}],["means",{"0":{"1421":1},"2":{"39":1,"213":1,"214":1,"349":1,"390":1,"841":1,"848":1,"852":1,"864":2,"868":1,"871":1,"872":1,"910":1,"911":1,"924":1,"927":1,"941":1,"959":1,"978":1,"1009":1,"1064":1,"1068":1,"1077":1,"1080":1,"1088":1,"1162":1,"1181":1,"1208":1,"1247":1,"1302":1,"1327":1,"1368":1,"1373":1,"1378":1,"1386":3,"1388":1,"1398":1,"1399":1,"1403":1,"1437":1,"1440":3,"1740":1,"1743":1,"1792":1,"1851":1,"2004":1,"2099":1,"2107":1,"2288":1,"2297":1,"2314":1,"2382":1,"2389":1,"2502":1,"2529":1,"2537":1,"2829":1,"2879":1}}],["mechanically",{"2":{"857":1}}],["mechanical",{"2":{"847":1,"872":2,"1069":1,"2378":1}}],["mechanisms",{"2":{"306":1,"1054":1,"1064":1}}],["mechanism",{"2":{"168":1,"212":1,"306":1,"386":1,"535":1,"847":1,"859":1,"873":1,"932":1,"1098":1,"1105":1,"1111":1,"1304":1,"1326":1,"2040":1,"2477":1,"2764":1}}],["me",{"2":{"844":1,"848":1,"920":1,"1044":2,"1057":1,"1073":1,"1128":1,"1384":1,"1385":4,"1386":1,"1398":1,"1400":1,"1401":4,"1402":6,"1403":4,"1435":1,"1692":1,"1695":1,"1792":2,"2427":2}}],["medical",{"2":{"1100":1,"1664":1,"2291":1}}],["mediates",{"2":{"851":1}}],["media",{"2":{"494":1,"546":1}}],["medium",{"0":{"95":1},"2":{"848":1,"1084":2,"1128":1,"1403":1}}],["merging",{"2":{"917":1,"1924":1,"2512":1}}],["merges",{"2":{"1190":1}}],["merge",{"2":{"857":1,"860":1,"916":1,"1559":1,"2810":1}}],["merged",{"2":{"384":1,"872":1,"915":1,"916":1,"971":1,"1097":2,"1792":2,"1924":2,"1968":1,"2222":1,"2321":1,"2509":1,"2511":1,"2513":1,"2531":1,"2577":1,"2766":1,"2812":1}}],["merely",{"2":{"843":1,"2505":1}}],["mermaidflowchart",{"2":{"297":1,"306":1,"650":1,"663":1,"833":1,"836":1,"881":1,"922":1,"949":1,"1086":1,"1087":1,"1088":1,"1184":1,"1185":1,"1211":1,"1220":1,"1221":1,"1222":1,"1305":1,"1333":1,"1868":1,"2171":1,"2760":1,"2807":1,"2828":1}}],["metered",{"2":{"1961":1}}],["metrics",{"2":{"1100":2,"1150":1,"1529":1}}],["metric",{"2":{"866":1,"911":1,"969":1,"1349":1}}],["metamorphosis",{"2":{"913":1}}],["metaphor",{"2":{"852":1}}],["meta",{"0":{"763":1,"773":1},"2":{"750":4,"751":3,"755":3,"756":3,"758":1,"760":1,"764":5,"765":3,"766":2,"767":1,"770":1,"774":6,"775":1,"777":3,"783":1,"785":1,"787":1,"789":1,"883":3,"884":4,"886":4,"887":1,"888":4,"902":1,"903":2,"904":7,"905":2,"1356":1,"1357":4,"1358":4,"1367":1,"1410":1,"1428":1,"1574":1,"1685":1,"1792":3,"2125":1,"2531":1,"2572":2}}],["metadata=",{"2":{"1827":1,"2481":1}}],["metadataqueryschema",{"2":{"1617":1,"1618":1,"1792":1,"2256":3,"2558":1}}],["metadataqueryconnectionname",{"2":{"1617":1,"1618":1,"1792":1,"2256":3}}],["metadata",{"0":{"748":1,"752":1,"762":1,"763":1,"772":1,"773":1,"887":1,"893":1,"903":1,"1359":1,"1833":1,"2256":1,"2751":1},"1":{"1360":1},"2":{"71":2,"668":1,"748":1,"750":2,"751":1,"752":4,"755":1,"756":1,"758":1,"760":1,"761":1,"762":2,"763":1,"764":1,"765":1,"767":1,"770":1,"771":1,"772":2,"773":1,"774":1,"775":1,"777":1,"778":1,"779":1,"783":1,"785":1,"787":1,"789":1,"880":1,"881":1,"882":1,"883":1,"884":2,"885":1,"886":3,"893":2,"902":1,"904":2,"905":1,"1007":1,"1045":1,"1099":1,"1129":1,"1178":1,"1193":1,"1210":1,"1249":1,"1276":1,"1279":1,"1352":1,"1357":1,"1358":4,"1359":1,"1360":1,"1366":1,"1385":1,"1386":1,"1388":1,"1410":1,"1569":1,"1618":2,"1759":1,"1773":1,"1792":27,"1828":1,"1829":1,"1831":1,"1899":1,"1912":1,"1974":2,"2123":2,"2124":6,"2125":1,"2129":1,"2131":1,"2132":1,"2222":1,"2223":1,"2256":9,"2332":1,"2370":1,"2372":1,"2399":1,"2481":2,"2482":1,"2496":1,"2498":1,"2520":1,"2572":3,"2590":1,"2600":1,"2607":2,"2608":2,"2672":1,"2772":1,"2824":1,"2825":1}}],["met",{"2":{"639":1}}],["method=",{"2":{"1491":1,"1792":1}}],["methodology",{"2":{"1084":1,"2744":2}}],["methodologies",{"2":{"840":1}}],["method>",{"2":{"243":2}}],["method",{"0":{"248":1,"250":1,"252":1,"402":1,"419":1,"420":1,"443":1,"444":1,"1846":1,"2305":1},"1":{"1847":1},"2":{"35":3,"75":1,"203":1,"214":2,"244":1,"245":1,"252":1,"413":2,"414":2,"419":1,"420":1,"423":1,"429":1,"434":2,"436":1,"443":1,"444":1,"526":1,"803":1,"835":4,"841":5,"845":2,"848":1,"852":2,"860":1,"869":2,"938":1,"995":2,"1055":1,"1073":1,"1081":1,"1105":2,"1107":1,"1335":4,"1342":1,"1386":1,"1408":1,"1416":1,"1431":1,"1492":1,"1567":1,"1568":1,"1569":1,"1575":1,"1651":1,"1743":2,"1792":8,"1822":1,"1824":1,"1844":1,"1846":1,"1924":2,"1925":1,"2110":1,"2196":3,"2197":1,"2222":1,"2247":1,"2258":2,"2301":1,"2302":2,"2305":1,"2310":1,"2313":1,"2347":1,"2370":1,"2372":1,"2403":1,"2461":3,"2481":1,"2482":1,"2502":2,"2509":1,"2511":1,"2517":1,"2529":2,"2530":1,"2549":3,"2565":1,"2614":1,"2672":1,"2723":1,"2762":1,"2765":1,"2811":2,"2865":2}}],["methods",{"0":{"204":1,"1642":1,"1729":1,"2736":1},"2":{"11":1,"26":1,"65":1,"258":1,"293":1,"518":2,"545":2,"848":1,"873":1,"1030":1,"1061":1,"1104":1,"1105":2,"1445":1,"1485":1,"1496":1,"1507":1,"1550":1,"1635":1,"1639":1,"1642":2,"1648":1,"1666":1,"1792":1,"1824":1,"1833":1,"1847":1,"1895":1,"1933":1,"1997":1,"2031":1,"2044":1,"2264":1,"2277":1,"2347":1,"2372":1,"2519":1,"2529":1,"2559":1,"2614":1,"2615":1,"2706":1}}],["mundane",{"2":{"1304":1}}],["muting",{"2":{"2752":1}}],["mutes",{"2":{"2801":1}}],["mute",{"0":{"2544":1,"2800":1},"2":{"1384":1,"1792":1,"2114":1,"2221":1,"2525":1,"2544":1,"2880":1}}],["mutex",{"2":{"1324":1}}],["mutually",{"2":{"1129":1}}],["mutation",{"2":{"2321":1}}],["mutations",{"2":{"1746":1,"2319":1,"2347":1,"2723":1,"2843":1}}],["mutating",{"2":{"214":1,"1045":1,"2502":1}}],["mutated",{"2":{"854":1,"1076":1}}],["mutate",{"2":{"849":1,"851":1,"854":1,"2533":1}}],["mutable",{"2":{"843":1}}],["much",{"2":{"847":3,"848":1,"855":1,"868":1,"920":1,"1083":1,"1132":1,"1133":1,"1254":2,"1281":1,"1385":2,"1390":2,"1399":2,"1401":1,"1402":2,"1405":2,"1435":1,"1792":2,"2016":1,"2019":1,"2398":1,"2632":1}}],["multicmdwritewrapper",{"2":{"2372":1}}],["multicommandinfo",{"2":{"2372":2}}],["multidimensional",{"0":{"2588":1},"2":{"2236":1,"2588":4,"2589":1,"2590":4}}],["multinamepattern",{"2":{"1792":2,"2093":1,"2109":1,"2530":1,"2537":1}}],["multihostconnectiontargets",{"2":{"1174":1,"1176":1,"1177":1,"1617":1,"1618":1,"1628":1,"1629":1,"1792":1,"2266":1}}],["multiparams",{"2":{"2456":1}}],["multiparamsquerystringtests2",{"2":{"2452":1,"2457":1}}],["multiparamstests2",{"2":{"2452":1,"2457":1}}],["multipartfile",{"2":{"1366":1}}],["multipart",{"2":{"779":1,"879":1,"881":2,"1792":1,"1917":1,"1924":1,"1927":2,"2512":1,"2549":2,"2814":1}}],["multiplying",{"2":{"2504":1}}],["multiply",{"2":{"1382":1}}],["multiplier",{"2":{"872":2}}],["multiplicity",{"2":{"844":1}}],["multiple",{"0":{"21":1,"62":1,"117":1,"209":1,"255":1,"290":1,"312":1,"333":1,"353":1,"488":1,"532":1,"540":1,"644":1,"778":1,"812":1,"813":1,"990":1,"1029":1,"1048":1,"1053":1,"1154":1,"1196":1,"1370":1,"1391":1,"1597":1,"1614":1,"1632":1,"2285":1,"2766":1},"1":{"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":2,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1},"2":{"62":6,"109":1,"119":1,"123":1,"151":1,"209":1,"215":1,"216":2,"230":1,"280":2,"286":1,"299":1,"302":1,"305":1,"310":1,"348":1,"355":1,"494":2,"529":1,"559":1,"615":1,"656":1,"663":1,"687":1,"747":1,"767":1,"771":1,"778":1,"809":1,"837":1,"844":5,"849":1,"887":1,"903":1,"914":2,"915":2,"916":2,"918":1,"919":2,"920":2,"930":1,"973":1,"974":2,"990":1,"1008":1,"1015":1,"1029":1,"1034":1,"1035":1,"1036":1,"1037":1,"1048":2,"1053":1,"1064":3,"1067":2,"1088":1,"1098":3,"1099":1,"1101":1,"1102":1,"1104":1,"1105":2,"1110":1,"1111":1,"1138":1,"1142":1,"1145":1,"1147":1,"1149":1,"1150":1,"1173":1,"1175":1,"1176":1,"1178":1,"1187":1,"1193":3,"1196":1,"1205":1,"1302":1,"1358":1,"1378":3,"1386":1,"1391":2,"1398":1,"1418":1,"1445":1,"1447":1,"1458":1,"1515":3,"1517":1,"1519":1,"1597":1,"1614":1,"1688":1,"1713":1,"1738":1,"1745":1,"1746":2,"1792":7,"1907":1,"1960":1,"1985":1,"2117":1,"2118":1,"2146":1,"2149":1,"2164":1,"2175":1,"2184":1,"2192":1,"2199":1,"2200":1,"2265":1,"2270":2,"2274":2,"2277":1,"2284":1,"2285":1,"2320":1,"2339":1,"2346":1,"2347":3,"2348":1,"2359":1,"2366":1,"2375":1,"2380":1,"2422":1,"2433":1,"2438":1,"2466":1,"2528":1,"2529":2,"2540":1,"2551":1,"2575":1,"2586":1,"2590":1,"2597":1,"2633":1,"2648":1,"2680":1,"2684":1,"2685":1,"2697":1,"2702":1,"2703":1,"2737":1,"2759":1,"2774":1,"2823":1,"2845":1,"2850":1,"2858":1,"2865":2}}],["multisets",{"2":{"918":2}}],["multiset",{"0":{"912":1,"918":1},"1":{"913":1,"914":1,"915":1,"916":1,"917":1,"918":1,"919":2,"920":2},"2":{"338":2,"912":1,"918":6,"919":1,"920":1,"1037":1,"1097":3,"2164":2}}],["multi",{"0":{"106":1,"251":1,"541":1,"614":1,"826":1,"1070":1,"1102":1,"1173":1,"1370":1,"1626":1,"1627":1,"1629":1,"2266":1,"2320":1,"2340":1,"2357":1,"2403":1,"2850":1},"1":{"1627":1,"1628":1,"1629":1,"2851":1,"2852":1,"2853":1},"2":{"41":1,"121":1,"170":1,"238":2,"379":1,"384":1,"559":2,"568":2,"586":1,"587":1,"588":1,"614":1,"615":2,"616":1,"617":1,"618":1,"625":1,"626":2,"690":1,"701":1,"801":1,"829":1,"830":1,"834":1,"835":1,"837":1,"844":2,"865":2,"869":1,"1005":1,"1037":3,"1066":2,"1070":1,"1086":1,"1095":2,"1101":2,"1102":2,"1107":1,"1121":3,"1125":1,"1127":2,"1146":1,"1172":1,"1176":1,"1180":1,"1181":1,"1182":1,"1217":1,"1224":1,"1250":1,"1386":2,"1410":1,"1416":1,"1477":1,"1618":1,"1626":1,"1627":1,"1792":4,"1852":1,"1874":1,"2000":1,"2007":1,"2008":1,"2009":1,"2011":1,"2013":1,"2167":1,"2183":1,"2228":2,"2239":1,"2266":7,"2297":1,"2319":1,"2320":1,"2321":1,"2323":1,"2328":1,"2330":2,"2333":1,"2337":1,"2338":2,"2339":3,"2340":1,"2342":1,"2354":1,"2357":2,"2372":3,"2383":1,"2397":1,"2403":1,"2435":2,"2498":1,"2540":1,"2545":1,"2546":1,"2774":1,"2841":1,"2845":1,"2855":1,"2858":1,"2859":1}}],["must",{"2":{"21":1,"60":1,"63":1,"102":1,"182":1,"206":1,"243":1,"299":1,"324":1,"362":1,"377":1,"382":1,"384":1,"390":1,"430":1,"473":1,"480":1,"512":1,"527":1,"528":2,"534":1,"570":1,"587":2,"650":1,"673":1,"696":1,"704":1,"714":1,"718":1,"812":1,"816":1,"817":2,"819":1,"841":1,"845":4,"849":2,"851":1,"854":1,"860":1,"863":3,"864":3,"879":1,"907":1,"934":1,"983":4,"989":1,"1013":1,"1026":1,"1049":1,"1067":1,"1075":1,"1098":3,"1101":1,"1106":1,"1107":3,"1108":2,"1138":1,"1174":2,"1178":1,"1191":1,"1217":1,"1228":1,"1229":1,"1396":1,"1400":1,"1408":1,"1454":1,"1458":1,"1460":5,"1480":1,"1592":1,"1628":4,"1640":1,"1644":1,"1651":1,"1655":2,"1661":1,"1664":1,"1688":1,"1727":1,"1738":1,"1792":44,"1822":1,"1827":1,"1830":2,"1849":1,"1878":1,"1879":1,"1909":2,"1951":1,"1952":1,"1953":1,"1954":1,"2001":1,"2033":1,"2037":1,"2041":1,"2097":1,"2140":3,"2142":1,"2144":3,"2145":2,"2146":5,"2148":2,"2181":1,"2192":2,"2199":1,"2218":1,"2254":1,"2257":1,"2266":4,"2291":2,"2297":1,"2308":1,"2333":1,"2334":1,"2337":1,"2369":1,"2375":6,"2395":1,"2431":1,"2433":1,"2456":1,"2481":1,"2486":1,"2528":1,"2529":3,"2531":1,"2537":2,"2540":1,"2551":1,"2575":5,"2633":1,"2634":1,"2723":1,"2750":1,"2769":1,"2792":1,"2798":1,"2809":1,"2812":1,"2814":1,"2845":1,"2848":1,"2854":1,"2864":1,"2865":2,"2868":1}}],["mount",{"2":{"2297":1}}],["mounts",{"2":{"2157":2,"2543":1}}],["mouse",{"2":{"1044":3}}],["mozilla",{"2":{"1792":2,"2632":2}}],["monitors",{"2":{"2159":1}}],["monitoring",{"0":{"2068":1},"2":{"966":2,"1100":1,"1181":1,"1259":1,"1277":1,"1278":1,"1386":1,"1403":1,"1619":1,"1762":1,"1781":1,"1791":1,"1792":3,"2045":1,"2055":1,"2068":2,"2071":1,"2401":1,"2634":3,"2635":3}}],["monitor",{"2":{"919":1,"1601":1}}],["months",{"2":{"1065":1,"1071":1,"1382":1,"1400":1,"2297":1,"2398":1}}],["month",{"2":{"415":2,"834":2,"2303":1,"2385":1,"2813":2}}],["monthly",{"2":{"415":2,"678":1,"834":1,"960":2,"2079":1,"2303":1,"2653":1,"2813":2}}],["mocked",{"2":{"1442":1}}],["mocking",{"2":{"1415":1}}],["mocks",{"2":{"865":1,"1075":1}}],["mock",{"2":{"860":1,"865":1,"875":1,"1005":1,"1081":1,"1405":1}}],["moment",{"2":{"852":1,"856":1,"857":1,"864":1,"869":1,"984":1,"1080":1,"1384":1,"1400":1,"1406":1,"1418":1,"1421":1,"2466":1}}],["moving",{"2":{"852":1,"861":2,"864":1,"913":1,"1115":1,"1303":1,"1792":1,"1948":1,"2171":1,"2434":1,"2518":1}}],["moved",{"0":{"2487":1},"2":{"888":1,"2258":2,"2267":1,"2364":3,"2369":1,"2372":1,"2397":1}}],["moves",{"2":{"847":1,"848":1,"849":1,"1049":1}}],["move",{"2":{"841":1,"847":1,"848":1,"849":1,"878":1,"1078":1,"1125":1,"1378":1,"1381":1,"1437":1,"1438":1,"1925":1,"2781":1,"2782":1,"2783":1,"2784":1}}],["mobile",{"2":{"833":1,"835":1,"836":2,"837":1,"1447":1,"1792":1,"2174":1,"2225":1,"2429":1,"2436":1}}],["motivation",{"2":{"695":1,"2873":1}}],["mostly",{"2":{"845":1,"869":1,"1366":1,"1382":1,"2393":1}}],["most",{"2":{"175":1,"297":1,"320":1,"436":1,"683":1,"831":1,"836":1,"837":1,"847":1,"848":1,"852":2,"856":1,"859":5,"861":1,"866":1,"868":1,"869":3,"873":1,"875":1,"876":2,"877":1,"878":1,"913":1,"916":1,"921":1,"946":1,"974":1,"988":1,"992":1,"994":1,"1078":2,"1115":1,"1122":1,"1129":1,"1139":1,"1147":1,"1209":1,"1217":1,"1220":1,"1228":1,"1230":1,"1262":1,"1266":1,"1270":1,"1271":1,"1272":1,"1323":1,"1376":1,"1382":1,"1385":1,"1398":1,"1401":1,"1403":2,"1404":2,"1417":1,"1792":6,"1801":2,"1852":1,"1878":1,"1880":1,"2088":1,"2140":1,"2319":1,"2383":1,"2398":1,"2424":1,"2529":1,"2533":1,"2575":1,"2711":1,"2721":1,"2795":1,"2843":1,"2856":1,"2865":1,"2869":1,"2873":1}}],["modification",{"2":{"2319":1}}],["modifications",{"2":{"989":1,"1148":1}}],["modifiers",{"2":{"2258":1}}],["modifier",{"2":{"1792":1,"2258":1}}],["modifies",{"2":{"863":1}}],["modified",{"2":{"863":1,"1391":1,"1398":1,"2395":1}}],["modify",{"2":{"940":1,"1106":1,"1203":1,"1247":1,"1840":1,"2004":1,"2209":1,"2776":1}}],["modifying",{"2":{"171":1,"868":1}}],["modules",{"2":{"834":1,"868":1,"1037":1,"1193":3,"1385":1,"1386":1,"1414":1,"1559":1,"1792":1,"2484":1}}],["module",{"0":{"724":1,"1414":1},"2":{"719":2,"720":3,"724":4,"868":3,"1026":1,"1193":3,"1386":2,"1411":1,"1414":4,"1416":1,"1559":1,"1560":2,"1571":3,"1574":1,"1581":1,"1792":5,"2247":5,"2484":2}}],["mode=require",{"2":{"1633":2}}],["moderate",{"2":{"1179":1}}],["moderator",{"2":{"21":1}}],["modern",{"2":{"841":2,"845":3,"847":1,"848":2,"865":1,"876":2,"1064":2,"1399":1,"1405":1,"1449":1,"2425":1,"2776":1}}],["mode>",{"2":{"459":2,"498":2,"550":3}}],["modest",{"2":{"873":1,"2270":1,"2621":1}}],["modes",{"0":{"1845":1,"1849":1,"1919":1},"1":{"1920":1,"1921":1},"2":{"320":1,"876":1,"1073":1,"1097":1,"1101":1,"1105":3,"1330":1,"1609":1,"1840":1,"2221":1,"2356":1,"2541":1,"2543":1,"2659":1}}],["modelcontextprotocol",{"2":{"1047":1}}],["modeling",{"2":{"851":1}}],["models",{"2":{"841":13,"845":1,"849":1,"865":1,"1006":1,"1230":1,"1366":1,"1382":1,"1385":1,"1435":1,"1559":2,"1792":4,"1880":1,"2438":1}}],["model",{"0":{"2481":1},"2":{"223":1,"317":1,"835":1,"841":11,"845":17,"848":8,"849":1,"851":4,"852":6,"855":1,"856":1,"857":1,"863":2,"864":4,"865":2,"869":1,"871":4,"873":2,"916":1,"943":1,"1037":1,"1038":1,"1039":1,"1042":1,"1044":2,"1045":1,"1087":1,"1098":1,"1105":1,"1325":1,"1335":3,"1336":1,"1338":4,"1339":4,"1366":1,"1385":1,"1403":2,"1419":1,"1435":1,"1558":1,"1789":1,"1792":6,"1813":2,"1823":1,"2157":1,"2166":1,"2289":1,"2438":2,"2463":1,"2479":1,"2481":1,"2502":1,"2543":1,"2545":1,"2729":1,"2828":1}}],["mode",{"0":{"229":1,"438":1,"439":1,"462":1,"463":1,"464":1,"497":1,"1080":1,"1330":1,"1331":1,"1332":1,"1351":1,"1756":1,"1840":1,"1920":1,"1921":1,"2106":1,"2153":1,"2206":1,"2209":1,"2367":1,"2414":1,"2541":1,"2742":1,"2809":1,"2810":1,"2857":1,"2878":1},"1":{"498":1,"499":1,"500":1,"501":1,"502":1,"503":1,"504":1,"505":1,"506":1,"1331":1,"1332":1,"2154":1,"2155":1,"2156":1,"2157":1,"2158":1,"2159":1,"2415":1,"2416":1,"2542":1,"2543":1},"2":{"125":1,"131":1,"159":1,"226":1,"244":2,"339":1,"346":1,"435":2,"439":2,"448":1,"453":1,"469":2,"484":1,"498":1,"501":1,"502":1,"503":2,"504":3,"505":1,"507":1,"510":2,"511":1,"512":1,"514":2,"598":1,"606":1,"691":1,"741":1,"830":1,"868":1,"876":1,"918":1,"986":1,"1037":2,"1067":1,"1070":2,"1072":1,"1073":2,"1080":1,"1081":1,"1082":1,"1094":2,"1097":1,"1101":1,"1102":4,"1121":1,"1130":1,"1332":1,"1337":1,"1338":1,"1341":1,"1349":1,"1351":3,"1379":1,"1396":1,"1398":1,"1399":1,"1414":1,"1418":1,"1419":2,"1511":1,"1525":1,"1528":2,"1609":1,"1616":2,"1628":2,"1656":6,"1753":1,"1756":1,"1789":1,"1792":12,"1824":1,"1840":2,"1845":1,"1848":2,"1849":1,"1851":3,"1864":1,"1915":2,"1928":2,"2004":1,"2007":3,"2010":2,"2098":1,"2106":3,"2113":1,"2153":1,"2154":1,"2155":1,"2156":1,"2164":1,"2168":1,"2206":1,"2209":1,"2221":2,"2225":1,"2261":1,"2266":2,"2300":1,"2328":3,"2329":2,"2353":1,"2372":1,"2382":3,"2414":2,"2415":5,"2416":1,"2435":1,"2489":1,"2492":1,"2525":1,"2527":2,"2537":2,"2541":1,"2542":1,"2546":3,"2549":6,"2726":1,"2742":1,"2806":2,"2807":3,"2809":2,"2814":1,"2815":1,"2816":1,"2824":1,"2857":1,"2862":2,"2878":1}}],["more",{"0":{"311":1,"939":1},"1":{"312":1,"313":1,"314":1,"940":1,"941":1,"942":1,"943":1,"944":1},"2":{"1":1,"87":1,"88":1,"302":1,"307":1,"347":1,"439":1,"559":1,"658":1,"659":1,"699":1,"703":1,"706":1,"713":1,"831":1,"841":5,"843":2,"844":1,"845":3,"847":2,"851":2,"855":1,"859":2,"869":1,"871":1,"875":1,"903":1,"908":1,"915":1,"916":2,"917":1,"918":1,"920":1,"933":1,"946":2,"997":1,"1037":1,"1073":1,"1077":2,"1086":2,"1115":1,"1119":1,"1123":1,"1129":1,"1133":1,"1140":1,"1150":1,"1163":1,"1176":1,"1185":1,"1187":1,"1197":1,"1254":1,"1305":1,"1349":1,"1363":1,"1385":18,"1386":4,"1390":2,"1401":1,"1402":1,"1403":2,"1404":1,"1405":1,"1406":1,"1409":1,"1428":1,"1511":1,"1625":1,"1628":1,"1792":2,"1801":1,"2160":1,"2175":1,"2177":1,"2246":1,"2255":1,"2258":1,"2266":1,"2388":2,"2393":1,"2421":1,"2422":1,"2466":1,"2530":1,"2562":1,"2682":1,"2792":1,"2834":1}}],["mytype",{"2":{"1792":1}}],["myths",{"0":{"994":1}}],["mycustomprovider",{"2":{"1697":2}}],["mypassword",{"2":{"1616":1}}],["mypassword123",{"2":{"930":2}}],["myuser",{"2":{"1616":1}}],["mydb",{"2":{"1616":1}}],["myapi",{"2":{"1502":1,"1503":1,"1505":1,"1620":1,"1758":1,"2686":1,"2795":1}}],["myapp",{"2":{"1483":1,"1646":2,"1711":2,"1792":1,"1995":1,"2062":4,"2635":1}}],["myapplication",{"2":{"48":3}}],["mysterious",{"2":{"997":1}}],["myself",{"2":{"859":1,"920":2,"1385":1,"1393":1,"1402":1,"1404":1}}],["mysql",{"2":{"834":1,"837":1,"848":4,"918":1}}],["myisam",{"2":{"848":1}}],["myb55+6lw6iiuoi3oplkysoas8j0nniuq+qe2sgaks3r62ngdjrorhx75+zmlc7t",{"2":{"38":2,"57":1,"61":3}}],["my",{"0":{"2718":1,"2721":1,"2722":1,"2725":1,"2739":1,"2740":1,"2741":1,"2799":1},"2":{"16":3,"19":2,"31":1,"38":6,"57":1,"58":2,"61":6,"155":2,"213":3,"215":2,"252":1,"376":2,"378":1,"382":1,"383":3,"402":1,"417":3,"418":5,"419":3,"420":3,"421":3,"441":2,"442":2,"443":2,"444":2,"445":2,"490":1,"511":2,"527":1,"532":2,"582":2,"584":4,"653":2,"654":5,"662":6,"760":1,"770":1,"841":1,"844":2,"857":1,"859":1,"860":2,"918":1,"920":1,"967":1,"977":1,"980":1,"990":1,"1009":1,"1017":1,"1076":1,"1077":2,"1080":1,"1081":2,"1128":1,"1134":1,"1150":1,"1232":1,"1369":1,"1370":2,"1380":1,"1384":2,"1385":3,"1398":2,"1400":5,"1401":2,"1402":3,"1403":5,"1404":8,"1421":1,"1435":1,"1442":1,"1463":2,"1529":1,"1658":1,"1738":2,"1740":3,"1792":8,"1855":1,"1882":1,"1893":1,"1899":2,"1907":1,"1929":1,"1968":1,"1988":1,"2162":1,"2164":1,"2165":2,"2173":1,"2175":2,"2187":4,"2193":9,"2196":5,"2252":2,"2255":3,"2283":4,"2285":2,"2288":3,"2305":1,"2306":2,"2314":1,"2321":3,"2334":1,"2335":1,"2337":2,"2346":1,"2348":4,"2370":2,"2410":1,"2531":1,"2549":6,"2572":1,"2575":1,"2581":3,"2591":6,"2596":1,"2645":1,"2649":1,"2664":1,"2721":1,"2729":1,"2755":4,"2765":1,"2768":2,"2822":3,"2823":1,"2824":9,"2825":4,"2832":2,"2850":2,"2854":1}}],["mimic",{"2":{"1401":1}}],["mimetype=image",{"2":{"1412":1}}],["mimetype=$",{"2":{"1364":1}}],["mimetype",{"2":{"1412":4}}],["mime",{"0":{"758":1,"1943":1},"2":{"747":4,"748":1,"753":4,"757":4,"758":3,"762":1,"772":1,"781":4,"782":4,"784":4,"786":4,"788":4,"879":1,"880":1,"882":1,"1189":1,"1358":4,"1360":1,"1362":3,"1792":5,"1937":2,"1943":1,"2016":1,"2017":1,"2125":2,"2364":1,"2371":1,"2626":1,"2632":2}}],["mid",{"2":{"1265":1,"1266":1,"1402":1,"1792":1,"2463":1,"2466":1,"2537":1,"2615":1}}],["middle",{"2":{"875":1}}],["middlewares",{"2":{"2375":1}}],["middleware",{"0":{"2463":1,"2632":1,"2633":1},"2":{"868":2,"869":2,"873":1,"874":1,"1010":1,"1026":4,"1037":1,"1066":1,"1100":3,"1101":1,"1106":1,"1108":1,"1111":1,"1156":1,"1181":3,"1320":1,"1322":1,"1350":1,"1460":2,"1568":1,"1701":1,"1703":2,"1762":1,"1792":12,"1822":1,"1827":1,"1830":1,"1835":1,"2014":3,"2016":1,"2234":2,"2255":1,"2257":2,"2258":1,"2266":1,"2362":1,"2375":3,"2421":1,"2438":3,"2481":1,"2527":1,"2537":1,"2626":3,"2632":4,"2633":2,"2714":1,"2862":1}}],["mia",{"2":{"913":1}}],["miller",{"2":{"913":1}}],["millions",{"2":{"969":1}}],["million",{"2":{"860":1,"948":1,"953":1,"969":1}}],["millisecond",{"2":{"269":1}}],["milliseconds",{"2":{"133":1,"269":2,"271":1,"274":1,"855":1,"1076":1,"1080":1,"1081":1,"1164":1,"1442":1,"1443":1,"1746":1,"2247":2,"2347":1,"2398":1,"2742":1,"2767":1,"2873":1,"2878":1}}],["microphone",{"2":{"2021":1}}],["microphone=",{"2":{"1792":2,"2021":2,"2029":1,"2632":2}}],["microsoftonline",{"2":{"1694":2,"1792":2}}],["microsoft",{"0":{"1450":1,"1457":1,"1694":1},"1":{"1451":1,"1452":1},"2":{"851":2,"868":1,"1053":1,"1054":2,"1060":1,"1098":4,"1147":1,"1445":2,"1450":1,"1451":1,"1452":1,"1453":1,"1457":1,"1465":1,"1515":2,"1682":1,"1690":1,"1694":2,"1718":1,"1783":1,"1788":1,"1792":26,"1800":1,"1802":3,"1810":1,"1894":1,"1984":1,"2257":4,"2274":2,"2386":4,"2450":1,"2462":1,"2465":2,"2495":1,"2554":3,"2567":2,"2628":1,"2633":1,"2634":1,"2736":2,"2792":1,"2795":2,"2804":1}}],["microservice",{"2":{"1035":1,"1343":1,"2759":1}}],["microservices",{"2":{"451":1,"840":1,"1064":1,"1328":2,"1329":1,"1345":1,"1457":1,"2554":1}}],["microsecond",{"2":{"269":1}}],["microseconds",{"2":{"133":1,"269":2,"271":1,"1746":1,"2347":1,"2398":1,"2767":1}}],["micro",{"2":{"848":1,"1254":1,"2397":1,"2398":1,"2621":1}}],["migrator",{"2":{"2534":1}}],["migratetemplate",{"2":{"2873":2}}],["migrates",{"2":{"2872":1}}],["migrate",{"2":{"1157":1,"1377":1,"1792":1,"1948":2,"2378":1,"2532":1,"2534":2,"2874":2}}],["migrated",{"2":{"1073":1,"2112":1,"2533":1,"2546":1}}],["migration",{"0":{"1124":1,"2874":1},"1":{"1125":1,"1126":1},"2":{"871":1,"924":2,"925":1,"930":1,"934":1,"938":1,"979":1,"982":2,"984":1,"985":2,"986":2,"987":1,"988":1,"1003":1,"1066":1,"1069":1,"1071":2,"1073":1,"1126":1,"1188":1,"1229":1,"1366":2,"1368":2,"1369":1,"1378":1,"1385":2,"1388":1,"1401":1,"1403":1,"1408":1,"1419":1,"1464":1,"1792":1,"1879":1,"2111":3,"2279":1,"2367":1,"2376":1,"2378":1,"2389":1,"2442":1,"2532":3,"2762":1,"2841":1,"2871":1,"2874":2,"2878":1}}],["migrations",{"0":{"1388":1},"2":{"696":1,"867":1,"924":2,"926":3,"932":1,"970":1,"976":2,"997":1,"1005":1,"1082":1,"1098":1,"1207":1,"1247":1,"1378":1,"1792":1,"2092":1,"2111":1,"2114":1,"2162":1,"2167":2,"2168":2,"2532":2,"2534":1,"2740":1,"2858":1,"2874":2}}],["might",{"2":{"334":1,"841":1,"851":1,"866":1,"920":1,"994":1,"1129":1,"1134":1,"1150":1,"1386":2,"1396":2,"1399":1,"1403":1,"1625":1,"1792":2}}],["mirrored",{"2":{"2110":1,"2436":1,"2530":1}}],["mirrors",{"2":{"1924":1,"2483":1,"2509":1}}],["mirroring",{"2":{"1818":1}}],["mirror",{"2":{"436":1,"707":1,"717":1,"1082":1,"1792":1,"2109":1,"2110":1,"2530":1,"2535":1,"2537":1,"2866":1}}],["minworker",{"2":{"2678":1,"2695":1}}],["minworkerthreads",{"2":{"1166":2,"1168":1,"1169":1,"1171":1,"1792":1,"2085":1,"2086":1,"2089":1}}],["mine",{"2":{"1401":1}}],["mind",{"2":{"1382":1,"1385":1,"1394":1,"2750":1,"2835":1}}],["mindset",{"2":{"838":1}}],["minapi",{"2":{"1287":3,"1288":3,"1289":3,"1290":3,"1291":3,"1293":3,"1295":3,"1297":3,"1299":3,"1301":3}}],["mincompletionportthreads",{"2":{"1166":1,"1168":1,"1169":1,"1171":1,"1792":1,"2085":1,"2086":1,"2089":1}}],["minor",{"2":{"884":1,"1071":1,"2450":2,"2461":1}}],["minus",{"2":{"852":1,"2812":1}}],["minute",{"2":{"106":1,"269":1,"861":1,"1069":1,"1147":1,"1150":3,"1162":3,"1177":1,"1458":1,"1515":1,"1525":1,"1529":2,"1769":1,"1792":5,"1958":1,"1959":2,"2060":1,"2061":1,"2211":1,"2253":2,"2274":1,"2279":1,"2375":1,"2470":1,"2471":2,"2634":1,"2635":1}}],["minutes",{"0":{"95":1},"2":{"92":1,"106":1,"107":2,"133":1,"211":1,"269":2,"271":1,"272":1,"273":2,"274":2,"275":1,"310":1,"834":1,"872":4,"911":1,"1067":3,"1071":2,"1098":1,"1101":1,"1143":1,"1147":1,"1149":1,"1150":1,"1177":1,"1206":2,"1214":1,"1232":1,"1234":1,"1316":1,"1322":1,"1382":1,"1403":1,"1430":1,"1447":1,"1451":1,"1453":2,"1454":4,"1458":2,"1463":1,"1464":3,"1511":1,"1515":2,"1519":1,"1520":1,"1521":1,"1523":1,"1525":1,"1529":1,"1639":1,"1731":1,"1792":16,"1991":1,"2211":2,"2212":1,"2264":1,"2274":1,"2279":1,"2375":2,"2376":2,"2377":2,"2380":2,"2554":2,"2580":1,"2737":1,"2745":1,"2756":1,"2833":1}}],["minlength",{"2":{"817":2,"1792":3,"2140":1,"2141":3,"2145":2,"2146":2,"2148":2,"2446":2,"2575":4,"2666":1}}],["minimized",{"0":{"1440":1},"2":{"1440":1,"1441":1,"1442":1}}],["minimum",{"0":{"1008":1,"1166":1},"2":{"627":1,"872":1,"922":1,"1165":1,"1169":1,"1616":2,"1792":7,"1802":1,"1803":1,"1804":1,"1805":1,"1807":1,"2086":2,"2141":1,"2384":1,"2544":1,"2554":1,"2575":1,"2794":1,"2804":1,"2824":1,"2825":1}}],["minimallevels",{"0":{"2544":1},"2":{"1792":3,"1800":1,"1801":1,"1802":1,"1810":1,"2104":1,"2108":1,"2114":1,"2208":2,"2221":1,"2536":2,"2537":1,"2544":2,"2628":1,"2699":1,"2749":1,"2750":1,"2752":2,"2794":1,"2795":3,"2797":1,"2798":1,"2799":1,"2800":1,"2801":1,"2804":3,"2824":2,"2825":1,"2880":1}}],["minimal",{"0":{"298":1,"1269":1,"1292":1,"1318":1,"1408":1,"1579":1,"1802":1,"1892":1},"1":{"1293":1},"2":{"308":2,"577":3,"869":3,"926":2,"945":1,"951":1,"1007":1,"1154":4,"1217":1,"1251":1,"1254":1,"1255":8,"1258":2,"1263":1,"1264":1,"1266":1,"1272":1,"1275":1,"1278":1,"1285":2,"1293":1,"1597":1,"1599":2,"1690":1,"1867":1,"2187":1,"2258":1,"2297":1,"2398":1,"2836":1,"2880":1}}],["min",{"2":{"269":1,"817":2,"872":4,"1026":1,"1285":2,"1429":5,"2146":1,"2147":2,"2148":1,"2211":1}}],["misdeclaration",{"2":{"2394":1}}],["misleading",{"2":{"1569":1,"1912":1,"2491":1,"2520":1}}],["miserable",{"2":{"1079":1}}],["misbehaving",{"2":{"864":1}}],["misunderstandings",{"2":{"841":1}}],["misconfigured",{"2":{"2405":1}}],["misconfiguration",{"2":{"109":1,"1527":1,"2380":1}}],["misconception",{"0":{"842":1,"846":1,"850":1},"1":{"843":1,"844":1,"845":1,"847":1,"848":1,"849":1,"851":1,"852":1,"853":1,"854":1,"855":1,"856":1,"857":1},"2":{"841":3,"845":1,"852":3,"855":1,"859":1,"860":3,"861":1,"863":1,"864":3,"865":1,"993":1,"1210":1}}],["misconceptions",{"2":{"841":2,"859":1,"865":1}}],["mismatch",{"0":{"841":1},"2":{"840":1,"841":7,"851":10,"852":2,"865":1,"871":3,"978":1,"982":2,"2370":1,"2400":1,"2405":1,"2558":1}}],["mismatches",{"2":{"587":1,"997":1,"1005":2,"2551":1}}],["misspelling",{"2":{"2493":1}}],["mission",{"2":{"1354":1}}],["missing",{"0":{"2363":1,"2438":1},"2":{"63":1,"388":1,"390":1,"841":1,"876":1,"897":1,"1079":1,"1399":1,"1460":1,"1521":1,"1524":1,"1527":2,"1792":4,"1861":1,"1862":1,"2038":1,"2039":1,"2040":1,"2184":1,"2223":1,"2242":1,"2258":1,"2267":3,"2352":1,"2375":1,"2412":1,"2417":1,"2430":1,"2443":1,"2447":1,"2476":1,"2481":1,"2497":1,"2529":1,"2558":2,"2615":1,"2666":2,"2684":1,"2685":1,"2723":1,"2732":1,"2797":1,"2824":2,"2825":1,"2835":1,"2865":1,"2868":1,"2876":1,"2881":1}}],["misses",{"2":{"872":1,"1180":1,"2879":1}}],["missed",{"0":{"2392":1},"2":{"872":1,"2226":1,"2406":1,"2407":1,"2442":1}}],["miss",{"2":{"836":1,"1191":1}}],["mistaken",{"2":{"2493":1,"2861":1}}],["mistake",{"2":{"3":1,"214":1,"2502":1}}],["mixing",{"2":{"1179":1,"2540":1,"2546":1,"2845":1}}],["mixed",{"2":{"874":1,"1255":1,"1529":1,"2193":1,"2200":1,"2319":1,"2523":1,"2532":1,"2545":1,"2546":1,"2581":2,"2611":1,"2843":1}}],["mix",{"0":{"22":1},"2":{"394":1,"448":1,"873":1,"2192":1,"2193":1,"2314":1,"2381":1}}],["mitigations",{"2":{"1942":1}}],["mitigated",{"2":{"876":1}}],["mitigate",{"2":{"848":1}}],["mit",{"2":{"2":1,"832":1}}],["m",{"2":{"1":1,"269":1,"280":2,"864":1,"903":5,"1357":15,"1410":7,"1427":2,"1431":2,"1792":2,"2077":1,"2107":1,"2211":1}}],["massive",{"2":{"1384":1}}],["masterpiece",{"2":{"913":1,"919":2,"1385":1,"1386":1,"1401":1}}],["master",{"2":{"844":2,"1224":1,"2398":1}}],["magic",{"0":{"1309":1},"2":{"1358":1}}],["magically",{"2":{"868":1}}],["macbook",{"2":{"1218":1}}],["macos",{"0":{"2784":1},"2":{"1117":1,"2157":1,"2543":1,"2716":1,"2776":1,"2779":2,"2792":1}}],["machine",{"0":{"2667":1},"1":{"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1},"2":{"848":3,"849":1,"1009":1,"1382":1,"1651":1,"1662":2,"1792":1,"2056":1,"2232":1,"2415":1,"2565":1}}],["machinery",{"2":{"844":1,"848":1,"851":1,"852":1,"860":1,"864":1,"865":1,"2534":1}}],["machines",{"2":{"1":2,"848":2,"1382":1}}],["major",{"2":{"1073":1,"1254":1,"1262":1,"2258":1,"2265":1}}],["majority",{"2":{"840":1,"1401":1}}],["malicious",{"2":{"933":3,"1716":1,"1792":2,"2633":1}}],["malformed",{"0":{"2491":1},"2":{"63":1,"879":1,"1041":1,"1824":1,"2007":1,"2223":1,"2328":1,"2402":1,"2481":1,"2492":1,"2498":1,"2648":1}}],["march",{"2":{"1368":1,"1405":1}}],["marched",{"2":{"840":1}}],["margin",{"2":{"1061":1,"1203":1}}],["martinez",{"2":{"913":1}}],["martinfowler",{"2":{"851":1}}],["martin",{"2":{"847":3,"848":1,"851":1,"859":1}}],["marriage",{"2":{"840":2}}],["mariadb",{"2":{"834":1}}],["markup",{"0":{"2399":1},"2":{"2400":1}}],["marker",{"2":{"2265":1,"2495":2}}],["marketing",{"2":{"2869":1}}],["marketplace",{"2":{"1792":1}}],["market",{"2":{"1011":1,"1123":1}}],["marked",{"2":{"284":1,"354":1,"381":1,"408":1,"932":1,"1129":1,"1258":1,"1792":2,"1915":1,"1974":1,"2333":1,"2489":1,"2535":1,"2543":1,"2549":1,"2607":1,"2665":1}}],["marks",{"2":{"435":1,"844":1,"934":1}}],["marking",{"2":{"176":1}}],["mark",{"2":{"12":1,"27":2,"180":1,"223":2,"224":2,"261":1,"266":1,"282":1,"294":1,"296":1,"316":1,"433":1,"589":1,"597":1,"618":1,"743":1,"1398":1,"1410":1,"1465":2,"1467":2,"1484":2,"1486":1,"1531":1,"1699":2,"1748":1,"2186":1,"2292":1,"2293":1,"2344":1,"2685":1,"2828":1,"2838":1}}],["making",{"2":{"624":1,"974":1,"975":1,"995":1,"1012":1,"1014":1,"1382":3,"1774":1,"1792":1,"2314":1,"2347":1,"2384":1,"2572":1,"2577":1,"2868":1}}],["makes",{"0":{"950":1},"1":{"951":1,"952":1,"953":1,"954":1},"2":{"202":1,"215":1,"383":1,"559":1,"586":1,"690":1,"843":1,"847":1,"852":1,"855":1,"864":1,"878":1,"932":1,"943":1,"1015":1,"1017":1,"1038":2,"1045":1,"1063":1,"1067":1,"1068":1,"1075":1,"1105":2,"1133":1,"1139":1,"1150":1,"1162":1,"1309":1,"1372":1,"1376":1,"1377":1,"1382":1,"1398":1,"1400":1,"1404":1,"1426":1,"1427":1,"1567":1,"1571":1,"1738":1,"2112":1,"2156":1,"2283":1,"2337":1,"2348":1,"2388":1,"2393":1,"2459":1,"2466":1,"2468":1,"2479":1,"2508":1,"2529":1,"2539":1,"2540":1,"2542":1,"2677":1,"2768":1,"2806":1,"2811":1,"2829":1,"2833":1}}],["make",{"0":{"2732":1},"2":{"0":1,"201":1,"305":1,"701":1,"841":1,"843":1,"848":1,"851":3,"872":1,"948":1,"961":1,"967":1,"990":1,"994":1,"1005":1,"1015":1,"1075":1,"1106":2,"1133":1,"1180":1,"1189":1,"1254":3,"1373":1,"1386":1,"1404":1,"1431":1,"1447":1,"1449":1,"1572":1,"1640":1,"1720":1,"1723":1,"1733":1,"1792":3,"2040":1,"2106":1,"2264":3,"2425":1,"2537":1,"2723":1,"2759":1,"2768":1,"2782":1,"2783":1,"2784":1,"2824":1,"2841":1,"2869":1}}],["mainly",{"2":{"912":1}}],["mainstream",{"2":{"859":2}}],["maintenance",{"0":{"351":1},"2":{"646":1,"872":1,"974":1,"1008":1,"1206":1,"1281":1,"1316":1,"2372":1,"2434":1,"2532":1,"2534":1,"2833":1}}],["maintaining",{"2":{"907":1,"947":1,"1160":1,"1181":1,"1263":1}}],["maintainability",{"2":{"860":1,"1037":1,"1281":1,"2258":1}}],["maintainable",{"2":{"859":2,"860":2,"946":1,"1385":1}}],["maintain",{"2":{"845":1,"849":2,"851":1,"873":1,"879":1,"911":1,"1006":1,"1009":1,"1046":1,"1108":1,"1119":1,"1390":1,"1406":1,"1422":1,"1519":1,"1574":1,"2380":1}}],["maintains",{"2":{"188":1,"1145":1,"1262":1,"1305":1,"2296":1,"2614":1}}],["maintainer",{"2":{"3":1}}],["maintained",{"2":{"0":1,"1":1,"2":1,"1013":1,"1382":1,"1414":1,"1419":1}}],["main",{"0":{"1766":1,"2426":1},"2":{"332":3,"693":1,"763":1,"773":1,"851":1,"852":1,"881":1,"886":1,"916":1,"1070":1,"1098":1,"1102":1,"1106":1,"1396":1,"1458":2,"1460":3,"1764":1,"1792":9,"1850":1,"1852":1,"1973":3,"2010":2,"2094":1,"2098":1,"2375":6,"2383":2,"2386":1,"2419":1,"2420":1,"2421":4,"2422":6,"2423":2,"2424":2,"2435":4,"2534":1,"2537":1,"2587":3,"2634":1,"2824":1,"2825":1}}],["maxparallelism",{"0":{"2099":1},"2":{"1792":1,"2093":1,"2094":1,"2527":1,"2533":1,"2537":1,"2862":1}}],["maxprice",{"2":{"1038":1,"1040":2,"1044":1,"1571":1}}],["maxframesize",{"2":{"1792":1,"1992":1}}],["maxforwardedqueryparamlength",{"2":{"75":1,"1431":1,"1792":1,"1916":1,"1917":1,"1925":2,"1931":1,"2222":1,"2517":1,"2522":1,"2812":1,"2814":1}}],["maxstreamsperconnection",{"2":{"1792":1,"1992":1}}],["maxreadframesize",{"2":{"1792":1}}],["maxresponsebuffersize",{"2":{"1792":1,"1990":1,"1991":1}}],["maxrequestlinesize",{"2":{"1792":1,"1990":1,"1991":1}}],["maxrequestheaderfieldsize",{"2":{"1792":2,"1992":1,"1993":1}}],["maxrequestheaderstotalsize",{"2":{"1792":1,"1990":1,"1991":1}}],["maxrequestheadercount",{"2":{"1792":1,"1990":1,"1991":1}}],["maxrequestbuffersize",{"2":{"1792":1,"1990":1,"1991":1}}],["maxrequestbodysize",{"2":{"1792":1,"1990":1,"1991":1,"1995":1}}],["maxkeywords",{"2":{"1342":2}}],["maxlength",{"2":{"1342":2,"1792":3,"2140":1,"2141":3,"2145":2,"2146":2,"2446":2,"2575":4,"2666":1}}],["maxconcurrentupgradedconnections",{"2":{"1792":1,"1990":1,"1991":1}}],["maxconcurrentconnections",{"2":{"1792":1,"1990":1,"1991":1,"1995":1}}],["maxcompletionportthreads",{"2":{"1168":1,"1171":1,"1792":1,"2085":1,"2086":1,"2089":1}}],["maxcacheentries",{"2":{"214":1,"1721":1,"1722":1,"1743":1,"1792":1,"2222":1,"2502":1,"2769":2}}],["maxcacheablerows",{"2":{"119":1,"1067":2,"1149":1,"1177":1,"1510":1,"1511":1,"1517":2,"1529":1,"1792":1,"2265":3,"2463":1,"2466":3}}],["maxworkerthreads",{"2":{"1168":1,"1171":1,"1792":1,"2085":1,"2086":1,"2089":1}}],["max",{"2":{"427":1,"542":1,"675":1,"928":4,"929":4,"1026":1,"1068":1,"1098":1,"1138":5,"1139":1,"1169":1,"1332":1,"1335":6,"1338":2,"1339":4,"1362":1,"1363":1,"1429":4,"1459":1,"1792":1,"2094":1,"2146":1,"2147":2,"2202":1,"2207":1,"2375":1,"2769":1,"2775":1,"2814":1}}],["maximumpayloadbytes",{"2":{"2274":1,"2279":1}}],["maximumkeylength",{"2":{"2274":1,"2279":1}}],["maximum",{"0":{"1008":1},"2":{"119":1,"747":1,"975":1,"1038":1,"1177":2,"1511":3,"1589":1,"1616":3,"1633":2,"1639":1,"1722":1,"1792":13,"1804":2,"1917":1,"1951":2,"1952":2,"1953":2,"1954":2,"1991":8,"2086":2,"2099":1,"2125":1,"2141":1,"2265":1,"2575":1}}],["maybe",{"2":{"840":1,"841":1,"844":2,"1221":1,"1394":1,"1399":1,"1400":1,"1401":4,"2497":1}}],["may",{"2":{"106":1,"203":1,"395":1,"454":1,"528":1,"587":1,"704":1,"709":1,"714":1,"768":1,"844":1,"859":1,"866":1,"891":1,"915":1,"916":2,"918":1,"1013":1,"1014":1,"1075":1,"1097":1,"1130":1,"1205":1,"1281":1,"1708":1,"1792":6,"1942":1,"2016":1,"2020":1,"2052":1,"2105":1,"2128":1,"2466":2,"2470":2,"2529":1,"2531":1,"2532":1,"2533":1,"2551":1,"2632":1,"2634":1,"2635":1,"2765":1,"2779":1,"2865":1,"2870":1}}],["manifests",{"2":{"2452":1}}],["manipulate",{"2":{"691":1,"933":2}}],["mandating",{"2":{"1792":1}}],["mandatory",{"2":{"1198":1}}],["mandated",{"2":{"851":1}}],["managing",{"0":{"1419":1},"2":{"1100":1,"1385":1}}],["manages",{"2":{"881":2,"945":1,"1088":1,"1167":1}}],["managed",{"2":{"869":1,"873":1,"926":1,"1013":2,"1015":1,"1084":2,"1088":1,"1094":3,"1101":2,"1107":1,"1115":1,"1123":1,"1127":2,"1230":1,"1792":1,"1880":1}}],["management",{"0":{"2297":1},"2":{"841":1,"869":1,"872":1,"879":1,"880":1,"926":1,"1026":1,"1037":1,"1048":1,"1054":1,"1064":2,"1094":1,"1098":1,"1108":1,"1115":1,"1123":1,"1181":1,"1211":1,"1274":1,"1281":1,"1303":2,"1309":1,"1320":1,"2353":1,"2438":1}}],["managers",{"2":{"865":1}}],["manager",{"2":{"543":1,"544":1,"637":1,"644":1,"663":3,"664":1,"665":1,"1045":4,"1057":2,"1081":1,"2199":1,"2200":3,"2207":2,"2391":2,"2728":1,"2831":2,"2834":3}}],["manage",{"2":{"21":2,"841":1,"845":1,"968":1,"1011":1,"1127":1,"1303":1,"1402":1,"2874":1}}],["man",{"2":{"913":1,"1442":1}}],["manually",{"2":{"879":1,"968":1,"1063":1,"1102":1,"1107":2,"1108":2,"1203":1,"1378":1,"1388":1,"1393":2,"1419":1,"2103":1,"2257":1,"2590":1,"2758":1,"2779":1,"2881":1}}],["manual",{"0":{"2779":1},"2":{"803":1,"835":1,"909":1,"1000":1,"1006":2,"1008":2,"1027":1,"1036":2,"1049":1,"1097":1,"1098":1,"1101":1,"1108":1,"1181":2,"1322":1,"1366":2,"1393":1,"1419":1,"2638":1}}],["many",{"0":{"1300":1},"1":{"1301":1},"2":{"87":1,"158":1,"480":1,"576":1,"706":1,"841":2,"852":1,"859":1,"869":1,"872":3,"913":2,"918":2,"1013":1,"1067":1,"1101":1,"1125":1,"1128":1,"1152":1,"1157":1,"1167":1,"1169":1,"1205":1,"1254":1,"1255":3,"1258":1,"1285":2,"1301":1,"1385":1,"1401":1,"1402":1,"1403":4,"1405":2,"1516":2,"1594":1,"1624":1,"1706":1,"1792":6,"1948":1,"1949":1,"1958":3,"1959":1,"1960":1,"2193":1,"2257":1,"2265":1,"2270":1,"2398":1,"2438":1,"2468":1,"2470":2,"2471":1}}],["maps",{"2":{"168":1,"395":1,"833":2,"834":1,"837":1,"1058":1,"1106":1,"1410":1,"1672":1,"1792":1,"1862":1,"2795":1}}],["mappers",{"2":{"873":1,"1435":1}}],["mapped",{"0":{"448":1,"2394":1},"2":{"60":1,"61":1,"62":1,"168":1,"197":1,"376":1,"845":2,"861":1,"937":1,"1071":1,"1188":1,"1538":1,"1792":2,"1802":1,"1822":1,"1824":1,"1922":1,"1923":1,"2226":1,"2366":4,"2384":1,"2394":2,"2395":1,"2509":1,"2540":1,"2597":1,"2733":1,"2797":1,"2824":2,"2825":1,"2845":1}}],["mappings",{"0":{"1674":1},"2":{"299":1,"879":1,"880":1,"1006":1,"1111":1,"1240":1,"1678":1,"2221":1,"2529":1,"2540":1,"2845":1}}],["mapping",{"0":{"168":1,"376":1,"802":1,"952":1,"1390":2,"1538":1,"1541":1,"1542":1,"1545":1,"1546":1,"1671":1,"1672":1},"1":{"1539":1,"1540":1,"1541":1,"1542":1,"1543":1,"1544":1,"1545":1,"1546":1,"1547":1,"1548":1,"1549":1,"1550":1,"1551":1},"2":{"32":1,"165":1,"168":2,"170":1,"304":1,"306":3,"315":1,"376":1,"384":1,"737":1,"740":2,"742":2,"804":2,"806":2,"835":1,"841":3,"845":1,"849":1,"851":7,"860":1,"865":1,"867":1,"869":1,"871":2,"874":1,"875":1,"947":1,"968":1,"1098":1,"1109":2,"1111":5,"1378":1,"1390":3,"1399":3,"1429":1,"1475":1,"1477":3,"1484":2,"1485":1,"1506":2,"1507":1,"1540":1,"1544":1,"1549":2,"1668":1,"1670":2,"1671":1,"1673":1,"1788":2,"1792":6,"2170":1,"2184":1,"2189":1,"2242":1,"2253":1,"2255":2,"2256":1,"2258":1,"2267":2,"2320":1,"2322":2,"2324":1,"2329":1,"2384":1,"2394":2,"2498":1,"2537":1,"2546":1,"2733":2,"2849":1}}],["map",{"0":{"2795":1},"2":{"43":1,"66":1,"315":1,"821":1,"831":1,"833":1,"841":1,"852":1,"875":1,"937":1,"1011":1,"1026":1,"1077":1,"1111":2,"1122":1,"1189":1,"1193":1,"1366":1,"1399":2,"1431":1,"1540":2,"1542":1,"1544":2,"1546":1,"1551":2,"1574":2,"2189":1,"2221":1,"2242":1,"2255":3,"2258":1,"2481":1,"2723":2}}],["maturity",{"2":{"1127":1}}],["mature",{"2":{"1122":1,"1405":1}}],["math",{"2":{"894":1,"1361":1,"1410":1}}],["mathematical",{"2":{"852":1,"1129":1}}],["materialization",{"2":{"874":2}}],["materialized",{"2":{"351":7,"949":1,"2432":1}}],["materials",{"2":{"860":1}}],["matrix",{"0":{"1093":1},"1":{"1094":1,"1095":1,"1096":1,"1097":1,"1098":1,"1099":1,"1100":1,"1101":1,"1102":1,"1103":1,"1104":1,"1105":1,"1106":1,"1107":1,"1108":1,"1109":1,"1110":1},"2":{"320":1,"918":1,"2417":1,"2588":3}}],["matchall",{"2":{"1431":1}}],["match",{"2":{"73":1,"102":1,"108":1,"305":1,"309":1,"389":1,"447":1,"473":1,"480":2,"524":1,"528":2,"570":1,"587":1,"639":1,"816":1,"984":2,"995":1,"1060":1,"1067":1,"1076":1,"1148":1,"1150":1,"1178":1,"1326":1,"1386":1,"1388":1,"1390":1,"1414":1,"1416":1,"1419":1,"1523":4,"1526":1,"1576":1,"1581":1,"1792":9,"1910":2,"2075":1,"2077":1,"2096":1,"2097":1,"2140":1,"2141":1,"2181":2,"2218":1,"2250":1,"2252":1,"2356":1,"2380":5,"2394":1,"2411":1,"2424":1,"2433":2,"2452":1,"2456":1,"2486":1,"2504":1,"2537":1,"2539":1,"2540":2,"2551":1,"2558":1,"2575":1,"2590":1,"2611":1,"2634":1,"2692":1,"2845":2,"2880":1}}],["matchers",{"2":{"2546":1}}],["matched",{"2":{"31":1,"38":2,"74":3,"299":1,"388":1,"395":1,"448":1,"801":1,"818":1,"1067":1,"1378":1,"1792":4,"1862":1,"1898":1,"1922":1,"2004":1,"2314":1,"2380":1,"2411":1,"2431":1,"2483":1,"2493":2,"2518":2,"2522":1,"2535":1,"2546":1,"2678":1,"2695":1,"2840":1,"2841":1}}],["matches",{"0":{"2314":1,"2518":1},"2":{"19":1,"20":1,"22":1,"175":2,"179":1,"213":1,"298":1,"388":3,"527":1,"683":1,"684":1,"685":1,"871":1,"872":1,"916":2,"1067":1,"1170":1,"1243":1,"1419":1,"1422":1,"1427":1,"1523":3,"1741":1,"1792":14,"1823":1,"1861":1,"1909":2,"2002":4,"2007":1,"2009":1,"2176":1,"2222":1,"2229":1,"2283":1,"2289":2,"2314":1,"2328":1,"2330":1,"2347":1,"2370":1,"2371":6,"2380":1,"2392":2,"2423":1,"2431":2,"2452":1,"2518":1,"2519":1,"2529":1,"2536":1,"2537":1,"2539":3,"2546":1,"2678":2,"2695":2,"2723":1,"2733":1,"2831":1,"2835":1,"2841":2,"2865":1,"2877":1,"2881":1}}],["matching",{"0":{"74":1,"407":1,"641":1,"1314":1,"2371":1,"2493":1},"1":{"75":1},"2":{"25":1,"74":1,"106":1,"156":1,"165":1,"212":1,"214":2,"258":1,"305":1,"308":1,"309":1,"376":1,"407":1,"544":1,"638":2,"641":4,"643":1,"644":1,"646":1,"650":1,"668":2,"687":1,"709":1,"801":1,"809":1,"937":1,"983":1,"1067":1,"1098":1,"1101":1,"1103":1,"1181":1,"1305":2,"1309":1,"1314":2,"1368":1,"1390":2,"1414":1,"1430":1,"1725":1,"1733":1,"1743":2,"1792":4,"1824":1,"1838":4,"1898":1,"1921":1,"1922":1,"1948":1,"2002":1,"2036":1,"2106":1,"2157":1,"2183":1,"2223":1,"2228":1,"2250":1,"2252":2,"2264":1,"2270":2,"2277":1,"2313":1,"2314":1,"2318":1,"2322":1,"2330":1,"2365":1,"2371":2,"2372":1,"2378":2,"2443":1,"2451":1,"2490":2,"2491":1,"2502":1,"2537":2,"2539":1,"2543":1,"2546":1,"2549":1,"2555":1,"2614":1,"2641":1,"2677":1,"2678":1,"2722":1,"2723":2,"2732":1,"2764":1,"2802":1,"2828":2,"2831":2}}],["matters",{"2":{"319":1,"636":1,"843":1,"848":1,"861":1,"872":1,"1146":1,"1185":1,"1354":1,"1417":1,"1516":1,"2265":1,"2466":1,"2486":1}}],["matter",{"0":{"870":1,"1704":1},"1":{"871":1,"872":1,"873":1,"874":1,"875":1},"2":{"23":1,"1167":1,"1281":1,"1393":1,"1401":1,"1402":1,"1409":1,"2207":1,"2429":1}}],["made",{"0":{"1":1,"878":1,"1043":1,"1064":1},"1":{"879":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1,"1065":1},"2":{"216":1,"424":1,"791":1,"840":1,"848":1,"851":1,"852":3,"857":2,"876":1,"1015":1,"1037":1,"1078":1,"1332":1,"1382":1,"1385":1,"1398":1,"1404":2,"1409":1,"1608":1,"1792":1,"2019":1,"2134":1,"2264":1,"2272":1,"2307":1,"2378":1,"2440":1,"2500":1,"2518":1,"2527":1,"2726":1,"2868":1,"2871":1}}],["dll",{"2":{"2157":1,"2543":2}}],["dns",{"2":{"1792":1,"1823":1,"2481":1,"2763":1}}],["d4d4d4",{"2":{"1792":1,"2073":1,"2075":1,"2080":1}}],["dpapi",{"0":{"1662":1},"2":{"1651":2,"1659":1,"1662":2,"1792":3,"2297":1,"2565":5}}],["dpapilocalmachine",{"2":{"1650":1,"1651":1,"1662":2,"1792":1,"2565":3}}],["django",{"2":{"1037":1,"1255":1,"1257":1,"1265":1,"1271":2,"1277":1,"1278":1,"1279":1,"1281":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"2534":1,"2874":1}}],["dto",{"2":{"867":1,"869":2,"871":2,"873":4,"874":1,"875":1,"1366":1,"1382":1,"1406":1,"1419":1,"1422":1}}],["dtos",{"2":{"856":1,"869":1,"873":3,"1011":1,"1366":1,"1401":1,"1409":1,"1435":1}}],["dwell",{"2":{"847":1}}],["duties",{"2":{"2543":1}}],["dusty",{"2":{"1435":1}}],["duedate",{"2":{"1391":2}}],["due",{"2":{"1391":1}}],["dumping",{"2":{"2415":1,"2679":1}}],["dumped",{"2":{"2389":1}}],["dumps",{"2":{"2364":1}}],["dump",{"2":{"1365":1,"1441":1,"2111":1,"2414":1,"2415":1,"2416":1}}],["dumb",{"2":{"921":1}}],["duplicating",{"2":{"1193":1}}],["duplication",{"0":{"1191":1},"2":{"2247":1}}],["duplicate",{"0":{"2326":1},"2":{"865":1,"1249":1,"1792":1,"2109":1,"2267":1,"2326":1,"2500":1,"2530":1,"2679":1}}],["duplicated",{"2":{"838":1,"865":1,"1043":1,"1191":2,"1825":1,"2481":1}}],["dual",{"2":{"1047":1,"2166":1,"2479":1}}],["duckdb",{"2":{"834":1,"837":1,"848":1}}],["durability",{"2":{"852":1}}],["durable",{"2":{"852":2,"857":1}}],["durations",{"2":{"1071":1,"1464":1,"2376":1}}],["duration",{"0":{"1769":1,"2210":1},"1":{"2211":1,"2212":1},"2":{"110":1,"122":1,"217":1,"232":1,"267":1,"1255":1,"1447":1,"1535":1,"1537":1,"1764":1,"1792":3,"1951":1,"1952":1,"2047":1,"2052":1,"2210":1,"2634":1,"2635":1}}],["during",{"2":{"174":1,"366":2,"582":1,"587":1,"668":1,"786":1,"788":1,"851":1,"861":1,"938":1,"953":1,"984":1,"986":1,"987":1,"997":1,"1001":1,"1073":1,"1094":1,"1129":1,"1152":1,"1153":1,"1164":1,"1165":1,"1171":1,"1180":1,"1210":2,"1225":1,"1236":1,"1239":1,"1254":2,"1259":1,"1277":1,"1304":1,"1309":1,"1324":3,"1325":1,"1326":1,"1386":3,"1396":1,"1400":1,"1401":1,"1417":1,"1618":1,"1685":1,"1792":2,"1875":1,"1886":1,"1888":1,"1974":1,"1983":1,"2007":2,"2088":1,"2092":1,"2336":1,"2337":3,"2363":1,"2366":1,"2372":1,"2397":1,"2428":1,"2466":1,"2554":1,"2607":1,"2615":1,"2786":1,"2847":1}}],["ddd",{"0":{"1443":1},"2":{"839":1,"841":1,"844":1,"845":1,"851":5,"863":1,"965":1,"1403":1,"1435":1}}],["dd",{"2":{"776":2,"889":2,"892":2,"963":4,"1792":5,"1810":1,"2077":3,"2080":1,"2123":2,"2130":4,"2652":3}}],["ddl",{"2":{"206":1,"854":1,"1075":1,"1079":1,"1082":1,"1098":2,"1368":2,"1369":1,"1378":1,"1385":1,"1388":2,"1727":1,"2532":1,"2820":1,"2858":1,"2869":1,"2871":1,"2873":1,"2876":1}}],["dml",{"2":{"624":1,"2342":1}}],["db=app",{"2":{"2873":1}}],["dbg",{"2":{"2011":1,"2354":1,"2366":4,"2797":2,"2824":10,"2825":9}}],["dbas",{"2":{"1013":1}}],["dba",{"2":{"864":1,"926":1,"1792":2,"2059":2,"2635":2}}],["dbnull",{"2":{"188":1,"379":1,"1523":1,"1792":1,"2140":1,"2284":1,"2296":1,"2333":1,"2380":1,"2575":1}}],["db",{"0":{"531":1},"2":{"147":1,"396":1,"527":1,"534":1,"836":3,"872":1,"876":1,"945":2,"970":1,"997":2,"1005":1,"1047":1,"1102":4,"1104":1,"1106":1,"1173":3,"1176":3,"1177":5,"1320":1,"1325":1,"1333":3,"1342":1,"1349":2,"1366":2,"1380":1,"1431":1,"1433":2,"1608":1,"1616":1,"1627":3,"1629":6,"1738":2,"1792":1,"2098":1,"2111":2,"2161":1,"2162":1,"2168":2,"2266":3,"2272":1,"2284":1,"2463":1,"2466":2,"2495":1,"2512":1,"2533":2,"2534":2,"2687":4,"2807":1,"2809":1,"2871":1,"2872":2,"2873":1}}],["dynamically",{"2":{"646":1,"1406":1,"1420":1,"1618":1,"1620":1,"1708":1,"1792":2,"2633":1}}],["dynamic",{"0":{"156":1,"392":1,"493":1,"544":1,"646":1,"679":1,"880":1,"888":1,"1316":1,"1374":1,"1525":1,"2764":1},"1":{"157":1},"2":{"123":1,"156":1,"230":1,"396":1,"452":1,"493":1,"674":1,"679":1,"680":1,"725":1,"784":2,"790":1,"880":1,"883":1,"957":1,"959":1,"960":1,"987":1,"1101":1,"1105":1,"1407":1,"1417":1,"1422":1,"1582":1,"1684":1,"1792":1,"2079":1,"2653":1,"2759":1}}],["dry",{"2":{"1190":1}}],["dr",{"0":{"1074":1}}],["drift",{"2":{"869":1,"871":2,"872":2,"873":1,"875":1,"1006":1,"1046":1,"1382":1,"1400":1,"1406":1,"1407":1,"1409":2,"2518":1}}],["drifting",{"2":{"865":1}}],["drive",{"2":{"2017":1,"2185":1}}],["driver",{"2":{"1274":1,"1382":1,"2394":2,"2540":1}}],["drives",{"2":{"1043":1,"2106":1,"2154":1,"2185":1,"2432":1,"2435":1,"2472":1}}],["driven",{"0":{"1197":1},"2":{"302":1,"840":1,"841":3,"843":1,"851":5,"860":1,"863":2,"873":1,"1066":1,"1104":1,"1328":1,"1351":1,"1405":1,"1416":1,"1852":1,"2171":1,"2383":1,"2389":2,"2412":1,"2434":1,"2546":1}}],["driving",{"0":{"1044":1},"2":{"327":1,"1038":1,"1834":1,"2166":1,"2479":1}}],["dramatically",{"2":{"1266":1,"1324":1,"1440":1,"2398":1}}],["drawbacks",{"2":{"1012":1}}],["drawn",{"2":{"864":1}}],["dragging",{"2":{"948":1}}],["draft",{"0":{"839":1},"1":{"840":1,"841":1,"842":1,"843":1,"844":1,"845":1,"846":1,"847":1,"848":1,"849":1,"850":1,"851":1,"852":1,"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"859":1,"860":1,"861":1,"862":1,"863":1,"864":1,"865":1},"2":{"101":1,"839":1,"1399":2,"2380":1,"2670":1}}],["drew",{"2":{"852":1}}],["dressed",{"2":{"851":1}}],["droptemplate",{"2":{"2873":1}}],["droptestdb",{"2":{"2873":1}}],["droptestdatabase",{"2":{"1792":1,"2111":1,"2532":1}}],["dropdatabase",{"2":{"2111":1,"2112":1,"2532":2,"2534":2,"2871":2,"2872":2}}],["drops",{"2":{"1324":1,"1431":1,"1440":1,"2110":1,"2157":1,"2530":1,"2533":1,"2537":1,"2543":2,"2740":1,"2758":1,"2869":1,"2872":1}}],["dropisolateddb1",{"2":{"2873":2}}],["dropisolateddb",{"2":{"695":1,"705":2,"711":1,"715":2,"2533":1}}],["drop",{"2":{"449":1,"584":1,"650":1,"697":1,"705":1,"714":1,"835":1,"857":1,"876":1,"924":1,"925":1,"977":1,"1076":2,"1079":1,"1086":1,"1151":1,"1368":1,"1376":2,"1395":1,"1396":2,"1424":1,"1427":1,"1436":1,"1441":1,"1443":1,"1447":1,"1449":1,"1576":1,"1792":3,"1898":1,"2098":1,"2106":1,"2111":3,"2156":1,"2337":1,"2378":1,"2397":2,"2428":1,"2431":1,"2434":2,"2466":1,"2532":4,"2533":1,"2534":3,"2542":1,"2546":1,"2758":2,"2855":1,"2869":3,"2871":3,"2872":1,"2873":1,"2878":1,"2881":1}}],["dropping",{"2":{"171":1,"835":1,"1792":1,"1948":1,"2425":1}}],["dropped",{"2":{"109":1,"872":1,"1080":1,"1449":1,"1527":3,"1569":1,"1581":1,"1792":1,"1957":1,"2106":2,"2379":1,"2380":1,"2425":1,"2505":1,"2537":2,"2546":1,"2742":1,"2878":2}}],["dark",{"2":{"2535":1}}],["damage",{"2":{"1185":1}}],["damn",{"2":{"1132":1,"1384":2}}],["dangerous",{"0":{"941":1},"2":{"973":1}}],["dance",{"2":{"849":1,"1379":1}}],["davis",{"2":{"913":1,"919":2}}],["david",{"2":{"913":1,"919":2}}],["dalloway",{"2":{"913":1}}],["dapper",{"2":{"869":1,"1255":1,"1257":1,"1265":1,"1269":1,"1277":1,"1279":1,"1281":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["datname",{"2":{"2758":2}}],["dateonly",{"2":{"2224":1,"2453":2}}],["dated",{"2":{"1400":1}}],["datestr",{"2":{"961":3}}],["dates",{"2":{"952":2,"963":1}}],["daterange",{"2":{"864":1}}],["dateend",{"2":{"845":1}}],["datebegin",{"2":{"845":1}}],["datetimekind",{"2":{"2451":1}}],["datetimeformat",{"2":{"1792":1}}],["datetimestyles",{"2":{"2451":3}}],["datetimes",{"2":{"952":1}}],["datetime",{"0":{"963":1,"2451":1},"2":{"776":2,"788":3,"892":2,"952":1,"1792":4,"2077":1,"2130":1,"2224":1,"2451":3,"2452":2,"2453":2,"2455":1,"2621":1,"2652":1}}],["date=2024",{"2":{"372":2,"2319":2,"2846":2}}],["date",{"2":{"106":1,"372":2,"427":1,"585":1,"679":2,"723":2,"776":2,"788":3,"839":1,"860":2,"864":3,"888":9,"892":2,"897":1,"952":1,"956":5,"961":1,"996":2,"1073":4,"1092":1,"1179":7,"1187":2,"1188":2,"1189":1,"1191":1,"1192":3,"1193":3,"1255":1,"1320":1,"1335":1,"1373":2,"1374":4,"1391":1,"1398":1,"1792":3,"2130":1,"2221":1,"2222":1,"2223":1,"2224":1,"2225":1,"2226":1,"2227":1,"2228":1,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2240":1,"2319":2,"2380":2,"2445":1,"2453":5,"2621":1,"2731":2,"2823":1,"2824":1,"2845":6,"2846":2}}],["datadog",{"2":{"2804":1}}],["data2",{"2":{"2008":1}}],["data1",{"2":{"2008":1}}],["datasources",{"2":{"2266":2}}],["datasource",{"2":{"1792":2,"2364":1,"2824":1,"2825":1}}],["datasets",{"2":{"87":1,"88":1,"918":1,"919":1,"1133":1}}],["dataset",{"2":{"84":1,"949":1,"951":1}}],["datacell",{"2":{"951":1}}],["databa",{"2":{"913":1}}],["databasepollinginterval",{"0":{"2156":1},"2":{"1792":1,"2106":1,"2154":2,"2542":1,"2878":1}}],["database`",{"2":{"1792":1}}],["databasecheckname",{"2":{"1792":1,"2634":1}}],["database=myapp",{"2":{"1771":2,"2063":2}}],["database=mydb",{"2":{"1117":2,"1173":1,"1176":2,"1177":2,"1613":1,"1614":2,"1627":1,"1629":2,"2266":1,"2686":1,"2689":1,"2691":1,"2699":1,"2718":1,"2823":2,"2824":3,"2825":2}}],["database=analytics",{"2":{"1614":1}}],["database=appdb",{"2":{"2534":1}}],["database=app",{"2":{"695":2,"1792":1,"2098":2,"2534":1,"2872":1,"2873":3,"2874":1}}],["database=",{"2":{"937":1,"1607":1,"1615":1,"1633":2,"1792":1,"2687":1}}],["database=postgres",{"2":{"695":1,"2098":1,"2534":1,"2872":1,"2873":1}}],["databases",{"0":{"2758":1},"2":{"150":1,"696":1,"841":1,"844":2,"848":2,"859":1,"918":1,"921":1,"977":1,"980":1,"990":1,"993":1,"994":1,"1013":1,"1075":3,"1081":1,"1082":2,"1094":1,"1130":1,"1172":1,"1178":2,"1205":1,"1403":1,"1614":1,"1789":1,"1792":1,"2092":1,"2103":1,"2114":1,"2167":1,"2221":1,"2534":1,"2545":1,"2546":1,"2740":1,"2758":1,"2869":1,"2881":1}}],["database",{"0":{"148":1,"855":1,"921":1,"977":1,"993":1,"1003":1,"1075":1,"1197":1,"1213":1,"1331":1,"1503":1,"1655":1,"1770":1,"1781":1,"2504":1,"2534":1,"2542":1,"2718":1,"2740":1,"2741":1,"2868":1,"2872":1,"2873":1},"1":{"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"1504":1,"1771":1},"2":{"37":1,"41":1,"87":1,"144":1,"151":1,"153":1,"165":1,"173":1,"182":1,"184":1,"188":1,"215":1,"226":1,"236":1,"307":3,"357":1,"362":1,"424":1,"436":1,"438":2,"549":1,"569":1,"587":1,"618":1,"625":1,"694":1,"695":1,"696":1,"697":2,"705":3,"711":2,"714":1,"715":1,"777":1,"807":2,"818":1,"832":2,"834":2,"836":3,"837":1,"840":1,"841":5,"844":7,"845":5,"847":3,"848":1,"849":2,"851":5,"852":4,"855":1,"856":1,"857":1,"859":2,"860":1,"864":2,"865":3,"868":1,"871":1,"872":1,"873":1,"874":2,"875":1,"876":3,"877":1,"903":1,"909":1,"916":1,"917":1,"918":4,"919":1,"920":1,"921":2,"922":2,"926":1,"940":1,"941":1,"943":1,"946":2,"948":2,"966":1,"970":1,"972":1,"973":2,"974":6,"975":1,"982":1,"985":2,"986":1,"993":2,"994":3,"997":1,"1002":1,"1005":3,"1006":2,"1007":1,"1008":1,"1009":2,"1010":1,"1013":2,"1014":7,"1015":4,"1033":1,"1035":1,"1037":6,"1049":5,"1054":4,"1065":1,"1071":1,"1073":1,"1074":1,"1075":10,"1078":2,"1079":5,"1080":3,"1082":2,"1083":1,"1086":2,"1091":1,"1094":4,"1095":2,"1098":1,"1099":1,"1100":1,"1104":3,"1105":3,"1106":2,"1107":3,"1108":1,"1113":1,"1115":1,"1123":1,"1127":1,"1129":3,"1133":1,"1136":1,"1141":2,"1147":2,"1148":1,"1151":1,"1152":1,"1161":1,"1167":3,"1169":1,"1178":1,"1180":2,"1184":1,"1185":3,"1190":1,"1193":1,"1203":1,"1205":2,"1206":3,"1208":1,"1209":2,"1210":1,"1217":2,"1224":2,"1250":2,"1255":2,"1258":1,"1268":1,"1269":1,"1276":1,"1280":1,"1281":1,"1303":1,"1320":1,"1324":2,"1325":1,"1328":2,"1329":3,"1331":1,"1337":1,"1342":1,"1347":2,"1349":1,"1351":3,"1353":1,"1354":3,"1357":2,"1363":2,"1365":1,"1366":5,"1368":2,"1370":1,"1379":1,"1382":3,"1386":4,"1388":2,"1394":1,"1396":1,"1398":1,"1399":2,"1402":1,"1403":10,"1405":4,"1406":1,"1407":1,"1408":1,"1409":2,"1419":3,"1421":3,"1422":2,"1432":1,"1435":1,"1439":1,"1442":2,"1466":1,"1470":1,"1504":1,"1515":1,"1536":1,"1586":1,"1601":1,"1608":1,"1609":1,"1611":1,"1612":1,"1613":1,"1616":2,"1619":1,"1621":1,"1624":1,"1630":1,"1632":1,"1634":1,"1651":3,"1653":1,"1655":2,"1661":1,"1663":2,"1664":2,"1678":1,"1700":1,"1738":1,"1749":1,"1753":3,"1756":2,"1758":2,"1764":1,"1767":2,"1768":2,"1769":1,"1770":2,"1771":1,"1774":2,"1778":1,"1781":1,"1783":1,"1787":1,"1789":1,"1790":1,"1792":38,"1794":1,"1797":1,"1799":1,"1805":2,"1812":1,"1818":1,"1840":1,"1853":1,"1865":1,"1867":1,"1868":1,"1874":2,"1898":1,"1920":1,"1928":1,"1974":1,"1997":1,"2040":1,"2047":1,"2059":1,"2060":2,"2063":1,"2071":1,"2087":1,"2091":1,"2098":3,"2103":1,"2106":3,"2110":2,"2111":5,"2112":2,"2121":1,"2137":2,"2149":1,"2153":3,"2154":1,"2155":1,"2156":3,"2157":2,"2158":1,"2161":1,"2162":1,"2164":2,"2165":1,"2167":4,"2168":1,"2171":1,"2177":4,"2194":1,"2222":1,"2224":1,"2254":1,"2257":1,"2274":1,"2282":1,"2291":1,"2292":1,"2296":2,"2297":3,"2307":1,"2320":1,"2337":1,"2367":1,"2384":1,"2456":2,"2459":1,"2463":1,"2464":1,"2477":1,"2481":1,"2500":1,"2504":1,"2525":1,"2527":1,"2530":2,"2531":2,"2532":8,"2533":6,"2534":7,"2536":1,"2537":3,"2541":4,"2542":2,"2543":2,"2545":2,"2546":3,"2549":1,"2565":1,"2575":2,"2580":1,"2596":1,"2607":1,"2608":2,"2615":6,"2621":1,"2634":9,"2635":5,"2669":1,"2672":1,"2686":1,"2699":1,"2701":1,"2706":1,"2709":1,"2717":1,"2721":1,"2722":1,"2724":1,"2740":1,"2742":3,"2755":1,"2758":2,"2766":1,"2772":2,"2774":1,"2785":1,"2802":1,"2803":2,"2806":1,"2807":1,"2810":1,"2815":2,"2816":1,"2818":1,"2819":2,"2820":1,"2822":1,"2823":1,"2825":1,"2840":1,"2850":1,"2854":1,"2857":1,"2858":1,"2862":2,"2867":3,"2869":1,"2871":5,"2872":5,"2873":10,"2874":1,"2875":1,"2878":4,"2881":1}}],["datagrip",{"2":{"876":1}}],["data=",{"2":{"383":1,"2348":1}}],["dataprotection",{"0":{"2353":1,"2565":1},"2":{"182":1,"1054":1,"1650":1,"1653":1,"1654":1,"1655":1,"1656":1,"1657":1,"1658":1,"1660":1,"1661":1,"1662":1,"1663":2,"1792":1,"2291":1,"2297":7,"2353":3,"2551":2,"2565":3,"2701":1,"2757":1}}],["data",{"0":{"452":1,"775":1,"842":1,"850":1,"900":1,"987":1,"992":1,"1054":1,"1241":1,"1284":1,"1286":1,"1347":1,"1649":1,"1890":1,"2291":1,"2734":1,"2757":1},"1":{"843":1,"844":1,"845":1,"851":1,"852":1,"853":1,"854":1,"855":1,"856":1,"857":1,"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1650":1,"1651":1,"1652":1,"1653":1,"1654":1,"1655":1,"1656":1,"1657":1,"1658":1,"1659":1,"1660":1,"1661":1,"1662":1,"1663":1,"1664":1,"1665":1,"1666":1,"1667":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1},"2":{"22":1,"48":2,"83":1,"85":1,"86":1,"94":1,"104":2,"106":2,"107":1,"168":1,"175":1,"182":2,"184":1,"188":1,"189":1,"191":1,"206":3,"209":8,"211":2,"213":3,"214":4,"215":2,"263":1,"264":1,"265":1,"278":1,"334":4,"383":1,"401":6,"415":2,"423":1,"426":1,"427":1,"436":7,"438":3,"439":1,"445":2,"446":6,"447":1,"449":1,"452":5,"453":1,"454":2,"467":5,"491":2,"492":1,"493":3,"503":3,"510":3,"521":3,"527":2,"533":1,"540":2,"566":1,"584":1,"586":1,"595":1,"621":2,"666":1,"678":1,"679":3,"686":1,"722":3,"723":4,"732":1,"762":1,"763":1,"764":2,"765":1,"766":1,"772":1,"773":2,"774":2,"775":1,"776":1,"777":1,"779":1,"782":1,"784":1,"788":1,"828":1,"832":1,"834":1,"840":1,"841":14,"843":3,"844":6,"845":3,"847":3,"848":8,"849":1,"851":13,"852":9,"857":2,"859":3,"860":8,"861":5,"863":2,"864":2,"865":1,"868":2,"869":4,"871":1,"877":1,"878":1,"879":1,"880":1,"881":3,"883":3,"884":1,"887":1,"888":1,"893":2,"903":3,"904":1,"909":1,"911":1,"913":3,"916":1,"918":1,"921":1,"922":1,"924":1,"938":1,"940":1,"941":1,"948":3,"956":1,"957":1,"959":2,"960":2,"961":3,"964":1,"965":1,"971":1,"974":2,"979":2,"980":1,"986":3,"987":2,"988":2,"989":3,"990":2,"991":2,"992":1,"1003":1,"1010":2,"1011":2,"1015":3,"1018":1,"1021":6,"1026":8,"1030":1,"1034":3,"1035":3,"1037":2,"1047":1,"1054":16,"1060":3,"1066":2,"1070":1,"1076":2,"1091":1,"1096":1,"1098":4,"1100":1,"1105":4,"1107":2,"1111":1,"1114":1,"1121":1,"1122":1,"1138":1,"1139":5,"1145":1,"1147":2,"1148":3,"1150":3,"1163":1,"1176":2,"1179":1,"1183":1,"1184":1,"1185":6,"1188":1,"1191":2,"1193":1,"1202":1,"1203":3,"1205":4,"1206":4,"1207":1,"1208":1,"1210":3,"1216":1,"1217":1,"1218":1,"1222":1,"1228":1,"1236":1,"1237":1,"1239":6,"1251":3,"1255":2,"1266":1,"1271":1,"1278":1,"1280":1,"1309":1,"1317":1,"1318":1,"1320":2,"1321":1,"1323":1,"1327":1,"1329":1,"1338":1,"1347":3,"1348":2,"1349":1,"1351":2,"1362":1,"1363":1,"1373":2,"1374":1,"1376":5,"1382":3,"1385":1,"1386":2,"1393":1,"1394":1,"1403":2,"1404":1,"1405":4,"1412":2,"1413":2,"1416":1,"1429":3,"1432":1,"1435":2,"1441":1,"1481":1,"1496":1,"1515":1,"1518":2,"1519":3,"1524":1,"1547":3,"1632":5,"1649":1,"1650":3,"1651":7,"1655":16,"1656":1,"1657":1,"1658":1,"1659":1,"1662":1,"1663":2,"1664":3,"1684":2,"1687":2,"1689":2,"1723":1,"1730":2,"1731":2,"1733":1,"1737":1,"1738":3,"1740":3,"1742":2,"1746":2,"1747":1,"1788":1,"1792":43,"1795":1,"1811":1,"1868":1,"1878":1,"1886":1,"1887":1,"1888":1,"1893":1,"1917":1,"1918":1,"1920":5,"1921":2,"1922":1,"1924":2,"1926":1,"1927":3,"1929":1,"1974":3,"2008":1,"2029":1,"2049":1,"2050":1,"2051":1,"2052":2,"2079":1,"2130":1,"2156":1,"2202":1,"2230":1,"2247":1,"2256":2,"2264":2,"2265":2,"2266":4,"2270":1,"2274":1,"2283":4,"2286":1,"2288":3,"2290":2,"2291":3,"2292":1,"2296":1,"2297":7,"2303":1,"2304":1,"2314":1,"2322":1,"2336":1,"2337":1,"2343":2,"2344":1,"2346":1,"2347":3,"2348":1,"2357":1,"2381":3,"2398":3,"2399":1,"2421":1,"2495":1,"2496":2,"2526":1,"2531":1,"2540":1,"2542":1,"2549":8,"2551":5,"2558":1,"2565":1,"2572":1,"2580":3,"2588":1,"2607":3,"2635":5,"2653":1,"2656":1,"2739":1,"2750":1,"2757":2,"2765":1,"2768":3,"2775":5,"2798":1,"2810":3,"2811":2,"2814":1,"2830":1,"2836":1,"2852":1,"2854":1,"2860":1,"2868":1}}],["daily",{"0":{"97":1},"2":{"97":1}}],["dashboardcontroller",{"2":{"1026":1}}],["dashboards",{"2":{"836":1,"866":1,"1323":1,"1327":1,"1399":1}}],["dashboard",{"0":{"1018":1,"1115":1},"1":{"1019":1,"1020":1,"1021":1,"1022":1},"2":{"95":1,"104":5,"168":2,"251":1,"264":1,"278":1,"353":4,"479":1,"562":1,"563":1,"566":1,"834":1,"836":1,"837":1,"960":1,"1010":1,"1011":1,"1018":1,"1020":1,"1021":5,"1023":1,"1026":3,"1036":1,"1069":1,"1084":1,"1088":2,"1094":2,"1107":1,"1115":1,"1123":1,"1127":2,"1138":1,"1143":1,"1150":1,"1163":1,"1376":6,"1398":4,"1399":1,"1529":1,"1533":1,"1698":1,"1745":1,"2035":1,"2042":1,"2346":1,"2535":1,"2766":3,"2767":4,"2770":1}}],["days",{"2":{"133":1,"188":1,"269":2,"280":1,"427":1,"851":1,"911":1,"1068":2,"1071":1,"1098":1,"1322":1,"1403":1,"1446":1,"1447":3,"1451":1,"1453":1,"1454":3,"1458":1,"1462":1,"1463":1,"1464":4,"1651":1,"1698":1,"1792":9,"2211":2,"2296":1,"2375":1,"2376":4,"2377":2,"2427":1}}],["day",{"2":{"92":1,"269":1,"271":1,"272":1,"273":1,"427":1,"848":1,"860":1,"866":1,"1068":2,"1078":1,"1082":1,"1098":1,"1143":1,"1401":1,"1419":2,"1458":1,"2211":1,"2375":1,"2376":1,"2377":1}}],["dxnlcji6cgfzczi=",{"2":{"62":1}}],["dxnlcje6cgfzcze=",{"2":{"62":1}}],["degree",{"2":{"2536":1}}],["degrades",{"2":{"1165":1}}],["degraded",{"2":{"1098":1,"1766":1,"1782":1,"1792":2,"2634":2}}],["demomode",{"2":{"2040":1,"2476":1}}],["demons",{"0":{"1079":1}}],["demonstrate",{"2":{"2188":1}}],["demonstrates",{"2":{"915":1,"921":1,"936":1,"996":1,"1220":1,"1275":1,"2868":1}}],["demonstrating",{"2":{"938":1,"1061":1,"1207":2,"2160":1,"2380":1,"2856":1}}],["demonstration",{"2":{"926":1}}],["demos",{"2":{"877":1}}],["demo",{"0":{"938":1,"1061":1},"2":{"877":1,"1047":1,"1382":1,"1433":5,"1792":1,"2038":1,"2040":4,"2164":3,"2476":4,"2762":1,"2770":2,"2816":1}}],["demand",{"2":{"876":1,"2438":1}}],["debounced",{"2":{"2537":1,"2543":1}}],["debate",{"2":{"1403":1}}],["debt",{"2":{"864":1}}],["debuglogcommentannotationevents",{"2":{"1792":1,"1844":1,"2629":1}}],["debuglogendpointcreateevents",{"2":{"1792":1,"1844":1,"2629":1}}],["debugtable=",{"2":{"2110":1}}],["debugtable",{"0":{"2110":1},"2":{"1792":2,"2109":1,"2110":1,"2530":1,"2537":1,"2866":1}}],["debugger",{"2":{"1792":1}}],["debuggability",{"2":{"1511":1,"1792":1,"2265":1}}],["debugging",{"0":{"2208":1,"2748":1},"1":{"2749":1,"2750":1,"2751":1,"2752":1},"2":{"872":2,"1015":1,"1111":1,"1181":2,"1678":1,"1792":3,"1801":2,"1994":1,"2045":1,"2054":1,"2109":1,"2110":1,"2255":1,"2366":1,"2394":1,"2492":1,"2530":1,"2537":1,"2577":1,"2597":1,"2635":2,"2805":1}}],["debug",{"0":{"2363":1,"2629":1,"2799":1},"2":{"64":1,"320":1,"704":1,"1014":1,"1082":1,"1199":1,"1500":1,"1792":13,"1801":1,"1802":2,"1806":1,"1844":3,"2011":1,"2108":1,"2110":3,"2111":1,"2208":2,"2258":1,"2261":1,"2267":1,"2354":1,"2363":1,"2364":4,"2366":3,"2384":1,"2482":1,"2530":1,"2532":1,"2536":1,"2628":1,"2629":4,"2721":1,"2749":2,"2751":1,"2794":1,"2795":1,"2797":1,"2802":1,"2804":1,"2824":1,"2825":2,"2880":1}}],["dedup",{"2":{"2506":1}}],["deduplicated",{"2":{"2590":1}}],["deduplicate",{"2":{"860":1}}],["dedicate",{"2":{"1403":1}}],["dedicates",{"2":{"847":1}}],["dedicated",{"0":{"2534":1,"2872":1},"2":{"841":2,"1035":1,"1205":1,"1255":1,"1325":1,"1398":1,"1533":1,"1792":2,"2098":1,"2156":1,"2221":1,"2267":1,"2381":1,"2542":1,"2832":1}}],["denial",{"2":{"1792":1,"2634":1,"2876":1}}],["denied",{"0":{"2755":1},"2":{"39":3,"2608":1}}],["denies",{"0":{"39":1}}],["denormalize",{"2":{"1437":1,"1438":1}}],["denormalized",{"2":{"1385":1}}],["deno",{"0":{"1107":1},"2":{"1104":1,"1107":4,"1108":3,"1115":1,"1126":1}}],["denser",{"2":{"869":1,"873":1}}],["dense",{"2":{"869":1}}],["deny",{"2":{"844":1,"1792":4,"1898":1,"2015":1,"2016":2,"2018":2,"2027":1,"2028":1,"2431":1,"2436":2,"2632":3}}],["devtools",{"2":{"2040":1}}],["dev123",{"2":{"1199":2,"1207":1}}],["devops",{"2":{"926":1}}],["dev",{"0":{"1417":1,"2857":1},"1":{"1418":1,"1419":1,"1420":1,"1421":1},"2":{"868":3,"871":1,"872":1,"873":1,"875":1,"970":1,"997":1,"1037":1,"1047":1,"1094":3,"1199":2,"1207":1,"1380":1,"1407":1,"1414":1,"1417":1,"1418":2,"1419":2,"1433":2,"1792":1,"2153":1,"2157":2,"2159":1,"2162":1,"2168":1,"2450":1,"2537":2,"2543":2,"2878":1,"2880":1}}],["developing",{"2":{"1401":1}}],["developement",{"2":{"1254":1}}],["developer",{"2":{"871":1,"872":1,"972":1,"1382":2,"1385":1,"1403":1,"1693":1,"1792":2,"2389":1,"2395":1,"2632":2}}],["developers",{"0":{"1443":1},"2":{"859":2,"1435":1,"1692":1,"1695":1,"1792":4,"2193":1}}],["developed",{"2":{"851":1,"1073":1,"1386":1}}],["development",{"0":{"973":1,"1181":1,"1402":1,"1716":1,"2066":1},"2":{"121":1,"868":1,"871":1,"914":1,"997":1,"1001":1,"1009":1,"1037":1,"1064":1,"1073":2,"1080":2,"1081":1,"1086":1,"1094":1,"1145":1,"1181":1,"1199":1,"1206":1,"1225":1,"1254":1,"1281":2,"1303":1,"1384":1,"1386":3,"1401":2,"1402":2,"1403":2,"1417":1,"1418":3,"1792":4,"1875":1,"1983":1,"2007":1,"2117":1,"2245":1,"2255":1,"2366":1,"2681":1,"2684":2,"2685":1,"2699":1,"2702":1,"2776":1,"2798":1,"2804":1,"2824":3,"2825":1}}],["deviceinfo",{"2":{"1792":1}}],["devicememory",{"2":{"1792":2}}],["devicepixelratio",{"2":{"1792":1}}],["devicename",{"2":{"1214":2,"1215":1,"1218":1,"1221":1,"1232":3,"1792":3,"1882":1}}],["device",{"2":{"847":4,"848":5,"851":1,"859":1,"1037":1,"1068":1,"1098":3,"1209":1,"1210":3,"1213":1,"1215":1,"1228":1,"1230":1,"1249":1,"1792":5,"1866":1,"1879":1,"1880":1,"2164":1,"2625":1}}],["devices",{"0":{"846":1},"1":{"847":1,"848":1,"849":1},"2":{"841":1,"848":2,"1792":1,"1867":1,"2625":1}}],["dead",{"2":{"2050":1,"2809":1}}],["deadlock",{"2":{"1592":2,"1792":1}}],["deadlocks",{"2":{"576":1,"1151":1,"1153":1,"1155":1}}],["deallocate",{"2":{"2342":1}}],["deals",{"2":{"1382":1}}],["deal",{"2":{"1073":1,"1385":1,"1390":1,"1438":1}}],["dealt",{"2":{"860":1}}],["dealing",{"2":{"840":1,"1140":1,"1181":1,"1385":1}}],["derivation",{"0":{"2327":1},"2":{"363":1,"1049":1}}],["derived",{"2":{"215":1,"322":1,"436":1,"527":1,"534":1,"662":1,"1007":1,"1040":1,"1046":1,"1276":1,"1404":1,"1738":1,"1792":2,"1824":2,"1830":1,"1955":1,"2318":1,"2327":1,"2379":1,"2415":1,"2481":3,"2840":1}}],["deeply",{"2":{"2607":1,"2611":1}}],["deeper",{"2":{"1098":1}}],["deep",{"0":{"334":1,"2607":1,"2611":1},"2":{"334":1,"337":1,"837":1,"840":1,"845":1,"919":2,"1064":1,"1097":2,"1409":1,"2236":1,"2394":1,"2611":1}}],["destructive",{"2":{"2319":1,"2843":1,"2873":1}}],["destination",{"0":{"393":1},"2":{"2803":1}}],["desired",{"2":{"1254":1,"1792":1,"2351":1,"2781":1}}],["designation",{"2":{"2117":1,"2702":1}}],["designate",{"2":{"1925":1}}],["designated",{"2":{"305":1,"1924":1,"2509":1}}],["designed",{"2":{"848":3,"851":1,"860":1,"863":2,"951":1,"965":1,"1185":1,"1326":1,"1377":1,"1382":1,"1385":1,"1396":1,"1401":1,"1421":1,"2667":1}}],["design",{"0":{"1050":1,"1251":1},"1":{"1051":1,"1052":1},"2":{"840":1,"841":4,"843":1,"845":1,"851":7,"863":3,"873":1,"922":1,"1078":1,"1096":1,"1121":1,"1193":1,"1382":1,"1385":1,"1395":1,"1396":1,"1399":1,"1402":1,"1961":1,"2405":1,"2437":1,"2504":1,"2713":1,"2729":1,"2881":1}}],["deserialization",{"2":{"1258":1,"1399":2,"2347":1,"2600":1}}],["deserialized",{"2":{"861":1}}],["deserves",{"2":{"1076":1,"1400":1}}],["desktop",{"2":{"1047":1,"2157":2,"2543":1}}],["desynchronization",{"2":{"1008":1}}],["despite",{"2":{"666":1,"1580":1}}],["descent",{"2":{"2443":1}}],["descended",{"2":{"2411":1}}],["descope",{"2":{"1098":1}}],["desc",{"2":{"263":1,"318":1,"326":1,"531":2,"1429":1,"2344":1,"2481":1,"2482":1}}],["descriptors",{"2":{"1974":1,"2607":1}}],["descriptive",{"2":{"559":1}}],["descriptions",{"2":{"2545":1,"2677":1,"2682":2}}],["description",{"0":{"319":1,"323":1,"324":1,"414":1,"435":1},"2":{"31":1,"121":1,"210":1,"310":1,"318":4,"319":8,"322":1,"323":1,"324":3,"326":4,"447":1,"499":1,"517":1,"551":1,"576":1,"638":1,"675":1,"720":1,"738":1,"739":1,"746":1,"747":1,"748":2,"753":1,"757":1,"761":1,"762":1,"763":1,"768":1,"771":1,"772":1,"773":1,"776":1,"781":1,"782":1,"784":1,"786":1,"788":1,"802":1,"816":1,"834":1,"859":1,"882":1,"891":1,"892":1,"967":1,"1031":2,"1040":4,"1042":1,"1152":1,"1155":1,"1217":1,"1224":1,"1225":1,"1226":1,"1227":1,"1232":1,"1234":1,"1236":1,"1237":2,"1239":2,"1255":1,"1340":1,"1341":2,"1404":2,"1447":1,"1451":1,"1454":1,"1470":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1477":1,"1479":1,"1480":1,"1489":1,"1499":1,"1500":1,"1501":1,"1511":1,"1521":1,"1523":1,"1540":1,"1544":1,"1554":1,"1555":1,"1556":1,"1557":1,"1558":1,"1559":1,"1560":1,"1561":1,"1562":1,"1563":1,"1564":1,"1565":1,"1588":1,"1589":1,"1592":1,"1604":1,"1616":1,"1618":1,"1620":1,"1623":1,"1624":1,"1628":1,"1631":1,"1639":1,"1651":1,"1656":1,"1657":1,"1670":1,"1671":1,"1674":1,"1684":1,"1687":1,"1696":1,"1703":1,"1722":1,"1731":1,"1732":1,"1753":1,"1754":1,"1755":1,"1756":1,"1764":1,"1792":6,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1821":1,"1823":2,"1824":1,"1837":1,"1838":1,"1840":2,"1841":1,"1843":1,"1844":1,"1845":1,"1846":1,"1848":1,"1849":1,"1850":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1861":1,"1862":1,"1874":1,"1875":1,"1876":1,"1877":1,"1882":1,"1884":1,"1886":1,"1887":2,"1888":1,"1898":2,"1900":2,"1902":1,"1903":1,"1904":1,"1905":1,"1906":3,"1907":3,"1911":1,"1917":1,"1918":1,"1922":1,"1927":1,"1937":1,"1938":1,"1949":1,"1951":1,"1952":1,"1953":1,"1954":1,"1956":1,"1967":1,"1972":1,"1980":1,"1991":1,"1994":1,"2000":1,"2002":1,"2004":1,"2005":1,"2007":1,"2016":1,"2018":1,"2019":1,"2023":1,"2024":1,"2025":1,"2034":1,"2036":1,"2038":1,"2047":1,"2074":1,"2075":1,"2077":1,"2086":1,"2094":1,"2109":1,"2117":1,"2119":1,"2124":1,"2125":1,"2126":1,"2127":1,"2128":1,"2129":1,"2130":1,"2131":1,"2139":1,"2140":1,"2141":1,"2154":1,"2164":1,"2165":1,"2166":1,"2167":1,"2168":1,"2247":1,"2254":5,"2264":1,"2266":1,"2297":1,"2323":1,"2330":1,"2434":1,"2481":7,"2482":1,"2549":1,"2565":1,"2575":2,"2671":1,"2702":1,"2769":1,"2814":1,"2835":1,"2841":1}}],["describing",{"2":{"843":1,"1039":1,"1422":1,"2670":1,"2694":1}}],["describes",{"2":{"1421":1}}],["described",{"2":{"840":1,"872":1,"986":1,"1080":1,"2106":1,"2112":1,"2158":1,"2321":1,"2367":1,"2406":1,"2482":1,"2537":1,"2540":1,"2541":1,"2840":1,"2845":1}}],["describe",{"0":{"2336":1,"2337":1,"2367":1,"2854":1},"2":{"238":1,"383":1,"581":1,"582":1,"586":2,"587":5,"696":1,"829":2,"1181":1,"1792":2,"1802":1,"2000":1,"2007":2,"2098":1,"2324":1,"2328":1,"2336":1,"2337":4,"2367":1,"2533":1,"2534":1,"2540":2,"2558":1,"2722":1,"2751":1,"2795":1,"2799":1,"2840":2,"2847":1,"2854":2,"2859":1}}],["delta",{"2":{"1080":1,"2106":1,"2158":1,"2537":1,"2878":1}}],["delegates",{"2":{"847":2,"904":1,"2462":1,"2649":1}}],["delegated",{"2":{"747":1,"843":2,"847":1,"2664":1}}],["delegate",{"2":{"747":1,"781":1,"892":1,"1101":1,"1197":1,"2621":2}}],["deleted",{"2":{"777":2,"2050":1}}],["delete",{"2":{"18":4,"204":1,"243":1,"258":2,"288":2,"292":1,"518":1,"567":1,"623":1,"624":1,"625":1,"691":4,"701":1,"835":1,"848":1,"991":3,"1104":1,"1105":1,"1107":1,"1213":1,"1235":2,"1382":1,"1487":1,"1642":1,"1646":1,"1729":1,"1792":1,"1846":1,"1847":1,"2264":1,"2277":2,"2319":3,"2320":1,"2321":1,"2342":1,"2389":1,"2429":1,"2481":1,"2498":1,"2529":1,"2723":1,"2762":1,"2843":3,"2851":1,"2865":1,"2879":1}}],["deliberate",{"2":{"2376":1,"2378":1,"2466":2}}],["deliberately",{"2":{"307":1,"1096":1,"1409":1,"1639":1,"1644":1,"1792":2,"2107":1,"2112":1,"2177":1,"2180":1,"2486":1,"2529":1,"2537":1,"2729":1,"2828":1,"2845":1,"2865":1,"2876":1}}],["delivered",{"0":{"2490":1},"2":{"1372":1,"2223":1,"2490":1}}],["deliver",{"2":{"1281":1,"1402":1}}],["delivering",{"2":{"1280":1}}],["delivery",{"2":{"1183":1,"1206":1,"1325":1,"1353":1,"2407":1,"2490":1,"2498":1}}],["delivers",{"2":{"946":1,"1009":1}}],["delimit",{"2":{"494":2}}],["delimited",{"0":{"491":1},"2":{"2495":1}}],["delimiter=",{"2":{"1202":1}}],["delimiters",{"0":{"767":1},"2":{"767":2,"768":2,"786":3,"787":1,"886":2,"891":1,"2270":1}}],["delimiter",{"2":{"131":2,"346":1,"496":2,"606":1,"767":1,"768":1,"891":1,"1189":2,"2128":1,"2270":1,"2726":1}}],["delays",{"2":{"213":2,"575":1,"1032":1,"1101":1,"1105":1,"1152":1,"1168":1,"1589":1,"1739":1,"1740":1,"2088":1,"2287":1,"2288":1}}],["delay",{"2":{"203":3,"213":7,"214":1,"848":1,"1032":4,"1101":1,"1105":1,"1108":1,"1171":1,"1590":1,"1645":1,"1739":1,"1740":6,"1742":1,"2222":1,"2230":1,"2287":1,"2288":6,"2290":1,"2466":1,"2502":1,"2505":1,"2765":3,"2835":1}}],["depletes",{"2":{"1329":1}}],["deploying",{"2":{"2089":1}}],["deploys",{"2":{"1086":1,"1432":1}}],["deployed",{"2":{"869":1,"1073":1,"1107":2,"1115":1,"2040":1,"2452":1,"2474":1}}],["deploy",{"2":{"534":1,"1073":1,"1087":1,"1094":1,"1204":1,"1322":1,"1420":1,"1438":1,"1527":1,"1792":2,"2633":1,"2634":1}}],["deployment",{"0":{"1116":1,"1773":1},"1":{"1117":1,"1118":1,"1119":1},"2":{"390":1,"534":1,"832":1,"878":1,"954":1,"986":1,"1009":1,"1013":1,"1037":1,"1070":1,"1083":1,"1084":1,"1086":1,"1094":2,"1095":1,"1108":2,"1121":1,"1127":2,"1144":1,"1204":1,"1272":1,"1303":1,"1304":1,"1322":1,"1327":1,"1403":1,"1405":1,"1414":1,"1773":1,"1825":1,"2056":1,"2490":1}}],["deployments",{"2":{"121":2,"1054":1,"1145":1,"1146":1,"1152":1,"1172":1,"1343":2,"1615":1,"1653":1,"1708":1,"1792":1,"1856":1,"1967":1,"2350":1,"2455":1}}],["depended",{"2":{"2110":1,"2530":1}}],["dependents",{"2":{"2106":1,"2537":1,"2878":1}}],["dependent",{"2":{"1098":1,"2157":1,"2543":1}}],["dependencies",{"0":{"1248":1},"2":{"970":1,"1027":3,"1036":1,"1064":1,"1075":1,"1117":1,"1145":1,"1200":1,"1322":1,"2162":1,"2289":1,"2385":1,"2776":1,"2792":1}}],["dependency",{"2":{"869":1,"1026":1,"1044":1,"1075":1,"2634":1,"2741":1,"2868":2}}],["depend",{"2":{"1133":1,"1239":1,"1792":1,"1856":1,"1974":1,"2389":1,"2607":1,"2873":1}}],["depending",{"2":{"312":1,"587":1,"683":1,"957":1,"1355":1,"1385":1,"1499":1,"1519":1,"1525":1,"1792":3,"2337":1,"2541":1}}],["depends",{"2":{"244":1,"386":1,"616":1,"695":1,"1067":1,"1359":1,"1366":1,"2252":1,"2398":1,"2455":1,"2807":1,"2867":1}}],["depths",{"2":{"1097":1}}],["depth",{"0":{"940":1,"1185":1,"1297":1},"2":{"306":1,"334":1,"337":1,"338":1,"857":1,"919":1,"933":1,"1097":1,"1185":1,"1255":1,"1285":1,"1717":1,"1894":1,"1967":1,"1974":1,"2003":1,"2107":1,"2371":1,"2398":1,"2531":1,"2537":1,"2607":1,"2868":1}}],["deprecation",{"2":{"174":1}}],["deprecated",{"2":{"174":1}}],["department=engineering",{"2":{"1405":1}}],["department",{"2":{"113":1,"117":2,"167":3,"1142":1,"1405":2,"2207":4,"2322":3,"2774":3}}],["dec",{"2":{"2823":1,"2824":1}}],["decrement",{"2":{"1439":1}}],["decrease",{"2":{"1324":1}}],["decryption",{"0":{"2405":1},"2":{"187":1,"188":1,"1649":1,"1664":1,"1667":1,"1792":1,"2226":1,"2294":1,"2296":1,"2329":1,"2405":2}}],["decrypted",{"2":{"182":2,"186":1,"187":1,"188":2,"1100":1,"1664":1,"2291":1,"2293":1,"2294":1,"2295":1,"2296":2}}],["decrypt",{"0":{"182":1,"185":1,"2291":1,"2293":1},"1":{"183":1,"184":1,"185":1,"186":2,"187":1,"188":1,"189":1,"190":1,"191":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1},"2":{"182":1,"186":6,"187":1,"188":1,"237":2,"868":1,"1100":1,"1127":1,"1649":1,"1651":2,"1658":1,"1662":1,"1664":4,"1665":1,"1667":1,"1792":1,"2230":1,"2291":1,"2293":6,"2294":1,"2295":1,"2296":1,"2297":3,"2323":1,"2329":1,"2353":2,"2405":1,"2421":1}}],["deck",{"2":{"1037":1,"1381":2,"1382":1}}],["december",{"2":{"972":1,"1400":1,"1402":1}}],["decoupling",{"2":{"2490":1}}],["decoupled",{"2":{"860":1}}],["decoder",{"2":{"2492":1}}],["decode",{"0":{"2492":1},"2":{"2492":1}}],["decoded",{"2":{"63":1,"1457":1,"2492":1,"2554":1,"2603":1}}],["decoding",{"2":{"1218":1}}],["decades",{"2":{"852":1,"856":1,"857":1,"860":1,"1075":1,"1385":1}}],["decade",{"2":{"851":1,"1403":1}}],["deciding",{"2":{"860":1,"1820":1}}],["decided",{"2":{"1924":1,"2828":2}}],["decide",{"2":{"854":1,"874":1,"985":1,"1042":1,"1130":1,"1249":1,"1403":1,"1435":1,"2415":1,"2511":1}}],["decides",{"2":{"636":1,"650":1,"669":1,"855":1,"1044":1,"1108":2,"1133":1,"2171":1,"2172":1}}],["decision",{"2":{"855":2,"868":1,"1078":1,"2422":1,"2868":1}}],["decisions",{"2":{"855":1,"2435":1}}],["decisively",{"2":{"834":1,"835":1}}],["decimals",{"2":{"952":1,"1623":1,"2212":1}}],["decimal",{"0":{"274":1},"2":{"268":1,"280":1,"1590":1,"1792":2}}],["declarations",{"2":{"1385":1,"1386":1,"1401":1,"1403":1,"1570":1,"1571":1,"2484":1}}],["declaration",{"2":{"849":2,"860":3,"864":1,"916":1,"983":1,"1042":2,"1394":1,"1403":1,"1523":1,"1792":1,"2380":1}}],["declarative",{"0":{"1105":1,"2773":1},"1":{"2774":1,"2775":1},"2":{"835":1,"841":1,"860":2,"868":1,"918":1,"1037":1,"1066":1,"1102":3,"1104":1,"1108":1,"1121":2,"1127":4,"1181":1,"1382":4,"1386":1,"1394":1,"1403":1,"1406":1,"2772":1,"2858":1}}],["declaratively",{"2":{"835":1,"857":1,"1406":1,"2190":1,"2773":1}}],["declaring",{"2":{"448":1,"1382":1,"2496":1}}],["declares",{"2":{"582":1,"1376":1,"1382":1,"1460":1,"1792":1,"2097":1,"2375":1,"2533":1,"2537":1,"2760":1,"2807":3}}],["declared",{"2":{"175":3,"180":1,"320":1,"327":1,"447":1,"587":1,"684":3,"711":1,"835":1,"849":1,"854":1,"864":1,"868":1,"982":2,"1016":1,"1070":1,"1098":1,"1101":1,"1113":1,"1189":1,"1403":1,"1407":1,"1408":1,"1792":1,"1834":1,"1922":2,"2016":1,"2017":1,"2097":1,"2413":1,"2444":1,"2481":2,"2498":1,"2632":1,"2868":1}}],["declare",{"0":{"2337":1},"2":{"1":1,"310":1,"428":1,"438":1,"448":1,"452":1,"527":1,"583":1,"585":1,"665":1,"708":1,"848":1,"860":1,"876":1,"928":1,"929":1,"930":1,"990":2,"991":1,"1021":1,"1060":1,"1128":1,"1214":1,"1215":1,"1216":1,"1232":1,"1234":1,"1235":1,"1239":1,"1309":1,"1321":1,"1332":1,"1338":1,"1339":1,"1347":1,"1372":1,"1376":1,"1386":1,"1389":1,"1393":1,"1394":1,"1395":3,"1396":1,"1401":1,"1403":1,"1419":1,"1427":1,"1689":1,"1792":1,"2183":1,"2337":2,"2394":1,"2741":1,"2762":1,"2763":2,"2809":1,"2810":2,"2815":1,"2829":2,"2834":1,"2836":1,"2855":1,"2868":1,"2877":1}}],["def",{"2":{"1366":1}}],["defers",{"2":{"2868":1}}],["defer",{"2":{"992":1,"2868":1,"2869":1}}],["deferrable",{"0":{"992":1,"2868":1},"2":{"977":1,"986":1,"992":4,"1005":2,"1075":2,"1079":2,"1082":1,"2167":1,"2545":1,"2741":1,"2868":5,"2869":1}}],["deferred",{"2":{"872":1,"876":1,"992":4,"1079":1,"2741":2,"2868":2}}],["defense",{"0":{"940":1,"1185":1},"2":{"921":1,"933":1,"981":1,"1136":1,"1185":1,"2020":1}}],["defensible",{"2":{"873":1}}],["defect",{"2":{"857":2}}],["defining",{"0":{"2762":1},"2":{"1398":1,"1690":1,"1792":2,"2277":1,"2759":1}}],["definitions",{"0":{"1730":1},"2":{"966":1,"978":1,"981":1,"1016":1,"1027":1,"1036":1,"1121":1,"1350":1,"1744":1,"1792":1,"2051":1,"2160":1,"2329":1,"2346":1,"2347":1,"2372":2,"2635":2,"2775":1}}],["definition",{"0":{"1726":1,"1728":1},"1":{"1729":1,"1730":1},"2":{"203":1,"582":1,"584":1,"852":1,"864":1,"871":1,"978":1,"980":1,"992":1,"1010":1,"1016":1,"1017":1,"1023":1,"1076":1,"1105":2,"1193":1,"1369":1,"1398":1,"1403":1,"1408":1,"1723":2,"1726":1,"1792":1,"2156":1,"2264":3,"2337":2,"2542":1,"2854":1}}],["definer",{"0":{"932":1},"2":{"298":1,"351":1,"922":3,"932":4,"933":5,"934":1,"935":1,"936":1,"943":1,"946":1,"1065":1,"1068":1,"1179":1,"1184":2,"1185":4,"1188":1,"1192":1,"1214":1,"1215":1,"1216":1,"1308":1,"1458":3,"1567":1,"1655":2,"2176":1,"2186":1,"2187":1,"2375":3}}],["defines",{"2":{"197":1,"202":1,"213":1,"458":1,"480":1,"575":1,"852":1,"859":1,"863":1,"956":1,"1019":1,"1032":1,"1152":1,"1187":1,"1191":1,"1426":1,"1460":1,"1590":1,"1613":1,"1740":1,"1792":4,"2016":1,"2020":1,"2171":1,"2288":1,"2375":1,"2632":2,"2762":1}}],["defined",{"2":{"101":1,"102":1,"104":1,"150":1,"197":1,"206":2,"480":1,"570":1,"575":2,"584":1,"809":1,"817":1,"915":1,"916":1,"917":1,"918":1,"924":1,"973":1,"1096":1,"1108":1,"1197":1,"1247":1,"1402":1,"1435":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1501":1,"1609":1,"1727":1,"1792":10,"2164":1,"2282":1,"2287":1,"2422":1,"2532":1,"2551":1,"2634":1,"2635":1,"2661":1}}],["define",{"0":{"165":1,"978":1,"1019":1,"1020":1,"1187":1,"2849":1},"1":{"166":1,"167":1,"168":1,"169":1,"170":1,"979":1,"980":1},"2":{"62":1,"165":2,"166":2,"167":2,"168":2,"169":3,"201":1,"206":1,"223":1,"238":2,"253":1,"266":1,"310":1,"411":1,"526":1,"577":1,"578":1,"868":1,"914":1,"916":1,"918":1,"933":1,"982":1,"1000":1,"1008":1,"1010":1,"1037":1,"1105":2,"1111":1,"1113":1,"1154":1,"1176":1,"1190":1,"1192":1,"1193":1,"1196":1,"1203":1,"1208":1,"1211":1,"1219":1,"1281":1,"1328":1,"1374":4,"1398":1,"1399":1,"1401":1,"1412":1,"1413":3,"1434":1,"1597":1,"1614":1,"1673":1,"1697":1,"1736":1,"1792":1,"1869":1,"1901":1,"1989":1,"2322":4,"2323":3,"2381":1,"2747":1,"2759":1,"2762":1,"2849":2,"2859":1}}],["defaultapp",{"2":{"2697":2}}],["defaultauthenticationtype",{"2":{"937":1,"1469":1,"1470":1,"1483":1,"1792":1}}],["defaultdataprotector",{"2":{"2291":1}}],["defaultdisplaynameclaimtype",{"2":{"1792":1}}],["defaultratelimitingpolicy",{"2":{"2257":1}}],["defaultrequestparamtype",{"2":{"1792":1,"1836":1,"1846":1,"1847":1,"2701":1}}],["defaultroutinecache",{"2":{"108":1}}],["defaultroleclaimtype",{"2":{"22":1,"305":2,"641":1,"1062":1,"1469":1,"1474":1,"1483":1,"1792":1,"2181":2,"2187":1,"2314":1}}],["defaulthttpmethod",{"2":{"1792":1,"1836":1,"1846":1,"1847":1,"2701":1}}],["defaulted",{"2":{"2422":1}}],["defaulterrorcodepolicy",{"2":{"1669":1,"1670":1,"1673":1,"1678":2,"1792":1,"2255":2}}],["defaultexpiration",{"2":{"279":1,"1792":2,"2274":1,"2279":1}}],["default=",{"2":{"1606":1,"2689":1,"2691":1,"2699":1,"2823":2,"2824":2}}],["defaultjsontype",{"2":{"1416":1,"1417":1,"1553":1,"1559":1,"1581":1,"1792":1}}],["defaultpolicy",{"2":{"1157":1,"1177":1,"1792":2,"1948":1,"1949":1,"1959":1,"1960":1,"2257":1,"2471":1}}],["defaultuploadmetadatacontextkey",{"2":{"1792":1,"2123":1,"2124":1}}],["defaultuploadmetadataparametername",{"2":{"1356":1,"1792":1,"2123":1,"2124":1,"2132":1}}],["defaultuploadhandler",{"2":{"745":1,"1792":1,"2123":1,"2124":1,"2132":1,"2615":1}}],["defaultuseridclaimtype",{"2":{"20":1,"22":1,"305":2,"310":1,"641":1,"1062":1,"1469":1,"1474":1,"1483":1,"1792":1,"2181":2,"2187":1,"2314":1}}],["defaulttimeout",{"2":{"430":1,"455":1,"1340":2,"1792":1,"1916":1,"1917":1,"1931":1,"2308":1,"2549":1,"2814":2}}],["defaulting",{"2":{"320":1,"1571":1,"2482":1,"2484":1}}],["defaultkeylifetimedays",{"2":{"188":1,"1054":1,"1650":1,"1651":1,"1663":2,"1792":1,"2296":1,"2297":2}}],["default",{"0":{"46":1,"80":1,"134":1,"169":1,"180":1,"245":1,"330":1,"377":1,"417":1,"441":1,"462":1,"468":1,"470":1,"511":1,"518":1,"556":1,"572":1,"609":1,"655":1,"662":1,"699":1,"738":1,"798":1,"802":1,"816":1,"1132":1,"1133":1,"1474":1,"1476":1,"1478":1,"1541":1,"1545":1,"1567":1,"1591":1,"1624":1,"1653":1,"1660":1,"1674":1,"1792":1,"1847":1,"1943":1,"1989":1,"2041":1,"2054":1,"2142":1,"2197":1,"2333":1,"2335":2,"2342":1,"2351":1,"2353":1,"2471":1,"2551":1,"2577":1,"2682":1,"2684":1,"2694":1,"2848":1},"1":{"378":1,"379":1,"380":1,"381":1,"1592":1,"1593":1,"1594":1,"1595":1,"1596":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1},"2":{"31":1,"33":1,"46":1,"52":1,"76":1,"80":1,"81":1,"88":1,"89":1,"101":1,"106":1,"108":1,"133":1,"134":1,"141":1,"143":1,"164":1,"166":1,"175":1,"177":1,"180":1,"182":1,"188":1,"196":1,"244":2,"256":1,"291":1,"299":1,"300":1,"301":1,"305":1,"307":1,"308":1,"309":1,"318":1,"320":2,"330":1,"334":2,"336":1,"337":1,"347":1,"348":3,"352":2,"355":2,"363":1,"370":5,"377":3,"378":12,"380":3,"390":1,"408":5,"409":1,"418":1,"419":1,"436":3,"439":6,"442":1,"443":1,"448":1,"449":3,"452":3,"454":2,"460":1,"462":1,"469":1,"470":3,"471":1,"503":1,"504":1,"505":1,"510":1,"511":2,"512":1,"513":1,"523":1,"525":1,"551":1,"556":3,"557":1,"559":1,"565":2,"567":2,"572":1,"574":1,"577":2,"609":1,"616":1,"624":2,"629":1,"646":1,"653":2,"655":1,"658":1,"659":1,"662":2,"675":1,"684":1,"693":1,"698":1,"700":1,"701":1,"704":1,"737":1,"745":2,"746":1,"747":1,"749":1,"762":1,"765":1,"768":1,"776":1,"801":3,"816":1,"841":3,"859":1,"868":1,"869":1,"891":1,"892":1,"905":1,"913":1,"919":3,"932":1,"937":1,"946":1,"963":1,"966":1,"967":1,"977":2,"992":1,"1033":1,"1038":2,"1040":2,"1046":1,"1049":2,"1054":1,"1060":1,"1067":5,"1071":1,"1092":1,"1096":1,"1097":2,"1102":2,"1105":3,"1129":2,"1130":1,"1134":1,"1139":1,"1150":5,"1152":1,"1153":2,"1154":2,"1164":1,"1170":1,"1173":1,"1174":2,"1176":3,"1177":5,"1188":1,"1213":5,"1216":1,"1217":2,"1220":2,"1224":3,"1225":1,"1226":1,"1227":1,"1239":1,"1307":1,"1316":1,"1332":5,"1336":3,"1338":5,"1339":6,"1340":1,"1347":2,"1348":1,"1355":1,"1371":4,"1373":1,"1375":1,"1385":1,"1386":2,"1394":2,"1398":2,"1414":1,"1427":1,"1430":1,"1431":1,"1447":7,"1451":2,"1454":3,"1456":1,"1459":1,"1460":1,"1464":1,"1470":1,"1471":1,"1472":1,"1474":1,"1475":1,"1477":1,"1479":1,"1481":1,"1489":2,"1493":1,"1499":1,"1511":4,"1515":1,"1521":3,"1529":3,"1540":1,"1544":1,"1547":1,"1554":1,"1555":1,"1556":1,"1557":1,"1558":2,"1559":2,"1560":1,"1561":1,"1562":1,"1563":1,"1564":1,"1565":1,"1567":5,"1569":2,"1570":1,"1571":1,"1574":1,"1576":1,"1577":1,"1579":1,"1587":2,"1588":3,"1589":1,"1591":1,"1597":2,"1598":2,"1599":2,"1604":1,"1606":1,"1607":2,"1609":1,"1613":1,"1614":1,"1615":2,"1617":1,"1618":4,"1620":1,"1621":1,"1623":1,"1624":1,"1627":1,"1628":2,"1629":2,"1631":1,"1633":1,"1639":2,"1644":2,"1650":1,"1651":5,"1653":3,"1656":1,"1657":1,"1662":1,"1664":1,"1669":2,"1670":4,"1671":1,"1673":2,"1676":1,"1678":3,"1684":2,"1685":1,"1691":2,"1692":2,"1693":2,"1694":2,"1695":2,"1696":4,"1703":1,"1722":1,"1753":1,"1755":1,"1759":1,"1764":2,"1771":1,"1785":3,"1792":172,"1802":1,"1803":1,"1804":1,"1805":1,"1807":1,"1808":2,"1809":1,"1813":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1822":2,"1823":2,"1827":2,"1828":1,"1829":1,"1830":1,"1831":1,"1832":2,"1833":1,"1837":2,"1838":1,"1840":4,"1841":1,"1842":1,"1843":1,"1844":1,"1845":1,"1846":1,"1848":1,"1849":1,"1850":1,"1851":1,"1853":1,"1854":1,"1855":1,"1856":3,"1857":2,"1858":2,"1861":1,"1862":2,"1870":2,"1874":3,"1875":1,"1876":1,"1877":1,"1898":1,"1912":1,"1917":3,"1918":1,"1921":6,"1924":7,"1925":1,"1926":2,"1927":1,"1937":1,"1938":1,"1943":1,"1949":2,"1951":1,"1952":1,"1953":1,"1954":1,"1956":1,"1958":1,"1967":1,"1968":1,"1969":1,"1972":2,"1973":1,"1974":1,"1980":1,"1989":2,"1991":1,"1994":1,"2000":2,"2001":1,"2004":2,"2005":1,"2006":1,"2007":2,"2008":2,"2009":2,"2010":1,"2011":1,"2016":1,"2018":1,"2020":2,"2023":1,"2024":1,"2028":1,"2029":1,"2034":1,"2038":3,"2039":1,"2040":2,"2041":1,"2047":2,"2063":1,"2074":1,"2075":1,"2077":3,"2086":1,"2088":1,"2094":1,"2098":1,"2106":1,"2107":1,"2108":1,"2109":1,"2111":2,"2117":2,"2124":2,"2125":1,"2126":1,"2127":1,"2128":1,"2129":1,"2130":1,"2131":1,"2139":2,"2141":2,"2142":1,"2149":1,"2154":1,"2155":1,"2161":1,"2175":2,"2177":1,"2181":1,"2183":2,"2184":1,"2186":1,"2195":1,"2196":1,"2209":1,"2212":1,"2219":1,"2221":2,"2222":2,"2223":2,"2224":1,"2242":1,"2247":1,"2251":1,"2252":2,"2253":1,"2254":2,"2255":11,"2256":6,"2257":3,"2258":2,"2259":2,"2264":6,"2265":4,"2266":4,"2267":5,"2273":2,"2274":2,"2277":1,"2283":1,"2291":1,"2296":1,"2297":5,"2306":1,"2320":2,"2323":1,"2325":1,"2327":1,"2328":1,"2329":1,"2330":2,"2333":23,"2335":5,"2339":1,"2342":1,"2350":1,"2353":2,"2354":1,"2359":2,"2364":1,"2367":1,"2375":2,"2376":1,"2377":1,"2379":1,"2380":4,"2382":1,"2384":2,"2389":2,"2392":1,"2406":1,"2409":1,"2414":1,"2415":1,"2419":1,"2421":2,"2422":2,"2423":1,"2426":1,"2427":1,"2428":2,"2431":1,"2432":2,"2435":3,"2436":4,"2450":1,"2451":1,"2452":1,"2455":1,"2461":3,"2463":1,"2465":1,"2466":1,"2470":1,"2476":3,"2481":4,"2482":3,"2483":1,"2484":2,"2486":2,"2497":2,"2502":3,"2511":1,"2517":1,"2520":1,"2527":1,"2529":2,"2530":4,"2532":3,"2534":1,"2537":2,"2539":2,"2540":2,"2541":1,"2542":1,"2544":1,"2545":2,"2549":16,"2551":1,"2554":12,"2558":2,"2565":1,"2572":1,"2575":4,"2577":1,"2586":1,"2587":2,"2595":2,"2596":2,"2607":1,"2626":1,"2629":2,"2632":5,"2633":1,"2635":3,"2638":1,"2641":2,"2652":2,"2659":1,"2665":5,"2666":1,"2677":1,"2682":1,"2684":2,"2686":1,"2687":2,"2688":2,"2690":2,"2694":1,"2700":1,"2702":1,"2718":1,"2719":2,"2721":1,"2722":3,"2723":6,"2724":1,"2725":2,"2729":1,"2732":5,"2733":1,"2757":1,"2762":1,"2764":1,"2769":1,"2779":2,"2788":1,"2802":2,"2804":1,"2808":1,"2810":4,"2812":4,"2814":2,"2815":4,"2822":1,"2823":1,"2824":1,"2825":4,"2829":1,"2830":1,"2831":2,"2832":4,"2833":3,"2835":2,"2836":1,"2840":1,"2841":2,"2842":1,"2845":2,"2848":4,"2849":1,"2852":1,"2862":1,"2865":1,"2866":1,"2868":1,"2871":2,"2878":1,"2879":1,"2881":1}}],["defaultnameclaimtype",{"2":{"19":1,"22":1,"305":2,"310":1,"641":1,"1062":1,"1469":1,"1474":1,"1483":1,"1792":1,"2181":2,"2187":1,"2314":1}}],["defaultsseeventnoticelevel",{"2":{"2251":1}}],["defaultserversenteventseventnoticelevel",{"2":{"655":1,"1792":1,"1836":1,"1857":1,"1858":1,"1859":1,"2251":1,"2701":1,"2832":1,"2835":2}}],["defaultstrategy",{"2":{"577":1,"1153":1,"1154":1,"1177":1,"1587":1,"1588":1,"1597":1,"1598":1,"1792":1}}],["defaults",{"0":{"275":1,"2486":1},"2":{"1":1,"101":1,"105":1,"134":1,"169":1,"237":1,"268":1,"309":2,"377":1,"380":1,"381":2,"448":1,"449":1,"653":1,"675":2,"801":1,"803":1,"868":2,"964":1,"1135":1,"1170":1,"1547":1,"1604":1,"1605":2,"1609":1,"1644":1,"1690":2,"1778":1,"1792":9,"1840":2,"1908":1,"1922":1,"1971":1,"2086":4,"2095":1,"2117":1,"2181":1,"2223":2,"2224":1,"2261":1,"2333":4,"2351":1,"2353":1,"2377":1,"2380":1,"2410":1,"2411":1,"2419":2,"2425":1,"2430":1,"2435":1,"2442":1,"2445":1,"2470":1,"2481":1,"2482":2,"2486":5,"2497":1,"2498":1,"2536":1,"2540":1,"2546":1,"2551":3,"2577":2,"2659":1,"2669":1,"2670":1,"2682":1,"2688":1,"2702":1,"2721":1,"2723":1,"2769":1,"2795":1,"2805":1,"2835":1,"2845":1,"2848":1,"2859":1,"2861":1}}],["detaching",{"2":{"2466":1}}],["detail",{"2":{"819":1,"841":1,"847":1,"852":1,"865":1,"894":1,"938":2,"982":1,"995":5,"1111":1,"1185":1,"1342":1,"1366":1,"1386":1,"1403":6,"1408":1,"1414":1,"1553":1,"1558":1,"1567":2,"1792":1,"1802":1,"2158":1,"2177":1,"2255":1,"2271":1,"2273":2,"2359":2,"2795":1,"2880":1}}],["detailedreport",{"0":{"2104":1},"2":{"1792":1,"2093":1,"2094":1,"2535":1,"2537":1,"2800":1,"2802":1,"2880":1}}],["detailed",{"2":{"646":1,"1097":1,"1223":1,"1254":1,"1260":1,"1281":1,"1284":1,"1472":1,"1482":1,"1620":1,"1792":2,"1801":1,"2364":1,"2366":1,"2537":1,"2634":1,"2713":1}}],["details",{"2":{"35":1,"140":1,"199":1,"256":4,"334":1,"841":1,"843":1,"847":1,"849":1,"851":1,"903":1,"916":6,"917":3,"933":1,"948":1,"1032":1,"1033":1,"1054":1,"1055":1,"1058":1,"1060":1,"1073":1,"1084":1,"1102":1,"1109":1,"1111":8,"1193":2,"1218":1,"1386":3,"1396":1,"1401":2,"1403":1,"1620":1,"1628":1,"1669":5,"1671":2,"1672":1,"1673":4,"1678":7,"1686":1,"1743":1,"1792":8,"1801":1,"2217":1,"2240":1,"2253":1,"2255":9,"2266":1,"2271":1,"2277":4,"2364":1,"2476":1,"2625":1,"2774":1,"2870":1}}],["detected",{"2":{"1225":2,"1470":1,"1592":1,"1627":1,"1684":1,"1792":3,"1875":1,"2106":2,"2156":2,"2346":1,"2372":1,"2542":2,"2543":2,"2869":1,"2878":1}}],["detection",{"0":{"2843":1},"2":{"1218":1,"1472":1,"2266":1,"2270":3,"2319":2,"2417":1,"2438":1,"2447":1,"2492":1,"2546":1,"2607":1,"2648":1,"2673":1,"2878":1}}],["detects",{"2":{"997":1,"1174":1,"1337":1,"1792":1,"2157":1,"2543":1}}],["detect",{"2":{"854":1,"865":1,"1227":1,"1877":1,"2401":1}}],["determine",{"0":{"2734":1},"2":{"1403":1,"1762":1,"1792":2,"2336":1,"2634":1}}],["determines",{"2":{"872":1,"1589":1,"1658":1,"1792":4,"1858":1,"1888":1}}],["determined",{"2":{"52":1,"140":1}}],["determining",{"2":{"782":1,"784":1,"786":1,"2597":1}}],["deterministic",{"2":{"695":2,"2167":1,"2424":1,"2452":1,"2456":2,"2533":1,"2545":1,"2546":1,"2873":2}}],["d",{"2":{"1":1,"269":1,"273":1,"817":1,"847":1,"897":3,"1005":1,"1064":1,"1080":1,"1086":1,"1088":1,"1119":1,"1206":1,"1416":1,"1418":1,"1419":1,"1431":1,"1442":1,"1443":1,"1559":2,"1570":3,"1571":2,"1577":2,"1581":1,"1704":1,"1792":4,"2077":1,"2111":1,"2144":1,"2146":1,"2148":1,"2211":1,"2438":1,"2484":2,"2532":2,"2575":1,"2588":2,"2874":1,"2875":1}}],["dictionaries",{"2":{"1605":1,"2497":1,"2688":1}}],["dictionary",{"2":{"480":1,"860":1,"1499":1,"1792":4,"1974":1,"2148":1,"2255":3,"2256":2,"2266":3,"2411":1,"2440":1,"2442":1,"2444":1,"2446":1,"2483":1,"2504":1,"2575":1,"2607":1,"2614":2}}],["dict",{"0":{"2378":1},"2":{"1458":1,"2375":1,"2411":1,"2413":1}}],["died",{"2":{"1382":1}}],["dies",{"2":{"852":1}}],["ditch",{"2":{"1130":1}}],["dimensionality",{"2":{"2590":1}}],["dimensional",{"2":{"2588":1,"2590":2}}],["dimension",{"2":{"871":1,"1270":1}}],["dimensions",{"0":{"870":1},"1":{"871":1,"872":1,"873":1,"874":1,"875":1}}],["di",{"2":{"867":1,"868":2,"869":2,"873":1,"1076":1}}],["dir",{"2":{"2371":4}}],["dirty",{"2":{"849":1}}],["directories",{"2":{"2668":1,"2841":1}}],["directory",{"2":{"757":2,"784":1,"848":1,"1074":1,"1212":1,"1278":1,"1358":1,"1386":2,"1654":1,"1792":1,"2002":2,"2003":1,"2034":1,"2036":2,"2117":1,"2127":2,"2162":1,"2297":1,"2317":1,"2318":1,"2371":2,"2537":1,"2684":2,"2702":1,"2774":1,"2821":1,"2825":2}}],["direction",{"2":{"414":1,"833":2,"861":2,"872":1,"1088":3,"1220":2,"1221":2,"1222":2,"1402":1}}],["directives",{"0":{"211":1,"1731":1,"2505":1},"2":{"214":1,"546":1,"1138":1,"2020":2,"2222":1,"2264":1,"2287":1,"2502":3,"2505":1,"2529":2,"2762":1,"2765":1,"2865":1}}],["directive",{"0":{"2502":1},"2":{"203":6,"213":1,"214":2,"239":2,"689":1,"690":1,"698":1,"699":1,"702":1,"1017":1,"1032":1,"1138":1,"1430":1,"1493":1,"1722":1,"1739":1,"1743":2,"1792":2,"2109":1,"2222":1,"2287":1,"2502":2,"2505":2,"2506":1,"2759":1,"2765":1,"2769":1,"2771":1}}],["direct",{"0":{"1568":1},"2":{"261":1,"831":1,"851":1,"941":1,"993":1,"1007":1,"1009":1,"1107":1,"1111":1,"1117":1,"1125":1,"1126":2,"1176":1,"1185":2,"1207":1,"1217":1,"1230":1,"1276":1,"1351":1,"1354":1,"1385":4,"1747":1,"1792":2,"1880":1,"2054":1,"2372":1,"2622":1,"2635":2,"2645":1}}],["directly",{"0":{"2729":1},"2":{"173":1,"253":1,"404":1,"415":1,"421":1,"424":1,"435":1,"436":1,"438":1,"445":1,"448":1,"454":1,"679":1,"683":1,"691":1,"832":1,"834":1,"843":1,"860":1,"866":1,"871":1,"874":1,"875":1,"918":1,"922":1,"932":1,"934":1,"940":1,"949":1,"952":1,"974":1,"988":1,"1012":1,"1014":1,"1037":4,"1038":1,"1052":1,"1086":1,"1094":1,"1096":1,"1098":1,"1099":1,"1103":1,"1105":2,"1113":1,"1122":1,"1138":1,"1174":1,"1176":1,"1183":1,"1184":1,"1185":2,"1193":1,"1202":1,"1203":1,"1208":1,"1254":1,"1331":1,"1337":1,"1363":1,"1373":1,"1378":1,"1393":1,"1396":1,"1397":1,"1398":1,"1399":3,"1409":1,"1412":2,"1419":1,"1435":1,"1502":1,"1528":1,"1746":1,"1757":1,"1792":2,"1822":1,"1824":1,"1915":1,"1920":1,"1927":1,"1929":1,"1961":1,"2040":1,"2165":1,"2190":1,"2228":1,"2277":1,"2287":1,"2303":1,"2307":1,"2309":1,"2317":1,"2347":1,"2358":1,"2389":1,"2399":1,"2417":1,"2435":1,"2451":2,"2465":1,"2487":1,"2549":3,"2586":1,"2614":1,"2635":1,"2678":1,"2689":1,"2695":1,"2807":1,"2822":1,"2830":1,"2839":1,"2876":1}}],["directs",{"2":{"73":1}}],["differs",{"2":{"1135":1,"1460":1,"2375":1,"2854":1}}],["differ",{"2":{"1083":1,"1102":1,"1382":1,"2811":1}}],["differences",{"0":{"803":1,"893":1},"2":{"848":2,"884":1,"1049":1,"1097":1,"1279":1,"1387":1,"1396":1,"1792":1,"2554":1}}],["difference",{"2":{"414":1,"587":1,"832":1,"833":1,"844":1,"845":1,"893":1,"1041":1,"1088":1,"1090":1,"1098":1,"1101":2,"1102":1,"1108":1,"1233":1,"1238":1,"1272":1,"1385":3,"2538":1}}],["differentiate",{"2":{"1139":1,"2265":1}}],["differently",{"2":{"683":1,"841":1,"1386":1,"2498":1}}],["different",{"0":{"831":1,"1431":1,"1771":1,"2063":1},"1":{"832":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1},"2":{"1":1,"51":2,"150":2,"168":1,"239":1,"356":1,"387":1,"395":2,"436":2,"451":1,"646":2,"650":1,"666":2,"669":1,"720":1,"724":1,"831":1,"836":1,"838":1,"841":6,"843":2,"844":1,"847":3,"848":9,"849":1,"852":1,"857":1,"859":1,"860":1,"866":1,"872":1,"874":1,"876":1,"879":1,"920":1,"930":1,"967":1,"990":1,"1067":1,"1094":1,"1096":1,"1098":2,"1101":1,"1104":1,"1105":2,"1111":1,"1121":1,"1127":1,"1128":2,"1129":1,"1135":1,"1137":1,"1139":1,"1144":1,"1154":2,"1163":2,"1175":1,"1193":1,"1240":1,"1254":1,"1281":1,"1345":1,"1374":1,"1396":1,"1398":1,"1402":1,"1403":1,"1411":1,"1414":1,"1458":1,"1519":4,"1525":1,"1527":1,"1597":1,"1614":2,"1632":1,"1637":1,"1651":1,"1658":1,"1732":1,"1771":1,"1792":9,"1830":1,"1837":1,"1889":1,"1911":1,"1968":1,"2063":1,"2247":1,"2265":1,"2273":1,"2297":1,"2346":1,"2347":1,"2375":1,"2380":2,"2389":2,"2407":1,"2419":1,"2421":1,"2429":1,"2452":1,"2504":1,"2534":1,"2597":1,"2635":1,"2666":1,"2679":1,"2680":3,"2765":1,"2856":1}}],["difficult",{"2":{"994":1,"1005":1,"1014":1}}],["difficulty",{"2":{"841":1}}],["difficulties",{"2":{"841":6}}],["diverged",{"2":{"2450":1}}],["dividing",{"2":{"1952":1}}],["divided",{"2":{"1159":1}}],["division",{"2":{"1":1,"1211":1}}],["div>",{"2":{"938":2,"1061":3}}],["div",{"2":{"938":2,"1061":3,"1429":1}}],["divorce",{"2":{"840":1}}],["didn",{"2":{"852":1,"856":1,"872":1,"874":1,"1382":1,"1391":1,"1401":1,"1402":3,"1437":1,"2394":1}}],["did",{"2":{"625":1,"840":2,"852":2,"859":1,"866":1,"920":1,"1031":1,"1080":1,"1382":1,"1385":2,"1527":1,"2389":1,"2414":1,"2551":1}}],["digging",{"2":{"2401":1}}],["dig",{"2":{"840":1,"2530":1}}],["digitalocean",{"2":{"1086":1,"1094":1,"1121":1}}],["digit",{"2":{"382":1,"1792":1,"2098":1,"2334":1,"2397":1,"2534":1,"2871":1}}],["digits",{"2":{"382":1,"2334":1}}],["digest",{"2":{"308":6,"2177":4}}],["dialect",{"2":{"848":1}}],["dialogs",{"2":{"51":1}}],["dialog",{"2":{"45":1,"1695":1,"1792":1}}],["diagnose",{"2":{"1014":1,"2428":1}}],["diagnostics",{"0":{"2492":1},"2":{"2407":1,"2481":1,"2535":1,"2800":1,"2805":1}}],["diagnostic",{"2":{"354":2,"868":1,"1792":1,"2104":1}}],["diagram",{"2":{"845":1,"1403":1}}],["disks",{"2":{"848":2}}],["disk",{"2":{"847":2,"848":7,"849":2,"851":1,"919":1,"1095":1,"1155":1,"1324":1,"1353":1,"1378":1,"1403":1,"1405":1,"1406":2,"1407":1,"1420":1,"1422":1,"1594":1,"1792":1}}],["dispatches",{"2":{"2438":1}}],["dispatcher",{"2":{"2421":3}}],["dispatched",{"2":{"1852":1,"2383":1,"2811":1}}],["dispatch",{"2":{"2225":1,"2372":1,"2422":2,"2435":1,"2621":3}}],["dispute",{"2":{"864":1}}],["disposes",{"2":{"855":1}}],["disposed",{"2":{"714":1,"716":1,"2404":1,"2466":1}}],["disposable",{"2":{"845":1}}],["disposition",{"2":{"386":2,"392":1,"492":1,"493":2,"543":1,"544":2,"546":1,"1189":2,"1373":2}}],["displaying",{"0":{"1364":1}}],["displayname",{"2":{"1214":1,"1218":1,"1220":2,"1221":1}}],["displays",{"2":{"963":1,"1068":1,"2577":1}}],["display",{"2":{"305":1,"428":1,"996":2,"1024":2,"1060":1,"1214":1,"1232":3,"1240":1,"1318":1,"1687":1,"1792":7,"1802":1,"1882":2,"1889":1,"2181":1,"2567":1,"2663":1}}],["displayed",{"2":{"45":1,"51":1,"1792":2,"2117":1,"2702":1,"2795":1}}],["disconnected`",{"2":{"1320":1}}],["disconnecteventsource",{"2":{"1318":1}}],["disconnection",{"2":{"1320":1}}],["disconnect",{"2":{"1318":1,"1320":2,"2498":1,"2615":2}}],["discouraged",{"2":{"1228":1,"1229":1,"1792":4,"1878":1,"1879":1}}],["discount",{"2":{"1193":2}}],["discoverable",{"2":{"1218":1,"1222":1,"1229":2,"1234":2,"1792":8,"1832":1,"1833":1,"1879":2,"1884":1,"2481":1}}],["discovery",{"0":{"2539":1,"2799":1},"2":{"1080":1,"1408":1,"1789":1,"1792":7,"1802":2,"1833":2,"2094":2,"2095":1,"2106":1,"2108":1,"2112":1,"2156":3,"2159":1,"2221":1,"2532":1,"2536":1,"2537":1,"2539":1,"2542":2,"2546":1,"2608":1,"2710":1,"2722":1,"2751":1,"2795":2,"2799":1,"2861":1,"2871":1,"2878":1,"2880":1}}],["discovers",{"2":{"927":1,"1792":1,"2526":1,"2672":1}}],["discovered",{"2":{"865":1,"1792":4,"2094":2,"2096":1,"2105":1,"2156":1,"2537":1,"2542":1,"2721":2,"2751":1,"2872":1,"2878":1}}],["discover",{"2":{"317":1,"932":1,"973":1,"983":1,"1001":1,"1037":1,"1038":1,"1045":1,"1076":1,"1813":1,"1827":1,"2166":1,"2479":1,"2481":2,"2608":1,"2693":1}}],["discard",{"2":{"1070":1,"1851":1,"2342":1,"2382":1}}],["discarded",{"2":{"299":1,"309":1,"1070":1,"1851":1,"2382":1,"2395":1,"2510":1,"2867":1}}],["disciplined",{"2":{"869":1}}],["discipline",{"2":{"852":1,"863":2,"864":2,"865":1}}],["discussed",{"2":{"871":1}}],["discussion",{"2":{"851":2,"948":1}}],["discuss",{"2":{"841":1}}],["dist",{"2":{"1420":2,"2792":3}}],["disturbing",{"2":{"913":1}}],["distinguished",{"2":{"2347":1,"2421":1}}],["distinguishes",{"2":{"369":1,"1792":1}}],["distinction",{"2":{"1417":1,"2193":1,"2581":1,"2607":1}}],["distinct",{"2":{"214":1,"693":1,"708":1,"849":2,"852":1,"868":1,"916":1,"1098":1,"1219":1,"1460":1,"1519":1,"1722":1,"1743":1,"1792":2,"1869":1,"2040":1,"2098":1,"2222":1,"2265":1,"2375":1,"2380":1,"2464":1,"2465":1,"2477":1,"2504":4,"2506":1,"2534":1,"2535":1,"2662":1,"2769":1,"2871":1}}],["distributes",{"2":{"1180":2}}],["distributed",{"2":{"121":1,"848":1,"1013":1,"1110":1,"1150":1,"1151":1,"1180":1,"1511":1,"1514":1,"1515":3,"1529":1,"1792":2,"2274":3}}],["distributing",{"2":{"1175":2}}],["distribution",{"0":{"1013":1,"2776":1},"2":{"233":1,"635":1,"671":1,"857":1,"860":1,"1107":1,"1303":1,"1304":1,"1860":1,"2157":1,"2543":1}}],["disallowed",{"2":{"1458":1,"2375":1}}],["disadvantages",{"2":{"1386":1,"1396":1}}],["disaster",{"2":{"922":1,"1402":1}}],["disappears",{"2":{"180":1}}],["disabling",{"2":{"87":1,"174":1,"1527":1,"2380":1}}],["disablestringreuse",{"2":{"1609":1,"1792":1,"1994":2,"2661":1}}],["disables",{"2":{"1479":2,"1489":1,"1792":7,"1816":1,"1917":1,"2000":1,"2003":1,"2021":1,"2094":2,"2095":1,"2101":1,"2154":1,"2156":1,"2463":1,"2537":2,"2542":1,"2632":1,"2814":1}}],["disable",{"0":{"83":1,"180":1,"722":1,"1412":1},"2":{"81":1,"175":1,"223":1,"334":1,"720":6,"1224":1,"1226":1,"1241":1,"1511":1,"1616":1,"1671":1,"1764":1,"1769":1,"1792":24,"1848":1,"1859":1,"1874":1,"1876":1,"1890":1,"1925":1,"1974":1,"1994":1,"2000":1,"2001":1,"2041":1,"2047":1,"2060":1,"2125":1,"2254":1,"2255":1,"2265":1,"2330":1,"2342":1,"2350":1,"2517":1,"2539":1,"2572":1,"2607":1,"2634":2,"2635":2,"2699":1,"2824":2}}],["disabled",{"0":{"171":1,"2351":1,"2353":1},"1":{"172":1,"173":1,"174":1,"175":1,"176":1},"2":{"64":1,"172":2,"173":1,"174":1,"175":3,"177":3,"180":2,"181":1,"223":1,"688":1,"704":1,"720":1,"1220":1,"1254":1,"1386":1,"1417":1,"1420":1,"1521":1,"1639":1,"1792":6,"1813":1,"1870":1,"1959":1,"2111":2,"2156":1,"2224":1,"2330":1,"2352":2,"2353":1,"2380":2,"2471":1,"2481":1,"2527":1,"2532":2,"2535":1,"2537":1,"2545":1,"2581":1,"2586":2,"2600":2,"2611":1,"2687":1,"2721":1,"2824":1,"2825":1,"2862":1,"2871":1}}],["disagreed",{"2":{"2486":1}}],["disagreement",{"2":{"1403":1}}],["disagree",{"2":{"1":1,"74":1,"875":1}}],["dorny",{"2":{"2880":1}}],["dollar",{"2":{"2528":1,"2540":1,"2546":1,"2845":1,"2863":1}}],["dog",{"2":{"1400":1}}],["dotnet",{"2":{"1046":1,"1076":1,"1207":1,"1792":4,"2157":3,"2450":1,"2456":1,"2481":1,"2543":4,"2792":4,"2874":1}}],["domcontentloadedeventend",{"2":{"1792":2}}],["domcomplete",{"2":{"1792":2}}],["dominteractive",{"2":{"1792":2}}],["dominate",{"2":{"2398":1}}],["dominates",{"0":{"1262":1},"2":{"873":1,"1091":1,"1268":1}}],["dominance",{"0":{"1275":1}}],["dominant",{"2":{"873":1}}],["dom",{"2":{"1432":1}}],["domains",{"2":{"852":1}}],["domaindrivendesign",{"2":{"845":1}}],["domain",{"2":{"840":1,"841":3,"843":4,"845":5,"851":13,"852":3,"855":1,"859":1,"860":1,"863":4,"864":2,"865":3,"1225":1,"1435":1,"1447":1,"1448":1,"1704":1,"1792":5,"1875":1,"2419":1}}],["dozens",{"2":{"1406":1}}],["dozen",{"2":{"868":1,"992":1,"1059":1,"1414":1}}],["doubt",{"2":{"843":1}}],["doubled",{"2":{"2603":1}}],["double",{"2":{"585":1,"865":1,"956":1,"1606":1,"1608":1,"1792":1,"2272":1,"2309":1,"2412":1,"2438":3,"2603":2,"2689":1}}],["doing",{"0":{"868":1},"2":{"841":2,"849":1,"852":1,"861":1,"1366":1,"1378":1,"1382":1,"1385":2,"1399":1,"1401":1,"1403":5,"1405":1,"1440":1,"2812":1}}],["downgraded",{"2":{"2363":1}}],["downgrades",{"2":{"2019":2}}],["downgrade",{"0":{"2363":1},"2":{"1792":1,"2019":1,"2632":1}}],["downtime",{"0":{"1438":1},"2":{"1438":2,"1439":1,"1440":1,"1441":1,"1442":1}}],["down",{"0":{"1045":1},"2":{"947":1,"948":1,"967":1,"974":1,"1037":1,"1135":1,"1352":1,"1384":1,"1385":1,"1792":1,"1958":1,"2362":1,"2470":1,"2532":1,"2543":1,"2742":1,"2881":1}}],["downstream",{"2":{"690":1,"1421":1,"2452":1,"2455":1}}],["downloading",{"2":{"1792":1,"2576":1}}],["downloadable",{"2":{"1099":1}}],["downloads",{"2":{"673":1,"720":1,"723":1,"957":1,"964":1,"1200":1,"1207":1,"1412":1,"1413":1,"2072":1,"2162":1,"2650":1,"2656":1,"2779":1,"2786":1}}],["download",{"0":{"392":1,"492":1,"493":1,"678":1,"2778":1,"2780":1},"1":{"2779":1,"2780":1,"2781":2,"2782":2,"2783":2,"2784":2,"2785":1},"2":{"492":3,"546":1,"675":2,"679":1,"902":1,"947":2,"948":1,"949":2,"957":1,"959":2,"960":1,"961":3,"968":1,"970":1,"1086":1,"1117":2,"1118":2,"1189":1,"1373":1,"1413":1,"1792":4,"2017":1,"2077":1,"2078":1,"2079":1,"2615":1,"2652":1,"2653":1,"2779":1,"2781":2,"2782":2,"2783":2,"2784":2,"2792":1}}],["do",{"0":{"621":1,"1395":1,"1396":1,"2716":1,"2717":1,"2718":1,"2724":1,"2725":1,"2726":1,"2727":1,"2728":1,"2732":1,"2733":1,"2737":1,"2739":1,"2745":1,"2746":1,"2747":1,"2749":1,"2750":1,"2751":1,"2752":1,"2855":1},"2":{"165":1,"184":2,"319":1,"387":1,"414":1,"452":1,"583":1,"584":1,"621":2,"624":3,"625":2,"641":1,"650":1,"658":1,"659":2,"664":1,"665":2,"826":2,"831":1,"834":1,"837":1,"838":2,"844":3,"845":1,"848":1,"849":1,"851":5,"852":2,"859":1,"864":1,"875":1,"876":1,"898":1,"912":1,"916":1,"919":2,"920":1,"932":1,"975":1,"979":1,"980":1,"988":1,"989":1,"990":3,"991":1,"992":1,"994":2,"1005":1,"1039":1,"1054":1,"1073":1,"1074":1,"1075":1,"1076":3,"1077":3,"1082":1,"1104":1,"1130":3,"1133":1,"1139":2,"1185":1,"1309":1,"1339":1,"1372":3,"1376":2,"1378":2,"1382":1,"1384":3,"1385":2,"1386":4,"1388":1,"1391":1,"1393":2,"1394":5,"1395":3,"1396":4,"1400":2,"1401":1,"1402":1,"1403":3,"1404":1,"1405":3,"1416":1,"1417":1,"1419":1,"1423":2,"1431":3,"1435":1,"1437":1,"1438":1,"1441":1,"1442":1,"1570":1,"1574":1,"1581":1,"1655":1,"1664":1,"1689":1,"1716":1,"1792":2,"1941":1,"2110":1,"2167":1,"2193":1,"2221":1,"2292":1,"2300":1,"2319":6,"2337":1,"2338":3,"2342":1,"2343":1,"2372":1,"2393":1,"2415":1,"2431":1,"2468":1,"2528":5,"2530":1,"2535":1,"2546":1,"2581":1,"2586":1,"2755":2,"2788":1,"2795":1,"2802":1,"2810":1,"2815":1,"2829":1,"2834":1,"2841":1,"2843":1,"2851":1,"2854":1,"2855":5,"2858":1,"2863":1,"2864":3,"2875":1,"2881":1}}],["doe",{"2":{"34":1,"128":1,"489":1,"493":1,"643":1,"646":1,"1386":8,"1391":2,"1393":4}}],["doesn",{"0":{"1210":1,"1432":1,"2721":1,"2722":1},"2":{"23":1,"168":2,"175":1,"303":2,"376":1,"389":1,"454":1,"480":1,"524":1,"528":1,"584":1,"684":1,"737":1,"784":1,"845":1,"847":2,"848":4,"869":1,"871":2,"873":2,"876":2,"918":1,"933":1,"947":1,"953":1,"961":1,"984":1,"1067":1,"1075":1,"1076":2,"1079":1,"1134":1,"1139":1,"1171":1,"1238":1,"1326":1,"1351":1,"1358":1,"1376":1,"1385":1,"1386":5,"1394":2,"1396":2,"1404":1,"1409":1,"1414":1,"1415":1,"1422":1,"1435":1,"1543":1,"1792":4,"1832":1,"2127":1,"2156":1,"2207":1,"2297":1,"2337":1,"2389":1,"2434":1,"2438":1,"2483":1,"2835":2}}],["does",{"0":{"666":1,"2713":1},"2":{"1":1,"215":1,"436":1,"453":2,"618":1,"621":1,"650":1,"665":1,"668":1,"669":1,"762":1,"834":2,"841":2,"848":2,"849":1,"851":3,"852":2,"854":1,"857":1,"861":2,"864":2,"872":1,"873":1,"876":1,"877":1,"893":1,"918":1,"919":1,"920":1,"932":1,"979":1,"980":1,"985":1,"986":1,"988":1,"990":1,"996":2,"1017":1,"1038":1,"1045":1,"1076":1,"1077":2,"1096":1,"1098":1,"1105":1,"1111":1,"1125":1,"1211":1,"1382":1,"1386":1,"1396":1,"1405":1,"1406":1,"1409":1,"1410":1,"1412":1,"1419":1,"1428":1,"1431":1,"1435":1,"1438":1,"1441":1,"1523":1,"1528":1,"1593":1,"1624":1,"1651":1,"1653":1,"1655":1,"1678":1,"1768":1,"1792":4,"1822":1,"1825":2,"1961":2,"2040":1,"2098":1,"2171":1,"2175":1,"2328":1,"2380":1,"2391":1,"2437":1,"2451":1,"2453":1,"2463":1,"2466":1,"2481":2,"2496":1,"2511":2,"2528":1,"2531":1,"2539":1,"2542":3,"2634":1,"2677":1,"2760":1,"2765":1,"2809":1,"2830":1,"2832":1,"2840":1,"2864":1}}],["donottrack",{"2":{"1792":2}}],["dont",{"2":{"920":1}}],["done",{"0":{"947":1,"1435":1},"1":{"948":1,"949":1,"950":1,"951":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1},"2":{"614":2,"861":1,"871":1,"872":2,"877":1,"913":1,"974":1,"1037":3,"1044":2,"1065":1,"1132":1,"1254":1,"1390":1,"1399":1,"1419":1,"1435":2,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"2164":1,"2339":2,"2731":1,"2875":1}}],["don",{"0":{"910":1},"1":{"911":1},"2":{"33":1,"101":1,"175":1,"177":1,"307":1,"308":2,"319":1,"390":1,"499":1,"583":1,"587":1,"639":1,"691":1,"843":2,"844":1,"847":1,"849":2,"851":1,"852":2,"859":2,"869":1,"873":1,"876":1,"884":1,"896":1,"901":1,"904":1,"911":1,"918":1,"960":1,"961":1,"975":1,"1006":1,"1036":1,"1040":1,"1050":1,"1065":1,"1067":1,"1068":1,"1073":1,"1074":1,"1076":1,"1078":1,"1079":2,"1081":1,"1145":1,"1150":1,"1166":1,"1170":1,"1210":1,"1228":1,"1326":1,"1328":1,"1337":1,"1385":2,"1386":2,"1388":2,"1390":1,"1393":1,"1395":1,"1399":1,"1400":2,"1401":3,"1402":4,"1403":4,"1405":1,"1411":1,"1441":2,"1442":1,"1511":1,"1572":1,"1580":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1774":1,"1792":8,"1801":1,"1823":1,"1825":2,"1849":1,"1878":1,"1941":1,"1974":1,"1983":1,"2016":1,"2024":1,"2157":1,"2160":1,"2177":2,"2180":1,"2183":1,"2193":1,"2250":1,"2342":1,"2392":1,"2398":1,"2406":1,"2415":1,"2433":1,"2438":1,"2489":1,"2533":1,"2543":1,"2607":1,"2632":1,"2685":1,"2741":1,"2820":1,"2827":1,"2830":1,"2835":2,"2836":1,"2840":1,"2854":1,"2867":2}}],["doc",{"2":{"1427":3,"1429":1,"1792":2,"2430":2}}],["dockerfiles",{"2":{"2576":1}}],["dockerfiledockerfilefrom",{"2":{"1420":1}}],["docker",{"0":{"1343":1,"1715":1,"1775":1,"2245":1,"2385":1,"2550":1,"2576":1,"2717":1,"2787":1,"2875":1},"1":{"2788":1,"2789":1,"2790":1,"2791":1},"2":{"994":1,"1013":1,"1071":1,"1078":1,"1082":1,"1084":1,"1100":1,"1117":3,"1118":2,"1119":4,"1127":1,"1255":1,"1343":2,"1420":1,"1442":1,"1654":3,"1663":1,"1762":1,"1792":6,"2092":1,"2111":4,"2114":1,"2157":4,"2237":1,"2238":1,"2242":1,"2245":1,"2297":1,"2353":1,"2385":1,"2532":5,"2534":3,"2543":3,"2550":1,"2576":6,"2634":3,"2711":1,"2716":1,"2717":1,"2788":5,"2789":3,"2790":3,"2791":3,"2871":1,"2875":3}}],["doctype",{"2":{"965":1,"1685":1,"1792":1}}],["documenting",{"2":{"1912":1,"2577":1}}],["documentdescription",{"2":{"1792":1,"1897":1,"1898":1,"1899":1,"1907":1,"1911":1,"2254":1,"2434":1}}],["documentversion",{"2":{"1792":1,"1897":1,"1898":1,"1899":1,"1907":1,"2254":1}}],["documenttitle",{"2":{"1792":1,"1897":1,"1898":1,"1899":1,"1907":1,"1911":1,"2254":1,"2434":1}}],["documentation",{"0":{"251":1,"1002":1,"1182":1},"2":{"251":1,"624":1,"869":1,"1006":2,"1009":1,"1055":1,"1060":1,"1111":1,"1123":1,"1155":1,"1182":1,"1197":1,"1386":1,"1400":1,"1404":1,"1472":1,"1670":1,"1676":1,"1686":1,"1694":1,"1695":1,"1718":1,"1757":1,"1758":1,"1783":1,"1785":1,"1789":1,"1792":3,"1796":1,"1898":1,"1951":1,"1952":1,"1953":1,"1954":1,"1984":1,"2192":1,"2194":1,"2255":1,"2267":1,"2411":1,"2459":1,"2496":1,"2505":1,"2546":1,"2586":1,"2677":1,"2693":1,"2705":1}}],["document",{"0":{"1899":1,"1911":1},"2":{"223":1,"347":2,"348":2,"349":1,"354":1,"355":4,"356":1,"851":1,"961":1,"996":6,"1042":1,"1202":1,"1360":1,"1361":1,"1427":1,"1428":1,"1792":15,"1818":1,"1828":1,"1830":1,"1831":1,"1833":2,"1898":1,"1899":1,"1901":1,"1908":1,"1911":4,"1912":2,"2016":2,"2023":1,"2024":1,"2254":5,"2419":1,"2432":2,"2434":3,"2436":2,"2438":3,"2481":1,"2489":1,"2632":3,"2762":2}}],["documents",{"0":{"2430":1},"1":{"2431":1,"2432":1,"2433":1,"2434":1},"2":{"1":1,"267":1,"386":1,"448":1,"1792":1,"2023":1,"2438":1}}],["documented",{"2":{"1":1,"158":1,"856":1,"868":1,"1324":1,"1792":4,"1898":3,"1909":1,"1912":1,"2410":1,"2411":1,"2430":1,"2431":2,"2433":2,"2435":1,"2438":2,"2486":1,"2490":1,"2494":1,"2551":1,"2555":1}}],["docs",{"0":{"1":1,"2489":1},"2":{"1":3,"3":1,"868":1,"878":1,"913":1,"921":1,"947":1,"970":2,"976":1,"1010":1,"1047":1,"1048":1,"1098":1,"1183":1,"1207":2,"1302":1,"1328":1,"1352":1,"1380":2,"1401":1,"1404":1,"1792":6,"2162":2,"2222":1,"2225":1,"2255":4,"2410":1,"2413":1,"2632":2}}],["iuploadhandler",{"2":{"2615":1}}],["iuploadtolargeobjectresponse",{"2":{"1410":1}}],["iuploadtolargeobjectrequest",{"2":{"1410":1}}],["iuploadtofilesystemrequest",{"2":{"1366":1}}],["iuploadtofilesystemresponse",{"2":{"1366":2}}],["iquerycollection",{"2":{"2614":2}}],["ibufferwriter",{"2":{"2400":1}}],["ibooksinfo",{"2":{"920":3}}],["ibooks",{"2":{"920":4,"2590":2,"2611":2}}],["iaddress",{"2":{"2590":2}}],["iactionresult>",{"2":{"1366":1}}],["iaianalyzerequest",{"2":{"1342":2}}],["iauthor",{"2":{"920":7}}],["ioexception",{"2":{"1366":2}}],["io",{"2":{"1320":10,"1322":1,"1366":1,"1423":1,"1457":1,"1595":1,"1792":2,"2267":1,"2554":1}}],["iendpointcreatehandler",{"2":{"2438":1,"2482":2}}],["iendpointsource",{"0":{"2369":1},"2":{"2228":1,"2369":4}}],["ienumerable",{"2":{"852":1}}],["ietf",{"2":{"1111":1,"1676":1,"1677":1}}],["iwhoamirequest",{"2":{"938":1,"1567":3,"1568":1,"1570":1}}],["iwhoamiresponse>",{"2":{"1568":1}}],["iwhoamiresponse",{"2":{"938":2,"1567":4,"1568":1,"1570":1}}],["i+1",{"2":{"929":2}}],["i++",{"2":{"894":1,"1366":1,"1410":1}}],["ijk",{"2":{"915":2}}],["ivy",{"2":{"913":1}}],["icancelcomputerequest",{"2":{"1581":1}}],["icomputevisualizationresponse",{"2":{"1416":2}}],["icomputevisualizationrequest",{"2":{"1416":1,"1572":1}}],["icon",{"2":{"844":1}}],["icreateauthorresponse",{"2":{"920":1}}],["icreateauthorrequest",{"2":{"920":1}}],["icsvuploadrequest",{"2":{"894":1}}],["icsvuploadresponse",{"2":{"894":2}}],["ixmlrepository",{"2":{"868":1}}],["ii",{"2":{"851":1}}],["iloginrequest",{"2":{"938":2}}],["illustrative",{"2":{"2442":1}}],["illustrate",{"2":{"868":1,"920":1}}],["illusion",{"2":{"849":2,"851":7,"852":1}}],["illogical",{"2":{"849":1}}],["ilike",{"2":{"250":1,"520":2,"1038":2,"1096":1}}],["ignoring",{"2":{"2376":1}}],["ignores",{"2":{"927":1,"1792":1}}],["ignored",{"0":{"2505":1},"2":{"109":1,"214":1,"244":1,"251":1,"286":1,"303":1,"324":1,"378":1,"422":1,"446":1,"527":1,"585":1,"704":1,"747":1,"928":1,"1360":1,"1386":1,"1395":1,"1470":1,"1569":1,"1609":1,"1722":1,"1743":1,"1759":1,"1769":1,"1792":10,"1816":1,"1858":1,"1912":1,"1917":1,"2004":1,"2060":1,"2074":1,"2111":1,"2157":1,"2192":1,"2194":1,"2222":1,"2337":1,"2365":1,"2395":1,"2428":1,"2444":1,"2502":2,"2506":1,"2520":1,"2529":2,"2532":1,"2533":1,"2537":1,"2543":1,"2634":1,"2635":1,"2659":1,"2797":1,"2814":1,"2865":1,"2871":1}}],["ignore",{"0":{"462":1,"501":1},"2":{"64":1,"244":1,"348":1,"355":1,"460":1,"462":1,"468":1,"470":1,"499":1,"501":1,"583":1,"1139":1,"1199":1,"1499":1,"1500":1,"1609":1,"1792":18,"1836":1,"1840":2,"1849":1,"1853":1,"1854":1,"2004":1,"2038":1,"2209":2,"2393":1,"2414":1,"2415":1,"2417":1,"2432":1,"2435":1,"2487":1,"2551":1,"2595":1,"2659":1}}],["igetuserwithaddressresponse",{"2":{"2590":1}}],["igetuserresponse",{"2":{"1419":1}}],["igetusersresponse",{"2":{"995":3,"996":2,"1386":4,"1408":2,"1409":1}}],["igetfinancialdashboardresponse",{"2":{"1024":2}}],["igetfinancialdashboardrequest",{"2":{"1024":2}}],["igetpostsresponse",{"2":{"985":1,"995":3,"996":2,"1408":4}}],["igetauthorswithbooksresponse",{"2":{"2590":1}}],["igetauthorswithdetailstypenestedresponse",{"2":{"920":1}}],["igetauthorswithdetailstypenestedrequest",{"2":{"920":1}}],["igetauthorswithdetailstyperesponse",{"2":{"920":1}}],["igetauthorswithdetailstyperequest",{"2":{"920":1}}],["igetauthorswithdetailsnestedresponse",{"2":{"920":1}}],["igetauthorswithdetailsnestedrequest",{"2":{"920":1}}],["igetauthorswithdetailsresponse",{"2":{"920":1}}],["igetauthorswithdetailsrequest",{"2":{"920":1}}],["igetauthorsandbooksandreviewsresponse",{"2":{"920":1}}],["igetauthorsandbooksandreviewsrequest",{"2":{"920":1}}],["igetauthorsandbooksresponse",{"2":{"920":1}}],["igetauthorsandbooksrequest",{"2":{"920":1}}],["igetauthorsresponse",{"2":{"920":1}}],["igetauthorsrequest",{"2":{"920":1}}],["igetauthorinforesponse",{"2":{"920":1}}],["igetauthorinforequest",{"2":{"920":1}}],["igetauthorresponse",{"2":{"920":1}}],["igetauthorrequest",{"2":{"920":1}}],["igetdatarequest",{"2":{"723":2,"961":2,"1413":2}}],["ireviews",{"2":{"2611":3}}],["iresponse",{"2":{"615":2,"2339":2}}],["iroutinesource",{"0":{"2369":1},"2":{"2228":1,"2369":3,"2642":2}}],["iroutinecache",{"0":{"2461":1},"2":{"2224":1,"2459":1,"2461":1}}],["irony",{"2":{"845":1}}],["ir",{"0":{"2531":1},"2":{"699":1,"706":1,"711":2,"1079":1,"1792":1,"2097":1,"2167":1,"2221":1,"2531":4,"2532":1,"2533":2,"2545":1,"2869":3,"2873":1}}],["irrelevant",{"2":{"448":1,"2869":1}}],["imathmodulecancelcomputerequest",{"2":{"1581":1}}],["imaginary",{"2":{"2531":1}}],["imagine",{"2":{"982":1,"1401":1,"1405":1}}],["imageio",{"2":{"1366":1}}],["imageine",{"2":{"918":1}}],["image",{"0":{"1343":1,"1352":1,"2550":1,"2576":1,"2788":1,"2789":1,"2790":1,"2791":1},"1":{"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1},"2":{"414":1,"722":3,"747":2,"753":2,"757":2,"758":1,"768":1,"776":1,"782":3,"783":1,"784":3,"785":1,"791":2,"903":1,"1037":2,"1086":1,"1099":2,"1105":1,"1272":1,"1343":2,"1352":2,"1358":8,"1359":1,"1360":2,"1362":2,"1364":1,"1366":11,"1367":1,"1386":1,"1410":4,"1412":4,"1420":4,"1773":1,"1775":1,"1792":2,"1936":1,"1943":1,"2125":1,"2126":1,"2127":1,"2132":1,"2134":2,"2157":1,"2164":3,"2165":3,"2237":1,"2238":1,"2242":1,"2245":4,"2300":1,"2450":1,"2543":1,"2550":2,"2576":4,"2711":1,"2716":1,"2788":2,"2789":4,"2790":3,"2791":4,"2874":1}}],["images",{"0":{"1362":1,"1364":1,"2385":1},"1":{"1363":1},"2":{"157":2,"722":2,"747":1,"1013":1,"1071":1,"1121":1,"1354":2,"1362":1,"1363":1,"1364":1,"1412":1,"1792":1,"2020":1,"2385":3}}],["img>",{"2":{"1427":1}}],["img",{"2":{"1366":2,"1412":2,"1424":1,"1427":1,"1428":1,"2020":1,"2029":1}}],["imgurl",{"2":{"1364":2}}],["immune",{"2":{"2110":1,"2530":1}}],["immutability",{"2":{"843":2}}],["immutable",{"0":{"180":1,"686":1,"1129":1},"2":{"175":2,"179":1,"180":2,"684":2,"686":1,"687":2,"1037":1,"1067":1,"1128":1,"1129":2,"1362":1,"1363":1,"2381":1,"2858":1}}],["immediate",{"2":{"969":1,"974":1,"986":1,"1153":2,"1325":1,"1393":1,"1590":1,"1792":1,"2615":1,"2633":1}}],["immediately",{"2":{"83":1,"324":1,"705":1,"807":1,"852":1,"952":1,"983":1,"986":1,"992":1,"996":1,"1075":1,"1166":2,"1386":2,"1394":1,"1398":1,"1401":2,"1409":1,"1419":1,"1572":1,"1742":1,"2137":1,"2149":1,"2290":1,"2380":1,"2504":1,"2532":1,"2537":1,"2540":1,"2543":1,"2575":1,"2580":1,"2615":1,"2857":1,"2878":1}}],["impatient",{"2":{"2532":1}}],["impacted",{"2":{"1384":1}}],["impacting",{"2":{"1205":1,"1254":1}}],["impact",{"0":{"2398":1},"2":{"87":2,"258":1,"919":1,"2277":1,"2490":1}}],["improving",{"2":{"2580":1}}],["improves",{"2":{"1511":1,"1792":1,"2265":1}}],["improve",{"2":{"1011":1,"1792":1,"2265":1}}],["improved",{"0":{"2364":1,"2663":1},"2":{"974":1,"1090":1,"1259":1,"1266":2,"1516":1,"2247":1,"2261":1,"2615":1}}],["improvements",{"0":{"1399":1,"2247":1,"2255":1,"2256":1,"2265":1,"2278":1,"2355":1,"2361":1,"2559":1,"2604":1,"2679":1},"1":{"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1},"2":{"1254":2,"1256":1,"2231":1,"2239":1,"2240":2,"2255":1,"2265":1,"2270":2,"2398":1,"2576":1,"2621":1}}],["improvement",{"0":{"2446":1},"2":{"874":1,"1073":1,"1090":2,"1399":1,"2225":1,"2621":1}}],["impressive",{"2":{"1279":1}}],["importable",{"0":{"1571":1},"2":{"1559":1,"1571":1,"1792":1,"2484":1}}],["importantly",{"2":{"2177":1,"2542":1}}],["important",{"0":{"1279":1,"1377":1},"2":{"307":1,"436":1,"446":1,"573":1,"656":1,"845":1,"872":1,"954":1,"1067":1,"1129":1,"1305":1,"1384":1,"1386":1,"1387":1,"1393":1,"1398":1,"1400":1,"1402":1,"1403":1,"1792":1,"1858":1,"2177":1,"2398":1,"2629":1}}],["importparsequeryfrom",{"0":{"1574":1},"2":{"1416":1,"1417":1,"1553":1,"1560":1,"1574":1,"1581":1,"1582":1,"1792":1}}],["importbaseurlfrom",{"0":{"1574":1},"2":{"1416":1,"1417":1,"1553":1,"1560":1,"1574":1,"1581":1,"1582":1,"1792":1}}],["importing",{"2":{"888":1,"2359":1}}],["importedcsv",{"2":{"1202":2}}],["imported",{"2":{"888":3,"1559":1,"1571":1,"1792":1,"2484":2}}],["imports",{"0":{"1582":1},"2":{"868":1,"888":1,"901":1,"903":1,"908":2,"1037":1,"1386":1,"1409":1,"1414":1,"1559":1,"1571":1,"1792":2}}],["import",{"0":{"1560":1},"2":{"855":1,"878":2,"879":1,"888":2,"905":1,"1107":1,"1416":1,"1422":1,"1560":3,"1571":2,"1574":4,"1581":1,"1582":2,"1792":2,"2132":2,"2484":1}}],["impossible",{"0":{"1075":1},"2":{"875":1,"994":1,"1037":1,"1075":1,"2518":1}}],["impossibility",{"2":{"853":1}}],["imposed",{"2":{"848":1}}],["impersonated",{"2":{"865":1}}],["impersonates",{"2":{"852":1}}],["impersonating",{"2":{"852":2}}],["imperative",{"2":{"835":2,"868":1,"1067":1,"1108":1}}],["impede",{"2":{"851":1}}],["impedance",{"0":{"841":1},"2":{"840":1,"841":3,"851":8,"852":1,"865":1,"871":3}}],["implications",{"2":{"1133":1,"1716":1,"1792":2,"1942":1,"2750":1}}],["implies",{"2":{"101":1,"108":1,"720":1,"1533":1,"2380":1,"2656":1}}],["implementing",{"0":{"1209":1},"1":{"1210":1,"1211":1,"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1242":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1},"2":{"845":1,"863":1,"910":1,"1037":2,"1064":1}}],["implemented",{"2":{"841":1,"845":3,"848":1,"852":1,"868":1,"1057":1,"1098":1,"1181":1,"1396":1,"2544":1}}],["implementable",{"2":{"841":1}}],["implementations",{"2":{"845":1,"848":2,"869":1,"879":1,"1049":1,"2369":1,"2615":1,"2642":1}}],["implementation",{"0":{"1218":1},"2":{"363":1,"841":2,"845":2,"848":1,"857":1,"868":2,"872":1,"874":1,"916":1,"951":1,"1024":1,"1025":1,"1049":1,"1064":1,"1073":1,"1098":1,"1100":1,"1101":1,"1113":1,"1181":2,"1211":2,"1218":1,"1325":2,"1412":1,"1504":1,"1689":1,"1868":1,"2309":1,"2421":1,"2461":2,"2494":1,"2625":1}}],["implements",{"2":{"317":1,"841":1,"848":1,"865":1,"1039":1,"1185":1,"1792":1,"1813":1,"1824":1,"2481":1}}],["implement",{"2":{"41":1,"845":1,"852":1,"879":1,"911":1,"922":1,"994":2,"1056":1,"1108":2,"1181":1,"1209":1,"1252":1,"1281":1,"1322":1,"1385":1,"1396":1,"2369":1}}],["iprocessorderrequest",{"2":{"2357":1}}],["iprocessorderresponse>",{"2":{"2357":1}}],["iprocessorderresponse",{"2":{"2357":1}}],["ips",{"2":{"1704":1,"1708":1,"1714":1,"1718":1,"1792":1,"2633":1}}],["ipingresponse",{"2":{"1569":1}}],["ipaddress=",{"2":{"1924":1,"2549":1}}],["ipaddress=203",{"2":{"1069":1}}],["ipaddressparametername",{"2":{"1469":1,"1477":1,"1483":1,"1539":1,"1544":1,"1546":1,"1548":1,"1792":1}}],["ipaddresscontextkey",{"2":{"1469":1,"1475":1,"1483":1,"1539":1,"1540":1,"1548":1,"1792":1,"2184":1}}],["ipaddress",{"2":{"479":1,"1069":1,"1070":1,"1102":1,"1162":2,"1792":5,"1852":1,"1955":2,"1957":1,"1958":1,"1959":1,"1960":1,"2379":3,"2383":1,"2441":1,"2470":1,"2471":1}}],["ipasswordhasher",{"2":{"309":1,"363":1}}],["ip",{"0":{"735":1,"2812":1},"2":{"41":1,"436":1,"453":1,"480":1,"735":2,"738":2,"799":5,"802":2,"835":1,"1069":2,"1101":3,"1102":1,"1121":1,"1162":3,"1225":1,"1237":1,"1239":2,"1241":3,"1469":2,"1475":3,"1477":3,"1483":2,"1539":2,"1540":2,"1543":2,"1544":2,"1546":1,"1547":5,"1548":2,"1569":1,"1616":1,"1684":2,"1701":1,"1703":1,"1704":3,"1705":2,"1707":2,"1714":1,"1759":1,"1792":27,"1852":1,"1875":1,"1890":3,"1912":1,"1923":1,"1924":2,"1951":1,"1952":1,"1953":1,"1954":1,"1955":1,"1957":2,"1959":1,"2184":2,"2222":2,"2379":3,"2383":1,"2438":1,"2471":1,"2509":1,"2510":1,"2511":1,"2513":1,"2520":1,"2549":1,"2633":6,"2806":1,"2812":3}}],["idataprotector",{"2":{"2405":1}}],["id>",{"2":{"1792":1}}],["idle",{"2":{"1616":2}}],["idx",{"2":{"1336":1}}],["idp",{"2":{"1045":1,"1792":1,"1825":4}}],["idictionary",{"2":{"2266":1,"2482":1}}],["idiomatic",{"2":{"2562":1}}],["idiom",{"2":{"876":1,"2531":1,"2533":2}}],["idistributedcache",{"2":{"869":1}}],["idempotent",{"2":{"2533":1}}],["idempotency",{"2":{"2438":2}}],["ides",{"2":{"876":1,"2247":1}}],["ide",{"2":{"876":2,"1002":1,"1406":1,"1409":2,"1418":1,"2670":1}}],["idea",{"0":{"832":1},"2":{"831":2,"848":1,"851":2,"1073":1,"1082":2,"1386":2,"1402":1}}],["ideal",{"2":{"212":1,"851":3,"1035":1,"1098":1,"1105":1,"1127":1,"1160":1,"1323":1,"2054":1}}],["identity",{"0":{"305":1,"2181":1},"2":{"305":1,"320":1,"327":1,"380":1,"453":3,"764":1,"774":1,"834":1,"851":1,"852":1,"868":1,"913":3,"924":1,"977":2,"1050":1,"1098":1,"1204":1,"1213":1,"1307":2,"1355":1,"1694":1,"1787":1,"1792":4,"1794":1,"1824":1,"1827":1,"2115":1,"2170":1,"2171":3,"2181":1,"2183":2,"2333":1,"2379":1,"2395":1,"2423":2,"2702":1,"2812":1,"2817":1,"2836":1}}],["identically",{"2":{"155":1,"320":1,"665":1,"927":1,"1045":1,"1125":1,"1135":1,"1266":1,"1272":1,"1567":1,"1686":1,"1840":1,"2190":1,"2193":1,"2200":1,"2481":1,"2856":1}}],["identical",{"2":{"120":1,"847":1,"884":1,"1089":1,"1255":1,"1279":1,"1350":1,"1357":1,"1792":2,"1840":1,"2222":1,"2224":1,"2378":1,"2423":1,"2459":1,"2463":1,"2464":1,"2482":1,"2504":1,"2535":1,"2540":1,"2841":1,"2845":1,"2873":1}}],["identification",{"2":{"2686":1,"2701":1}}],["identified",{"2":{"448":1}}],["identifies",{"2":{"309":1,"1023":1,"1225":1,"1472":1,"1792":3,"1875":1,"2255":1}}],["identifier=42",{"2":{"1069":1}}],["identifier",{"2":{"34":1,"37":1,"38":2,"39":1,"40":1,"168":1,"305":1,"382":1,"384":1,"388":1,"479":1,"738":1,"762":1,"802":1,"903":1,"1068":1,"1069":1,"1162":1,"1214":1,"1232":1,"1234":1,"1237":1,"1318":1,"1355":1,"1458":4,"1655":1,"1792":5,"1882":1,"1884":1,"1887":1,"1906":1,"1955":1,"1957":1,"1960":1,"2117":1,"2125":1,"2334":1,"2375":3,"2379":2,"2395":1,"2493":2,"2494":1,"2540":1,"2572":1,"2702":1}}],["identifiers",{"0":{"22":1},"2":{"388":1,"2314":1}}],["identifying",{"2":{"1671":1,"2277":1}}],["identify",{"2":{"51":2,"1619":1}}],["id=7",{"2":{"2876":1}}],["id=user",{"2":{"1366":1}}],["id=2",{"2":{"691":1}}],["id=42",{"2":{"436":2,"527":1,"689":1,"1033":1,"1412":1,"1738":1,"2283":1,"2529":1,"2865":1}}],["id=123",{"2":{"523":1,"1148":3,"1518":3,"2265":3}}],["id=1",{"2":{"297":2,"374":2,"612":1,"613":1,"691":1,"1074":2,"1121":1,"2526":1,"2739":1,"2774":1,"2860":1,"2869":2}}],["id=",{"2":{"209":1,"834":1,"938":7,"1061":8,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1697":1,"1792":5}}],["id=5",{"2":{"167":1,"2322":1}}],["id",{"0":{"20":1,"1326":1,"2314":1,"2733":1},"2":{"16":4,"18":3,"19":2,"20":3,"21":1,"22":1,"25":1,"37":1,"105":3,"115":2,"116":5,"119":2,"128":3,"136":5,"167":3,"168":5,"169":3,"184":7,"186":7,"209":2,"212":3,"215":3,"248":1,"254":3,"255":6,"256":3,"257":3,"258":1,"288":4,"292":4,"298":4,"302":1,"304":1,"305":2,"306":5,"309":2,"310":11,"312":3,"313":2,"320":1,"332":1,"333":2,"334":2,"335":1,"352":2,"360":2,"361":2,"365":1,"366":2,"370":2,"372":1,"373":2,"374":7,"375":4,"376":3,"378":5,"380":2,"382":1,"384":1,"388":1,"392":1,"393":2,"401":2,"405":3,"406":6,"407":1,"408":6,"415":3,"423":3,"426":6,"427":3,"428":3,"448":1,"453":1,"454":5,"469":5,"489":2,"493":2,"523":1,"527":4,"542":1,"553":1,"554":1,"562":4,"563":2,"565":7,"592":2,"609":2,"611":7,"612":4,"613":2,"614":8,"621":4,"622":10,"623":5,"639":3,"650":2,"658":1,"659":1,"664":2,"665":3,"666":1,"668":2,"677":2,"691":2,"695":3,"722":5,"733":4,"736":2,"738":2,"762":1,"764":1,"765":3,"766":2,"772":1,"774":1,"797":5,"798":3,"802":2,"811":7,"812":4,"815":3,"826":4,"834":1,"835":7,"849":1,"851":2,"860":3,"864":1,"880":1,"883":3,"884":2,"885":5,"888":2,"893":2,"904":2,"905":2,"913":9,"914":12,"915":2,"916":25,"918":16,"924":1,"934":3,"936":4,"937":2,"977":5,"979":2,"980":1,"982":1,"986":1,"988":2,"990":2,"992":4,"995":1,"1017":2,"1029":1,"1033":3,"1038":1,"1044":1,"1045":2,"1050":1,"1055":2,"1056":9,"1057":2,"1058":6,"1059":1,"1060":7,"1062":4,"1068":4,"1070":3,"1073":2,"1076":2,"1079":2,"1095":1,"1098":2,"1102":2,"1105":10,"1107":1,"1110":1,"1113":5,"1114":1,"1121":1,"1135":2,"1141":2,"1142":8,"1149":2,"1150":2,"1154":2,"1179":3,"1187":1,"1188":1,"1189":1,"1191":3,"1192":2,"1193":6,"1197":5,"1210":1,"1213":6,"1214":7,"1215":9,"1216":10,"1220":3,"1221":2,"1222":2,"1229":1,"1232":20,"1233":1,"1234":16,"1235":5,"1236":9,"1237":2,"1238":1,"1239":14,"1240":1,"1243":1,"1305":1,"1307":4,"1308":2,"1309":10,"1310":4,"1317":6,"1320":2,"1321":10,"1326":6,"1336":1,"1355":2,"1357":3,"1366":5,"1368":3,"1369":1,"1371":4,"1372":14,"1373":1,"1375":4,"1378":1,"1386":11,"1387":7,"1390":5,"1391":4,"1393":7,"1394":3,"1395":9,"1396":7,"1398":9,"1399":4,"1405":1,"1408":3,"1410":2,"1412":2,"1414":2,"1416":4,"1419":3,"1458":4,"1469":5,"1473":1,"1474":2,"1476":2,"1478":2,"1483":5,"1504":10,"1520":1,"1529":2,"1531":2,"1539":4,"1541":2,"1542":4,"1543":1,"1545":2,"1546":3,"1547":5,"1548":4,"1567":4,"1570":1,"1571":1,"1573":3,"1575":1,"1620":4,"1664":1,"1689":11,"1690":1,"1696":2,"1697":1,"1698":2,"1738":3,"1792":43,"1836":1,"1848":2,"1852":1,"1863":1,"1879":1,"1882":2,"1884":1,"1885":2,"1886":3,"1887":2,"1888":1,"1889":1,"1924":2,"1926":1,"1973":1,"1974":4,"2010":8,"2012":1,"2040":4,"2076":2,"2078":1,"2079":1,"2171":1,"2176":4,"2178":1,"2179":1,"2180":2,"2181":3,"2183":8,"2184":6,"2185":2,"2187":10,"2205":2,"2229":1,"2247":8,"2250":1,"2277":17,"2283":5,"2284":1,"2291":2,"2292":4,"2293":7,"2303":2,"2304":3,"2314":2,"2319":2,"2320":7,"2322":4,"2323":4,"2327":1,"2328":2,"2332":4,"2333":8,"2334":1,"2335":4,"2338":4,"2339":14,"2340":4,"2342":6,"2343":1,"2357":1,"2375":3,"2380":1,"2383":1,"2391":2,"2394":5,"2395":3,"2407":1,"2432":1,"2476":3,"2526":1,"2540":9,"2546":1,"2549":3,"2555":3,"2572":3,"2580":2,"2586":6,"2587":1,"2607":7,"2665":4,"2701":1,"2723":1,"2726":1,"2731":1,"2733":6,"2768":3,"2774":8,"2775":4,"2802":4,"2812":1,"2813":3,"2829":18,"2833":7,"2834":5,"2836":12,"2840":2,"2842":1,"2845":6,"2846":1,"2847":1,"2855":3,"2860":1,"2867":1,"2868":5,"2869":1,"2873":1,"2881":1}}],["ids=bitcoin",{"2":{"1023":1}}],["ids=",{"2":{"1019":1,"1398":1,"2766":1}}],["ids",{"0":{"643":1},"2":{"13":1,"14":1,"638":2,"639":1,"641":1,"643":1,"695":1,"1019":2,"1021":1,"1026":1,"1111":1,"1232":1,"1234":1,"1326":2,"1376":2,"1398":3,"1792":1,"1882":1,"1884":1,"2040":1,"2167":1,"2474":1,"2533":1,"2545":1,"2546":1,"2766":2,"2831":2,"2867":1,"2873":2}}],["i",{"0":{"936":1,"1076":1,"1371":1,"2531":1,"2714":1,"2716":1,"2717":1,"2718":1,"2719":1,"2723":1,"2724":1,"2725":1,"2726":1,"2727":1,"2728":1,"2729":1,"2731":1,"2732":1,"2733":1,"2737":1,"2739":1,"2745":1,"2746":1,"2747":1,"2749":1,"2750":1,"2751":1,"2752":1},"2":{"1":1,"307":1,"426":3,"699":1,"706":1,"838":2,"841":2,"844":1,"845":2,"847":1,"851":2,"852":2,"859":3,"876":1,"894":4,"912":1,"920":5,"922":1,"928":3,"929":2,"936":3,"938":1,"947":2,"1037":1,"1044":1,"1058":2,"1061":1,"1064":1,"1073":4,"1076":3,"1079":1,"1080":3,"1088":1,"1091":1,"1096":1,"1105":3,"1128":1,"1167":2,"1254":8,"1255":1,"1258":1,"1268":1,"1274":1,"1324":1,"1366":4,"1371":2,"1382":2,"1384":4,"1385":22,"1386":2,"1393":2,"1395":1,"1396":1,"1398":1,"1399":5,"1400":10,"1401":12,"1402":27,"1403":24,"1404":12,"1405":1,"1410":4,"1421":1,"1435":2,"1437":2,"1442":3,"1443":1,"1567":4,"1568":1,"1576":2,"1792":1,"1832":1,"1994":1,"2087":1,"2097":1,"2156":1,"2183":2,"2184":2,"2221":1,"2366":9,"2376":1,"2531":1,"2532":1,"2536":1,"2542":1,"2615":1,"2621":1,"2716":1,"2758":1,"2760":1,"2795":1,"2823":1,"2824":1,"2869":1}}],["iframe",{"2":{"2018":1}}],["iframe>",{"2":{"1792":1,"2632":1}}],["iframes",{"2":{"1792":2}}],["iformfile",{"2":{"1366":1}}],["if",{"2":{"1":1,"22":1,"31":3,"38":2,"41":2,"46":1,"63":1,"134":1,"139":1,"169":1,"175":1,"177":1,"180":1,"188":1,"207":2,"208":2,"209":4,"210":1,"213":1,"268":1,"285":1,"286":2,"297":2,"301":1,"308":1,"309":1,"310":2,"313":2,"319":2,"363":1,"370":1,"383":1,"388":2,"390":1,"395":1,"422":1,"424":2,"436":2,"439":2,"446":1,"447":3,"448":1,"449":2,"452":2,"454":1,"480":1,"528":1,"529":2,"587":1,"615":1,"625":1,"641":2,"650":1,"653":1,"654":1,"656":1,"675":3,"699":1,"701":1,"705":1,"706":1,"711":1,"715":1,"747":2,"757":1,"761":1,"762":1,"770":1,"771":2,"772":1,"776":1,"777":1,"781":2,"782":3,"784":4,"786":1,"829":2,"832":1,"834":1,"835":1,"838":1,"841":2,"843":1,"844":5,"848":2,"851":4,"852":2,"857":1,"859":2,"864":2,"869":2,"873":1,"875":1,"876":2,"877":1,"884":1,"888":2,"892":2,"894":5,"896":1,"897":4,"901":1,"902":1,"903":1,"904":2,"911":1,"914":2,"915":1,"916":1,"918":1,"919":2,"920":1,"924":2,"925":1,"928":2,"929":6,"933":2,"940":1,"941":1,"960":1,"971":1,"975":1,"977":1,"982":1,"983":1,"984":2,"996":5,"1021":6,"1024":2,"1026":5,"1031":1,"1055":1,"1060":2,"1063":1,"1071":1,"1074":1,"1076":3,"1078":1,"1081":1,"1082":2,"1094":2,"1096":2,"1105":4,"1129":2,"1132":1,"1133":2,"1134":2,"1145":1,"1150":2,"1157":1,"1165":1,"1173":1,"1174":2,"1177":1,"1178":1,"1185":1,"1197":1,"1217":1,"1218":2,"1224":1,"1225":3,"1228":2,"1229":1,"1232":2,"1234":6,"1235":1,"1236":2,"1239":2,"1240":1,"1253":1,"1254":1,"1302":1,"1317":1,"1318":2,"1326":1,"1332":4,"1335":4,"1338":5,"1339":4,"1341":1,"1342":2,"1358":1,"1361":1,"1364":1,"1366":9,"1376":6,"1377":2,"1385":3,"1386":8,"1388":1,"1391":1,"1393":1,"1394":4,"1395":2,"1399":2,"1400":1,"1401":4,"1402":1,"1403":4,"1404":4,"1405":3,"1406":1,"1409":2,"1410":5,"1414":1,"1416":3,"1427":5,"1435":1,"1441":2,"1443":3,"1447":4,"1451":1,"1454":3,"1459":1,"1464":1,"1470":1,"1489":1,"1493":1,"1499":1,"1501":1,"1504":3,"1511":2,"1518":2,"1522":2,"1523":1,"1528":1,"1568":1,"1574":1,"1618":1,"1620":1,"1621":1,"1631":1,"1644":1,"1651":3,"1664":1,"1689":2,"1690":1,"1704":1,"1708":1,"1717":1,"1722":1,"1727":2,"1732":2,"1736":2,"1741":2,"1742":1,"1753":2,"1762":1,"1767":2,"1768":1,"1781":2,"1792":100,"1806":1,"1818":1,"1825":2,"1837":2,"1858":1,"1874":1,"1875":2,"1878":1,"1879":1,"1884":1,"1885":1,"1889":1,"1898":1,"1918":1,"1921":2,"1922":2,"1940":1,"1942":1,"1948":1,"1956":1,"1957":1,"1967":3,"1974":3,"1983":1,"2003":1,"2004":1,"2018":1,"2040":1,"2047":1,"2086":4,"2097":1,"2109":1,"2111":2,"2117":1,"2127":1,"2131":1,"2156":1,"2177":1,"2181":1,"2184":1,"2247":3,"2250":1,"2252":1,"2254":2,"2255":1,"2256":3,"2264":3,"2265":4,"2266":1,"2267":1,"2283":1,"2284":2,"2289":2,"2290":1,"2296":1,"2297":1,"2307":2,"2320":1,"2337":1,"2339":1,"2375":1,"2376":1,"2378":1,"2379":2,"2380":1,"2381":1,"2389":1,"2391":1,"2394":1,"2395":1,"2402":1,"2403":1,"2406":1,"2424":1,"2438":5,"2466":3,"2476":1,"2481":3,"2486":1,"2487":1,"2490":1,"2527":1,"2528":2,"2530":1,"2531":2,"2532":3,"2533":1,"2534":2,"2537":1,"2539":1,"2542":1,"2549":3,"2551":1,"2607":3,"2621":1,"2632":2,"2633":4,"2634":8,"2635":1,"2649":1,"2682":1,"2684":1,"2685":2,"2702":1,"2721":1,"2729":1,"2762":2,"2767":1,"2788":1,"2809":1,"2810":4,"2811":1,"2812":1,"2813":2,"2815":4,"2822":1,"2823":1,"2835":2,"2862":1,"2864":2,"2869":2,"2871":1,"2872":1,"2873":1,"2876":1,"2880":1}}],["itestsseresponse",{"2":{"2247":3}}],["iterating",{"2":{"1792":1,"2096":1,"2537":1,"2877":1}}],["iteration",{"2":{"861":1,"872":3,"2614":1}}],["iterations",{"2":{"309":1,"363":1,"872":1,"1049":1,"2397":1}}],["iterative",{"2":{"861":1}}],["iterates",{"2":{"669":1,"948":1}}],["itemname=humao",{"2":{"1792":1}}],["itemprop=",{"2":{"1429":1}}],["item",{"2":{"335":4,"408":4,"469":2,"860":2,"865":1,"2364":1,"2411":1,"2586":4,"2665":4}}],["itemscope",{"2":{"1429":1}}],["items",{"2":{"136":1,"180":1,"408":5,"426":4,"469":3,"1041":1,"1044":2,"1105":2,"1107":1,"1511":1,"1792":2,"1824":2,"1974":2,"2223":1,"2481":1,"2482":2,"2607":2,"2665":5}}],["its",{"2":{"75":2,"221":1,"308":1,"309":1,"317":1,"322":1,"336":1,"347":1,"377":1,"383":1,"388":1,"395":1,"412":1,"436":2,"438":1,"439":1,"448":1,"527":1,"528":1,"535":1,"565":1,"618":1,"650":2,"663":2,"666":1,"667":2,"686":1,"694":3,"695":1,"705":1,"706":2,"716":1,"843":3,"851":1,"852":2,"857":1,"859":2,"863":2,"864":2,"865":6,"922":1,"930":1,"988":1,"1039":1,"1040":1,"1043":1,"1044":1,"1046":2,"1052":1,"1068":1,"1069":1,"1070":1,"1075":1,"1076":1,"1077":2,"1079":2,"1080":1,"1094":1,"1098":2,"1100":1,"1105":1,"1107":1,"1111":1,"1113":1,"1127":1,"1132":1,"1145":1,"1150":1,"1162":1,"1165":1,"1183":1,"1191":1,"1193":1,"1248":1,"1262":1,"1263":1,"1326":2,"1378":1,"1391":1,"1405":1,"1414":1,"1417":1,"1433":1,"1435":1,"1458":3,"1460":1,"1511":1,"1741":1,"1792":18,"1824":2,"1830":1,"1917":1,"1955":1,"1958":1,"1959":1,"1961":1,"2010":1,"2018":1,"2097":1,"2099":1,"2106":2,"2108":2,"2109":1,"2155":1,"2157":1,"2175":1,"2222":1,"2259":1,"2289":1,"2333":1,"2352":1,"2375":3,"2379":1,"2393":1,"2394":1,"2412":1,"2413":1,"2414":1,"2421":1,"2422":1,"2425":1,"2430":2,"2444":1,"2466":1,"2470":1,"2471":1,"2472":2,"2481":1,"2482":2,"2484":1,"2495":1,"2502":1,"2510":1,"2511":1,"2526":1,"2527":2,"2528":2,"2529":1,"2530":1,"2531":2,"2532":1,"2533":2,"2535":1,"2536":1,"2537":3,"2540":1,"2543":3,"2544":1,"2678":1,"2695":2,"2721":1,"2751":1,"2758":1,"2762":1,"2794":1,"2804":1,"2806":1,"2807":1,"2810":1,"2813":3,"2828":2,"2829":1,"2830":1,"2833":2,"2834":1,"2857":1,"2862":2,"2863":1,"2864":1,"2866":1,"2867":1,"2869":2,"2871":1,"2873":1,"2874":1,"2878":1,"2880":1}}],["itself",{"0":{"1381":1},"1":{"1382":1,"1383":1},"2":{"1":2,"168":1,"206":1,"216":1,"303":1,"310":1,"347":1,"395":1,"438":1,"534":1,"843":1,"844":2,"849":1,"851":1,"852":2,"861":1,"863":1,"869":1,"871":1,"872":1,"873":1,"876":2,"940":1,"981":1,"982":1,"1037":1,"1039":1,"1041":1,"1080":1,"1094":1,"1102":1,"1382":1,"1385":2,"1390":1,"1400":1,"1402":1,"1407":1,"1603":1,"1727":1,"1792":2,"1833":1,"1924":1,"1958":1,"2157":2,"2223":1,"2389":1,"2441":1,"2481":2,"2487":1,"2492":1,"2509":1,"2532":1,"2543":2,"2705":1,"2763":1,"2795":2,"2800":1,"2839":1,"2878":1}}],["it",{"0":{"324":1,"349":1,"387":1,"534":1,"870":1,"881":1,"1025":1,"1047":1,"1077":1,"1179":1,"1404":1,"1432":1,"1433":1,"1824":1,"1868":1,"2188":1,"2283":1,"2302":1,"2318":1,"2527":1,"2712":1,"2714":1,"2717":1,"2744":1,"2760":1,"2770":1,"2807":1,"2816":1,"2837":1,"2840":1,"2862":1},"1":{"871":1,"872":1,"873":1,"874":1,"875":1,"1026":1},"2":{"1":5,"22":1,"109":1,"139":1,"168":1,"171":1,"182":1,"188":1,"206":1,"212":1,"214":2,"215":2,"245":1,"252":1,"298":1,"301":1,"302":1,"306":1,"307":3,"308":4,"309":1,"317":3,"319":2,"320":1,"324":1,"325":1,"334":1,"349":2,"351":1,"354":1,"364":1,"376":1,"383":1,"386":1,"388":2,"390":2,"415":1,"423":1,"426":1,"435":2,"436":3,"438":1,"446":1,"448":3,"452":2,"453":4,"454":2,"480":1,"527":2,"528":4,"529":1,"531":2,"560":2,"562":1,"581":2,"586":2,"614":2,"618":1,"619":2,"646":1,"650":5,"658":1,"660":1,"661":1,"664":1,"666":1,"683":1,"687":1,"691":1,"693":1,"695":1,"703":1,"704":1,"708":1,"713":1,"714":1,"784":1,"826":1,"831":3,"833":1,"834":4,"835":4,"836":1,"837":1,"838":2,"840":2,"841":12,"843":8,"844":4,"845":10,"847":13,"848":16,"849":12,"851":11,"852":34,"853":1,"854":4,"855":2,"856":1,"857":8,"859":5,"860":11,"861":2,"863":5,"864":10,"865":2,"866":3,"868":4,"869":2,"871":4,"872":3,"873":1,"874":3,"875":1,"876":3,"877":4,"878":1,"880":1,"885":1,"886":1,"894":1,"904":2,"911":1,"915":1,"917":1,"918":2,"919":1,"920":4,"921":1,"922":1,"927":3,"932":1,"933":1,"934":2,"942":1,"946":2,"947":4,"948":4,"949":1,"961":2,"966":1,"972":1,"979":1,"983":1,"986":1,"990":1,"994":1,"995":1,"1005":1,"1007":1,"1009":2,"1021":1,"1033":1,"1037":3,"1038":3,"1039":2,"1042":2,"1044":1,"1045":2,"1046":1,"1049":1,"1055":2,"1059":1,"1061":1,"1064":2,"1065":1,"1067":1,"1068":2,"1073":8,"1074":1,"1075":10,"1076":6,"1077":1,"1078":3,"1080":9,"1081":3,"1082":1,"1084":1,"1086":2,"1095":1,"1096":2,"1101":2,"1102":1,"1105":1,"1106":4,"1111":1,"1126":1,"1127":2,"1129":2,"1130":1,"1132":3,"1133":3,"1134":3,"1139":3,"1141":1,"1147":1,"1148":1,"1161":1,"1162":1,"1165":1,"1173":1,"1180":1,"1181":2,"1185":2,"1190":1,"1193":1,"1196":1,"1203":1,"1210":1,"1231":1,"1252":1,"1255":1,"1270":1,"1304":1,"1305":1,"1309":2,"1318":1,"1326":1,"1331":1,"1337":1,"1341":1,"1343":1,"1358":1,"1359":1,"1363":1,"1368":1,"1373":1,"1374":1,"1378":1,"1381":1,"1382":11,"1384":9,"1385":12,"1386":15,"1389":2,"1390":5,"1391":3,"1392":1,"1393":1,"1394":5,"1395":3,"1396":9,"1398":3,"1399":4,"1400":4,"1401":10,"1402":17,"1403":20,"1404":13,"1405":3,"1406":10,"1407":2,"1408":1,"1409":5,"1413":1,"1418":2,"1419":4,"1420":2,"1421":3,"1422":3,"1423":1,"1427":1,"1429":2,"1430":1,"1431":5,"1432":3,"1435":2,"1436":1,"1437":5,"1438":1,"1439":4,"1441":3,"1442":2,"1443":1,"1511":1,"1515":1,"1517":1,"1527":1,"1528":1,"1533":1,"1559":1,"1569":2,"1571":1,"1605":1,"1618":1,"1686":1,"1727":2,"1738":4,"1742":1,"1743":1,"1759":1,"1792":51,"1802":1,"1813":1,"1818":1,"1822":2,"1823":4,"1824":3,"1825":1,"1827":1,"1830":3,"1833":1,"1851":1,"1856":2,"1912":1,"1924":1,"1925":3,"1929":1,"1940":1,"1948":1,"1959":2,"1961":2,"1974":2,"1983":1,"2040":1,"2092":3,"2096":1,"2098":3,"2102":1,"2106":1,"2107":3,"2110":5,"2111":2,"2112":1,"2127":1,"2154":2,"2162":1,"2164":2,"2167":1,"2171":2,"2175":1,"2176":1,"2177":6,"2178":1,"2183":1,"2184":1,"2185":1,"2195":1,"2197":1,"2208":1,"2221":3,"2242":1,"2252":1,"2256":1,"2265":1,"2266":1,"2267":1,"2274":1,"2283":1,"2290":1,"2291":1,"2296":1,"2297":1,"2303":1,"2314":1,"2320":1,"2321":1,"2337":1,"2338":1,"2339":2,"2344":1,"2348":2,"2353":1,"2378":1,"2380":2,"2382":1,"2388":1,"2389":2,"2391":1,"2393":1,"2395":1,"2398":1,"2402":1,"2406":1,"2416":1,"2420":1,"2421":1,"2437":1,"2438":1,"2444":1,"2451":2,"2453":2,"2455":1,"2461":4,"2463":2,"2466":3,"2470":1,"2471":2,"2477":2,"2481":7,"2482":2,"2495":2,"2497":1,"2517":1,"2518":3,"2520":2,"2527":1,"2528":4,"2529":2,"2530":5,"2531":3,"2532":3,"2533":1,"2534":3,"2535":2,"2537":14,"2539":3,"2540":1,"2542":2,"2543":3,"2546":1,"2577":1,"2586":1,"2588":1,"2607":2,"2677":1,"2678":1,"2688":1,"2695":1,"2722":1,"2723":2,"2732":2,"2733":1,"2734":1,"2740":1,"2741":1,"2742":1,"2749":1,"2758":1,"2762":3,"2763":1,"2765":1,"2767":1,"2768":3,"2770":1,"2771":1,"2772":1,"2779":1,"2782":1,"2783":1,"2784":1,"2788":3,"2789":1,"2790":1,"2791":1,"2795":5,"2798":1,"2803":2,"2806":2,"2808":1,"2810":1,"2811":1,"2813":2,"2814":2,"2815":1,"2823":2,"2824":1,"2828":1,"2829":2,"2830":1,"2831":1,"2833":1,"2834":1,"2835":1,"2838":1,"2845":1,"2852":1,"2854":1,"2855":1,"2860":1,"2862":1,"2864":3,"2865":1,"2867":1,"2868":3,"2869":1,"2872":3,"2873":1,"2876":1,"2878":4,"2879":3}}],["inlining",{"2":{"1574":1}}],["inlined",{"2":{"1571":1,"2484":1}}],["inline",{"0":{"563":1,"623":1},"2":{"318":1,"319":1,"324":1,"326":1,"560":1,"619":1,"911":1,"1125":1,"1192":1,"1375":1,"1570":1,"1571":1,"1792":3,"2000":1,"2010":1,"2020":2,"2029":1,"2112":1,"2320":1,"2330":1,"2357":1,"2359":1,"2481":2,"2484":1,"2532":2,"2537":1,"2632":2,"2677":1,"2682":1,"2694":1,"2734":1,"2832":1,"2852":1,"2871":1}}],["ingredients",{"2":{"1005":1}}],["ingestion",{"0":{"878":1},"1":{"879":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1},"2":{"791":1,"1037":1,"1086":1,"1099":3,"1386":1,"2134":1,"2164":2,"2165":1}}],["ingest",{"2":{"75":1}}],["initiator",{"2":{"2833":1}}],["initiates",{"2":{"1234":1,"1884":1}}],["initialstreamwindowsize",{"2":{"1792":1,"1992":1}}],["initialconnectionwindowsize",{"2":{"1792":1,"1992":1}}],["initialization",{"2":{"1974":2,"2372":1,"2607":2}}],["initializing",{"2":{"1792":1}}],["initialized",{"2":{"1824":1,"2481":1,"2614":1}}],["initialize",{"2":{"996":1,"1043":1,"1792":3,"1818":1,"1819":1,"1820":1,"1823":1,"1824":1,"2481":1}}],["initialdelayseconds",{"2":{"1773":2}}],["initial",{"2":{"1386":1,"2363":1}}],["initially",{"2":{"1073":1}}],["init",{"2":{"996":2}}],["inactive",{"2":{"990":4,"1792":1,"2156":1}}],["inaccuracy",{"2":{"3":1}}],["inert",{"2":{"1792":1,"2092":1,"2420":1,"2545":1}}],["inefficient",{"2":{"918":1}}],["inevitable",{"2":{"872":1,"1151":1}}],["inherited",{"2":{"1958":1}}],["inheritance",{"2":{"1459":1,"2375":1,"2427":1,"2435":1}}],["inherits",{"2":{"1068":1,"1102":1,"1111":1,"1193":1,"1792":2,"1958":1,"2427":1,"2470":1,"2472":1,"2874":1}}],["inherit",{"2":{"852":1,"864":1,"1193":1,"1459":1,"1792":3,"1951":2,"1952":2,"1953":2,"1954":2,"2375":1,"2427":1}}],["inherent",{"2":{"376":1}}],["innocent",{"2":{"856":1}}],["innodb",{"2":{"848":1}}],["innerheight",{"2":{"1792":2}}],["innerhtml",{"2":{"996":7,"1409":1}}],["innerwidth",{"2":{"1792":2}}],["innerval",{"2":{"334":1,"1974":1,"2607":1}}],["inner",{"2":{"334":7,"389":1,"919":1,"1967":1,"1974":10,"2403":1,"2404":1,"2586":1,"2607":10}}],["incl",{"2":{"2493":1}}],["inclusion",{"2":{"347":1,"1792":1,"1908":1}}],["including",{"2":{"168":1,"251":1,"320":1,"338":1,"387":1,"626":1,"690":1,"872":1,"893":1,"903":1,"912":1,"916":2,"1015":1,"1030":1,"1049":1,"1071":1,"1073":1,"1082":1,"1096":1,"1097":1,"1101":1,"1111":1,"1304":1,"1317":1,"1398":1,"1420":1,"1468":1,"1472":1,"1609":1,"1612":1,"1682":1,"1718":1,"1792":9,"1851":1,"1974":1,"1978":1,"1984":1,"2002":1,"2049":1,"2050":1,"2051":1,"2059":1,"2107":1,"2114":1,"2156":1,"2157":1,"2158":1,"2185":1,"2278":1,"2356":1,"2369":1,"2371":1,"2382":1,"2435":1,"2463":1,"2490":1,"2498":2,"2529":2,"2533":1,"2537":1,"2540":1,"2542":1,"2546":3,"2577":1,"2591":1,"2607":1,"2635":3,"2661":1,"2668":1,"2705":1,"2737":1,"2744":1,"2749":1,"2758":1,"2845":1,"2865":1,"2869":1,"2881":1}}],["includelanguages",{"2":{"1792":1,"1966":1,"1967":1,"1970":1,"1975":1}}],["includenames",{"2":{"1792":1,"1836":1,"1838":1,"2701":1}}],["includemimetypes",{"2":{"1792":1,"1936":1,"1937":1,"1943":1}}],["includeparseurlparam",{"2":{"1553":1,"1561":1,"1792":1}}],["includeparserequestparam",{"2":{"1062":1,"1063":2,"1553":1,"1561":1,"1792":1}}],["includehost",{"2":{"1553":1,"1555":1,"1581":1,"1792":1}}],["includereviews=true",{"2":{"256":1,"2277":1}}],["include",{"0":{"1970":1},"2":{"125":1,"229":1,"256":2,"346":1,"349":1,"354":1,"374":5,"404":1,"448":1,"496":1,"544":1,"606":1,"711":1,"747":1,"753":1,"757":1,"758":1,"762":1,"781":1,"782":1,"784":1,"786":1,"788":1,"856":1,"933":1,"995":1,"1079":1,"1111":1,"1189":1,"1491":1,"1554":1,"1555":1,"1556":1,"1558":1,"1561":2,"1574":1,"1676":1,"1677":1,"1753":1,"1764":1,"1768":1,"1792":24,"1838":4,"1839":1,"1844":1,"1898":1,"1937":1,"1967":1,"2007":1,"2011":1,"2016":3,"2125":1,"2247":2,"2254":2,"2265":1,"2277":2,"2279":1,"2328":1,"2347":1,"2354":1,"2364":1,"2397":1,"2481":1,"2531":6,"2533":1,"2537":2,"2546":2,"2572":2,"2597":1,"2632":8,"2634":1,"2750":1,"2779":1,"2798":1,"2869":1}}],["includedmimetypepatterns",{"2":{"1792":1,"2123":1,"2125":1,"2132":1}}],["includedatabasecheck",{"2":{"1763":1,"1764":1,"1767":1,"1770":2,"1779":1,"1781":1,"1792":2,"2634":2}}],["included",{"2":{"45":1,"186":1,"618":1,"706":1,"711":1,"747":1,"753":1,"757":1,"758":1,"781":1,"782":1,"784":1,"786":1,"788":1,"878":1,"885":1,"1073":1,"1080":1,"1254":1,"1352":1,"1354":1,"1358":1,"1365":1,"1619":1,"1792":6,"1969":1,"2016":1,"2019":1,"2062":1,"2097":1,"2106":1,"2153":1,"2156":1,"2278":1,"2293":1,"2391":1,"2415":1,"2428":1,"2525":1,"2531":5,"2537":1,"2541":1,"2542":1,"2558":1,"2632":1,"2635":1,"2678":1,"2695":1,"2721":1,"2779":1,"2785":1,"2869":2,"2875":1}}],["includestatuscode",{"0":{"1568":1},"2":{"1553":1,"1558":4,"1567":1,"1568":1,"1581":1,"1792":3,"2273":3,"2359":1}}],["includeschemainnames",{"2":{"1416":1,"1417":1,"1553":1,"1554":1,"1576":1,"1580":1,"1581":1,"1792":1,"2274":1}}],["includeschemas",{"2":{"349":2,"354":2,"937":2,"998":1,"1062":1,"1792":3,"1836":1,"1838":1,"1839":1,"1863":1,"1897":1,"1898":2,"1909":1,"1910":1,"1911":1,"2187":1,"2225":1,"2419":1,"2431":2,"2433":1,"2434":1,"2435":1,"2436":2,"2701":1}}],["includes",{"0":{"2531":1,"2869":1},"2":{"32":1,"38":1,"170":1,"446":1,"539":1,"540":1,"541":1,"639":2,"699":1,"761":1,"770":1,"771":1,"772":2,"884":1,"893":1,"938":1,"961":1,"986":1,"1002":1,"1042":1,"1061":1,"1086":1,"1094":1,"1098":1,"1100":1,"1127":1,"1190":1,"1193":1,"1207":1,"1248":1,"1252":1,"1339":1,"1341":1,"1343":1,"1455":1,"1644":1,"1690":1,"1767":1,"1792":4,"1929":1,"1959":1,"1967":1,"2062":1,"2125":1,"2129":1,"2131":1,"2156":1,"2166":1,"2206":1,"2221":1,"2377":1,"2471":1,"2531":1,"2532":1,"2533":2,"2537":1,"2542":1,"2550":1,"2554":1,"2597":1,"2634":2,"2635":1,"2677":1,"2723":1,"2751":1,"2776":1,"2785":1,"2791":1,"2802":1,"2833":1,"2869":2}}],["inch",{"2":{"1437":1}}],["inc",{"2":{"1189":1}}],["increaed",{"2":{"1254":1}}],["increases",{"2":{"1169":1}}],["increase",{"0":{"1170":1},"2":{"1167":1,"1170":1,"1706":1,"1792":1,"2089":1,"2633":1}}],["increasingly",{"2":{"1384":1}}],["increasing",{"2":{"1032":1,"1267":1}}],["incredible",{"2":{"920":1}}],["incremented",{"2":{"2648":1}}],["increment",{"2":{"896":1,"1056":1}}],["incident",{"2":{"861":1}}],["incarnations",{"2":{"841":1}}],["incomplete",{"2":{"2411":1}}],["incompletely",{"2":{"1409":1}}],["incompatible",{"2":{"2297":1}}],["incoming",{"2":{"414":5,"423":1,"431":1,"436":3,"446":2,"452":1,"1396":1,"1704":1,"1792":1,"1915":1,"1924":1,"2247":1,"2302":1,"2419":1,"2450":1,"2509":1,"2549":1,"2807":2,"2811":3}}],["inconsistent",{"2":{"1191":1,"2414":1,"2493":1,"2510":1}}],["incorrectly",{"2":{"2358":1,"2588":1,"2597":1}}],["incorrect",{"2":{"587":1,"2258":3,"2313":1,"2551":2,"2611":1,"2641":1}}],["invlude",{"2":{"2247":1}}],["invitation",{"2":{"1220":1}}],["invisible",{"2":{"666":1,"695":1,"873":1,"1077":1,"1437":1,"2384":1,"2421":1,"2434":1,"2450":1,"2531":1}}],["inverted",{"2":{"2678":1}}],["inverts",{"2":{"1304":1,"2389":1}}],["invent",{"2":{"1382":1}}],["inventory",{"2":{"1042":2,"1044":1}}],["invented",{"2":{"865":1}}],["invest",{"2":{"857":1,"876":1}}],["investment",{"2":{"857":1}}],["invariantculture",{"2":{"2451":1}}],["invariant",{"2":{"863":1,"864":7,"865":3}}],["invariants",{"2":{"843":1,"863":3,"864":2,"865":1,"2527":1,"2862":1}}],["invaluable",{"2":{"843":1,"2798":1}}],["invalidcastexception",{"2":{"2394":2}}],["invalidformat",{"2":{"1360":1}}],["invalidimage",{"2":{"1360":2}}],["invalidoperationexception",{"2":{"1157":1,"1527":1,"1948":1,"2378":1,"2380":1,"2600":1}}],["invalidmimetype",{"2":{"748":1,"1360":1}}],["invalidated",{"2":{"1148":2,"1518":3,"2265":3}}],["invalidates",{"2":{"1068":1}}],["invalidate",{"2":{"1067":3,"1148":3,"1177":1,"1518":2,"1529":1,"1792":2,"2265":4}}],["invalidatecachesuffix",{"2":{"108":1,"1067":2,"1148":1,"1177":1,"1181":1,"1510":1,"1511":1,"1518":2,"1529":1,"1792":1,"2265":4}}],["invalidating",{"2":{"1054":1,"2353":1}}],["invalidation",{"0":{"1148":1,"1518":1},"2":{"108":1,"852":1,"868":1,"869":1,"1101":1,"1139":2,"1140":1,"1148":2,"1181":3,"1511":2,"1518":2,"1792":4,"2265":8,"2498":1}}],["invalid",{"0":{"280":1,"2360":1,"2495":1},"2":{"35":1,"313":1,"382":2,"864":1,"897":1,"904":1,"1111":1,"1360":1,"1366":4,"1460":1,"1527":3,"1678":1,"1741":1,"1957":1,"2007":1,"2223":1,"2289":1,"2328":1,"2334":2,"2360":2,"2367":1,"2375":1,"2377":1,"2379":1,"2417":1,"2428":1,"2435":1,"2443":1,"2492":1,"2495":1,"2497":1,"2588":2,"2589":2,"2648":1,"2649":1,"2679":1}}],["invocations",{"2":{"2462":1}}],["invocation",{"2":{"1398":1,"1792":1,"1802":1,"1824":1,"1961":2,"2104":1,"2108":1,"2167":1,"2221":1,"2258":1,"2372":1,"2536":1,"2545":1,"2795":1,"2800":1,"2880":1}}],["involving",{"2":{"1262":1}}],["involves",{"2":{"2858":1}}],["involved",{"2":{"1331":1,"1406":1}}],["involvement",{"2":{"1108":1}}],["involve",{"2":{"974":1}}],["invoking",{"0":{"2529":1,"2865":1},"2":{"876":1}}],["invokeasync",{"2":{"2504":1}}],["invokeallasync",{"2":{"2504":1}}],["invokes",{"2":{"1078":1,"1822":1,"2264":1,"2739":1,"2860":1}}],["invoker",{"2":{"932":1}}],["invoke",{"2":{"423":1,"669":1,"1037":1,"1398":1,"1792":2,"2304":1,"2344":1,"2525":1,"2772":1,"2781":1,"2803":1,"2876":1}}],["invoked",{"2":{"421":1,"445":1,"480":1,"694":1,"1074":1,"1094":1,"1746":1,"1792":1,"1929":1,"2107":1,"2347":1,"2537":2,"2543":1,"2862":1,"2879":2,"2881":1}}],["invoiceid",{"2":{"1391":2}}],["invoicecount",{"2":{"1386":3}}],["invoices",{"2":{"1386":2,"1391":3}}],["invoice",{"2":{"392":1,"426":14,"844":2,"855":1,"861":1,"1105":2,"1386":1,"1391":1}}],["inf",{"2":{"2802":1,"2823":1,"2824":2,"2825":1}}],["inflicted",{"2":{"2156":1,"2542":1,"2803":1}}],["inflates",{"2":{"1823":1}}],["influential",{"2":{"847":1}}],["infra",{"2":{"1441":1}}],["infrastructure",{"0":{"1100":1,"1259":1,"1303":1,"1791":1,"1798":1},"2":{"843":2,"845":3,"847":2,"851":1,"873":1,"908":1,"947":1,"1054":1,"1086":1,"1094":1,"1101":1,"1103":1,"1105":1,"1106":1,"1108":1,"1123":1,"1127":2,"1135":1,"1137":1,"1180":1,"1181":1,"1304":1,"1322":2,"1327":1,"1354":1,"1382":1,"1385":1,"1386":1,"1406":2,"1713":1,"1792":1,"2634":1,"2802":1}}],["infinite",{"0":{"882":1,"2381":1},"1":{"883":1,"884":1},"2":{"1704":1,"2607":1}}],["infer",{"2":{"916":1,"1378":1,"2336":1,"2734":1,"2847":1}}],["inference",{"0":{"427":1},"2":{"414":1,"587":1,"871":1,"1037":1,"1104":1,"1105":1,"1335":1,"1396":1,"2300":1,"2540":1,"2845":1}}],["inferred",{"2":{"373":2,"835":2,"2318":1,"2324":2,"2774":1,"2840":1,"2843":1}}],["infourl",{"2":{"1690":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1792":5}}],["informix",{"2":{"918":2}}],["information",{"2":{"109":1,"779":1,"905":1,"918":2,"1133":1,"1193":1,"1210":1,"1472":1,"1521":1,"1527":1,"1792":16,"1800":1,"1801":3,"1802":6,"1806":1,"1810":3,"1839":1,"1974":1,"2016":1,"2019":2,"2052":1,"2059":1,"2254":1,"2380":1,"2384":1,"2536":1,"2607":1,"2628":1,"2629":1,"2632":2,"2634":1,"2635":1,"2668":1,"2785":1,"2786":1,"2792":1,"2794":1,"2795":3,"2804":8}}],["info",{"0":{"631":1,"1899":1,"2248":1,"2249":1},"1":{"2249":1,"2250":1,"2251":1,"2252":1},"2":{"7":3,"220":1,"333":5,"488":2,"629":2,"631":2,"641":1,"650":6,"651":1,"653":4,"655":1,"656":3,"658":4,"659":3,"662":2,"663":2,"664":1,"665":1,"666":2,"735":2,"771":1,"835":1,"868":1,"914":7,"916":5,"948":1,"966":1,"1060":1,"1103":1,"1113":1,"1191":1,"1193":3,"1233":1,"1254":1,"1305":4,"1309":3,"1317":1,"1321":1,"1324":1,"1325":1,"1327":1,"1372":2,"1390":1,"1393":1,"1416":1,"1573":1,"1696":1,"1792":6,"1836":1,"1857":2,"1858":1,"1883":1,"1898":3,"2249":6,"2251":1,"2252":9,"2254":3,"2261":2,"2372":1,"2391":1,"2392":1,"2490":1,"2635":2,"2672":1,"2701":1,"2795":1,"2802":2,"2828":4,"2829":4,"2830":2,"2832":6,"2833":1,"2834":3,"2835":3,"2836":1}}],["injecting",{"2":{"1717":1,"2372":1,"2881":1}}],["injection",{"0":{"941":1,"1165":1,"2040":1,"2712":1},"2":{"529":1,"869":1,"933":1,"941":2,"945":2,"1070":1,"1102":1,"1166":1,"1168":1,"1171":1,"1185":1,"1528":1,"1709":1,"1717":1,"1792":2,"1852":1,"2016":1,"2020":1,"2284":1,"2383":1,"2632":1,"2633":1}}],["injects",{"2":{"690":1,"801":1,"868":1,"886":1,"1358":1,"2171":1,"2346":1,"2527":1,"2862":1}}],["inject",{"0":{"531":1},"2":{"306":1,"527":1,"691":1,"1063":1,"1105":1,"1706":1,"2040":1,"2224":1,"2493":1,"2529":1,"2712":1,"2865":1}}],["injected",{"2":{"168":1,"215":1,"309":1,"363":1,"692":1,"936":1,"937":1,"1098":1,"1357":1,"2474":1,"2483":1}}],["inputschema",{"2":{"1039":1,"1040":1,"1043":1,"1044":1,"1824":1,"2481":1}}],["inputs",{"2":{"852":1,"874":1,"1066":1,"1102":1,"1524":1,"1792":1,"1852":1,"2223":1,"2224":1,"2270":1,"2380":1,"2383":1,"2402":1,"2494":1,"2604":2,"2815":1}}],["input",{"0":{"1134":2},"2":{"215":1,"308":1,"322":1,"357":1,"511":1,"529":4,"928":4,"929":3,"938":2,"1061":5,"1101":1,"1134":2,"1361":1,"1417":1,"1435":1,"1491":1,"1519":1,"1525":1,"1569":1,"1792":2,"2039":1,"2040":1,"2177":1,"2270":1,"2284":1,"2453":1,"2496":1,"2760":1}}],["inbound",{"2":{"214":1,"2502":1,"2504":1}}],["industry",{"2":{"840":1,"844":1,"851":1,"852":1,"857":1,"861":1,"865":1,"1075":1,"1098":1,"1445":1,"1453":1,"1457":1,"2554":1}}],["indefinite",{"2":{"2492":1}}],["indefinitely",{"2":{"2362":1}}],["independence",{"2":{"848":2,"2456":1}}],["independent",{"0":{"2451":1},"2":{"336":1,"337":1,"414":1,"650":1,"667":1,"853":1,"1038":1,"1042":1,"1746":1,"1792":1,"1856":1,"1973":1,"2010":1,"2040":1,"2098":1,"2224":1,"2302":1,"2347":1,"2384":1,"2415":1,"2534":1,"2744":1,"2752":1,"2794":1,"2871":1}}],["independently",{"2":{"320":1,"1107":1,"1115":1,"1142":1,"1405":1,"1741":1,"1792":2,"2108":1,"2289":1,"2352":1,"2481":1,"2536":1,"2544":1,"2546":1,"2794":1,"2858":1}}],["indeed",{"2":{"841":1,"1132":2}}],["indexing",{"2":{"1129":1}}],["indexesstatspath",{"2":{"1792":1,"2046":1,"2047":1,"2064":1,"2635":1}}],["indexes",{"0":{"2051":2},"2":{"848":2,"857":1,"861":2,"868":1,"966":2,"1100":1,"1406":1,"1409":1,"1792":3,"2045":1,"2046":1,"2047":1,"2051":1,"2064":1,"2635":5}}],["indexed",{"2":{"696":1,"876":1,"1792":1,"2098":1,"2534":1,"2545":1,"2873":1}}],["index",{"2":{"188":1,"324":3,"760":2,"761":1,"762":1,"764":4,"765":3,"766":3,"770":2,"771":1,"772":1,"774":4,"848":3,"857":1,"860":1,"868":1,"869":1,"876":1,"882":1,"883":3,"884":4,"888":4,"893":1,"896":1,"897":2,"904":3,"938":1,"966":2,"976":1,"1107":1,"1200":1,"1213":1,"1336":1,"1792":4,"2040":2,"2047":1,"2050":1,"2051":3,"2129":1,"2131":1,"2296":1,"2476":1,"2572":2,"2635":3}}],["indirect",{"2":{"1230":1,"1792":1,"1880":1}}],["indicating",{"2":{"1792":2}}],["indicative",{"2":{"845":1}}],["indicator",{"2":{"1480":1,"1918":1}}],["indicated",{"2":{"1940":1,"1941":1}}],["indicate",{"2":{"1053":1,"1792":2}}],["indicates",{"2":{"38":1,"1767":1,"1768":1,"1792":1,"2016":1,"2025":1,"2088":1,"2632":1}}],["individually",{"2":{"868":1,"1098":1,"1113":1,"1385":2,"1792":2,"2321":1}}],["individual",{"0":{"2544":1},"2":{"239":2,"369":1,"718":1,"826":1,"830":1,"915":1,"1097":1,"1385":1,"1511":1,"1543":1,"1631":1,"1632":1,"1704":1,"1722":1,"1792":13,"1837":1,"2010":1,"2111":1,"2221":1,"2332":1,"2364":1,"2366":1,"2525":1,"2533":1,"2831":1,"2840":1,"2853":1,"2870":1}}],["insanely",{"2":{"1393":1}}],["insufficient",{"2":{"1111":1,"1594":1,"1669":1,"1673":1,"1674":1,"1678":1,"1792":2,"1825":1,"2255":2,"2481":1,"2721":1}}],["insulate",{"2":{"848":1}}],["ins",{"2":{"869":1}}],["inspects",{"2":{"1823":1}}],["inspected",{"2":{"1792":1,"2094":1,"2103":1}}],["inspection",{"2":{"1457":1,"1792":1,"2465":1,"2554":1}}],["inspector",{"2":{"1047":2}}],["inspect",{"0":{"2110":1},"2":{"864":1,"1054":1,"1106":1,"1150":1,"1523":1,"1609":1,"1792":1,"2380":1,"2530":1,"2532":1,"2537":1,"2660":1,"2693":1,"2700":1,"2785":1}}],["insist",{"2":{"847":1}}],["inside",{"0":{"2714":1},"2":{"176":1,"298":1,"306":1,"310":1,"337":1,"395":1,"529":1,"583":1,"650":1,"663":1,"689":2,"698":1,"836":1,"848":1,"852":1,"855":1,"861":1,"865":1,"872":1,"874":1,"876":1,"919":1,"932":1,"946":1,"993":1,"1037":1,"1073":1,"1074":2,"1078":1,"1106":1,"1108":1,"1396":1,"1419":1,"1792":2,"2092":1,"2106":1,"2109":1,"2154":1,"2167":1,"2338":1,"2394":1,"2403":1,"2427":1,"2444":1,"2445":1,"2446":2,"2463":1,"2525":1,"2527":1,"2528":2,"2529":1,"2531":3,"2537":1,"2586":3,"2678":1,"2695":1,"2717":1,"2828":1,"2854":1,"2855":2,"2858":1,"2860":1,"2861":1,"2862":1,"2864":1,"2869":1}}],["insecure",{"2":{"2282":1}}],["insensitive",{"0":{"2493":1},"2":{"212":1,"258":1,"269":1,"379":1,"390":1,"395":1,"407":1,"448":1,"464":1,"522":1,"537":1,"687":1,"709":1,"809":1,"1042":1,"1459":1,"1460":1,"1523":1,"1792":7,"1854":1,"1922":1,"1967":2,"2036":1,"2097":1,"2192":1,"2223":1,"2277":1,"2333":1,"2375":2,"2380":1,"2435":1,"2493":1,"2537":2,"2544":1,"2546":1,"2595":1,"2614":1,"2678":1,"2679":1,"2692":1,"2694":1,"2695":2,"2700":1,"2764":1,"2877":1}}],["insensitively",{"2":{"74":1,"388":1,"395":1,"528":1,"818":1,"1792":1,"1862":1,"2222":1,"2483":1,"2493":1,"2518":1}}],["inserting",{"0":{"2868":1}}],["inserts",{"2":{"864":1,"901":1,"1357":1,"1367":1,"1410":1,"2531":1,"2739":1,"2829":1,"2868":1}}],["inserted",{"0":{"2741":1},"2":{"715":1,"880":1,"885":1,"987":1,"989":2,"1079":1,"1357":1,"1410":1,"2050":1,"2868":1}}],["insert",{"0":{"898":1},"2":{"175":1,"184":2,"248":1,"292":1,"310":1,"360":2,"361":1,"365":1,"567":1,"583":1,"624":1,"625":1,"715":1,"764":1,"765":1,"766":1,"774":1,"813":1,"814":1,"826":1,"848":1,"864":1,"881":1,"883":1,"884":1,"885":2,"888":3,"904":1,"913":3,"915":2,"938":1,"977":2,"989":3,"990":2,"992":4,"994":1,"1054":1,"1074":2,"1075":1,"1078":1,"1079":3,"1107":1,"1214":1,"1215":2,"1232":1,"1234":1,"1239":1,"1307":2,"1309":1,"1321":1,"1332":1,"1338":1,"1339":1,"1357":2,"1372":1,"1393":1,"1410":1,"1419":1,"1439":1,"1442":1,"1655":1,"1664":1,"1689":2,"2147":2,"2292":1,"2319":1,"2320":1,"2338":1,"2342":1,"2389":1,"2498":1,"2526":1,"2527":1,"2572":1,"2575":1,"2739":1,"2741":1,"2803":1,"2815":1,"2828":1,"2829":3,"2836":1,"2843":1,"2851":1,"2855":1,"2860":1,"2862":1,"2868":4,"2869":2}}],["instinct",{"2":{"864":1}}],["instantiated",{"2":{"1522":1,"1792":1,"2380":1}}],["instantly",{"2":{"1171":1,"1346":1,"2532":1}}],["instantaneous",{"2":{"994":1}}],["instant",{"2":{"888":1,"993":1,"2451":1,"2533":1,"2534":1,"2537":1,"2621":1,"2873":1}}],["instanceidrequestheadername",{"2":{"1792":1,"1836":1,"1848":1,"2701":1}}],["instances",{"2":{"844":1,"974":2,"1015":1,"1067":1,"1145":1,"1147":1,"1515":3,"1792":3,"2098":1,"2274":3,"2466":2,"2534":1,"2614":2,"2871":1}}],["instance",{"2":{"108":1,"121":2,"307":1,"863":1,"864":1,"865":1,"1013":1,"1015":1,"1086":1,"1107":1,"1145":2,"1146":1,"1150":1,"1255":1,"1386":1,"1522":1,"1744":1,"1792":3,"1848":1,"2177":1,"2274":1,"2297":2,"2329":1,"2346":1,"2380":1,"2389":1,"2438":1,"2466":1}}],["installed",{"2":{"1013":2,"1106":1,"1343":1,"2161":1,"2550":1,"2791":1,"2792":1,"2819":1}}],["installation",{"0":{"1013":1,"2715":1,"2777":1,"2779":1,"2786":1,"2787":1},"1":{"2716":1,"2717":1,"2718":1,"2719":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":2,"2789":2,"2790":2,"2791":2,"2792":1,"2793":1},"2":{"2716":1,"2785":1,"2786":1,"2819":1}}],["install",{"0":{"2716":1},"2":{"876":1,"958":1,"968":2,"970":2,"1010":1,"1075":1,"1117":1,"1380":1,"1420":1,"2162":2,"2786":4}}],["installments",{"2":{"861":1}}],["instructing",{"2":{"1983":1}}],["instruction",{"2":{"1081":1,"2270":1}}],["instructions",{"0":{"1820":1},"2":{"327":1,"1044":1,"1792":3,"1814":1,"1820":2,"1823":2,"2270":1,"2481":1}}],["instruct",{"2":{"1081":1,"1792":1,"2632":1}}],["instructs",{"2":{"860":1}}],["instead",{"0":{"2726":1,"2740":1},"2":{"0":1,"75":1,"108":1,"214":1,"227":1,"229":1,"253":1,"328":1,"336":1,"352":1,"370":1,"377":1,"378":1,"382":1,"388":1,"414":1,"423":1,"449":1,"479":1,"480":1,"484":1,"494":1,"522":1,"527":1,"528":1,"545":1,"581":1,"607":1,"615":1,"617":1,"673":1,"691":1,"693":1,"698":1,"704":1,"741":1,"776":1,"823":1,"829":1,"834":1,"848":1,"857":1,"861":1,"872":1,"878":1,"892":1,"917":1,"919":1,"920":2,"982":1,"985":2,"1058":1,"1066":1,"1121":1,"1148":1,"1176":2,"1189":1,"1196":1,"1304":1,"1324":1,"1325":2,"1370":1,"1373":1,"1375":1,"1382":2,"1385":2,"1394":1,"1399":2,"1402":1,"1412":1,"1414":1,"1427":1,"1429":1,"1430":1,"1435":1,"1464":1,"1559":1,"1563":1,"1568":1,"1574":1,"1576":1,"1581":1,"1605":1,"1609":1,"1651":1,"1662":1,"1704":2,"1705":1,"1743":1,"1744":1,"1746":1,"1792":19,"1802":1,"1822":1,"1825":1,"1833":1,"1917":2,"1924":1,"1925":1,"1955":1,"1957":1,"1967":2,"1968":1,"1974":1,"2000":1,"2009":1,"2072":1,"2076":1,"2078":1,"2094":2,"2098":1,"2104":1,"2105":1,"2111":1,"2130":1,"2156":1,"2177":1,"2181":1,"2184":1,"2206":1,"2217":1,"2221":1,"2222":1,"2242":1,"2245":1,"2247":2,"2253":3,"2258":3,"2259":1,"2267":2,"2277":1,"2310":1,"2324":1,"2326":1,"2330":1,"2333":1,"2334":1,"2336":1,"2337":2,"2338":1,"2339":2,"2347":3,"2348":2,"2357":1,"2358":2,"2359":1,"2364":1,"2366":1,"2367":1,"2376":2,"2379":1,"2381":1,"2393":1,"2397":1,"2399":1,"2405":1,"2411":1,"2414":1,"2432":1,"2446":1,"2463":2,"2464":1,"2476":1,"2484":1,"2487":1,"2492":1,"2497":1,"2502":1,"2517":2,"2518":1,"2527":1,"2529":2,"2530":1,"2532":1,"2533":2,"2534":1,"2537":1,"2540":1,"2542":1,"2543":1,"2551":1,"2554":1,"2565":1,"2576":1,"2586":3,"2588":1,"2590":2,"2597":1,"2603":2,"2607":1,"2614":2,"2618":1,"2633":3,"2641":1,"2650":1,"2659":1,"2660":1,"2663":1,"2679":1,"2687":1,"2688":1,"2767":1,"2771":1,"2789":1,"2795":1,"2814":1,"2815":1,"2840":1,"2841":1,"2852":1,"2854":1,"2855":1,"2862":1,"2865":1,"2871":1,"2881":1}}],["int32",{"2":{"2555":1}}],["int>",{"2":{"2255":1}}],["intl",{"2":{"1792":1}}],["introspection",{"0":{"2324":1}}],["introspects",{"2":{"1419":1}}],["introducing",{"2":{"2160":1}}],["introduces",{"2":{"948":1,"1070":1,"1102":1,"1256":1,"1368":1,"2525":1}}],["introduced",{"2":{"848":1,"966":1,"1073":1,"1402":1,"2419":1,"2591":1,"2621":1}}],["introduction",{"0":{"840":1,"1073":1,"1385":1},"2":{"220":1,"1386":1,"1785":1}}],["intuitive",{"2":{"1390":1}}],["into",{"0":{"75":1,"531":1,"1038":1,"1183":1,"2733":1,"2803":1},"1":{"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1},"2":{"75":1,"77":1,"165":1,"167":1,"184":2,"214":1,"215":3,"248":1,"292":1,"297":1,"300":1,"308":1,"310":2,"312":1,"319":1,"320":1,"327":1,"328":1,"330":1,"335":1,"360":2,"361":1,"365":1,"374":1,"390":1,"395":2,"428":1,"439":1,"452":1,"527":2,"531":1,"698":1,"715":1,"720":1,"724":1,"728":1,"737":1,"764":1,"765":1,"766":1,"774":1,"801":1,"813":1,"814":1,"826":1,"831":1,"832":1,"834":2,"840":1,"843":1,"851":2,"852":2,"856":2,"857":1,"861":1,"863":1,"865":1,"868":2,"869":1,"871":1,"872":1,"876":2,"878":2,"879":1,"881":1,"883":1,"884":1,"885":2,"886":1,"888":3,"898":1,"903":1,"904":1,"909":1,"913":3,"915":2,"916":2,"917":1,"918":1,"919":1,"928":1,"937":1,"938":1,"946":1,"947":1,"948":1,"959":1,"965":2,"966":1,"977":2,"989":1,"990":3,"991":2,"992":1,"994":1,"1010":2,"1016":1,"1033":1,"1035":1,"1037":4,"1038":1,"1042":1,"1049":1,"1051":1,"1054":1,"1070":1,"1073":1,"1074":2,"1075":1,"1077":1,"1078":2,"1079":1,"1088":1,"1095":1,"1096":1,"1097":2,"1099":1,"1105":2,"1106":1,"1111":1,"1126":1,"1150":1,"1159":1,"1162":1,"1183":1,"1185":1,"1190":1,"1192":1,"1202":1,"1208":1,"1214":2,"1215":3,"1232":3,"1234":3,"1235":1,"1239":1,"1302":1,"1305":1,"1307":1,"1309":2,"1321":2,"1323":1,"1327":1,"1332":2,"1338":2,"1339":2,"1347":1,"1351":1,"1357":3,"1358":1,"1372":3,"1373":1,"1374":1,"1378":1,"1382":2,"1383":1,"1391":1,"1393":2,"1394":1,"1395":2,"1396":1,"1402":1,"1403":3,"1404":1,"1410":1,"1419":2,"1420":2,"1424":1,"1427":2,"1429":1,"1430":1,"1431":2,"1436":1,"1442":1,"1519":1,"1559":1,"1570":1,"1582":1,"1608":1,"1655":1,"1664":1,"1689":4,"1738":2,"1743":1,"1792":9,"1834":1,"1856":1,"1862":1,"1924":2,"1925":3,"1973":1,"2010":1,"2038":1,"2040":4,"2075":1,"2107":1,"2109":2,"2110":1,"2111":1,"2113":1,"2147":2,"2156":1,"2167":1,"2171":1,"2176":1,"2184":1,"2217":1,"2221":1,"2222":1,"2224":1,"2257":1,"2272":1,"2292":1,"2318":1,"2322":1,"2338":1,"2348":1,"2366":1,"2369":1,"2372":1,"2380":1,"2381":1,"2389":2,"2411":1,"2461":1,"2474":1,"2476":1,"2477":2,"2479":1,"2481":1,"2482":1,"2483":1,"2484":1,"2489":1,"2492":1,"2493":2,"2495":1,"2502":2,"2504":1,"2509":1,"2511":1,"2513":1,"2517":2,"2518":1,"2519":1,"2521":1,"2522":1,"2526":1,"2529":1,"2530":3,"2531":1,"2532":1,"2535":1,"2536":1,"2537":2,"2542":1,"2572":1,"2575":1,"2587":1,"2651":1,"2678":1,"2695":1,"2712":2,"2713":2,"2739":1,"2765":1,"2766":2,"2768":1,"2772":1,"2795":1,"2802":1,"2803":2,"2806":1,"2807":2,"2812":1,"2815":3,"2828":1,"2829":5,"2836":2,"2840":1,"2849":1,"2855":1,"2860":2,"2866":1,"2868":1,"2869":1,"2873":1,"2879":1}}],["int",{"2":{"18":2,"21":2,"33":1,"37":1,"38":1,"39":1,"105":2,"116":2,"117":2,"119":1,"128":1,"136":2,"137":2,"184":2,"186":5,"206":1,"207":1,"208":1,"209":2,"210":1,"212":2,"215":1,"248":1,"251":1,"254":2,"255":4,"256":2,"257":2,"258":1,"298":1,"299":1,"301":1,"309":1,"310":5,"312":1,"313":3,"320":1,"332":1,"333":1,"334":1,"335":1,"360":1,"365":1,"366":1,"374":2,"392":1,"393":1,"405":2,"406":4,"408":4,"415":2,"423":2,"426":2,"427":2,"428":2,"439":2,"447":1,"449":2,"452":2,"469":2,"489":1,"493":1,"523":2,"527":1,"553":1,"554":1,"584":1,"611":3,"658":2,"659":1,"664":2,"665":2,"677":1,"679":2,"700":1,"722":2,"723":2,"733":3,"736":2,"747":3,"748":2,"760":1,"761":1,"762":1,"764":5,"765":4,"766":4,"770":1,"771":1,"772":2,"773":1,"774":5,"797":3,"798":2,"811":3,"812":2,"815":2,"826":1,"828":1,"835":2,"882":1,"883":4,"884":4,"888":5,"903":1,"904":4,"905":1,"913":6,"914":5,"915":1,"916":9,"917":1,"918":2,"924":1,"928":2,"929":3,"934":1,"952":1,"956":6,"964":2,"977":3,"983":1,"990":1,"991":1,"992":1,"1019":2,"1031":1,"1033":2,"1045":2,"1050":1,"1055":1,"1056":1,"1057":1,"1058":2,"1060":2,"1068":1,"1092":1,"1105":7,"1113":2,"1142":4,"1149":1,"1150":1,"1154":1,"1179":1,"1187":2,"1191":6,"1192":2,"1193":6,"1197":1,"1213":3,"1214":1,"1215":3,"1216":3,"1232":4,"1234":3,"1236":5,"1237":2,"1239":3,"1255":1,"1279":1,"1307":3,"1308":1,"1309":3,"1310":2,"1321":3,"1332":2,"1336":1,"1338":4,"1339":3,"1341":1,"1355":2,"1357":1,"1368":1,"1372":3,"1374":4,"1375":1,"1378":1,"1387":3,"1390":3,"1393":2,"1394":1,"1395":5,"1396":2,"1398":2,"1399":1,"1410":1,"1412":1,"1426":1,"1431":1,"1436":1,"1480":1,"1504":1,"1511":5,"1529":1,"1531":1,"1547":3,"1605":2,"1639":1,"1651":1,"1671":1,"1689":2,"1703":1,"1722":2,"1725":1,"1732":1,"1736":1,"1738":1,"1742":2,"1743":1,"1792":6,"1804":2,"1824":1,"1877":1,"1882":1,"1884":1,"1886":2,"1887":2,"1917":1,"1921":2,"1922":1,"1924":2,"1926":2,"1949":1,"1951":4,"1952":5,"1953":5,"1954":3,"1973":1,"1974":1,"2076":1,"2078":1,"2079":1,"2086":4,"2094":2,"2109":1,"2125":3,"2129":1,"2131":1,"2176":1,"2184":3,"2185":1,"2187":4,"2205":1,"2253":1,"2264":2,"2265":2,"2277":11,"2283":4,"2290":2,"2292":2,"2293":5,"2303":2,"2304":2,"2337":1,"2338":1,"2339":2,"2394":2,"2497":2,"2530":1,"2540":1,"2549":7,"2572":4,"2586":4,"2587":1,"2588":3,"2590":4,"2597":1,"2607":1,"2622":1,"2665":4,"2688":2,"2762":2,"2763":1,"2764":1,"2766":2,"2768":1,"2775":2,"2802":2,"2810":3,"2813":2,"2815":2,"2829":5,"2834":4,"2836":5,"2845":1,"2855":1,"2866":1,"2868":2}}],["intellisense",{"2":{"2247":1}}],["intended",{"2":{"1176":1,"1792":1}}],["intend",{"2":{"1096":2}}],["intensive",{"2":{"307":1,"1049":1,"2177":2}}],["intentional",{"2":{"2395":1}}],["intentionally",{"2":{"1049":1,"1106":1,"2406":1}}],["intention",{"2":{"1403":1}}],["intent",{"2":{"1":1,"448":1,"624":1,"1382":3,"1403":1,"1405":1,"2376":1}}],["intercepted",{"2":{"2878":1}}],["intercept",{"2":{"2758":2,"2881":1}}],["intercepts",{"2":{"1704":1,"2112":1,"2443":1,"2448":1,"2532":1}}],["interrupted",{"2":{"2113":1,"2535":1}}],["interoperable",{"2":{"1453":1}}],["interoperability",{"2":{"1111":1,"1457":1,"2554":1}}],["internet",{"2":{"1401":1}}],["internals",{"2":{"2795":1}}],["internalsvisibleto",{"2":{"2258":1}}],["internalonly",{"2":{"2489":1}}],["internalrequesthandler",{"2":{"1746":1,"1929":1,"2347":1,"2372":1}}],["internal",{"0":{"261":1,"263":1,"264":1,"351":1,"1715":1,"1747":1,"1930":1,"2344":2,"2347":1,"2368":1,"2372":1,"2489":1},"1":{"262":1,"263":1,"264":1,"265":1,"266":1,"2369":1,"2370":1,"2371":1,"2372":1},"2":{"176":2,"223":2,"261":5,"262":4,"263":3,"264":4,"265":2,"301":1,"320":3,"324":1,"327":1,"369":1,"374":1,"415":3,"418":2,"420":2,"421":2,"422":1,"426":1,"427":1,"428":1,"446":4,"451":2,"453":1,"454":2,"834":1,"836":2,"837":3,"843":1,"848":1,"924":1,"937":1,"940":1,"1011":1,"1105":1,"1107":1,"1117":1,"1133":1,"1204":2,"1208":1,"1237":1,"1254":1,"1329":1,"1345":2,"1348":1,"1351":1,"1398":3,"1504":2,"1518":1,"1704":1,"1745":2,"1746":1,"1747":3,"1748":2,"1792":5,"1834":1,"1839":3,"1863":1,"1887":1,"1909":1,"1911":2,"1929":1,"1930":4,"1931":1,"1967":1,"1969":1,"1971":1,"1972":2,"2242":1,"2265":1,"2271":1,"2303":2,"2306":1,"2329":1,"2344":3,"2346":3,"2347":4,"2370":1,"2372":1,"2419":1,"2430":1,"2434":2,"2438":2,"2481":2,"2482":1,"2489":1,"2495":1,"2522":1,"2545":1,"2717":1,"2759":1,"2767":1,"2809":4,"2811":1,"2812":1,"2813":2}}],["internally",{"2":{"174":1,"263":1,"1084":1,"1102":1,"1219":1,"1305":1,"1869":1,"2284":1,"2344":1,"2432":1}}],["intervention",{"2":{"1155":1}}],["intervals",{"2":{"1158":1,"1623":1,"1951":1}}],["interval",{"0":{"267":1,"2377":1},"1":{"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"278":1,"279":1,"280":1,"281":1},"2":{"92":1,"98":2,"108":1,"110":1,"118":1,"122":1,"133":1,"141":2,"211":1,"214":4,"217":1,"232":1,"267":1,"279":1,"310":1,"566":2,"1067":1,"1071":1,"1098":1,"1150":2,"1214":1,"1232":1,"1234":1,"1447":1,"1451":1,"1454":3,"1460":1,"1464":1,"1511":2,"1521":1,"1523":1,"1527":1,"1532":1,"1535":1,"1722":1,"1731":1,"1743":2,"1764":1,"1769":1,"1775":1,"1792":16,"1837":1,"1917":1,"2047":1,"2060":1,"2205":1,"2210":1,"2253":2,"2375":1,"2376":3,"2377":2,"2380":3,"2381":1,"2502":2,"2634":1,"2635":1,"2765":1,"2814":1}}],["interval>",{"2":{"92":1,"133":4,"1792":1}}],["interesting",{"2":{"1075":1}}],["interested",{"2":{"977":1,"980":1,"990":1,"1403":1,"1443":1}}],["interim",{"2":{"1071":1,"2385":1}}],["interpolation",{"2":{"1070":1,"1102":1,"1852":1,"2383":1}}],["interprets",{"2":{"1792":1}}],["interpreting",{"2":{"1279":1}}],["interpretation",{"2":{"35":1,"43":1,"1792":1,"2224":1}}],["interpreted",{"2":{"32":1,"286":1,"458":1,"460":2,"463":1,"464":1,"1792":4,"1853":1,"1854":2,"1856":2,"2224":1,"2450":1,"2454":2,"2595":2}}],["interfere",{"2":{"989":1}}],["interfacename",{"2":{"2590":2}}],["interface",{"0":{"2369":1,"2590":1},"2":{"720":1,"723":2,"834":1,"872":8,"873":1,"894":1,"920":23,"938":3,"961":2,"985":1,"995":2,"1020":1,"1024":1,"1026":2,"1061":1,"1094":1,"1115":1,"1193":4,"1342":1,"1366":1,"1386":1,"1408":2,"1409":1,"1413":1,"1559":1,"1567":1,"1569":3,"1570":2,"1571":5,"1581":1,"1792":1,"2228":1,"2357":1,"2369":2,"2438":1,"2461":1,"2482":2,"2484":4,"2520":1,"2590":3,"2611":1,"2614":1,"2615":1,"2642":1,"2656":2}}],["interfaces",{"0":{"1043":1,"1571":1,"2484":1},"2":{"381":1,"920":1,"975":1,"984":1,"995":1,"1005":2,"1006":1,"1037":2,"1038":1,"1097":1,"1193":1,"1355":1,"1366":3,"1401":1,"1406":1,"1407":1,"1416":1,"1559":1,"1570":3,"1571":3,"1580":1,"1792":1,"2118":1,"2166":1,"2333":1,"2356":1,"2369":1,"2481":1,"2484":2,"2590":3,"2611":1,"2641":1,"2703":1,"2826":1}}],["interactive",{"2":{"1037":1,"1381":1,"1792":1,"1825":2,"2153":1,"2537":1}}],["interaction",{"2":{"469":1,"2438":1}}],["interact",{"2":{"974":1,"1630":1}}],["inter",{"2":{"871":1}}],["intermediate",{"2":{"871":2,"949":1,"1009":1,"2309":1,"2614":1,"2622":1}}],["intermediary",{"2":{"851":1}}],["intermittently",{"2":{"865":1}}],["intersect",{"2":{"852":2}}],["integrating",{"2":{"1104":1,"1204":1}}],["integrations",{"2":{"1035":1,"1416":1,"1581":1,"1911":1,"2434":1}}],["integration",{"0":{"905":1,"1104":1,"1183":1,"1201":1,"1772":1,"1780":1,"2068":1,"2438":1,"2627":1,"2667":1},"1":{"1105":1,"1106":1,"1107":1,"1108":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":2,"1203":2,"1204":2,"1205":2,"1206":1,"1207":1,"1208":1,"1773":1,"1774":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1},"2":{"1":1,"876":1,"880":1,"909":1,"910":1,"986":1,"1006":1,"1036":1,"1048":1,"1064":2,"1098":1,"1106":1,"1127":1,"1181":1,"1206":1,"1207":1,"1303":2,"1322":1,"1323":1,"1343":1,"1402":4,"1405":1,"2055":1,"2164":2,"2232":1,"2257":1,"2258":1,"2266":1,"2393":1,"2438":2,"2452":1,"2459":1,"2627":1}}],["integrated",{"2":{"1126":1,"2537":1}}],["integrates",{"2":{"1105":1,"1122":1,"1156":1}}],["integrate",{"2":{"879":1,"1098":1,"1105":1,"1213":1}}],["integral",{"2":{"872":1}}],["integrity",{"0":{"862":1},"1":{"863":1,"864":1,"865":1},"2":{"841":1,"844":1,"845":3,"855":1,"863":1,"1354":1,"2498":1}}],["integers",{"2":{"952":1,"1464":1,"2376":1}}],["integer",{"0":{"2376":1},"2":{"35":2,"169":1,"188":1,"211":1,"268":1,"370":1,"373":1,"375":2,"378":1,"447":1,"567":1,"582":1,"584":2,"585":3,"915":1,"983":1,"995":1,"1034":1,"1071":1,"1464":1,"1731":1,"1922":1,"2247":1,"2253":2,"2265":1,"2296":1,"2320":1,"2323":1,"2332":2,"2333":2,"2335":2,"2337":3,"2376":1,"2394":1,"2555":1,"2590":1,"2847":1,"2848":1,"2851":1,"2854":1}}],["in",{"0":{"91":1,"158":1,"276":1,"278":1,"306":1,"308":1,"309":1,"363":1,"533":1,"733":1,"765":1,"833":1,"855":1,"867":1,"869":1,"912":1,"940":1,"942":1,"966":1,"986":1,"988":1,"1010":1,"1039":1,"1040":1,"1049":1,"1055":1,"1105":1,"1138":1,"1185":1,"1250":1,"1256":1,"1272":1,"1305":1,"1328":1,"1370":1,"1395":1,"1397":1,"1402":1,"1409":1,"1421":1,"1431":2,"1449":1,"1532":1,"1543":1,"1599":1,"1619":1,"1727":1,"1862":1,"1905":1,"1908":1,"2182":1,"2188":1,"2286":1,"2348":1,"2384":1,"2402":1,"2520":1,"2540":1,"2544":1,"2587":1,"2717":1,"2731":1,"2766":1,"2770":1,"2802":1,"2816":1,"2837":1},"1":{"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"159":1,"160":1,"161":1,"162":1,"163":1,"277":1,"278":1,"913":1,"914":1,"915":1,"916":1,"917":1,"918":1,"919":1,"920":1,"967":1,"1011":1,"1012":1,"1013":1,"1014":1,"1015":1,"1016":1,"1017":1,"1018":1,"1019":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1041":1,"1056":1,"1257":1,"1258":1,"1259":1,"1260":1,"1329":1,"1330":1,"1331":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1341":1,"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1,"1398":1,"1399":1,"1909":1,"1910":1,"1911":1,"2183":1,"2184":1,"2185":1},"2":{"2":1,"12":1,"31":2,"33":2,"37":1,"41":1,"45":2,"51":2,"52":1,"63":3,"74":1,"78":1,"87":2,"92":1,"94":1,"95":1,"96":1,"97":1,"101":1,"102":1,"104":1,"105":1,"106":1,"109":1,"110":1,"118":1,"119":2,"120":1,"121":2,"123":1,"125":1,"134":1,"139":1,"150":2,"165":4,"167":2,"168":4,"173":1,"175":1,"182":1,"186":1,"187":1,"190":1,"197":1,"206":2,"209":1,"212":2,"214":3,"215":1,"216":4,"220":2,"224":1,"226":1,"227":1,"230":1,"238":1,"239":1,"244":1,"253":1,"258":1,"278":3,"279":1,"281":1,"294":1,"296":2,"297":2,"298":4,"300":3,"301":1,"302":1,"303":1,"305":3,"306":4,"307":5,"308":4,"309":5,"310":2,"312":3,"316":1,"317":3,"319":1,"324":1,"337":2,"338":1,"347":2,"349":1,"351":1,"352":4,"353":1,"354":2,"357":1,"362":5,"363":1,"364":2,"368":1,"369":1,"370":1,"377":1,"378":1,"381":1,"383":1,"384":2,"386":1,"387":2,"388":1,"390":4,"395":5,"396":1,"397":1,"407":1,"408":3,"414":1,"415":1,"421":1,"423":1,"426":1,"428":1,"436":2,"439":1,"445":1,"446":2,"448":3,"452":1,"453":3,"455":1,"469":3,"470":1,"472":1,"473":1,"480":3,"493":1,"504":1,"527":1,"529":2,"533":1,"549":1,"556":1,"558":1,"559":1,"560":1,"567":1,"568":1,"570":1,"575":4,"577":2,"582":1,"584":1,"585":1,"586":2,"587":2,"588":1,"589":1,"595":2,"597":1,"614":1,"615":1,"616":1,"617":1,"618":2,"619":1,"621":1,"624":3,"626":2,"650":1,"653":1,"673":1,"679":1,"687":1,"689":1,"690":1,"691":2,"692":1,"694":1,"695":2,"696":1,"699":3,"703":1,"704":3,"705":1,"706":1,"709":1,"711":2,"713":1,"714":3,"715":1,"716":2,"718":1,"720":3,"722":1,"724":1,"737":1,"741":1,"747":3,"748":1,"762":1,"765":1,"768":2,"772":1,"776":1,"778":1,"786":4,"788":1,"801":1,"809":1,"817":2,"818":1,"819":1,"831":1,"832":3,"834":2,"835":4,"836":2,"837":1,"840":5,"841":15,"843":11,"844":15,"845":11,"847":3,"848":18,"849":8,"851":38,"852":14,"854":4,"855":5,"856":1,"857":3,"859":10,"860":10,"861":7,"863":5,"864":8,"865":9,"866":1,"867":1,"868":12,"869":12,"871":11,"872":12,"873":12,"874":11,"875":2,"876":12,"877":2,"878":1,"880":9,"882":1,"884":1,"885":1,"889":1,"891":2,"892":1,"894":1,"902":1,"903":2,"904":2,"905":1,"911":2,"912":2,"913":1,"915":2,"916":3,"917":4,"918":7,"919":7,"920":5,"922":2,"924":1,"926":4,"928":1,"929":1,"933":2,"934":5,"936":1,"941":1,"942":1,"943":1,"945":4,"946":1,"948":5,"949":1,"956":2,"957":1,"958":1,"959":1,"961":2,"963":2,"965":1,"966":2,"967":1,"968":2,"970":1,"971":1,"973":3,"974":2,"977":1,"979":2,"980":2,"982":2,"983":2,"984":1,"985":1,"986":2,"988":2,"990":5,"992":1,"993":2,"994":5,"996":3,"997":2,"998":1,"1005":3,"1007":1,"1008":1,"1009":2,"1010":2,"1015":3,"1016":1,"1017":1,"1020":1,"1021":1,"1022":1,"1023":1,"1026":1,"1027":1,"1029":1,"1031":2,"1035":1,"1036":2,"1037":9,"1038":1,"1039":2,"1040":1,"1041":1,"1042":3,"1044":1,"1046":2,"1048":3,"1049":9,"1052":3,"1054":3,"1055":1,"1056":1,"1061":2,"1064":2,"1065":1,"1066":1,"1067":1,"1068":3,"1069":1,"1070":5,"1071":3,"1073":9,"1074":4,"1075":3,"1076":4,"1078":5,"1079":4,"1080":3,"1081":1,"1082":3,"1083":2,"1084":1,"1086":6,"1090":1,"1091":1,"1094":6,"1096":3,"1097":2,"1098":6,"1099":2,"1100":4,"1101":6,"1102":9,"1104":2,"1105":8,"1106":2,"1107":4,"1108":6,"1109":2,"1111":4,"1113":3,"1115":2,"1121":1,"1122":1,"1126":1,"1127":4,"1129":2,"1130":4,"1132":1,"1133":2,"1134":1,"1135":6,"1139":1,"1140":1,"1141":1,"1143":1,"1147":1,"1149":1,"1150":3,"1151":1,"1155":1,"1157":1,"1162":2,"1164":1,"1173":2,"1174":3,"1176":2,"1179":4,"1181":3,"1182":1,"1183":1,"1184":1,"1185":5,"1188":1,"1189":1,"1191":1,"1193":2,"1195":2,"1196":2,"1197":1,"1198":1,"1199":1,"1200":1,"1202":2,"1203":1,"1204":1,"1205":1,"1206":2,"1207":1,"1208":2,"1209":3,"1212":1,"1213":1,"1217":1,"1218":2,"1220":1,"1221":1,"1231":1,"1232":4,"1237":1,"1239":1,"1241":1,"1247":1,"1251":1,"1254":2,"1255":1,"1258":1,"1262":1,"1263":2,"1266":3,"1270":1,"1271":2,"1275":1,"1276":1,"1277":1,"1278":1,"1279":2,"1281":3,"1283":1,"1305":1,"1316":1,"1318":2,"1322":1,"1324":1,"1326":1,"1327":1,"1328":3,"1332":1,"1335":1,"1340":1,"1341":1,"1343":1,"1346":1,"1350":2,"1351":1,"1352":1,"1353":1,"1354":1,"1356":1,"1357":1,"1358":1,"1360":2,"1362":1,"1365":1,"1366":1,"1367":2,"1368":3,"1370":3,"1371":1,"1372":1,"1374":1,"1376":5,"1378":3,"1379":1,"1381":2,"1382":6,"1383":2,"1384":2,"1385":13,"1386":13,"1388":4,"1389":1,"1390":3,"1391":3,"1392":1,"1393":1,"1394":8,"1395":2,"1396":4,"1397":1,"1398":12,"1399":4,"1400":6,"1401":7,"1402":10,"1403":9,"1404":6,"1405":6,"1406":2,"1407":5,"1408":1,"1409":5,"1412":2,"1413":1,"1414":8,"1416":1,"1417":1,"1418":4,"1419":3,"1420":3,"1421":1,"1422":3,"1423":2,"1424":1,"1426":1,"1427":1,"1429":2,"1430":1,"1431":3,"1432":1,"1433":2,"1434":1,"1435":3,"1436":1,"1437":1,"1439":1,"1441":2,"1442":1,"1443":2,"1444":1,"1447":1,"1451":1,"1453":2,"1454":2,"1457":1,"1458":3,"1460":1,"1464":2,"1465":1,"1467":1,"1470":2,"1472":3,"1484":1,"1486":1,"1490":1,"1491":1,"1492":1,"1499":1,"1502":3,"1511":8,"1513":1,"1515":3,"1519":1,"1523":1,"1527":1,"1528":2,"1532":1,"1535":1,"1537":1,"1554":1,"1555":1,"1556":1,"1558":2,"1564":1,"1567":1,"1569":3,"1570":1,"1571":2,"1575":1,"1579":1,"1581":3,"1589":1,"1596":2,"1604":1,"1607":3,"1609":3,"1612":1,"1616":4,"1619":2,"1620":3,"1623":1,"1624":2,"1628":2,"1639":3,"1644":3,"1654":2,"1655":1,"1661":1,"1664":1,"1671":2,"1674":1,"1684":3,"1685":1,"1697":2,"1699":1,"1701":2,"1703":1,"1704":1,"1708":1,"1716":1,"1722":3,"1727":1,"1733":1,"1738":1,"1741":1,"1743":2,"1745":1,"1746":2,"1753":1,"1754":1,"1759":3,"1762":2,"1764":1,"1792":185,"1799":1,"1804":1,"1806":1,"1811":1,"1813":3,"1818":1,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":2,"1825":2,"1828":1,"1829":1,"1830":2,"1832":1,"1833":1,"1834":1,"1840":2,"1844":1,"1848":1,"1850":3,"1851":2,"1852":1,"1853":1,"1856":1,"1858":1,"1862":1,"1864":2,"1866":2,"1867":1,"1870":1,"1875":1,"1881":1,"1882":2,"1887":1,"1890":1,"1894":1,"1898":4,"1904":1,"1905":2,"1906":1,"1907":1,"1908":2,"1910":1,"1912":3,"1922":2,"1925":3,"1928":1,"1929":2,"1942":1,"1948":2,"1951":1,"1952":1,"1953":1,"1955":1,"1956":1,"1958":1,"1961":3,"1967":1,"1968":1,"1969":1,"1970":1,"1973":1,"1974":3,"1981":1,"1983":1,"1991":1,"1994":1,"2000":2,"2002":1,"2003":2,"2004":1,"2005":2,"2007":3,"2008":1,"2009":1,"2010":4,"2011":1,"2012":1,"2014":2,"2016":1,"2018":1,"2036":2,"2038":3,"2039":1,"2040":3,"2045":2,"2049":2,"2052":2,"2056":2,"2059":1,"2086":2,"2092":1,"2094":2,"2095":2,"2097":3,"2098":3,"2100":1,"2106":2,"2107":1,"2110":2,"2111":1,"2112":2,"2116":1,"2117":1,"2119":1,"2125":4,"2128":1,"2130":1,"2139":1,"2143":1,"2147":1,"2149":1,"2153":2,"2156":2,"2157":2,"2158":3,"2160":1,"2164":4,"2167":3,"2170":3,"2171":2,"2172":2,"2174":1,"2176":3,"2177":10,"2179":2,"2181":3,"2182":1,"2183":1,"2184":1,"2185":2,"2187":3,"2188":2,"2189":2,"2190":4,"2191":1,"2193":1,"2205":1,"2207":1,"2208":1,"2210":1,"2212":1,"2216":1,"2218":1,"2221":5,"2222":3,"2223":2,"2226":1,"2242":1,"2247":4,"2250":2,"2251":1,"2253":1,"2254":7,"2255":6,"2256":3,"2257":2,"2261":2,"2264":6,"2265":8,"2266":3,"2267":5,"2273":1,"2274":4,"2277":2,"2278":1,"2279":1,"2282":5,"2283":1,"2284":2,"2286":1,"2287":1,"2289":2,"2291":1,"2293":1,"2294":1,"2297":5,"2300":1,"2303":1,"2317":2,"2319":1,"2321":1,"2322":2,"2323":3,"2325":1,"2328":2,"2329":1,"2330":1,"2333":2,"2336":2,"2337":2,"2339":2,"2340":2,"2342":2,"2346":5,"2347":3,"2348":2,"2351":1,"2354":2,"2356":1,"2358":1,"2359":1,"2360":1,"2363":1,"2365":1,"2371":2,"2372":8,"2375":2,"2376":2,"2378":1,"2379":2,"2380":4,"2381":1,"2382":3,"2383":2,"2384":3,"2389":7,"2391":1,"2392":2,"2393":1,"2395":1,"2398":2,"2399":1,"2400":1,"2402":1,"2403":1,"2404":1,"2409":1,"2410":2,"2411":1,"2415":2,"2417":2,"2419":3,"2420":2,"2422":4,"2424":3,"2426":1,"2428":2,"2430":1,"2431":2,"2432":2,"2433":2,"2435":2,"2437":3,"2438":6,"2440":2,"2443":1,"2448":2,"2450":1,"2451":1,"2455":1,"2459":1,"2462":3,"2463":2,"2464":1,"2465":2,"2466":1,"2472":1,"2476":2,"2477":1,"2479":1,"2481":9,"2483":2,"2484":2,"2486":4,"2487":1,"2492":2,"2495":2,"2502":4,"2504":2,"2508":1,"2511":1,"2515":1,"2517":1,"2518":2,"2520":1,"2525":2,"2526":1,"2527":5,"2528":3,"2529":3,"2530":3,"2531":6,"2532":4,"2533":7,"2534":3,"2535":5,"2537":8,"2538":2,"2540":2,"2541":3,"2542":3,"2543":3,"2544":1,"2545":2,"2546":3,"2549":2,"2551":2,"2555":6,"2558":4,"2559":1,"2566":1,"2569":1,"2572":4,"2575":2,"2577":1,"2580":3,"2585":1,"2586":3,"2589":2,"2590":3,"2591":1,"2594":1,"2595":1,"2597":1,"2603":1,"2607":4,"2608":2,"2614":1,"2621":1,"2622":2,"2627":1,"2632":1,"2633":2,"2634":5,"2635":5,"2638":2,"2645":1,"2648":3,"2651":1,"2652":1,"2659":1,"2662":2,"2665":1,"2666":1,"2667":1,"2673":1,"2678":1,"2681":3,"2682":1,"2684":1,"2687":3,"2688":1,"2694":1,"2695":1,"2701":1,"2702":1,"2704":1,"2712":1,"2714":1,"2718":1,"2719":2,"2721":1,"2723":2,"2724":2,"2725":1,"2727":2,"2734":1,"2739":2,"2740":1,"2741":3,"2742":3,"2745":2,"2747":1,"2750":3,"2754":1,"2755":1,"2756":1,"2757":1,"2759":2,"2760":1,"2762":3,"2764":1,"2765":1,"2766":2,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2774":2,"2775":1,"2779":1,"2785":1,"2786":1,"2789":2,"2795":4,"2798":4,"2800":1,"2802":5,"2805":1,"2809":3,"2810":1,"2811":1,"2812":1,"2813":1,"2815":2,"2816":1,"2817":1,"2821":1,"2822":3,"2823":2,"2824":5,"2825":3,"2827":1,"2830":1,"2833":1,"2834":1,"2835":1,"2836":2,"2839":1,"2841":2,"2845":2,"2848":2,"2849":1,"2850":3,"2854":1,"2855":1,"2856":1,"2860":4,"2862":3,"2863":2,"2864":1,"2865":2,"2866":1,"2868":6,"2869":4,"2870":1,"2871":3,"2872":2,"2873":3,"2874":2,"2876":2,"2878":2,"2881":4}}],["istext",{"2":{"2621":1}}],["isjson",{"2":{"2621":1}}],["isready",{"2":{"2534":1,"2875":1}}],["isbodyparameter",{"2":{"2518":1}}],["isformattable",{"2":{"2372":1}}],["ispatternmatch",{"2":{"2270":1,"2371":2}}],["isarray",{"2":{"1574":1}}],["isauthenticated",{"2":{"1366":1,"1792":1,"2379":1,"2423":1}}],["iss",{"2":{"1454":1,"1792":2}}],["issuance",{"2":{"2438":1}}],["issuccess",{"2":{"1792":1,"2093":1,"2109":1,"2537":1}}],["issued",{"2":{"1792":1,"1830":1,"2420":1,"2438":1}}],["issuer",{"2":{"1454":2,"1792":3,"1828":1,"2554":2}}],["issue",{"2":{"302":1,"1101":2,"1193":1,"1500":1,"1792":1,"2175":1,"2178":1,"2438":1,"2569":2,"2572":1,"2600":1,"2626":1}}],["issues",{"0":{"1014":1,"1593":1,"1596":1},"2":{"3":1,"133":1,"277":1,"297":1,"576":1,"841":1,"1014":1,"1015":1,"1037":1,"1070":1,"1149":1,"1152":1,"1155":1,"1254":1,"1324":1,"1385":1,"1403":1,"1527":1,"1792":2,"1851":1,"1983":1,"2171":1,"2212":1,"2382":1,"2577":1,"2589":1,"2871":1}}],["issuing",{"2":{"297":1,"2110":1,"2530":1,"2532":1}}],["isearchproductsresponse",{"2":{"1571":3}}],["isearchproductsrequest",{"2":{"1571":3}}],["isearchrequest",{"2":{"1569":2}}],["isendmessagerequest",{"2":{"1317":1}}],["iserror",{"2":{"1041":1,"1824":2,"2481":1}}],["isempty",{"2":{"1026":1,"1366":1}}],["islength",{"2":{"1026":1}}],["isdevelopment",{"2":{"873":1}}],["isvalid",{"2":{"845":1,"863":1,"864":1}}],["isopendictionarysection",{"2":{"2448":1}}],["iso",{"2":{"695":1,"705":2,"848":2,"860":1,"1856":2,"2224":1,"2381":1,"2450":1,"2451":1,"2453":1,"2454":2,"2873":4}}],["isolates",{"2":{"1107":1,"1255":1}}],["isolate",{"0":{"1427":1},"2":{"947":1,"1424":1,"1427":1,"2023":1,"2533":1,"2881":1}}],["isolated2",{"2":{"2873":1}}],["isolated1",{"2":{"2873":2}}],["isolated",{"2":{"695":2,"705":2,"711":4,"715":1,"851":1,"986":1,"1005":1,"1014":1,"1067":1,"1074":1,"1081":1,"1326":1,"1429":1,"1792":1,"2221":1,"2526":1,"2531":1,"2533":2,"2537":1,"2545":1,"2546":1,"2869":1,"2873":2}}],["isolating",{"2":{"843":1}}],["isolation+slow",{"2":{"711":1}}],["isolation",{"0":{"989":1,"1079":1,"2873":1},"2":{"694":1,"697":1,"711":1,"864":1,"876":1,"986":1,"993":1,"1074":2,"1079":3,"1082":1,"1393":1,"1632":1,"2023":1,"2092":1,"2167":3,"2297":2,"2380":1,"2533":1,"2537":1,"2545":2,"2740":1,"2858":1,"2860":1,"2867":1,"2873":5}}],["isnullorempty",{"2":{"2648":1}}],["isnumeric",{"2":{"2621":1}}],["isnan",{"2":{"1431":1}}],["isn",{"0":{"877":1,"1410":1,"2799":1},"2":{"302":1,"304":1,"351":1,"663":1,"831":1,"838":1,"841":2,"857":1,"871":1,"874":1,"876":1,"877":2,"904":1,"948":1,"1005":1,"1079":1,"1104":1,"1140":1,"1150":2,"1281":1,"1385":1,"1421":1,"1428":1,"1429":1,"1431":1,"1522":1,"1527":2,"1792":1,"2394":1,"2432":1,"2751":1,"2868":1}}],["is",{"0":{"375":1,"388":1,"436":1,"564":1,"653":1,"654":1,"834":1,"835":1,"841":1,"868":1,"877":1,"939":1,"993":1,"1006":1,"1039":1,"1065":1,"1075":1,"1080":1,"1304":1,"2378":1,"2395":1,"2709":1,"2711":1,"2712":1,"2741":1,"2742":1,"2744":1,"2757":1},"1":{"389":1,"940":1,"941":1,"942":1,"943":1,"944":1,"1007":1,"1008":1,"1009":1},"2":{"0":1,"1":6,"2":1,"3":1,"7":1,"8":1,"9":2,"16":1,"17":3,"18":1,"19":1,"20":1,"21":1,"22":3,"23":1,"24":1,"32":1,"37":1,"38":1,"39":2,"40":2,"41":3,"46":1,"48":1,"49":1,"50":2,"51":2,"52":1,"60":2,"61":1,"62":1,"63":5,"64":2,"71":1,"72":1,"74":2,"75":2,"80":1,"83":1,"84":1,"85":1,"86":1,"87":1,"94":1,"95":1,"96":1,"97":1,"101":1,"104":1,"105":2,"106":3,"107":1,"108":5,"109":1,"115":1,"116":1,"117":1,"118":1,"119":2,"120":1,"128":1,"129":1,"134":1,"136":1,"137":1,"138":1,"139":1,"140":1,"147":1,"148":1,"149":1,"155":2,"156":1,"157":1,"158":1,"165":1,"168":4,"169":1,"173":1,"174":2,"175":4,"180":3,"182":1,"184":2,"186":5,"187":3,"188":4,"195":1,"196":1,"203":1,"206":2,"207":1,"208":1,"209":2,"211":2,"212":1,"213":4,"214":12,"215":3,"216":1,"245":2,"247":1,"248":1,"249":1,"250":1,"251":3,"252":2,"254":1,"255":1,"256":1,"257":1,"258":1,"263":3,"264":2,"277":3,"278":3,"279":1,"284":1,"286":1,"288":1,"289":1,"290":1,"291":1,"292":1,"296":1,"297":7,"298":5,"299":2,"301":1,"302":2,"303":2,"304":2,"306":2,"307":6,"308":4,"309":3,"312":1,"313":2,"314":2,"317":5,"318":1,"319":5,"320":5,"322":2,"323":2,"324":3,"325":4,"326":1,"327":1,"332":1,"333":1,"334":2,"335":1,"337":1,"342":1,"343":1,"344":1,"347":4,"349":1,"351":1,"352":2,"353":1,"354":2,"357":1,"358":2,"360":3,"361":2,"362":3,"364":2,"365":2,"366":1,"369":2,"370":9,"374":1,"375":5,"376":2,"377":3,"378":1,"383":5,"384":3,"386":3,"387":2,"388":7,"389":4,"390":9,"392":1,"393":1,"394":1,"395":2,"401":1,"402":1,"403":1,"405":1,"406":1,"407":1,"408":3,"409":1,"412":1,"414":2,"415":1,"417":1,"418":1,"419":1,"420":1,"421":2,"422":2,"423":4,"424":2,"426":1,"427":1,"428":1,"436":13,"438":3,"439":4,"441":1,"442":1,"443":1,"444":1,"445":2,"446":6,"447":2,"448":5,"449":1,"451":2,"452":6,"453":3,"454":4,"460":3,"462":3,"463":1,"464":1,"466":1,"467":1,"468":1,"469":1,"476":1,"477":1,"478":1,"479":1,"480":2,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"501":1,"502":1,"503":1,"504":1,"510":1,"511":1,"512":1,"520":1,"521":1,"522":2,"523":1,"527":3,"528":2,"529":3,"531":3,"532":1,"535":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"553":2,"554":2,"555":2,"560":2,"564":3,"567":1,"572":1,"573":1,"574":1,"577":2,"581":1,"582":2,"584":1,"585":1,"586":1,"587":6,"592":1,"593":1,"594":1,"601":1,"602":1,"603":1,"604":1,"609":2,"611":1,"613":1,"614":1,"615":2,"618":1,"619":1,"624":2,"625":1,"631":1,"632":1,"633":1,"636":1,"639":1,"641":1,"642":1,"643":1,"644":1,"645":1,"646":6,"650":6,"652":1,"653":3,"654":2,"655":1,"658":2,"660":2,"661":2,"662":4,"663":2,"664":3,"665":1,"666":3,"667":1,"669":1,"675":4,"677":1,"678":1,"679":1,"683":1,"686":3,"687":1,"690":3,"691":1,"693":1,"694":1,"695":2,"700":1,"701":2,"704":4,"706":1,"708":1,"709":2,"710":1,"714":2,"716":1,"722":1,"723":1,"724":2,"732":1,"733":1,"734":2,"735":1,"736":1,"737":1,"745":2,"747":5,"750":3,"751":2,"752":2,"755":2,"756":2,"758":2,"761":2,"762":2,"764":2,"767":2,"768":1,"770":1,"771":3,"772":3,"774":2,"775":5,"776":1,"777":6,"781":1,"782":2,"783":2,"784":2,"785":2,"787":2,"788":2,"789":2,"797":1,"798":1,"799":1,"800":1,"807":2,"809":1,"811":1,"812":1,"813":1,"814":1,"815":1,"817":1,"828":1,"829":1,"831":1,"832":1,"833":6,"834":4,"835":6,"836":3,"837":3,"838":1,"840":1,"841":22,"843":13,"844":19,"845":14,"847":11,"848":13,"849":16,"851":14,"852":41,"853":1,"854":5,"855":3,"856":1,"857":13,"859":12,"860":17,"861":8,"863":9,"864":12,"865":6,"866":4,"868":11,"869":7,"871":10,"872":18,"873":13,"874":8,"875":7,"876":11,"877":3,"880":2,"882":1,"884":1,"885":1,"886":2,"888":2,"892":1,"897":2,"899":1,"900":3,"901":2,"902":4,"904":7,"905":1,"907":1,"909":1,"910":1,"911":1,"913":2,"914":6,"915":4,"916":12,"917":4,"918":6,"919":6,"920":7,"921":3,"924":2,"926":2,"927":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"943":2,"946":2,"947":2,"948":1,"949":3,"953":2,"956":1,"957":1,"960":2,"961":2,"964":1,"965":2,"967":1,"971":1,"974":1,"976":1,"977":2,"978":2,"979":3,"980":3,"982":1,"983":3,"985":1,"986":4,"987":1,"988":3,"990":3,"991":2,"992":1,"993":4,"994":4,"997":1,"998":1,"1005":1,"1008":1,"1014":1,"1015":1,"1017":2,"1019":2,"1021":2,"1024":1,"1026":3,"1030":1,"1032":1,"1033":2,"1034":3,"1038":3,"1039":1,"1040":2,"1042":3,"1043":1,"1044":4,"1045":1,"1046":2,"1047":1,"1048":1,"1049":2,"1050":2,"1051":2,"1054":2,"1055":1,"1057":4,"1063":1,"1064":2,"1065":1,"1067":7,"1068":3,"1069":6,"1070":5,"1073":7,"1074":4,"1075":12,"1076":10,"1077":6,"1078":6,"1079":7,"1080":7,"1081":1,"1082":4,"1084":1,"1086":2,"1088":2,"1090":1,"1094":1,"1095":1,"1096":3,"1097":1,"1098":3,"1101":4,"1102":7,"1103":1,"1105":7,"1106":2,"1108":2,"1111":4,"1113":2,"1121":1,"1122":2,"1123":1,"1127":5,"1128":2,"1129":2,"1132":1,"1133":2,"1134":4,"1135":3,"1136":1,"1137":2,"1138":3,"1139":4,"1141":5,"1142":2,"1143":1,"1149":1,"1150":8,"1153":3,"1154":2,"1155":1,"1157":1,"1158":2,"1159":1,"1160":2,"1161":1,"1163":3,"1174":1,"1176":5,"1178":1,"1179":2,"1180":1,"1181":2,"1183":2,"1185":3,"1188":1,"1189":2,"1190":1,"1192":2,"1196":1,"1198":2,"1200":1,"1203":1,"1209":1,"1210":2,"1212":1,"1214":1,"1220":2,"1228":1,"1231":1,"1232":1,"1234":2,"1239":1,"1247":1,"1253":1,"1254":2,"1278":1,"1280":1,"1281":1,"1304":1,"1305":1,"1308":1,"1309":2,"1310":1,"1312":1,"1313":2,"1314":1,"1315":1,"1318":1,"1321":1,"1323":2,"1325":1,"1326":2,"1329":2,"1331":2,"1332":3,"1337":2,"1338":3,"1339":4,"1342":2,"1345":2,"1347":2,"1348":1,"1351":1,"1352":1,"1355":1,"1358":9,"1360":2,"1362":1,"1363":2,"1366":3,"1368":4,"1369":1,"1370":2,"1372":1,"1375":1,"1376":1,"1378":1,"1379":1,"1381":2,"1382":22,"1384":5,"1385":12,"1386":23,"1387":1,"1388":2,"1389":3,"1390":11,"1391":3,"1392":3,"1393":8,"1394":10,"1395":5,"1396":6,"1398":9,"1399":12,"1400":2,"1401":12,"1402":8,"1403":33,"1404":8,"1405":7,"1406":6,"1407":2,"1408":4,"1409":6,"1410":1,"1412":2,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":5,"1421":6,"1422":4,"1423":3,"1426":3,"1427":4,"1428":1,"1429":3,"1430":2,"1431":8,"1432":2,"1435":3,"1437":1,"1438":1,"1439":1,"1441":2,"1442":1,"1443":1,"1447":2,"1448":1,"1450":1,"1454":2,"1455":1,"1458":2,"1459":1,"1460":1,"1470":1,"1475":3,"1477":3,"1493":1,"1499":1,"1500":1,"1502":1,"1504":1,"1511":6,"1515":1,"1516":1,"1517":1,"1518":1,"1519":1,"1522":2,"1523":2,"1524":1,"1526":1,"1527":2,"1529":5,"1531":2,"1532":3,"1533":3,"1540":2,"1543":1,"1544":2,"1547":2,"1554":1,"1558":3,"1559":2,"1567":3,"1569":7,"1570":1,"1571":1,"1572":1,"1573":1,"1574":2,"1575":1,"1577":1,"1579":1,"1580":1,"1588":1,"1599":3,"1603":1,"1605":2,"1606":1,"1607":1,"1608":2,"1609":1,"1613":2,"1615":2,"1616":1,"1618":2,"1619":2,"1620":4,"1621":1,"1624":1,"1628":1,"1632":3,"1640":1,"1641":1,"1644":1,"1651":2,"1655":2,"1662":1,"1664":5,"1670":1,"1671":2,"1676":1,"1677":1,"1684":1,"1685":1,"1686":2,"1688":2,"1689":2,"1690":1,"1696":1,"1701":1,"1708":1,"1709":1,"1722":2,"1726":1,"1730":3,"1731":2,"1733":1,"1736":2,"1738":4,"1740":3,"1741":1,"1742":3,"1743":5,"1744":2,"1746":2,"1747":1,"1753":2,"1759":6,"1762":1,"1767":3,"1768":2,"1770":3,"1771":1,"1781":1,"1792":267,"1802":2,"1804":1,"1813":2,"1816":1,"1817":1,"1818":1,"1821":1,"1822":3,"1823":6,"1824":5,"1825":6,"1827":1,"1828":1,"1830":3,"1831":2,"1832":2,"1833":5,"1834":1,"1844":2,"1847":5,"1848":2,"1850":4,"1851":3,"1852":2,"1854":1,"1855":1,"1856":1,"1858":1,"1859":1,"1861":1,"1862":1,"1870":2,"1875":1,"1878":1,"1894":1,"1908":1,"1911":2,"1912":8,"1915":1,"1920":2,"1921":2,"1922":2,"1924":7,"1925":3,"1926":2,"1927":1,"1928":1,"1929":5,"1930":2,"1937":1,"1940":1,"1941":1,"1948":1,"1949":2,"1951":2,"1952":1,"1953":1,"1954":1,"1955":1,"1957":4,"1958":2,"1959":1,"1961":6,"1974":3,"1982":1,"1983":1,"2001":1,"2002":2,"2003":1,"2006":2,"2007":1,"2010":2,"2011":2,"2012":1,"2016":1,"2017":1,"2018":2,"2020":1,"2023":1,"2036":1,"2038":1,"2039":1,"2040":6,"2047":2,"2054":1,"2076":1,"2078":1,"2079":2,"2092":2,"2093":1,"2094":2,"2096":1,"2101":1,"2102":1,"2106":5,"2107":2,"2109":4,"2110":3,"2111":4,"2112":4,"2126":2,"2127":2,"2131":1,"2137":2,"2142":1,"2146":1,"2147":1,"2148":1,"2153":2,"2154":2,"2155":2,"2156":3,"2157":4,"2165":1,"2166":1,"2170":1,"2171":3,"2172":1,"2175":2,"2176":3,"2177":6,"2178":2,"2179":1,"2180":3,"2181":1,"2182":1,"2183":4,"2184":4,"2185":1,"2186":1,"2187":4,"2192":1,"2193":8,"2194":1,"2195":1,"2196":5,"2197":4,"2199":3,"2200":3,"2201":1,"2202":3,"2204":2,"2205":3,"2206":2,"2207":2,"2214":2,"2215":2,"2216":1,"2217":1,"2218":1,"2221":2,"2222":3,"2223":3,"2226":1,"2245":1,"2247":5,"2250":1,"2251":1,"2252":2,"2253":3,"2254":1,"2255":11,"2256":7,"2258":1,"2259":2,"2264":3,"2265":10,"2266":3,"2267":6,"2272":2,"2273":2,"2274":2,"2277":5,"2283":3,"2284":3,"2285":1,"2288":3,"2289":1,"2290":3,"2291":4,"2292":2,"2293":5,"2294":3,"2296":5,"2297":3,"2300":1,"2302":2,"2303":1,"2304":3,"2305":1,"2306":1,"2307":2,"2309":1,"2314":4,"2318":4,"2319":1,"2320":2,"2321":1,"2322":1,"2323":6,"2324":1,"2327":1,"2328":1,"2332":7,"2333":6,"2335":2,"2336":1,"2337":7,"2338":1,"2339":3,"2340":2,"2342":1,"2344":3,"2346":3,"2347":1,"2350":2,"2351":1,"2353":1,"2354":2,"2359":1,"2360":5,"2363":1,"2367":1,"2371":1,"2375":4,"2376":1,"2377":1,"2378":4,"2379":7,"2380":5,"2381":2,"2382":6,"2383":4,"2384":2,"2385":1,"2389":5,"2391":5,"2394":5,"2395":3,"2397":1,"2398":3,"2399":1,"2404":1,"2405":4,"2406":1,"2412":2,"2413":1,"2416":4,"2419":1,"2422":3,"2423":5,"2424":6,"2425":1,"2426":1,"2428":2,"2429":1,"2432":5,"2434":2,"2435":2,"2436":2,"2437":2,"2438":4,"2443":2,"2444":1,"2446":1,"2451":1,"2452":5,"2453":1,"2454":1,"2455":2,"2456":1,"2461":3,"2463":1,"2464":1,"2465":2,"2466":8,"2470":3,"2471":1,"2472":1,"2474":2,"2476":4,"2477":6,"2479":1,"2481":14,"2482":2,"2483":3,"2484":1,"2486":3,"2487":1,"2490":1,"2491":2,"2492":3,"2493":2,"2494":1,"2495":2,"2497":2,"2500":1,"2502":5,"2504":3,"2505":1,"2509":3,"2517":2,"2518":2,"2520":5,"2522":2,"2523":1,"2526":2,"2527":5,"2528":9,"2529":8,"2530":6,"2531":6,"2532":8,"2533":6,"2534":2,"2535":5,"2537":15,"2538":2,"2539":2,"2540":11,"2541":3,"2542":2,"2543":6,"2544":1,"2545":3,"2546":1,"2549":16,"2554":1,"2558":3,"2559":1,"2575":6,"2576":1,"2580":5,"2581":4,"2586":3,"2587":3,"2588":2,"2590":3,"2591":3,"2595":1,"2596":1,"2607":3,"2611":2,"2615":1,"2621":1,"2632":5,"2633":4,"2634":11,"2635":2,"2641":2,"2645":1,"2648":1,"2649":1,"2651":1,"2652":1,"2653":2,"2655":1,"2656":3,"2662":2,"2664":4,"2665":3,"2672":1,"2673":1,"2678":3,"2679":1,"2682":1,"2684":1,"2685":1,"2687":1,"2688":3,"2694":2,"2695":2,"2705":1,"2709":1,"2712":2,"2714":1,"2717":1,"2719":1,"2721":2,"2723":2,"2726":1,"2728":1,"2729":2,"2731":2,"2732":1,"2741":1,"2742":1,"2744":1,"2745":1,"2749":1,"2752":1,"2755":1,"2759":1,"2760":1,"2762":5,"2764":4,"2765":3,"2766":4,"2767":5,"2768":3,"2769":1,"2772":1,"2775":1,"2776":2,"2779":2,"2785":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2794":5,"2795":4,"2797":2,"2800":1,"2802":1,"2803":2,"2804":2,"2806":1,"2807":3,"2808":1,"2809":7,"2810":1,"2811":2,"2812":3,"2813":4,"2815":5,"2822":2,"2823":3,"2824":5,"2825":1,"2827":1,"2828":8,"2829":7,"2831":1,"2832":2,"2833":4,"2834":3,"2835":5,"2836":2,"2840":6,"2841":1,"2843":1,"2845":7,"2847":2,"2848":2,"2849":1,"2850":2,"2854":1,"2855":1,"2856":1,"2857":2,"2858":2,"2860":1,"2861":1,"2862":6,"2863":1,"2864":7,"2865":7,"2866":1,"2867":1,"2868":6,"2869":4,"2871":3,"2872":2,"2873":5,"2874":1,"2875":1,"2876":1,"2878":3,"2879":1,"2880":1,"2881":1}}],["hstsbuilderextensions",{"2":{"1792":1}}],["hsts",{"0":{"1983":1},"2":{"1792":1,"1980":1,"1983":1}}],["hs256",{"2":{"1454":1,"1460":1,"1792":2,"2375":1,"2554":1}}],["hmacsha512",{"2":{"1657":2,"1663":1,"1792":1}}],["hmacsha256",{"2":{"1657":1,"1792":1}}],["hmac",{"2":{"1657":2,"2438":1}}],["h4",{"2":{"1429":1}}],["href=",{"2":{"961":2,"1061":1,"1200":1}}],["href",{"2":{"961":2,"1413":2,"1572":1,"1581":1,"1792":2}}],["h2>posts",{"2":{"996":1}}],["h2>",{"2":{"938":1,"996":1,"1061":1}}],["h2>login",{"2":{"938":1,"1061":1}}],["hp",{"2":{"922":1}}],["hurry",{"2":{"1254":1}}],["hurt",{"2":{"1170":1}}],["hunt",{"2":{"2394":1}}],["hunting",{"2":{"1193":1}}],["hundreds",{"2":{"872":1,"879":1,"1302":1,"1324":1}}],["hundred",{"2":{"856":1,"867":1,"868":1}}],["huge",{"2":{"918":1,"1385":1,"1391":1,"1399":1}}],["humans",{"2":{"1414":1}}],["human",{"2":{"0":1,"868":1,"912":1,"1225":1,"1382":2,"1402":1,"1792":1,"1875":1,"2056":1,"2389":1}}],["hh",{"2":{"776":2,"889":2,"892":2,"963":3,"1792":8,"1800":1,"1809":2,"1810":1,"1917":1,"2077":2,"2094":1,"2101":1,"2123":2,"2130":4,"2156":1,"2537":1,"2542":1,"2652":2,"2814":1}}],["h1>users",{"2":{"996":1}}],["h1>",{"2":{"539":2,"996":1}}],["h1>hello",{"2":{"539":2}}],["hydrated",{"2":{"854":1}}],["hyphen",{"2":{"382":1,"2334":1}}],["hybridcachewrapper",{"2":{"2462":1,"2495":1}}],["hybridcachemaximumpayloadbytes",{"2":{"1510":1,"1511":1,"1515":1,"1792":1,"2279":2}}],["hybridcachemaximumkeylength",{"2":{"1510":1,"1511":1,"1515":1,"1792":1,"2279":2}}],["hybridcachelocalcacheexpiration",{"2":{"1147":1,"1510":1,"1511":1,"1515":1,"1792":1,"2279":2}}],["hybridcachedefaultexpiration",{"2":{"1147":1,"1177":1,"1510":1,"1511":2,"1515":2,"1792":1,"2279":2}}],["hybridcacheuseredisbackend",{"2":{"1147":2,"1177":1,"1510":1,"1511":2,"1515":3,"1792":2,"2279":2,"2551":1}}],["hybridcache",{"0":{"2274":1,"2279":1,"2495":1},"2":{"1147":1,"1511":1,"1515":4,"1522":1,"1792":2,"2223":1,"2238":1,"2274":4,"2279":2,"2380":1,"2459":1,"2462":2,"2465":1,"2466":1,"2495":2,"2745":1}}],["hybrid",{"0":{"1147":1,"1515":1},"2":{"101":1,"107":1,"835":1,"848":1,"868":1,"1101":2,"1106":1,"1121":1,"1147":4,"1177":1,"1180":1,"1181":1,"1237":1,"1511":6,"1515":3,"1521":1,"1792":10,"1887":1,"2274":3,"2279":1,"2380":4,"2386":1,"2445":2,"2465":1,"2494":1,"2495":4}}],["h5",{"2":{"280":1}}],["htm",{"2":{"1792":1,"2042":1}}],["htmlkey",{"2":{"1792":1,"2073":1,"2075":2,"2080":1,"2651":1}}],["htmlinputelement",{"2":{"1361":1}}],["htmlfooter",{"2":{"965":1,"1792":1,"2073":1,"2075":2,"2080":1,"2651":1}}],["htmlheader",{"2":{"965":1,"1792":1,"2073":1,"2075":2,"2080":1,"2651":1}}],["htmlhtml",{"2":{"938":1,"961":1,"1061":1,"1200":1,"1491":1,"1685":1,"2039":1,"2040":1}}],["htmllink",{"2":{"961":1}}],["htmlenabled",{"2":{"958":1,"965":1,"1792":1,"2073":1,"2075":2,"2080":1,"2651":1}}],["html>",{"2":{"539":4,"965":3,"1685":3,"1792":3}}],["html",{"0":{"677":1,"965":1,"2054":1,"2075":1,"2651":1,"2726":1},"1":{"2076":1},"2":{"161":1,"167":1,"228":1,"539":6,"673":1,"675":2,"677":2,"679":1,"680":1,"682":1,"833":3,"834":1,"851":1,"868":2,"938":1,"957":2,"959":3,"960":2,"961":4,"965":4,"966":4,"967":2,"970":1,"976":2,"1037":1,"1094":1,"1099":1,"1200":1,"1207":1,"1374":2,"1423":1,"1424":1,"1426":2,"1427":2,"1428":1,"1429":1,"1430":1,"1431":9,"1432":2,"1491":1,"1676":1,"1677":1,"1684":1,"1685":1,"1789":1,"1792":25,"1925":1,"1936":1,"1943":1,"2033":1,"2035":1,"2036":3,"2037":1,"2038":1,"2040":2,"2042":2,"2046":1,"2047":3,"2054":2,"2056":2,"2066":1,"2069":1,"2072":1,"2073":1,"2075":7,"2076":3,"2080":2,"2083":1,"2164":3,"2165":1,"2202":2,"2233":1,"2255":4,"2322":1,"2329":1,"2476":1,"2517":1,"2635":6,"2650":1,"2651":2,"2674":1,"2726":1,"2762":4,"2770":1,"2816":1}}],["httpfiles",{"0":{"2555":1},"2":{"2364":1,"2489":1,"2523":1,"2555":2}}],["httpfileoptions",{"2":{"1752":1,"1758":3,"1759":1,"1792":1,"1836":2,"2520":1,"2551":1,"2701":1}}],["httprequest",{"2":{"1957":1,"2379":1}}],["httpprotobuf",{"2":{"1792":1,"1807":1}}],["httppost",{"2":{"1366":1}}],["httpget",{"2":{"1773":2}}],["http3",{"2":{"1609":1,"1792":1,"1993":1,"2661":1}}],["http2",{"2":{"1609":1,"1792":1,"1992":1,"2661":1}}],["httpexception",{"2":{"1366":2}}],["httpcontext",{"2":{"1070":1,"1102":1,"1162":1,"1852":1,"1955":1,"1957":2,"2379":4,"2383":1,"2482":1}}],["httpclienttypes",{"2":{"2372":1}}],["httpclienttypehandler",{"2":{"2372":1,"2504":1}}],["httpclient",{"2":{"1011":1,"2372":1}}],["httpclientoptions",{"2":{"214":1,"216":1,"1022":1,"1721":1,"1732":1,"1735":1,"1792":1,"2222":1,"2264":3,"2267":1,"2346":1,"2372":1,"2502":1,"2761":1,"2765":1,"2769":2,"2771":1}}],["httphttppost",{"2":{"1452":1,"1456":1}}],["httphttp",{"2":{"915":1,"1386":1}}],["httphttpget",{"2":{"521":1,"2555":2}}],["httpsredirection",{"2":{"2558":1}}],["httpsdefaultcert",{"2":{"1792":1}}],["httpsinlinecertstore",{"2":{"1792":1}}],["httpsinlinecertandkeyfile",{"2":{"1792":1}}],["httpsinlinecertfile",{"2":{"1792":1}}],["httpspolicybuilderextensions",{"2":{"1792":1}}],["https",{"0":{"1942":1,"1981":1,"1982":1},"2":{"75":1,"206":1,"207":1,"208":1,"209":2,"211":2,"212":1,"213":3,"214":5,"215":1,"390":1,"394":1,"415":3,"418":2,"420":2,"423":4,"426":1,"427":1,"428":1,"430":1,"436":4,"442":2,"444":2,"446":9,"449":1,"451":2,"452":2,"453":1,"454":2,"455":1,"531":1,"533":1,"841":1,"845":1,"851":1,"970":1,"1017":2,"1019":2,"1023":2,"1026":2,"1030":1,"1032":1,"1033":1,"1034":3,"1105":4,"1107":3,"1109":1,"1117":1,"1118":1,"1119":1,"1184":1,"1199":5,"1202":1,"1207":4,"1225":1,"1345":2,"1347":1,"1348":1,"1380":1,"1398":1,"1426":1,"1430":1,"1431":1,"1448":1,"1449":1,"1466":1,"1611":1,"1635":1,"1640":2,"1646":2,"1648":1,"1666":1,"1676":1,"1677":1,"1691":3,"1692":4,"1693":3,"1694":3,"1695":3,"1697":3,"1704":2,"1705":1,"1714":1,"1718":1,"1726":1,"1730":3,"1731":2,"1733":2,"1736":1,"1738":1,"1740":3,"1742":1,"1743":1,"1792":64,"1812":1,"1833":2,"1875":1,"1900":2,"1907":1,"1911":1,"1920":2,"1921":1,"1924":1,"1926":1,"1931":1,"1937":1,"1942":1,"1946":1,"1963":1,"1978":1,"1979":1,"1980":2,"1981":1,"1982":1,"1983":1,"1984":2,"1986":2,"1987":2,"1988":2,"1989":3,"1995":4,"2091":1,"2118":2,"2121":1,"2162":1,"2254":1,"2255":4,"2257":4,"2264":3,"2267":1,"2283":1,"2286":1,"2288":3,"2290":1,"2303":2,"2306":1,"2308":1,"2429":1,"2434":1,"2483":1,"2502":1,"2549":3,"2580":1,"2632":3,"2633":3,"2634":1,"2703":2,"2706":1,"2760":1,"2762":3,"2764":2,"2765":1,"2766":2,"2768":2,"2781":1,"2782":1,"2783":1,"2784":1,"2792":2,"2810":1,"2811":6,"2812":1,"2813":2}}],["http",{"0":{"23":1,"75":1,"201":1,"223":1,"241":1,"248":1,"264":1,"320":1,"322":1,"394":1,"402":1,"419":1,"443":1,"1010":1,"1012":1,"1016":1,"1017":2,"1019":1,"1035":1,"1137":1,"1269":1,"1275":1,"1292":1,"1423":1,"1426":1,"1492":1,"1720":1,"1723":1,"1724":1,"1726":1,"1728":1,"1746":1,"1751":1,"1757":1,"1846":1,"1924":1,"1926":1,"1983":1,"1992":1,"1993":1,"2195":1,"2264":1,"2287":1,"2305":1,"2345":1,"2346":1,"2347":1,"2502":1,"2504":1,"2505":1,"2518":1,"2529":1,"2759":1,"2761":1,"2843":1,"2865":1},"1":{"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"1011":1,"1012":1,"1013":2,"1014":2,"1015":2,"1016":1,"1017":1,"1018":1,"1019":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1138":1,"1139":1,"1293":1,"1424":1,"1425":1,"1426":1,"1427":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"1434":1,"1721":1,"1722":1,"1723":1,"1724":1,"1725":2,"1726":2,"1727":2,"1728":1,"1729":2,"1730":2,"1731":1,"1732":1,"1733":1,"1734":1,"1735":1,"1736":1,"1737":1,"1738":1,"1739":1,"1740":1,"1741":1,"1742":1,"1743":1,"1744":1,"1745":1,"1746":1,"1747":1,"1748":1,"1749":1,"1750":1,"1752":1,"1753":1,"1754":1,"1755":1,"1756":1,"1757":1,"1758":1,"1759":1,"1760":1,"1761":1,"1847":1,"2196":1,"2197":1,"2288":1,"2289":1,"2290":1,"2346":1,"2347":1,"2348":1,"2760":1,"2761":1,"2762":1,"2763":1,"2764":1,"2765":1,"2766":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1},"2":{"7":2,"8":1,"9":2,"16":2,"17":3,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"37":1,"38":1,"40":1,"44":1,"48":2,"49":1,"55":1,"61":2,"62":2,"63":1,"71":2,"72":1,"74":3,"75":2,"77":2,"83":1,"84":1,"85":1,"86":1,"94":1,"95":1,"96":1,"97":1,"104":2,"105":1,"106":1,"107":1,"115":2,"116":1,"117":1,"118":1,"119":1,"128":2,"129":1,"136":2,"137":1,"138":1,"140":1,"147":1,"148":1,"149":1,"157":1,"165":4,"166":1,"167":1,"171":1,"173":1,"174":3,"175":1,"180":1,"184":3,"187":1,"195":1,"196":1,"197":1,"201":2,"202":4,"203":2,"206":3,"209":1,"210":2,"212":2,"213":2,"214":2,"215":1,"216":5,"217":3,"218":2,"219":2,"223":6,"225":1,"238":1,"239":2,"241":1,"242":1,"243":3,"244":5,"247":2,"248":1,"249":1,"250":1,"251":2,"252":2,"254":1,"255":1,"256":1,"257":1,"258":1,"261":4,"263":2,"264":2,"265":1,"266":4,"277":3,"278":3,"288":2,"289":1,"290":1,"291":1,"292":1,"297":1,"298":2,"300":1,"301":1,"309":1,"312":2,"313":2,"314":1,"320":9,"322":1,"323":1,"324":1,"325":1,"327":2,"332":1,"333":1,"334":1,"335":1,"342":1,"343":1,"344":1,"347":1,"351":2,"352":2,"353":1,"354":1,"360":1,"361":1,"365":1,"366":1,"370":2,"372":2,"374":1,"380":1,"383":3,"384":2,"386":2,"387":2,"388":1,"390":2,"392":1,"394":1,"395":1,"396":1,"397":1,"401":2,"402":1,"403":1,"405":1,"406":1,"408":2,"409":1,"411":1,"413":2,"414":2,"415":2,"418":2,"419":3,"420":3,"421":3,"423":2,"426":1,"427":1,"428":1,"431":2,"434":2,"436":4,"438":2,"439":1,"443":1,"444":1,"445":1,"447":1,"449":1,"451":2,"452":1,"453":3,"454":1,"456":2,"466":1,"469":1,"476":1,"477":1,"478":1,"479":1,"480":2,"487":2,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"497":1,"501":1,"502":1,"503":2,"510":2,"511":1,"520":2,"521":1,"522":2,"523":1,"526":1,"527":2,"529":1,"531":1,"533":1,"535":4,"536":1,"537":1,"539":2,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"553":1,"554":2,"555":1,"562":1,"563":1,"565":1,"566":1,"572":1,"573":1,"574":1,"577":2,"584":1,"585":2,"586":1,"592":2,"593":1,"594":1,"601":1,"602":1,"603":1,"604":1,"611":1,"612":1,"613":1,"614":1,"616":1,"621":1,"622":1,"623":1,"631":1,"632":1,"633":1,"641":2,"642":1,"643":1,"644":1,"645":1,"646":1,"658":1,"659":1,"660":1,"661":1,"662":2,"664":2,"665":2,"677":2,"678":1,"679":1,"686":1,"689":2,"692":1,"694":2,"698":2,"699":2,"702":1,"704":1,"706":1,"709":1,"714":1,"722":2,"723":1,"724":2,"732":1,"733":1,"741":1,"750":1,"764":1,"774":1,"783":1,"785":1,"787":1,"789":1,"797":1,"800":1,"811":2,"812":1,"813":1,"814":1,"815":1,"817":1,"818":1,"819":1,"826":1,"827":1,"828":1,"835":4,"837":1,"866":1,"867":2,"868":4,"871":1,"872":2,"874":1,"876":4,"881":4,"886":1,"899":1,"900":1,"902":1,"904":1,"914":3,"915":3,"916":3,"917":1,"918":1,"920":1,"934":1,"935":1,"936":1,"949":2,"957":1,"960":2,"964":1,"965":1,"966":1,"970":1,"979":2,"980":1,"986":1,"988":1,"990":1,"995":1,"1009":1,"1010":7,"1011":1,"1012":3,"1013":2,"1014":4,"1015":6,"1016":5,"1017":3,"1019":2,"1021":1,"1022":1,"1023":4,"1027":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1035":1,"1036":1,"1037":6,"1038":1,"1039":1,"1041":1,"1042":3,"1045":2,"1047":2,"1055":1,"1057":1,"1067":1,"1068":1,"1069":1,"1073":4,"1074":1,"1077":1,"1078":4,"1080":1,"1082":1,"1086":1,"1094":4,"1095":1,"1098":1,"1100":1,"1103":1,"1104":8,"1105":15,"1106":4,"1107":6,"1108":1,"1111":9,"1113":1,"1126":5,"1135":2,"1136":1,"1137":2,"1138":5,"1139":2,"1140":1,"1141":2,"1142":3,"1143":1,"1149":1,"1150":4,"1154":4,"1158":1,"1161":2,"1163":3,"1167":1,"1176":3,"1179":4,"1180":1,"1181":1,"1189":2,"1196":1,"1199":3,"1211":1,"1214":1,"1232":1,"1234":1,"1236":1,"1237":1,"1254":1,"1255":2,"1258":1,"1264":1,"1266":1,"1269":3,"1275":2,"1280":1,"1281":1,"1308":1,"1309":1,"1310":1,"1320":1,"1321":1,"1323":1,"1325":2,"1331":1,"1332":1,"1337":1,"1338":3,"1339":1,"1340":1,"1341":1,"1345":2,"1347":1,"1348":2,"1350":1,"1358":3,"1362":1,"1368":2,"1369":1,"1370":2,"1371":3,"1372":1,"1373":1,"1374":2,"1375":1,"1376":4,"1377":1,"1378":2,"1380":1,"1385":1,"1386":11,"1387":2,"1389":1,"1390":1,"1391":1,"1393":2,"1394":1,"1395":2,"1396":2,"1398":16,"1399":2,"1401":3,"1403":1,"1405":1,"1406":3,"1407":1,"1408":3,"1410":1,"1412":1,"1413":1,"1414":2,"1421":1,"1422":2,"1423":2,"1424":1,"1426":2,"1427":2,"1431":4,"1432":2,"1433":2,"1434":3,"1446":1,"1447":1,"1458":1,"1471":1,"1475":1,"1480":1,"1482":1,"1484":1,"1489":1,"1497":1,"1504":1,"1529":4,"1531":2,"1532":2,"1533":1,"1547":1,"1549":1,"1567":2,"1569":3,"1584":2,"1599":3,"1632":2,"1639":1,"1642":1,"1664":3,"1668":1,"1670":2,"1671":1,"1672":1,"1673":1,"1674":1,"1684":1,"1704":2,"1705":1,"1711":1,"1719":1,"1720":2,"1722":7,"1723":5,"1726":1,"1727":3,"1728":3,"1732":1,"1733":2,"1736":2,"1739":2,"1740":1,"1741":4,"1743":1,"1744":1,"1745":1,"1746":2,"1747":4,"1748":3,"1750":2,"1751":2,"1753":1,"1754":2,"1756":2,"1757":4,"1758":3,"1759":2,"1775":1,"1782":1,"1788":2,"1789":4,"1792":74,"1796":4,"1800":1,"1802":1,"1807":2,"1813":1,"1817":1,"1823":2,"1824":3,"1825":3,"1827":1,"1834":2,"1835":1,"1836":1,"1840":4,"1846":1,"1862":2,"1864":2,"1868":1,"1882":1,"1884":1,"1886":1,"1887":1,"1901":1,"1902":1,"1903":2,"1906":3,"1907":1,"1908":1,"1911":1,"1912":2,"1914":2,"1915":1,"1917":1,"1918":1,"1920":2,"1921":1,"1922":1,"1923":2,"1924":3,"1925":3,"1926":2,"1928":1,"1929":2,"1930":4,"1933":2,"1935":1,"1937":1,"1949":1,"1951":1,"1952":1,"1953":1,"1954":1,"1961":3,"1980":1,"1982":1,"1984":2,"1992":1,"1993":1,"1994":1,"1995":3,"2004":3,"2006":1,"2010":2,"2011":1,"2012":1,"2014":1,"2016":1,"2045":1,"2076":2,"2078":1,"2079":2,"2087":1,"2092":1,"2094":1,"2104":1,"2108":1,"2109":4,"2110":2,"2116":1,"2117":1,"2118":2,"2141":1,"2147":2,"2149":1,"2157":1,"2162":2,"2164":10,"2165":3,"2167":1,"2168":1,"2173":1,"2176":2,"2181":1,"2183":1,"2184":1,"2185":2,"2186":1,"2187":3,"2192":3,"2193":10,"2194":2,"2195":2,"2196":6,"2199":3,"2200":3,"2201":1,"2202":3,"2204":2,"2205":3,"2206":2,"2207":2,"2209":1,"2214":2,"2215":2,"2216":1,"2217":1,"2218":1,"2221":2,"2222":9,"2223":2,"2230":1,"2239":1,"2242":2,"2247":1,"2254":4,"2255":7,"2258":1,"2264":19,"2277":5,"2282":5,"2283":2,"2286":1,"2287":3,"2288":1,"2289":4,"2292":2,"2294":1,"2302":2,"2303":1,"2304":1,"2305":2,"2306":1,"2319":6,"2320":1,"2322":3,"2329":4,"2330":1,"2332":1,"2333":1,"2337":1,"2338":1,"2339":3,"2342":1,"2344":6,"2346":6,"2347":5,"2348":3,"2354":1,"2363":1,"2366":2,"2367":2,"2372":1,"2380":1,"2384":1,"2389":1,"2391":2,"2407":1,"2422":1,"2428":1,"2432":3,"2434":1,"2451":1,"2463":1,"2472":1,"2481":9,"2482":3,"2483":2,"2489":4,"2493":1,"2500":4,"2502":2,"2504":6,"2505":1,"2509":3,"2510":2,"2512":2,"2513":1,"2515":1,"2517":2,"2518":4,"2519":1,"2520":4,"2521":1,"2522":1,"2523":4,"2525":1,"2527":2,"2528":1,"2529":8,"2530":5,"2531":1,"2536":1,"2537":1,"2539":1,"2540":1,"2543":1,"2546":1,"2549":9,"2555":1,"2575":3,"2580":2,"2581":5,"2591":2,"2615":1,"2632":5,"2633":2,"2634":1,"2635":2,"2651":1,"2652":1,"2653":2,"2655":1,"2656":1,"2665":2,"2699":1,"2701":1,"2702":1,"2703":2,"2721":3,"2722":1,"2723":2,"2726":1,"2731":1,"2733":1,"2736":1,"2742":1,"2759":6,"2760":3,"2761":1,"2762":2,"2763":1,"2764":1,"2766":4,"2767":3,"2768":1,"2769":1,"2770":2,"2771":2,"2772":2,"2774":2,"2775":2,"2795":1,"2804":1,"2808":1,"2809":5,"2810":2,"2811":1,"2812":3,"2813":2,"2814":1,"2815":2,"2816":1,"2817":1,"2821":1,"2822":2,"2823":3,"2824":6,"2825":2,"2827":1,"2829":2,"2834":4,"2836":3,"2841":1,"2842":1,"2843":2,"2845":1,"2846":1,"2849":1,"2850":1,"2856":1,"2857":1,"2858":1,"2861":2,"2862":1,"2863":1,"2865":6,"2866":1,"2869":2,"2878":1,"2880":1}}],["hindsight",{"2":{"1078":1}}],["hinted",{"2":{"2452":1}}],["hints",{"0":{"2336":1,"2490":1,"2847":1},"2":{"1134":1,"1237":1,"1377":1,"1792":1,"1887":1,"2546":1,"2858":1}}],["hint|",{"2":{"663":2}}],["hint",{"0":{"646":1,"1316":1,"2490":1},"2":{"646":7,"650":1,"663":1,"664":1,"665":1,"666":1,"669":1,"1111":1,"1305":1,"1316":2,"1326":1,"2223":3,"2391":1,"2490":8,"2498":1,"2540":1,"2663":1,"2734":1,"2833":6,"2834":2,"2845":1}}],["hierarchical",{"2":{"918":2,"920":1,"1037":1,"1097":1,"1792":1,"2832":1}}],["hierarchies",{"2":{"857":1}}],["hierarchy",{"2":{"860":1,"2678":1,"2689":2,"2692":1,"2695":1}}],["hibernate",{"2":{"857":1,"860":1}}],["himself",{"2":{"852":1}}],["his",{"2":{"843":1,"859":2,"913":1}}],["history",{"0":{"1310":1},"2":{"310":1,"860":1,"867":1,"872":2,"1303":1,"1307":1,"1435":1,"1437":1,"2836":5}}],["historical",{"0":{"1067":1},"2":{"106":1,"1066":1,"1067":2,"1101":1,"1121":1,"1150":2,"1205":1,"1519":1,"1525":1,"1529":1,"2381":1}}],["hit",{"2":{"1076":1,"1141":1,"1180":1,"1332":1,"1338":1,"1342":1,"1381":1,"1516":1,"1961":1,"2265":1,"2379":1,"2391":1,"2421":1,"2438":1,"2463":1,"2495":1,"2506":1,"2580":1,"2815":2,"2817":1}}],["hitting",{"2":{"480":1,"967":1,"1147":1,"1363":1,"1515":1,"1792":2,"2274":1}}],["hits",{"2":{"436":1,"1180":1,"1338":1,"1339":1,"1342":1,"1430":1,"1792":1,"1961":1,"2835":1}}],["hid",{"2":{"2395":1}}],["hidden",{"0":{"2452":1},"2":{"348":1,"354":1,"355":1,"529":1,"859":1,"874":1,"1403":1,"1489":1,"1491":2,"1792":3,"2039":1,"2432":2,"2435":1,"2487":1}}],["hiding",{"2":{"174":1}}],["hide`",{"2":{"1792":1}}],["hides",{"2":{"320":1,"849":1,"876":1,"1376":1,"1792":2,"1832":1}}],["hide",{"0":{"351":1,"354":1},"2":{"171":1,"177":1,"181":1,"199":1,"223":1,"327":1,"347":2,"348":5,"349":1,"351":2,"354":3,"355":5,"688":1,"848":1,"1833":1,"1834":1,"1910":1,"1913":1,"2225":1,"2419":1,"2432":2,"2435":2,"2481":2,"2487":1}}],["highlighted",{"0":{"2662":1},"2":{"2673":1,"2678":1,"2694":1,"2695":1,"2785":1}}],["highlighting",{"2":{"1609":1,"2662":1,"2667":1,"2785":1}}],["high",{"0":{"1135":1,"1168":1,"1172":1,"1177":1,"1263":1},"1":{"1136":1,"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1151":1,"1152":1,"1153":1,"1154":1,"1155":1,"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1164":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"1172":1,"1173":2,"1174":2,"1175":2,"1176":2,"1177":2,"1178":2,"1179":1,"1180":1,"1181":1,"1182":1},"2":{"88":1,"844":1,"969":1,"1035":1,"1036":1,"1037":1,"1135":2,"1141":1,"1152":1,"1164":2,"1167":1,"1205":1,"1206":1,"1265":1,"1266":1,"1280":1,"1316":1,"1323":1,"1324":2,"1327":1,"1329":1,"1351":1,"1363":1,"1516":1,"1625":1,"1792":3,"1820":1,"2024":1,"2088":1,"2089":2,"2265":1,"2270":1,"2398":1,"2632":1,"2789":2,"2803":1}}],["higher",{"2":{"87":1,"88":1,"869":1,"1132":1,"1193":1,"1254":1,"1394":1,"1403":1,"1429":1,"1645":1,"1792":1,"2251":1,"2588":1}}],["highest",{"2":{"52":1,"319":1,"1278":2,"1285":1,"2481":1,"2681":1,"2691":1}}],["h",{"2":{"38":1,"40":1,"61":1,"62":2,"269":1,"1088":1,"1792":1,"2077":1,"2211":1,"2785":1,"2786":1}}],["hacks",{"2":{"1396":1}}],["hack",{"2":{"1395":2,"1396":1}}],["hacky",{"2":{"1066":1,"1394":2}}],["halves",{"2":{"1423":1}}],["halt",{"2":{"1324":1,"1792":1}}],["half",{"0":{"2741":1},"2":{"856":1,"1278":1,"1400":2,"1437":1,"1442":1,"2212":1,"2829":1,"2868":1}}],["halfway",{"2":{"715":1}}],["ha",{"2":{"1177":1}}],["haunted",{"2":{"1079":1}}],["haunting",{"2":{"913":1}}],["harness",{"2":{"986":1,"1075":1,"2465":1}}],["hardwareconcurrency",{"2":{"1792":2}}],["hardware",{"2":{"1086":1,"1217":1,"1230":2,"1255":1,"1792":3,"1880":2,"2270":1}}],["hardcoding",{"0":{"888":1}}],["hardcoded",{"2":{"880":1,"1111":1,"2496":1,"2576":1}}],["hardcode",{"2":{"878":1,"879":1,"960":1,"1111":1}}],["harden",{"2":{"2438":1}}],["hardening",{"0":{"2401":1},"1":{"2402":1,"2403":1,"2404":1,"2405":1},"2":{"2226":1,"2498":1}}],["hardest",{"2":{"864":1}}],["harder",{"2":{"845":1,"873":1,"875":1,"876":2,"1014":1,"1075":1,"1119":1,"1774":1}}],["hard",{"2":{"849":1,"857":1,"1075":2,"1076":1,"1378":1,"1394":1,"2112":1,"2157":2,"2221":1,"2428":1,"2532":1,"2534":1,"2543":2,"2758":1,"2871":1,"2881":1}}],["hater",{"2":{"1386":1}}],["hatch",{"2":{"857":1,"861":1,"1856":1,"2224":1,"2455":1}}],["hatches",{"2":{"857":1}}],["hat",{"2":{"857":1}}],["hang",{"2":{"1382":1,"2362":1}}],["hangs",{"2":{"852":1}}],["handy",{"2":{"2752":1}}],["handshake",{"0":{"2393":1},"2":{"1303":1,"1320":1,"1792":3,"1818":1,"1819":1,"1820":1,"2226":1,"2393":1}}],["hands",{"2":{"1044":1,"2160":1,"2479":1,"2759":1,"2774":1,"2810":1}}],["handed",{"2":{"876":1,"2430":1}}],["handling",{"0":{"389":1,"424":1,"458":1,"468":1,"549":1,"777":1,"1092":1,"1099":1,"1111":1,"1171":1,"1279":1,"1472":1,"1668":1,"1853":1,"1856":1,"2253":1,"2255":1,"2307":1,"2328":1,"2487":1,"2594":1,"2663":1},"1":{"459":1,"460":1,"461":1,"462":1,"463":1,"464":1,"465":1,"466":1,"467":1,"468":1,"469":1,"470":1,"471":1,"472":1,"550":1,"551":1,"552":1,"553":1,"554":1,"555":1,"556":1,"557":1,"558":1,"1473":1,"1669":1,"1670":1,"1671":1,"1672":1,"1673":1,"1674":1,"1675":1,"1676":1,"1677":1,"1678":1,"1679":1,"1680":1,"1681":1,"1854":1,"1855":1,"2595":1,"2596":1},"2":{"74":1,"140":1,"141":1,"192":1,"198":1,"200":1,"226":2,"227":2,"234":1,"235":1,"408":2,"458":1,"459":1,"460":1,"462":1,"466":2,"467":1,"468":1,"469":1,"471":1,"472":1,"525":1,"526":2,"529":1,"544":1,"549":1,"550":2,"557":1,"558":1,"569":1,"579":1,"617":1,"807":1,"834":1,"879":2,"880":2,"884":1,"901":1,"909":1,"910":1,"968":1,"995":1,"1011":2,"1026":1,"1037":1,"1111":3,"1118":1,"1121":1,"1127":2,"1151":1,"1164":1,"1165":1,"1181":1,"1255":1,"1258":1,"1269":1,"1280":2,"1317":1,"1320":2,"1350":1,"1366":2,"1394":2,"1407":1,"1410":1,"1466":1,"1468":1,"1493":1,"1507":1,"1518":1,"1550":1,"1558":1,"1567":1,"1568":1,"1586":1,"1668":1,"1679":1,"1681":1,"1686":1,"1700":1,"1738":1,"1784":1,"1787":2,"1789":1,"1791":1,"1792":4,"1794":2,"1796":1,"1798":1,"1835":1,"1854":1,"1855":2,"1864":2,"1865":2,"1928":1,"1965":1,"2031":1,"2122":1,"2124":1,"2137":1,"2151":1,"2222":1,"2230":1,"2240":1,"2255":2,"2258":1,"2265":1,"2273":1,"2284":1,"2320":1,"2360":1,"2372":2,"2417":1,"2481":1,"2491":1,"2518":1,"2549":1,"2559":1,"2575":1,"2595":2,"2596":2,"2614":1,"2615":1,"2665":2,"2701":2,"2705":1}}],["handleasync",{"2":{"2615":3}}],["handleparameterrename",{"2":{"2372":1}}],["handlecommentline",{"2":{"2223":1,"2482":1}}],["handleconnectionerror",{"2":{"1320":1}}],["handle~",{"2":{"1692":1,"1792":1}}],["handleerror",{"2":{"1582":1}}],["handled",{"2":{"904":1,"1049":1,"1101":1,"1106":1,"1394":1,"1792":1,"2555":1,"2607":1,"2632":1,"2666":1,"2767":1}}],["handler",{"0":{"746":1,"749":1,"754":1,"759":1,"769":1,"782":1,"784":1,"786":1,"788":1,"891":1,"892":1,"903":1,"904":1,"2075":1,"2077":1,"2126":1,"2127":1,"2128":1,"2130":1,"2664":1},"1":{"750":1,"751":1,"752":1,"753":1,"755":1,"756":1,"757":1,"758":1,"760":1,"761":1,"762":1,"763":1,"764":1,"765":1,"766":1,"767":1,"768":1,"770":1,"771":1,"772":1,"773":1,"774":1,"775":1,"776":1,"783":1,"785":1,"787":1,"789":1,"2076":1,"2078":1,"2079":1,"2129":1,"2131":1},"2":{"393":1,"396":1,"421":1,"445":1,"743":1,"745":4,"746":2,"747":7,"748":3,"749":1,"753":8,"757":11,"762":1,"768":1,"772":1,"776":1,"777":1,"781":4,"869":1,"881":1,"892":2,"902":3,"903":1,"904":8,"910":1,"1325":1,"1355":3,"1358":5,"1359":3,"1360":1,"1367":1,"1398":1,"1746":1,"1792":8,"1929":1,"2075":1,"2077":1,"2106":1,"2112":1,"2124":1,"2125":1,"2126":2,"2127":2,"2128":2,"2130":2,"2232":1,"2233":2,"2346":1,"2347":2,"2364":2,"2372":1,"2384":1,"2421":1,"2426":1,"2435":1,"2482":3,"2487":1,"2532":1,"2537":1,"2554":1,"2615":1,"2648":1,"2649":6,"2664":5}}],["handlers",{"0":{"902":1,"1356":1,"2125":1,"2572":1,"2664":1},"1":{"903":1},"2":{"160":1,"164":1,"747":1,"748":1,"777":1,"779":1,"780":1,"781":1,"790":1,"791":1,"793":1,"878":1,"889":1,"892":1,"902":2,"903":2,"904":1,"1099":1,"1356":1,"1358":1,"1359":1,"1367":1,"1792":11,"2074":1,"2080":1,"2082":1,"2122":1,"2125":3,"2134":1,"2232":1,"2329":1,"2332":1,"2365":1,"2372":1,"2482":1,"2504":1,"2550":1,"2615":2,"2664":1,"2791":1}}],["handles",{"2":{"379":1,"801":1,"871":1,"904":1,"991":1,"1015":2,"1088":1,"1098":1,"1099":1,"1100":1,"1102":1,"1152":1,"1153":1,"1171":3,"1174":1,"1180":1,"1181":1,"1211":1,"1218":1,"1276":1,"1279":1,"1309":1,"1331":1,"1366":1,"1410":1,"1419":1,"1477":1,"1868":2,"2333":1,"2356":1,"2357":1,"2370":1,"2381":1,"2543":1}}],["handle",{"2":{"63":1,"72":2,"429":1,"666":1,"879":1,"908":1,"968":1,"984":1,"1007":1,"1079":1,"1088":1,"1092":1,"1097":1,"1123":1,"1135":1,"1167":2,"1169":1,"1213":1,"1214":6,"1215":3,"1220":1,"1221":1,"1232":9,"1237":1,"1240":1,"1249":1,"1281":1,"1303":2,"1320":2,"1338":1,"1339":1,"1378":1,"1408":1,"1792":6,"1882":1,"1887":1,"1889":1,"2087":1,"2247":1,"2310":1,"2313":1,"2433":1,"2611":1,"2632":1,"2810":1,"2815":1}}],["hand",{"2":{"0":1,"1":1,"832":1,"834":1,"835":2,"843":1,"847":1,"848":1,"860":2,"861":1,"864":1,"867":3,"869":3,"872":4,"873":2,"875":1,"910":1,"976":1,"996":1,"1004":1,"1006":1,"1040":1,"1043":1,"1046":1,"1083":1,"1181":1,"1382":1,"1388":1,"1390":1,"1400":1,"1403":1,"1404":1,"1409":1,"1419":2,"1435":1,"2182":1,"2481":1,"2813":1,"2830":1,"2836":1}}],["had",{"2":{"851":2,"861":1,"864":1,"1082":1,"1254":1,"1385":1,"1398":1,"1400":1,"1402":4,"1403":2,"1409":1,"2282":1,"2314":1,"2389":1,"2391":1,"2405":1,"2456":1,"2493":1,"2495":1}}],["happiness",{"2":{"1386":1}}],["happily",{"2":{"848":1,"1073":1,"1394":1}}],["happy",{"2":{"1082":1,"1385":1,"2112":1,"2532":1}}],["happen",{"2":{"872":1,"922":1,"942":1,"1032":1,"1081":1,"1130":1,"1180":1,"1386":2,"1416":1,"1422":1,"2402":1}}],["happened",{"2":{"866":1,"872":1,"2395":1,"2411":1,"2454":1,"2802":1}}],["happening",{"2":{"863":1,"2824":1}}],["happens",{"0":{"1023":1},"2":{"214":1,"310":1,"335":1,"587":1,"835":1,"855":1,"860":1,"865":1,"982":1,"996":2,"997":1,"1165":1,"1210":1,"1305":1,"1338":2,"1403":1,"1409":1,"1524":1,"1743":1,"2176":1,"2580":1,"2807":1,"2829":1,"2860":1}}],["having",{"2":{"663":1,"941":1,"1388":1,"2394":1}}],["haven",{"2":{"1073":1,"1443":1}}],["have",{"0":{"910":1,"1076":1,"1435":1,"2749":1},"1":{"911":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1},"2":{"3":1,"21":1,"51":1,"87":2,"167":1,"175":1,"179":1,"209":1,"307":1,"376":1,"377":1,"454":1,"512":1,"636":1,"646":1,"650":1,"684":1,"747":1,"834":1,"837":1,"841":7,"843":4,"844":8,"845":7,"847":1,"848":4,"849":1,"851":6,"852":3,"856":1,"857":2,"859":1,"861":1,"864":1,"865":1,"869":1,"872":3,"873":2,"876":1,"893":1,"913":2,"915":1,"916":1,"918":3,"919":1,"920":2,"922":1,"933":1,"974":1,"982":1,"990":1,"995":1,"1037":2,"1065":1,"1067":1,"1073":2,"1074":1,"1075":2,"1076":1,"1079":1,"1105":1,"1107":1,"1134":1,"1165":1,"1206":1,"1221":1,"1304":1,"1305":1,"1354":1,"1378":1,"1382":2,"1385":11,"1386":10,"1388":1,"1389":2,"1390":1,"1391":3,"1392":4,"1393":4,"1394":2,"1396":2,"1397":1,"1398":2,"1399":3,"1401":3,"1403":2,"1404":2,"1405":1,"1428":1,"1431":1,"1435":2,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1516":2,"1522":1,"1568":1,"1690":1,"1706":1,"1781":1,"1792":7,"1813":1,"1825":1,"1827":1,"1856":1,"1922":1,"1942":1,"1961":1,"1973":1,"1983":1,"2140":2,"2141":1,"2156":1,"2161":1,"2177":1,"2199":1,"2254":1,"2255":1,"2265":2,"2279":1,"2285":1,"2289":1,"2333":1,"2339":1,"2378":1,"2380":1,"2389":1,"2400":1,"2414":2,"2425":1,"2452":1,"2468":1,"2483":1,"2509":1,"2537":1,"2542":1,"2575":2,"2586":1,"2633":1,"2691":1,"2722":1,"2766":1,"2792":2,"2818":1,"2819":1,"2824":1,"2826":1,"2858":1}}],["hasura",{"2":{"2744":1}}],["hasn",{"2":{"1137":1,"1243":1,"1792":1,"2398":1}}],["haskell",{"2":{"1087":1,"1122":2,"1255":1}}],["has",{"0":{"1077":1},"2":{"221":1,"320":1,"336":1,"390":1,"394":1,"408":1,"422":1,"438":1,"446":1,"447":1,"527":1,"567":1,"587":1,"613":1,"663":1,"684":1,"700":1,"703":1,"713":1,"768":1,"786":2,"835":2,"840":2,"841":4,"843":3,"844":2,"848":1,"849":1,"851":1,"852":3,"855":1,"857":2,"860":2,"861":1,"863":1,"864":2,"865":2,"867":1,"868":1,"869":1,"872":2,"873":2,"876":3,"877":1,"891":1,"897":1,"912":2,"922":2,"927":1,"928":1,"929":1,"932":1,"943":1,"945":2,"1004":1,"1006":1,"1012":1,"1014":1,"1036":1,"1042":1,"1051":1,"1053":1,"1061":3,"1065":1,"1067":1,"1068":1,"1075":4,"1077":1,"1078":1,"1081":2,"1090":1,"1094":1,"1097":1,"1098":2,"1099":1,"1100":6,"1101":5,"1102":2,"1105":1,"1106":1,"1108":1,"1122":1,"1126":1,"1135":1,"1137":1,"1165":1,"1166":1,"1191":1,"1263":1,"1278":3,"1324":1,"1326":1,"1331":1,"1332":1,"1337":1,"1360":1,"1382":1,"1384":1,"1385":2,"1395":1,"1398":1,"1403":1,"1404":1,"1405":1,"1409":1,"1417":1,"1423":1,"1458":1,"1511":1,"1521":1,"1523":1,"1527":3,"1571":1,"1575":1,"1589":1,"1609":1,"1671":1,"1696":4,"1792":11,"1822":1,"1824":1,"1825":1,"1832":1,"1852":1,"1917":1,"1920":1,"1921":1,"1922":1,"1928":1,"1929":1,"1957":1,"2010":1,"2092":1,"2109":2,"2111":1,"2155":1,"2258":1,"2264":1,"2265":1,"2336":1,"2366":3,"2375":1,"2379":2,"2380":2,"2383":1,"2389":1,"2392":2,"2393":1,"2398":1,"2422":1,"2438":1,"2446":1,"2459":1,"2482":1,"2484":1,"2489":1,"2532":1,"2537":2,"2544":1,"2549":2,"2566":1,"2600":1,"2608":1,"2611":1,"2621":1,"2665":1,"2673":1,"2789":1,"2794":2,"2797":1,"2814":1,"2824":2,"2825":1,"2839":1,"2856":1,"2868":1,"2871":1}}],["hashset",{"2":{"2614":2}}],["hashkeythreshold",{"2":{"1067":2,"1510":1,"1511":2,"1516":1,"1792":2,"2265":3,"2495":1}}],["hashing",{"0":{"1052":1,"1195":1,"1516":1},"2":{"307":3,"308":3,"363":1,"868":1,"921":1,"924":1,"927":1,"928":2,"942":1,"944":1,"945":2,"946":1,"1048":1,"1049":3,"1052":1,"1064":1,"1098":2,"1307":1,"1516":1,"2177":4,"2188":1,"2265":2}}],["hashcolumnname",{"2":{"300":1,"309":2,"1056":1,"1062":1,"1469":1,"1471":1,"1483":1,"1792":4}}],["hasher",{"0":{"309":1,"363":1,"1049":1},"2":{"63":1,"307":2,"309":2,"312":1,"316":1,"362":1,"363":1,"364":1,"366":1,"367":1,"1048":1,"1049":4,"1052":1,"1055":1,"1472":1,"1792":2,"2177":2,"2188":1}}],["hashes",{"0":{"57":1,"1051":1},"2":{"57":1,"62":1,"924":2,"928":1,"940":1,"942":1,"1049":3,"1051":2,"1067":1,"1133":1,"1251":1,"2177":1,"2495":1}}],["hashed",{"2":{"48":2,"49":1,"56":1,"308":1,"357":1,"358":2,"361":1,"362":1,"366":1,"368":2,"1052":2,"1133":1,"1196":1,"1499":1,"1502":1,"1511":2,"1516":1,"1518":1,"1792":4,"2156":1,"2265":4,"2542":1,"2878":1}}],["hash>",{"2":{"56":1}}],["hash",{"0":{"308":1,"309":1,"357":1,"928":1},"1":{"358":1,"359":1,"360":1,"361":1,"362":1,"363":1,"364":1,"365":1,"366":1,"367":1,"368":1},"2":{"33":3,"37":2,"38":2,"56":2,"57":2,"61":2,"62":2,"190":2,"237":2,"297":2,"298":4,"299":1,"300":3,"308":13,"309":12,"312":6,"313":1,"316":2,"357":2,"358":2,"360":8,"361":6,"362":1,"364":5,"365":5,"366":3,"369":3,"375":1,"385":2,"592":3,"686":1,"813":1,"857":1,"860":1,"868":1,"922":1,"924":1,"927":2,"928":2,"929":1,"930":33,"934":1,"938":3,"1049":3,"1050":3,"1051":3,"1052":2,"1055":4,"1056":1,"1062":1,"1068":1,"1189":1,"1195":3,"1196":1,"1197":3,"1307":2,"1308":2,"1332":2,"1336":3,"1338":8,"1339":9,"1371":1,"1458":2,"1469":1,"1471":2,"1480":2,"1483":1,"1499":1,"1504":6,"1792":5,"2147":2,"2156":1,"2176":2,"2177":8,"2178":2,"2180":1,"2187":1,"2265":2,"2332":2,"2540":2,"2542":1,"2546":1,"2575":1,"2679":1,"2815":6}}],["hopper",{"2":{"2529":1,"2865":1}}],["hop",{"2":{"1409":1}}],["hope",{"2":{"920":1,"1008":1,"1386":1,"1404":1}}],["holy",{"2":{"1382":1}}],["holding",{"2":{"1824":1,"2157":1,"2543":1}}],["hold",{"2":{"844":1,"851":1,"852":2,"863":2,"864":1,"865":1,"916":1,"1280":1,"2873":1}}],["holds",{"0":{"1046":1},"2":{"305":1,"844":1,"848":1,"855":1,"913":1,"1160":1,"1792":1,"1925":1,"2110":1,"2530":1}}],["horse",{"2":{"1078":1}}],["horizontal",{"2":{"1014":1,"1303":1,"1320":1,"1322":1}}],["horizontally",{"2":{"307":1,"1015":1}}],["hoo",{"2":{"1385":1}}],["hook",{"2":{"1102":2,"1104":1,"1106":1,"2112":1,"2221":1,"2466":1,"2532":1,"2540":1,"2845":1}}],["hooks",{"2":{"1030":1,"2482":1,"2545":1}}],["hood",{"2":{"953":1,"2540":1,"2824":1,"2845":1}}],["hottest",{"2":{"1400":1}}],["hot",{"2":{"859":4,"861":2,"1007":1,"1174":1,"1275":1,"1400":2,"1519":1,"1628":2,"1792":3,"2266":2,"2400":1,"2559":1,"2614":1,"2621":1}}],["home",{"2":{"832":1,"852":1}}],["hosttimezoneindependencetests",{"2":{"2456":1,"2457":1}}],["hostname",{"2":{"1616":1,"1704":1,"1792":2}}],["hosts=true",{"2":{"1175":2,"1176":1,"1177":1}}],["hosts",{"0":{"1709":1},"2":{"1173":2,"1627":1,"1717":1,"1792":3,"1822":1,"1856":1,"1911":1,"2266":1,"2438":1,"2450":2,"2454":1}}],["hostingabstractionswebhostbuilderextensions",{"2":{"1792":1}}],["hosting",{"2":{"1084":2,"1088":2,"1094":4,"1119":1,"1123":1,"1127":3,"1792":2}}],["hosted",{"0":{"1119":1},"2":{"1084":1,"1100":1,"1107":1,"1121":1,"1127":2,"1423":1}}],["host=server1",{"2":{"2266":1}}],["host=analytics",{"2":{"1614":1}}],["host=replica",{"2":{"1614":1,"1771":1,"2063":1}}],["host=replica1",{"2":{"1176":1,"1177":1,"1629":1}}],["host=production",{"2":{"1606":1}}],["host=primary",{"2":{"1173":1,"1176":1,"1177":1,"1614":1,"1627":1,"1629":1,"1771":1,"2063":1,"2266":1}}],["host=http",{"2":{"1386":1}}],["host=host",{"2":{"1117":1}}],["host=",{"2":{"937":1,"1607":1,"1615":1,"1633":2,"1792":1,"2534":3,"2687":1}}],["host=localhost",{"2":{"695":3,"1117":1,"1613":1,"2686":1,"2689":1,"2691":1,"2699":1,"2718":1,"2823":2,"2824":3,"2825":2,"2872":2,"2874":1}}],["host",{"0":{"417":1,"418":1,"420":1,"441":1,"442":1,"444":1,"1173":1,"1555":1,"1626":1,"1627":1,"1629":1,"2266":1,"2306":1,"2451":1},"1":{"1627":1,"1628":1,"1629":1},"2":{"317":1,"347":1,"413":2,"414":3,"417":2,"418":1,"419":1,"420":1,"422":3,"423":5,"430":1,"434":2,"436":12,"441":2,"442":1,"443":1,"444":1,"446":9,"449":1,"452":3,"455":1,"834":1,"867":3,"868":2,"871":2,"872":1,"873":1,"876":2,"877":1,"915":1,"1037":2,"1084":1,"1100":1,"1101":2,"1105":1,"1121":1,"1172":1,"1173":1,"1175":1,"1176":1,"1180":1,"1181":1,"1182":1,"1255":1,"1331":1,"1340":3,"1386":1,"1555":2,"1616":1,"1618":1,"1626":1,"1627":1,"1703":1,"1704":1,"1705":2,"1709":3,"1711":1,"1717":1,"1792":21,"1802":1,"1822":1,"1824":1,"1825":4,"1827":1,"1830":2,"1833":1,"1856":5,"1911":3,"1916":2,"1917":3,"1929":1,"1931":2,"1994":1,"2019":1,"2224":3,"2239":1,"2266":7,"2301":1,"2306":1,"2308":1,"2389":1,"2419":1,"2425":1,"2432":1,"2434":1,"2438":3,"2450":2,"2451":4,"2452":2,"2453":2,"2454":3,"2455":2,"2456":2,"2481":3,"2531":1,"2543":1,"2549":6,"2555":2,"2633":7,"2634":1,"2645":1,"2648":1,"2687":1,"2717":1,"2744":1,"2794":1,"2795":2,"2807":2,"2808":1,"2811":5,"2814":4,"2815":2}}],["honoring",{"2":{"2453":1}}],["honor",{"0":{"2414":1},"1":{"2415":1,"2416":1},"2":{"2225":1,"2438":1,"2466":1}}],["honors",{"2":{"1957":1,"2379":1}}],["honored",{"2":{"313":1}}],["honestly",{"0":{"2465":1},"2":{"869":1,"877":1}}],["honest",{"0":{"876":1},"2":{"1":1,"838":1,"844":1,"852":1,"859":1,"861":1,"869":3,"872":1,"873":1,"876":1,"1254":1,"1385":1,"1400":1,"1402":1,"1404":1,"2388":1,"2537":1}}],["hours",{"2":{"133":1,"269":2,"274":1,"566":2,"861":1,"872":6,"1066":1,"1067":1,"1107":1,"1447":1,"1454":1,"1464":1,"1792":2,"2211":2,"2376":1,"2377":1}}],["hour",{"0":{"96":1},"2":{"92":1,"105":3,"106":2,"107":2,"269":1,"271":1,"272":1,"273":2,"274":1,"275":1,"542":1,"872":1,"1067":2,"1068":3,"1098":1,"1101":1,"1135":3,"1138":1,"1143":1,"1150":3,"1450":1,"1451":3,"1454":1,"1458":2,"1464":2,"1511":1,"1519":1,"1520":2,"1521":1,"1523":1,"1525":1,"1529":4,"1792":9,"2211":1,"2212":1,"2375":2,"2376":1,"2377":1,"2380":3,"2381":1,"2427":1,"2580":1}}],["however",{"2":{"975":1,"1385":1,"1394":1,"1400":1,"2453":1}}],["how",{"0":{"1":1,"221":1,"297":1,"304":1,"349":1,"388":1,"436":1,"448":1,"534":1,"650":1,"870":1,"881":1,"982":1,"1305":1,"1325":1,"1359":1,"1723":1,"1824":1,"1868":1,"2179":1,"2191":1,"2283":1,"2302":1,"2318":1,"2527":1,"2713":1,"2716":1,"2717":1,"2718":1,"2724":1,"2726":1,"2727":1,"2728":1,"2732":1,"2733":1,"2737":1,"2739":1,"2744":1,"2745":1,"2746":1,"2747":1,"2749":1,"2750":1,"2751":1,"2752":1,"2760":1,"2807":1,"2828":1,"2840":1,"2862":1},"1":{"305":1,"306":1,"389":1,"871":1,"872":1,"873":1,"874":1,"875":1,"1360":1,"2180":1,"2181":1,"2192":1,"2193":1,"2194":1},"2":{"3":1,"11":2,"26":2,"42":2,"53":2,"65":2,"76":2,"87":1,"89":2,"98":2,"122":2,"130":2,"141":2,"151":2,"164":2,"189":1,"197":1,"198":2,"217":2,"220":1,"259":2,"281":1,"293":2,"296":1,"306":1,"317":1,"327":1,"338":1,"345":2,"347":1,"356":1,"367":2,"384":1,"385":1,"388":1,"396":1,"410":2,"458":1,"471":2,"481":2,"495":2,"497":1,"505":2,"513":2,"515":1,"525":2,"527":1,"547":2,"549":1,"557":2,"568":1,"578":2,"588":1,"596":2,"605":2,"617":1,"626":1,"634":2,"647":2,"670":2,"673":1,"680":2,"725":2,"740":2,"790":2,"804":2,"820":2,"830":1,"838":2,"841":1,"844":1,"845":1,"848":1,"849":3,"851":3,"868":1,"872":1,"877":1,"912":1,"914":1,"918":1,"921":1,"934":1,"961":1,"963":2,"991":1,"996":1,"1037":2,"1039":1,"1073":1,"1076":1,"1080":1,"1083":1,"1096":1,"1104":1,"1132":1,"1139":1,"1143":1,"1179":1,"1181":1,"1227":1,"1249":2,"1254":1,"1279":1,"1281":1,"1302":1,"1384":3,"1398":1,"1400":2,"1401":3,"1403":6,"1404":1,"1405":3,"1406":1,"1409":1,"1431":1,"1465":2,"1472":1,"1484":2,"1495":2,"1506":2,"1511":1,"1513":1,"1535":2,"1538":1,"1549":2,"1583":2,"1600":2,"1603":1,"1610":2,"1630":1,"1634":2,"1645":1,"1647":2,"1665":2,"1679":2,"1686":1,"1699":2,"1706":1,"1738":1,"1748":2,"1760":2,"1785":1,"1792":12,"1811":2,"1820":1,"1822":1,"1834":1,"1840":1,"1844":1,"1848":1,"1853":2,"1856":1,"1864":2,"1877":1,"1913":2,"1922":1,"1924":1,"1932":2,"1945":2,"1953":1,"1961":1,"1962":2,"1974":1,"1976":2,"1996":2,"2000":1,"2004":1,"2007":1,"2010":1,"2016":3,"2019":1,"2023":1,"2025":1,"2043":2,"2081":2,"2090":2,"2120":2,"2133":2,"2150":2,"2164":1,"2170":3,"2171":1,"2172":1,"2190":2,"2191":1,"2203":1,"2207":1,"2209":1,"2328":1,"2398":1,"2415":1,"2432":1,"2450":1,"2502":1,"2509":1,"2543":1,"2607":1,"2632":4,"2705":1,"2759":1,"2769":1,"2771":1,"2795":1,"2806":1,"2827":1,"2871":2}}],["hex",{"2":{"2495":1}}],["hexagonal",{"2":{"840":1}}],["height",{"2":{"1792":2}}],["hetzner",{"2":{"1086":1,"1094":1,"1121":1,"1255":1}}],["hermetic",{"2":{"2875":1}}],["herd",{"2":{"1515":1}}],["her",{"2":{"913":1}}],["here",{"2":{"0":1,"48":2,"49":1,"386":1,"395":1,"454":1,"664":1,"836":1,"841":5,"843":5,"848":1,"852":3,"857":1,"859":1,"860":1,"864":1,"868":1,"871":2,"873":2,"874":1,"877":1,"913":1,"920":2,"922":1,"926":1,"927":1,"934":1,"968":1,"977":1,"980":1,"986":1,"987":1,"988":1,"990":1,"992":1,"996":2,"997":1,"1067":1,"1074":1,"1075":1,"1076":1,"1080":1,"1081":1,"1128":1,"1165":1,"1169":1,"1179":1,"1181":1,"1196":1,"1210":1,"1214":1,"1231":1,"1309":1,"1366":1,"1368":1,"1372":1,"1378":1,"1382":5,"1384":1,"1386":4,"1389":1,"1393":1,"1396":1,"1402":1,"1404":1,"1409":3,"1420":1,"1424":1,"1435":1,"1436":1,"1437":1,"1633":1,"1792":3,"1898":1,"1995":1,"2220":1,"2431":1,"2765":1,"2829":2,"2830":1,"2834":1}}],["henry",{"2":{"913":1}}],["hence",{"2":{"854":2,"1129":1}}],["hemingway",{"2":{"913":2}}],["he",{"2":{"843":1,"847":6,"851":4,"863":1,"990":1,"1384":1}}],["helm",{"2":{"1420":1}}],["hell",{"2":{"1385":1,"1402":1}}],["hello",{"2":{"378":1,"428":1,"462":1,"463":1,"464":1,"466":1,"487":3,"615":1,"956":1,"977":1,"980":1,"990":1,"1326":1,"1370":2,"1374":1,"2011":1,"2321":1,"2326":1,"2335":1,"2339":1,"2354":1,"2589":3,"2821":3,"2822":1,"2824":1,"2836":1,"2850":2}}],["held",{"2":{"865":1,"1722":1,"1792":1,"2466":1,"2504":1,"2517":1,"2769":1}}],["helpers",{"0":{"1573":1},"2":{"308":1,"867":1,"1101":1,"2372":1,"2391":1,"2448":1}}],["helper",{"0":{"263":1,"264":1},"2":{"263":1,"265":1,"1504":1,"1574":1,"1575":1,"1747":1,"1930":1,"2278":1,"2344":1,"2372":1,"2391":2,"2407":1,"2472":1,"2615":1}}],["helping",{"2":{"51":1,"2696":1}}],["helps",{"2":{"51":1,"595":1,"1155":1,"1404":1,"1619":1,"1792":3,"2016":1,"2632":1,"2633":1,"2693":1}}],["help",{"2":{"0":1,"851":1,"873":1,"912":1,"1097":1,"1385":1,"1400":2,"1401":1,"1402":2,"1792":1,"2663":1,"2679":2,"2785":3,"2786":3,"2788":2}}],["hey",{"2":{"378":1,"1404":1,"1435":1,"2335":1}}],["healing",{"2":{"2534":1}}],["healthz",{"2":{"1780":2}}],["healthy",{"2":{"1335":1,"1766":1,"1781":1,"1782":1,"1792":4,"2634":5}}],["healthcheck",{"2":{"1771":2,"1775":1}}],["healthchecks",{"2":{"868":1,"1763":1,"1769":2,"1770":1,"1771":1,"1776":1,"1778":1,"1779":1,"1780":1,"1781":1,"1792":1,"2634":2}}],["healthcare",{"2":{"1228":1,"1878":1}}],["health",{"0":{"1337":1,"1762":1,"1765":1,"1766":2,"1767":1,"1768":1,"1770":1,"1775":1,"2634":1},"1":{"1763":1,"1764":1,"1765":1,"1766":2,"1767":2,"1768":2,"1769":1,"1770":1,"1771":2,"1772":1,"1773":1,"1774":1,"1775":1,"1776":1,"1777":1,"1778":1,"1779":1,"1780":1,"1781":1,"1782":1,"1783":1,"1784":1},"2":{"8":1,"10":1,"835":1,"868":2,"869":2,"873":1,"1100":7,"1127":1,"1181":1,"1328":2,"1329":2,"1331":4,"1333":1,"1335":2,"1337":5,"1342":3,"1349":3,"1351":1,"1719":2,"1762":2,"1763":3,"1764":8,"1765":1,"1766":1,"1769":1,"1770":2,"1771":2,"1773":2,"1774":1,"1775":1,"1776":4,"1782":1,"1783":2,"1791":2,"1792":26,"1898":1,"2070":2,"2234":1,"2431":1,"2434":1,"2634":30,"2638":1}}],["heartbeats",{"2":{"2407":1}}],["heartbeat",{"2":{"1320":1}}],["heard",{"2":{"864":1}}],["heavily",{"2":{"1402":1,"1404":1,"2398":1}}],["heaviest",{"2":{"874":1}}],["heavyweight",{"2":{"1075":1}}],["heavy",{"2":{"149":1,"868":1,"872":1,"876":2,"1017":1,"1069":1,"1091":1,"1105":1,"1162":1,"1176":2,"1205":1,"1208":1,"1266":1,"1280":1,"1404":1,"1632":1,"2388":1,"2398":1,"2622":1}}],["heap",{"2":{"848":1,"861":1,"951":1,"2399":1,"2559":1}}],["headless",{"2":{"1432":1}}],["headline",{"2":{"869":1,"871":1,"2397":1,"2479":1,"2500":1}}],["head>",{"2":{"965":2,"1685":2,"1792":2}}],["head",{"2":{"243":1}}],["headertablesize",{"2":{"1792":1,"1992":1}}],["headername",{"2":{"1488":1,"1489":1,"1494":1,"1792":1}}],["headerlines",{"2":{"1416":1,"1417":1,"1553":1,"1565":1,"1581":1,"1792":1}}],["header>",{"2":{"996":2}}],["headers`",{"2":{"1792":1}}],["headers",{"0":{"58":1,"128":1,"129":1,"207":1,"497":1,"501":1,"507":1,"536":1,"540":1,"541":1,"544":1,"545":1,"546":1,"736":1,"1137":1,"1138":1,"1556":1,"1564":1,"1565":1,"1582":1,"1643":1,"1701":1,"1704":1,"1705":1,"1848":1,"1849":1,"1926":1,"2014":1,"2041":1,"2202":1,"2286":1,"2358":1,"2505":1,"2632":1,"2633":1,"2812":1},"1":{"498":1,"499":1,"500":1,"501":1,"502":1,"503":1,"504":1,"505":1,"506":1,"508":1,"509":1,"510":1,"511":1,"512":1,"513":1,"514":1,"537":1,"538":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"546":1,"547":1,"548":1,"1138":1,"1139":1,"1557":1,"1702":1,"1703":1,"1704":1,"1705":1,"1706":1,"1707":1,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1717":1,"1718":1,"1719":1,"1849":1,"2015":1,"2016":1,"2017":1,"2018":1,"2019":1,"2020":1,"2021":1,"2022":1,"2023":1,"2024":1,"2025":1,"2026":1,"2027":1,"2028":1,"2029":1,"2030":1,"2031":1},"2":{"58":1,"203":1,"207":1,"210":2,"211":2,"214":2,"215":1,"226":2,"227":2,"229":1,"387":3,"388":1,"390":1,"394":1,"395":1,"396":3,"439":1,"447":2,"453":4,"493":2,"496":1,"497":2,"498":2,"499":3,"501":1,"502":2,"503":8,"505":1,"506":1,"507":2,"508":1,"510":9,"511":3,"512":2,"514":1,"527":2,"536":1,"537":1,"540":1,"541":1,"544":1,"545":1,"546":1,"547":1,"700":1,"736":5,"741":2,"835":1,"868":2,"869":2,"876":1,"995":4,"1010":1,"1016":1,"1017":1,"1026":2,"1031":2,"1063":6,"1100":7,"1101":1,"1104":1,"1105":5,"1106":1,"1107":1,"1109":1,"1127":1,"1137":1,"1138":1,"1181":1,"1221":1,"1284":1,"1340":3,"1341":2,"1348":1,"1363":1,"1373":2,"1386":2,"1408":2,"1415":1,"1416":2,"1475":1,"1492":1,"1564":1,"1567":1,"1582":1,"1620":1,"1639":2,"1643":2,"1644":1,"1701":2,"1703":2,"1704":1,"1707":1,"1708":1,"1709":1,"1712":1,"1713":1,"1716":1,"1717":2,"1719":2,"1721":1,"1722":2,"1725":1,"1730":1,"1731":1,"1732":2,"1733":1,"1736":1,"1738":1,"1743":1,"1784":1,"1788":3,"1792":46,"1807":1,"1836":2,"1848":4,"1849":3,"1852":1,"1857":1,"1862":2,"1863":1,"1864":1,"1916":1,"1917":4,"1918":2,"1921":1,"1922":2,"1926":2,"1928":2,"1957":1,"1991":3,"2014":3,"2016":2,"2030":2,"2031":1,"2033":1,"2037":1,"2038":2,"2041":1,"2093":2,"2109":3,"2110":1,"2185":2,"2193":2,"2202":2,"2207":1,"2222":2,"2234":2,"2247":1,"2264":6,"2282":1,"2286":1,"2329":1,"2358":1,"2379":1,"2383":1,"2483":3,"2486":1,"2493":3,"2502":2,"2505":3,"2529":1,"2530":3,"2537":2,"2545":1,"2549":8,"2551":1,"2566":1,"2580":1,"2581":1,"2627":1,"2632":9,"2633":7,"2701":3,"2762":2,"2763":2,"2765":2,"2769":2,"2775":1,"2806":1,"2810":2,"2812":2,"2814":5,"2835":1,"2856":1,"2865":1,"2866":2}}],["header",{"0":{"533":1,"706":1,"896":1,"1492":1,"1493":1,"1557":1,"1755":1,"1905":1,"2363":1,"2533":1},"2":{"31":2,"38":1,"45":1,"48":1,"51":1,"58":1,"61":1,"63":4,"203":2,"210":1,"212":1,"215":1,"226":2,"346":1,"386":1,"387":2,"390":4,"447":1,"453":2,"480":1,"494":1,"496":1,"514":1,"533":1,"537":3,"540":1,"544":1,"546":1,"606":1,"639":1,"650":1,"668":1,"694":1,"704":1,"706":2,"709":1,"712":1,"714":1,"761":1,"835":1,"888":1,"896":1,"1017":2,"1031":1,"1033":1,"1063":2,"1101":2,"1102":1,"1109":1,"1121":1,"1135":1,"1138":2,"1162":1,"1189":1,"1197":2,"1317":1,"1326":4,"1341":1,"1412":1,"1482":1,"1489":3,"1492":1,"1493":1,"1494":1,"1497":1,"1501":2,"1556":2,"1557":2,"1564":1,"1565":1,"1620":2,"1703":1,"1705":2,"1706":1,"1709":1,"1711":3,"1717":1,"1722":1,"1728":2,"1732":1,"1733":1,"1738":1,"1753":2,"1755":2,"1784":1,"1788":1,"1792":48,"1823":2,"1824":3,"1833":1,"1848":2,"1852":2,"1859":1,"1862":1,"1864":1,"1901":1,"1905":2,"1906":2,"1918":1,"1922":1,"1925":1,"1928":2,"1940":1,"1941":1,"1951":1,"1952":1,"1953":1,"1954":1,"1955":1,"1957":2,"1980":1,"1983":1,"1994":3,"2005":1,"2006":1,"2016":1,"2018":1,"2031":1,"2097":2,"2111":1,"2174":1,"2185":1,"2193":1,"2202":3,"2250":1,"2254":1,"2264":4,"2282":1,"2283":1,"2286":1,"2323":2,"2329":1,"2330":1,"2358":1,"2363":1,"2379":2,"2383":2,"2391":1,"2421":1,"2422":1,"2435":1,"2438":2,"2481":1,"2483":1,"2493":1,"2505":2,"2531":2,"2533":3,"2537":1,"2546":1,"2549":3,"2626":1,"2632":9,"2633":3,"2726":1,"2763":1,"2764":1,"2768":1,"2812":2,"2833":1,"2841":1,"2869":1,"2870":1,"2873":1}}],["ep",{"2":{"2828":2}}],["epplus",{"2":{"968":1,"969":1}}],["eyjhbg",{"2":{"1455":2,"1456":1,"2554":3}}],["ego",{"2":{"1404":1}}],["eq",{"2":{"1107":1,"1125":1,"1385":1}}],["equal",{"2":{"865":1,"1165":1,"1523":1,"2380":1,"2529":1,"2865":1}}],["equally",{"2":{"320":1,"868":1,"2538":1}}],["equivalents",{"2":{"2376":1}}],["equivalent",{"0":{"869":1},"2":{"17":1,"169":1,"203":1,"262":1,"269":1,"375":1,"564":1,"687":1,"704":1,"709":1,"869":2,"1025":1,"1102":2,"1403":1,"1421":1,"1428":1,"1458":1,"2155":1,"2165":2,"2193":1,"2222":1,"2335":1,"2481":1,"2505":1,"2533":1,"2581":1,"2591":1,"2692":1,"2858":1}}],["europe",{"2":{"2453":1}}],["eur",{"2":{"1023":5,"1024":2,"2764":1}}],["etag",{"2":{"1138":1}}],["ethereum",{"2":{"1023":3,"1024":1}}],["etl",{"0":{"908":1,"1205":1},"2":{"908":1,"1203":1,"1205":1,"1206":2,"1208":1}}],["etc",{"0":{"908":1},"2":{"25":1,"167":1,"175":1,"213":1,"258":1,"354":1,"414":1,"429":1,"447":1,"528":1,"544":1,"567":1,"624":1,"625":1,"761":1,"845":1,"849":1,"869":1,"882":1,"883":1,"915":1,"926":1,"934":1,"1011":1,"1027":1,"1035":1,"1056":1,"1060":1,"1071":1,"1094":1,"1098":3,"1099":1,"1104":1,"1121":1,"1123":1,"1206":1,"1216":1,"1249":1,"1254":1,"1322":1,"1326":1,"1332":1,"1333":1,"1341":1,"1385":3,"1386":5,"1390":1,"1394":2,"1395":1,"1399":1,"1403":1,"1416":1,"1464":1,"1487":1,"1581":1,"1687":1,"1701":1,"1740":1,"1788":3,"1789":1,"1792":9,"1795":2,"1796":1,"1802":1,"1846":1,"1870":1,"1995":1,"2008":1,"2020":1,"2052":1,"2124":1,"2175":1,"2205":1,"2252":2,"2253":2,"2258":3,"2267":1,"2277":1,"2288":1,"2300":1,"2310":1,"2313":1,"2319":1,"2320":1,"2322":1,"2323":1,"2340":1,"2364":1,"2376":1,"2381":1,"2384":1,"2445":1,"2446":1,"2576":1,"2581":1,"2588":1,"2589":1,"2621":1,"2628":2,"2633":2,"2779":1,"2783":1,"2790":1,"2804":1,"2841":1,"2851":1}}],["eight",{"2":{"860":1,"871":1,"1303":1}}],["eighteen",{"2":{"857":1}}],["either",{"2":{"35":1,"177":1,"203":1,"258":1,"299":1,"388":1,"407":1,"435":1,"436":1,"809":1,"832":1,"844":1,"848":1,"852":1,"868":1,"871":1,"872":1,"873":1,"875":1,"904":2,"915":1,"917":1,"1040":1,"1067":1,"1068":1,"1096":1,"1098":1,"1113":1,"1150":1,"1235":1,"1388":1,"1391":1,"1393":1,"1402":1,"1403":1,"1406":1,"1419":1,"1422":1,"1442":1,"1460":1,"1792":5,"1832":1,"1852":1,"1885":1,"1915":1,"1958":1,"2181":1,"2200":1,"2277":1,"2375":1,"2383":1,"2389":1,"2422":1,"2470":1,"2549":1,"2575":1,"2587":1,"2684":1,"2871":1}}],["ef",{"2":{"857":1,"860":1,"871":1,"1255":1,"1257":1,"1265":1,"1277":2,"1279":1,"1281":1,"1284":2,"1285":2,"1287":2,"1288":2,"1289":2,"1290":2,"1291":2,"1293":2,"1295":2,"1297":2,"1299":2,"1301":2,"1382":1,"2534":1,"2874":2}}],["efforts",{"2":{"851":1}}],["effort",{"2":{"713":1,"840":1,"857":1,"920":1,"1792":2,"2094":1,"2112":1,"2532":1,"2533":2,"2871":1}}],["effectively",{"2":{"2190":1,"2346":1}}],["effective",{"2":{"863":1,"873":1,"915":1,"987":1,"2422":1,"2490":1,"2693":1,"2700":1}}],["effect",{"0":{"2464":1},"2":{"453":1,"567":1,"587":1,"684":1,"826":1,"868":1,"872":1,"888":1,"957":1,"974":1,"1040":1,"1189":1,"1415":1,"1559":1,"1571":1,"1645":1,"1792":1,"2092":1,"2338":1,"2432":1,"2484":1,"2487":1,"2694":1,"2835":1,"2868":1,"2870":1}}],["effects",{"0":{"381":1,"826":1},"2":{"823":1,"1106":1,"1309":1,"2333":1,"2338":1,"2853":1}}],["efficiently",{"2":{"1412":1}}],["efficient",{"2":{"87":1,"871":1,"920":1,"1133":1,"1176":1,"1274":1,"1275":1,"1276":1,"1405":1,"1435":1,"1927":1,"1928":1,"2246":1,"2309":1,"2347":1,"2549":2}}],["efficiency",{"0":{"86":1},"2":{"872":1,"1405":1,"1516":1,"2265":1}}],["echoing",{"2":{"2523":1}}],["echo",{"2":{"1792":1,"2111":1,"2456":1,"2532":1}}],["echoes",{"2":{"851":1,"1255":1,"2513":1}}],["ec",{"2":{"1211":1,"1243":2}}],["ec2",{"2":{"1086":1,"1094":1}}],["ecosystem",{"2":{"852":1,"876":1,"1049":1,"2157":1,"2258":1,"2543":1}}],["edb",{"2":{"918":1}}],["editing",{"2":{"872":1,"1323":1,"2670":1}}],["edition",{"2":{"865":1}}],["edits",{"2":{"872":2}}],["edit",{"2":{"871":1,"872":1,"1193":1,"1368":1,"1416":1,"1417":1,"1419":1,"1570":1,"1574":1,"1581":1,"2543":1,"2546":1}}],["editor",{"2":{"14":1,"21":1,"1076":2,"1757":1,"2110":1,"2530":1,"2540":1,"2754":1,"2845":1,"2866":1}}],["edge",{"0":{"1107":1,"1115":1},"2":{"869":1,"873":1,"874":1,"987":1,"1101":2,"1104":1,"1107":2,"1108":2,"1115":2,"1126":2,"1127":1,"1139":1,"1249":1,"2498":1,"2607":1}}],["edges",{"2":{"848":1,"857":1,"2493":1}}],["edgar",{"2":{"848":2}}],["errcodes",{"2":{"1792":3,"2255":4}}],["err",{"2":{"1320":3,"2410":2,"2535":1}}],["error=",{"2":{"1825":1}}],["errortypename",{"2":{"2359":1}}],["errortype",{"2":{"1553":1,"1558":2,"1792":1,"2273":2}}],["errorexpression",{"2":{"1553":1,"1558":1,"1792":1,"2273":2}}],["errored",{"2":{"713":1,"2528":1,"2864":1}}],["errormode",{"0":{"2007":1},"2":{"587":1,"1792":2,"1999":1,"2000":1,"2106":1,"2112":1,"2153":1,"2330":2,"2337":1,"2367":1,"2532":1,"2537":1,"2540":1,"2543":1,"2722":2,"2840":2,"2841":1,"2857":1}}],["errorcodemappingoptions>>",{"2":{"2255":1}}],["errorcodemappingoptions",{"2":{"2255":1}}],["errorcodes=08000",{"2":{"2824":1,"2825":1}}],["errorcodes",{"2":{"577":3,"1111":1,"1152":2,"1153":1,"1154":3,"1177":1,"1587":1,"1589":1,"1597":3,"1598":1,"1617":1,"1622":1,"1623":1,"1625":1,"1633":1,"1669":1,"1673":1,"1678":1,"1792":3,"2255":1}}],["errorcodepolicies",{"2":{"197":1,"1111":1,"1669":1,"1670":1,"1673":1,"1678":1,"1792":3,"2255":3}}],["errors",{"0":{"1595":1,"2756":1},"2":{"195":1,"197":1,"213":1,"216":1,"395":1,"424":1,"715":1,"737":1,"779":1,"984":1,"986":1,"995":1,"1026":4,"1032":1,"1041":1,"1080":1,"1111":3,"1217":1,"1224":1,"1338":1,"1339":1,"1386":1,"1401":1,"1408":1,"1418":1,"1419":2,"1543":1,"1582":1,"1586":1,"1609":1,"1641":1,"1668":1,"1670":2,"1739":1,"1741":2,"1792":3,"1801":2,"1824":1,"1874":1,"2007":7,"2106":1,"2253":1,"2267":1,"2287":1,"2289":2,"2307":1,"2328":7,"2336":1,"2367":1,"2384":1,"2410":1,"2481":1,"2498":1,"2528":1,"2537":1,"2597":1,"2659":1,"2758":1,"2763":1,"2810":1,"2813":1,"2840":2,"2841":1,"2864":1,"2878":1,"2880":1,"2881":1}}],["errorhandlingoptions",{"2":{"139":1,"140":1,"1669":1,"1672":1,"1673":1,"1678":2,"1792":1,"2253":1,"2255":4,"2267":3,"2384":1,"2558":1,"2701":1}}],["error",{"0":{"192":1,"424":1,"777":1,"819":1,"1111":1,"1155":1,"1591":1,"1624":1,"1668":1,"1671":1,"1672":1,"1673":1,"1674":1,"2255":1,"2271":1,"2273":1,"2307":1,"2328":1,"2359":1,"2394":1,"2663":1,"2734":1,"2755":1},"1":{"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"1592":1,"1593":1,"1594":1,"1595":1,"1596":1,"1669":1,"1670":1,"1671":1,"1672":1,"1673":1,"1674":2,"1675":1,"1676":1,"1677":1,"1678":1,"1679":1,"1680":1,"1681":1},"2":{"102":1,"109":1,"140":1,"141":1,"188":1,"192":3,"193":2,"195":1,"196":1,"197":2,"198":2,"199":1,"200":2,"206":1,"207":3,"208":2,"209":5,"210":2,"213":2,"216":1,"235":2,"301":1,"424":4,"439":3,"447":3,"449":1,"452":1,"575":3,"576":1,"579":2,"587":1,"704":1,"777":1,"818":1,"819":1,"835":1,"869":1,"879":1,"880":1,"894":4,"901":1,"910":1,"938":2,"982":1,"985":1,"991":1,"995":5,"996":4,"997":1,"1011":1,"1019":2,"1020":2,"1021":4,"1024":1,"1026":11,"1031":2,"1074":1,"1080":1,"1101":1,"1105":7,"1109":5,"1111":20,"1127":1,"1152":2,"1155":2,"1181":2,"1218":1,"1232":1,"1234":1,"1236":1,"1237":1,"1317":1,"1320":3,"1332":3,"1335":1,"1338":3,"1339":3,"1341":2,"1342":2,"1350":1,"1366":5,"1378":1,"1386":4,"1388":1,"1390":1,"1394":2,"1395":1,"1398":2,"1402":1,"1407":1,"1408":3,"1409":2,"1410":6,"1415":1,"1416":1,"1422":1,"1426":1,"1427":1,"1431":1,"1558":4,"1567":4,"1568":1,"1589":1,"1591":1,"1595":2,"1596":1,"1605":2,"1609":1,"1623":1,"1624":2,"1668":1,"1670":6,"1671":3,"1673":1,"1674":1,"1676":1,"1677":1,"1678":1,"1679":2,"1680":1,"1681":2,"1721":1,"1722":2,"1725":1,"1727":4,"1732":2,"1736":3,"1737":1,"1740":1,"1741":2,"1742":4,"1791":2,"1792":35,"1798":2,"1801":1,"1806":1,"1822":1,"1865":2,"1882":1,"1884":1,"1886":1,"1887":1,"1916":1,"1918":2,"1921":3,"1922":2,"2007":4,"2094":1,"2100":1,"2101":1,"2107":1,"2111":2,"2113":3,"2141":1,"2151":2,"2155":1,"2157":1,"2184":1,"2225":1,"2226":1,"2240":1,"2242":3,"2253":1,"2255":24,"2264":7,"2267":3,"2271":5,"2273":5,"2288":1,"2289":3,"2290":4,"2296":1,"2307":4,"2320":1,"2321":1,"2328":5,"2329":1,"2330":2,"2337":1,"2359":3,"2360":2,"2377":1,"2384":3,"2394":1,"2405":1,"2412":1,"2414":1,"2415":1,"2416":2,"2417":1,"2441":1,"2442":1,"2445":1,"2481":1,"2492":1,"2497":2,"2506":1,"2519":1,"2526":1,"2528":2,"2529":1,"2531":1,"2532":2,"2533":2,"2535":7,"2537":1,"2541":1,"2543":3,"2549":6,"2558":1,"2559":1,"2566":2,"2575":1,"2597":2,"2608":2,"2648":2,"2659":1,"2663":1,"2679":1,"2684":1,"2685":2,"2688":2,"2696":1,"2701":1,"2719":1,"2722":2,"2762":3,"2763":3,"2764":3,"2766":2,"2769":2,"2794":1,"2810":5,"2813":1,"2814":1,"2815":3,"2840":1,"2857":1,"2860":1,"2864":2,"2865":1,"2871":2,"2876":1,"2880":2,"2881":1}}],["ergonomic",{"2":{"1044":3}}],["ergonomics",{"2":{"369":1,"1102":1,"2332":1}}],["ernest",{"2":{"913":1}}],["era",{"2":{"848":1,"871":1,"1384":1}}],["er",{"2":{"845":1,"1018":1,"1019":1,"1023":1,"1026":1,"1032":1,"2764":2,"2766":1}}],["eric",{"2":{"843":1,"847":1,"851":2,"863":1}}],["esbuild",{"2":{"1422":1}}],["es256",{"2":{"1236":1,"1237":1,"1792":1,"1886":1,"1887":1}}],["establishment",{"2":{"1593":1,"1792":1}}],["establishing",{"2":{"1152":1}}],["establish",{"2":{"877":1,"1593":1,"1624":1,"1792":1}}],["established",{"2":{"650":1,"851":1,"852":1,"1153":1,"1402":1,"2504":1}}],["est",{"2":{"869":1,"2398":2}}],["estimated",{"0":{"2398":1},"2":{"911":1,"1027":1,"1037":1,"1322":1}}],["estimates",{"2":{"872":1,"1130":1,"1181":1,"2398":1}}],["estimate",{"2":{"869":2,"872":1,"873":1,"1133":1,"2398":1}}],["essays",{"2":{"863":1}}],["essence",{"2":{"851":1}}],["essentially",{"2":{"1385":1,"2398":1}}],["essential",{"2":{"377":1,"913":1,"919":2,"1111":1,"2333":1}}],["escaping",{"0":{"2589":1},"2":{"2270":1,"2372":2,"2481":1,"2589":1,"2603":2}}],["escapes",{"2":{"2528":1,"2540":1,"2603":1,"2863":1}}],["escaped",{"2":{"1582":1,"2040":2,"2372":2,"2476":2,"2589":8,"2603":1}}],["escape",{"2":{"340":1,"389":1,"599":1,"857":3,"861":1,"1856":1,"2040":1,"2224":1,"2270":1,"2455":1}}],["escalation",{"2":{"2533":1}}],["escalating",{"2":{"857":1}}],["escalate",{"2":{"1441":1}}],["especially",{"2":{"87":1,"376":1,"919":1,"974":1,"1127":1,"1516":1,"1940":1,"2265":1,"2395":1,"2428":1}}],["elb",{"0":{"1712":1}}],["eliminating",{"2":{"1276":1,"2500":1,"2604":1,"2614":1,"2622":1}}],["eliminate",{"2":{"1006":1,"1166":1}}],["eliminated",{"2":{"873":2,"1037":1}}],["eliminates",{"2":{"826":1,"1180":1,"1274":1,"2342":1,"2399":1,"2576":1,"2622":1,"2853":1}}],["elite",{"2":{"1265":1}}],["eligible",{"2":{"1213":1,"1215":3,"1237":1,"1792":1,"1887":1}}],["elaborate",{"2":{"851":1,"1197":1}}],["elapses",{"2":{"214":1,"1743":1,"2502":1}}],["elem",{"2":{"2397":3}}],["elements",{"2":{"575":1,"903":2,"1339":1,"1357":2,"1410":2,"1427":1,"1692":1,"1792":1,"2265":1,"2270":1,"2551":1,"2586":1,"2607":1}}],["element",{"2":{"286":1,"763":1,"773":1,"887":1,"1651":2,"1655":2,"2551":1,"2604":1,"2608":1,"2621":1}}],["elevates",{"2":{"1185":1}}],["elevated",{"2":{"932":1,"933":1}}],["elegant",{"2":{"1075":1}}],["elegantly",{"2":{"843":1,"2868":1}}],["elsewhere",{"2":{"873":1,"1493":1,"1792":1}}],["else",{"0":{"2800":1},"2":{"207":1,"208":1,"209":1,"304":1,"313":1,"833":1,"841":1,"843":1,"848":1,"849":4,"851":1,"866":1,"894":1,"932":1,"994":1,"1021":2,"1045":1,"1060":1,"1069":1,"1079":1,"1106":1,"1162":3,"1327":1,"1342":1,"1364":1,"1366":1,"1399":1,"1403":1,"1404":4,"1410":2,"1429":1,"1435":1,"1459":1,"1579":1,"1727":2,"1736":1,"1792":1,"2157":1,"2171":1,"2264":1,"2375":1,"2427":2,"2450":1,"2452":1,"2490":1,"2543":1,"2733":1,"2764":1,"2810":1}}],["eating",{"2":{"1400":1}}],["eats",{"2":{"947":1}}],["earth",{"2":{"1382":1}}],["early",{"2":{"1338":1,"1399":1,"1400":1,"1527":1,"2007":1,"2270":1,"2339":1,"2352":1,"2529":1,"2696":1}}],["earliest",{"2":{"984":1}}],["earlier",{"2":{"175":1,"177":1,"529":1,"869":1,"872":1,"1080":1,"1096":1,"1157":1,"1388":1,"1400":1,"1402":2,"1464":1,"2376":1,"2378":1,"2379":1,"2415":1,"2684":1}}],["eager",{"2":{"856":1}}],["eaacatalog",{"2":{"851":1}}],["ease",{"2":{"974":1}}],["easily",{"2":{"915":1,"1393":1,"1403":1}}],["easier",{"2":{"307":1,"559":1,"1404":2,"2177":1,"2372":1,"2597":1}}],["easy",{"0":{"878":1},"1":{"879":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1},"2":{"791":1,"841":1,"916":1,"995":1,"1037":1,"1075":1,"1135":1,"1386":2,"1792":1,"2047":1,"2134":1,"2677":1}}],["each",{"0":{"837":1,"1120":1,"1354":1,"2750":1},"1":{"1121":1,"1122":1,"1123":1},"2":{"22":1,"81":1,"83":1,"87":1,"158":1,"213":1,"214":1,"221":1,"286":1,"305":1,"336":2,"386":1,"388":1,"436":1,"448":1,"650":1,"656":1,"663":1,"667":1,"669":1,"684":1,"687":1,"696":1,"701":1,"759":1,"761":1,"762":1,"764":1,"768":1,"769":1,"771":2,"772":1,"774":1,"776":1,"786":1,"788":2,"831":1,"833":2,"844":1,"848":1,"851":3,"855":2,"856":1,"860":1,"868":1,"872":2,"873":1,"881":1,"886":1,"891":1,"892":1,"902":1,"918":2,"919":1,"927":1,"928":1,"948":2,"961":1,"985":1,"986":2,"989":2,"990":1,"993":1,"1008":1,"1011":1,"1023":1,"1027":1,"1032":1,"1039":1,"1069":1,"1070":2,"1083":1,"1098":3,"1101":1,"1102":1,"1107":1,"1111":1,"1135":1,"1144":1,"1145":1,"1150":3,"1159":1,"1162":2,"1165":1,"1168":1,"1169":1,"1174":1,"1175":1,"1176":2,"1180":1,"1181":1,"1185":1,"1191":1,"1219":1,"1231":2,"1279":1,"1280":1,"1281":1,"1303":1,"1326":1,"1329":1,"1355":1,"1359":1,"1363":1,"1378":1,"1382":4,"1385":2,"1386":4,"1391":1,"1398":1,"1406":1,"1408":1,"1409":1,"1410":1,"1414":1,"1427":2,"1458":1,"1460":2,"1511":2,"1518":1,"1523":1,"1527":1,"1564":1,"1566":1,"1572":1,"1577":1,"1589":1,"1618":1,"1621":1,"1628":1,"1651":1,"1658":1,"1671":1,"1696":1,"1740":1,"1741":1,"1792":35,"1823":1,"1824":1,"1844":2,"1852":3,"1869":1,"1881":1,"1924":1,"1948":1,"1955":2,"1957":2,"1958":2,"1974":2,"2010":1,"2096":1,"2098":1,"2099":2,"2103":1,"2108":1,"2109":1,"2110":1,"2112":1,"2128":1,"2130":1,"2141":1,"2160":1,"2165":1,"2166":1,"2167":1,"2168":1,"2184":1,"2191":1,"2192":1,"2208":1,"2254":1,"2265":2,"2285":1,"2288":1,"2289":1,"2297":1,"2318":3,"2320":2,"2321":1,"2324":1,"2359":1,"2364":1,"2375":3,"2377":1,"2378":2,"2379":5,"2380":3,"2383":3,"2399":1,"2401":1,"2407":1,"2417":1,"2436":1,"2456":1,"2459":1,"2466":1,"2470":1,"2476":1,"2482":1,"2504":2,"2506":1,"2523":1,"2526":1,"2527":1,"2528":1,"2530":2,"2533":1,"2534":2,"2535":2,"2537":3,"2544":2,"2590":1,"2607":2,"2611":1,"2615":1,"2622":1,"2671":1,"2677":1,"2680":1,"2765":1,"2794":2,"2795":1,"2804":1,"2815":1,"2830":1,"2836":1,"2839":1,"2840":2,"2851":1,"2858":1,"2862":1,"2863":1,"2866":1,"2868":1,"2871":1}}],["emoji",{"2":{"2589":1,"2607":1}}],["emerged",{"2":{"1266":1}}],["emerges",{"2":{"872":1}}],["embed",{"2":{"2018":1,"2389":1}}],["embed>",{"2":{"1792":1,"2632":1}}],["embeds",{"2":{"1111":1}}],["embedder",{"0":{"2024":1},"2":{"1792":1,"2632":2}}],["embedded",{"2":{"1078":1,"1096":1,"1792":4,"1824":1,"1924":1,"2021":1,"2221":1,"2258":1,"2389":1,"2399":1,"2509":1,"2529":1,"2865":1}}],["embedding",{"2":{"1096":2,"1122":1,"1127":1}}],["empirical",{"2":{"871":1}}],["emptystring",{"0":{"463":1},"2":{"470":2,"556":1,"1792":1,"1836":1,"1853":1,"1854":1,"1855":1,"2595":2,"2596":1}}],["empty",{"0":{"466":1,"553":1,"616":1,"991":1},"2":{"35":1,"212":1,"286":1,"298":1,"299":1,"388":1,"390":1,"395":1,"447":1,"460":3,"462":1,"463":4,"464":1,"466":2,"467":1,"468":1,"529":1,"551":2,"553":1,"614":1,"616":3,"617":1,"770":1,"771":1,"772":2,"773":1,"803":1,"812":1,"813":1,"815":1,"816":3,"829":1,"893":1,"930":5,"934":1,"991":3,"1069":1,"1162":1,"1222":1,"1225":1,"1234":1,"1241":1,"1360":2,"1431":2,"1432":1,"1523":1,"1526":1,"1527":1,"1639":1,"1640":1,"1688":1,"1708":1,"1709":1,"1713":1,"1716":1,"1792":33,"1823":1,"1824":1,"1828":1,"1853":1,"1854":3,"1855":2,"1862":1,"1875":1,"1890":1,"1898":1,"1956":1,"2000":1,"2003":1,"2038":2,"2040":1,"2047":1,"2094":1,"2095":1,"2096":1,"2105":1,"2109":1,"2140":2,"2142":2,"2146":2,"2147":2,"2149":1,"2176":1,"2258":3,"2265":1,"2271":1,"2284":1,"2330":1,"2339":3,"2379":1,"2380":3,"2431":2,"2436":2,"2466":1,"2476":1,"2482":1,"2491":1,"2492":1,"2494":1,"2530":1,"2537":3,"2539":1,"2572":1,"2575":6,"2586":1,"2589":1,"2595":3,"2596":2,"2607":2,"2633":3,"2635":1,"2648":2,"2764":1,"2810":1}}],["emitting",{"2":{"1569":1,"2831":1}}],["emitted",{"2":{"868":1,"1570":1,"1571":1,"1575":1,"1582":1,"1792":2,"2222":1,"2484":2,"2489":1,"2519":2,"2523":1,"2536":1,"2662":1,"2694":1}}],["emitter",{"2":{"664":1,"1326":2,"2391":2,"2392":1,"2834":3}}],["emits",{"2":{"868":2,"1043":1,"1327":1,"1410":1,"1413":1,"2359":1,"2395":1,"2416":1,"2472":1,"2484":1,"2519":1,"2544":1,"2827":1,"2830":1,"2834":1}}],["emit",{"0":{"2484":1},"2":{"835":1,"1320":2,"1325":1,"1559":1,"1570":1,"1571":1,"1577":1,"1792":1,"1824":1,"1844":2,"2667":1,"2829":2}}],["emitproc",{"2":{"663":2}}],["emiturl",{"2":{"663":2}}],["email=",{"2":{"2861":1}}],["email=a",{"2":{"297":2}}],["emailaddress",{"2":{"1692":2,"1792":2}}],["emailurl",{"2":{"1690":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1792":5}}],["emails",{"2":{"1104":1,"1106":1}}],["email",{"0":{"428":1},"2":{"128":4,"167":1,"208":3,"298":4,"304":1,"308":2,"309":2,"312":3,"313":5,"333":2,"360":5,"365":3,"366":5,"380":2,"414":1,"428":6,"488":2,"489":3,"493":3,"611":3,"612":2,"695":1,"700":1,"809":2,"812":9,"813":5,"816":2,"818":2,"819":2,"834":2,"835":2,"888":5,"924":1,"934":3,"936":4,"937":2,"938":2,"977":2,"979":2,"986":1,"988":2,"989":1,"994":3,"995":2,"996":3,"1050":1,"1051":1,"1055":2,"1058":4,"1060":9,"1062":2,"1074":2,"1078":2,"1094":1,"1113":1,"1193":1,"1213":1,"1214":2,"1215":2,"1216":4,"1220":2,"1222":1,"1233":1,"1239":3,"1368":3,"1369":2,"1371":3,"1379":2,"1386":10,"1387":3,"1390":1,"1391":2,"1393":2,"1396":2,"1398":1,"1399":2,"1405":1,"1408":2,"1409":1,"1414":1,"1542":2,"1546":2,"1567":6,"1570":2,"1687":1,"1689":13,"1691":1,"1695":1,"1696":1,"1730":2,"1792":7,"1870":1,"2012":1,"2039":3,"2042":1,"2142":2,"2146":2,"2147":9,"2167":1,"2176":4,"2178":1,"2180":2,"2183":6,"2184":4,"2204":1,"2221":2,"2300":1,"2322":1,"2333":2,"2526":2,"2528":1,"2529":1,"2530":2,"2540":9,"2575":10,"2739":1,"2774":1,"2775":2,"2842":2,"2860":2,"2861":4,"2864":1,"2865":1,"2866":1,"2869":2,"2873":1}}],["evolutionary",{"2":{"1193":1}}],["evolves",{"2":{"2438":1}}],["evolve",{"2":{"1049":1,"1193":1,"1405":1,"1419":1}}],["evolved",{"2":{"872":2}}],["evaluations",{"2":{"1527":1}}],["evaluates",{"2":{"2185":1}}],["evaluate",{"2":{"1067":1,"2380":1}}],["evaluated",{"2":{"108":1,"388":1,"818":1,"1098":1,"1150":1,"1521":1,"1523":2,"1792":2,"1956":1,"2149":1,"2379":1,"2575":1}}],["evaporated",{"2":{"844":1}}],["evans",{"2":{"843":1,"847":3,"851":5,"852":1,"863":1}}],["eve",{"2":{"913":1,"919":2}}],["ever",{"0":{"1435":1},"1":{"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1},"2":{"215":1,"852":1,"859":1,"868":1,"972":1,"1037":1,"1068":1,"1076":1,"1078":1,"1210":1,"1251":1,"1328":1,"1382":1,"1402":1,"1403":1,"1412":1,"1435":3,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1522":1,"1664":1,"1813":1,"1825":1,"1862":1,"1868":1,"2291":1,"2391":1,"2399":1,"2482":1,"2483":1,"2532":1,"2878":1}}],["everyday",{"2":{"2537":1}}],["everybody",{"2":{"852":1}}],["everyone",{"2":{"841":1,"913":1,"919":2,"1045":1,"1069":1,"1162":2,"1254":1,"1315":1,"1316":1,"1382":2,"1399":1,"1400":1,"1404":1,"1957":1,"2379":1,"2828":1,"2833":1}}],["everywhere",{"2":{"529":1,"1079":1,"1190":1,"2359":1,"2534":1}}],["everything",{"0":{"2800":1},"2":{"307":1,"690":1,"706":1,"710":1,"833":1,"848":1,"851":1,"852":2,"865":1,"866":1,"910":1,"911":2,"920":1,"927":1,"937":1,"946":1,"957":1,"971":1,"986":1,"1036":1,"1065":1,"1080":1,"1081":1,"1086":1,"1088":1,"1184":1,"1189":1,"1208":1,"1252":1,"1281":1,"1327":2,"1328":1,"1331":1,"1351":1,"1367":1,"1382":2,"1395":1,"1403":2,"1404":1,"1421":1,"1441":1,"1459":1,"1579":1,"1792":3,"1910":1,"2096":1,"2106":3,"2110":1,"2153":1,"2157":1,"2158":1,"2171":1,"2177":1,"2375":1,"2433":1,"2527":1,"2529":1,"2530":1,"2531":1,"2537":2,"2541":1,"2543":1,"2546":1,"2721":1,"2728":1,"2731":1,"2742":1,"2751":1,"2850":1,"2860":1,"2862":1,"2865":1,"2867":1,"2869":1,"2878":4}}],["every",{"0":{"985":1,"2490":1,"2798":1},"2":{"3":1,"41":1,"74":1,"102":1,"109":1,"214":2,"297":2,"298":2,"304":1,"306":1,"352":1,"388":1,"446":1,"533":1,"636":4,"650":1,"666":1,"695":1,"704":1,"714":1,"826":1,"835":1,"840":1,"843":1,"845":2,"848":2,"849":2,"851":1,"852":8,"857":1,"860":2,"861":3,"864":4,"865":4,"868":3,"871":1,"872":8,"873":2,"875":2,"876":2,"878":1,"880":1,"905":1,"924":1,"930":1,"948":1,"951":1,"967":1,"976":1,"978":1,"979":1,"984":1,"985":1,"986":1,"988":2,"994":1,"997":1,"1003":1,"1005":2,"1009":1,"1013":1,"1049":1,"1064":1,"1070":1,"1073":1,"1075":2,"1076":1,"1079":1,"1080":3,"1082":1,"1094":1,"1098":1,"1102":2,"1113":1,"1135":1,"1139":1,"1147":1,"1150":1,"1160":1,"1162":1,"1164":1,"1181":1,"1183":1,"1191":1,"1193":1,"1203":1,"1208":1,"1255":1,"1281":1,"1305":2,"1326":2,"1329":3,"1337":1,"1363":1,"1377":1,"1379":1,"1381":1,"1382":6,"1385":2,"1400":1,"1402":2,"1407":2,"1408":2,"1409":2,"1410":1,"1414":1,"1418":1,"1424":1,"1427":1,"1428":1,"1430":2,"1435":2,"1436":5,"1437":1,"1441":1,"1442":1,"1460":1,"1527":1,"1567":2,"1569":1,"1579":1,"1582":1,"1605":1,"1620":1,"1722":1,"1743":1,"1759":1,"1792":14,"1802":1,"1821":1,"1822":1,"1823":2,"1825":2,"1827":1,"1832":1,"1833":1,"1844":1,"1850":1,"1909":1,"1912":1,"1958":1,"1961":1,"2004":3,"2005":1,"2040":1,"2060":1,"2094":1,"2104":1,"2109":1,"2110":2,"2111":1,"2156":1,"2157":2,"2171":2,"2172":1,"2175":1,"2180":1,"2182":1,"2184":1,"2185":1,"2221":1,"2223":1,"2247":1,"2323":1,"2330":1,"2338":1,"2363":1,"2375":1,"2380":1,"2381":1,"2382":1,"2389":1,"2391":1,"2394":1,"2395":2,"2397":1,"2413":1,"2419":1,"2422":1,"2430":2,"2443":1,"2445":1,"2450":1,"2452":1,"2459":1,"2468":1,"2481":1,"2490":1,"2494":3,"2495":2,"2497":1,"2502":1,"2504":1,"2510":1,"2511":1,"2518":1,"2520":1,"2530":2,"2531":2,"2532":2,"2533":1,"2536":2,"2537":5,"2542":2,"2543":2,"2545":1,"2559":1,"2614":1,"2677":1,"2682":1,"2688":1,"2694":1,"2742":1,"2749":1,"2758":1,"2759":1,"2769":1,"2771":1,"2795":3,"2800":2,"2803":2,"2805":1,"2815":1,"2817":1,"2825":1,"2828":1,"2831":1,"2836":2,"2839":1,"2841":2,"2853":1,"2857":1,"2858":1,"2866":1,"2867":1,"2868":1,"2871":1,"2872":1,"2873":1,"2878":2,"2879":1,"2880":1,"2881":1,"2882":1}}],["evenly",{"2":{"1175":1}}],["eventually",{"2":{"864":1}}],["eventual",{"2":{"844":1,"865":1}}],["event",{"0":{"1845":1,"2832":1},"2":{"292":1,"621":1,"636":4,"639":2,"646":5,"650":2,"663":1,"666":3,"669":1,"840":1,"894":4,"1030":2,"1103":1,"1104":1,"1239":1,"1304":1,"1305":1,"1309":3,"1316":3,"1317":2,"1318":2,"1321":2,"1326":1,"1327":1,"1366":4,"1410":4,"1416":2,"1573":1,"1792":3,"1844":1,"1860":1,"2157":1,"2223":1,"2247":2,"2250":2,"2252":1,"2343":1,"2391":1,"2393":1,"2407":2,"2464":1,"2490":3,"2543":1,"2803":2,"2827":1,"2828":6,"2829":1,"2830":1,"2831":2,"2833":1,"2834":1,"2835":1}}],["eventsource",{"2":{"636":1,"650":2,"666":4,"868":1,"1304":1,"1305":2,"1317":6,"1318":7,"1321":2,"1323":2,"1325":1,"1415":1,"1416":6,"1563":1,"1573":2,"1581":1,"2247":8,"2391":3,"2393":1,"2827":1,"2828":4,"2830":2,"2833":1,"2838":1}}],["events",{"0":{"162":1,"233":1,"627":1,"636":1,"650":1,"1302":1,"1857":1,"2248":2,"2249":1,"2490":1,"2827":1,"2831":1},"1":{"628":1,"629":1,"630":1,"631":1,"632":1,"633":1,"634":1,"635":1,"637":1,"638":1,"639":1,"640":1,"641":1,"642":1,"643":1,"644":1,"645":1,"646":1,"647":1,"648":1,"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1308":1,"1309":1,"1310":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1,"1858":1,"1859":1,"1860":1,"1861":1,"2249":2,"2250":2,"2251":2,"2252":2,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1},"2":{"162":5,"233":3,"627":1,"628":1,"631":1,"632":1,"633":1,"634":1,"635":2,"636":1,"637":1,"638":3,"639":1,"641":4,"642":2,"643":1,"644":2,"645":1,"646":2,"647":1,"648":2,"649":2,"650":1,"654":3,"656":4,"658":2,"659":1,"662":1,"663":3,"664":3,"665":1,"666":3,"670":1,"671":2,"719":1,"720":3,"726":2,"835":1,"865":1,"868":2,"966":1,"1037":1,"1103":2,"1106":1,"1107":1,"1302":2,"1304":3,"1305":2,"1309":1,"1311":1,"1312":1,"1313":2,"1314":1,"1323":1,"1324":1,"1325":1,"1326":3,"1327":1,"1372":1,"1415":1,"1416":1,"1563":1,"1792":7,"1844":1,"1857":2,"1858":3,"1860":2,"1864":1,"2052":1,"2124":1,"2157":1,"2164":1,"2223":1,"2240":1,"2247":1,"2249":4,"2250":1,"2251":2,"2252":4,"2329":1,"2362":1,"2391":2,"2392":1,"2490":2,"2543":1,"2635":2,"2701":1,"2801":1,"2802":1,"2805":2,"2827":5,"2828":1,"2829":2,"2830":2,"2831":3,"2832":4,"2833":1,"2834":5,"2835":2,"2836":2,"2838":3}}],["even",{"2":{"188":1,"319":1,"349":1,"354":1,"529":1,"609":1,"667":1,"683":1,"695":1,"713":1,"834":1,"840":1,"841":1,"843":2,"844":1,"845":3,"847":1,"848":6,"849":1,"851":1,"857":1,"863":1,"869":1,"872":1,"884":1,"914":1,"917":1,"918":1,"919":2,"932":1,"933":1,"936":1,"940":1,"941":1,"946":1,"981":1,"1067":1,"1068":1,"1074":1,"1075":1,"1079":2,"1080":1,"1081":1,"1094":1,"1150":1,"1171":1,"1185":3,"1329":1,"1385":2,"1386":3,"1393":1,"1394":1,"1400":2,"1401":2,"1402":1,"1403":7,"1405":2,"1407":1,"1414":1,"1415":1,"1419":1,"1441":1,"1475":1,"1477":1,"1522":1,"1569":1,"1704":1,"1792":3,"1833":1,"2003":1,"2106":1,"2112":1,"2156":1,"2284":1,"2296":1,"2380":1,"2403":1,"2414":2,"2421":1,"2468":1,"2470":1,"2486":1,"2496":1,"2519":1,"2520":1,"2531":1,"2532":1,"2533":2,"2537":1,"2542":1,"2731":1,"2759":1,"2833":1,"2867":1,"2871":1,"2878":1}}],["evenings",{"2":{"1":1}}],["ehh4onl5eq==",{"2":{"40":1}}],["e",{"2":{"31":1,"74":2,"108":1,"109":1,"155":1,"175":1,"188":1,"210":1,"212":2,"268":1,"286":1,"297":1,"302":1,"349":1,"370":2,"387":2,"388":3,"390":1,"415":1,"423":2,"446":1,"447":1,"448":1,"453":1,"582":3,"583":2,"587":1,"615":1,"663":1,"720":1,"734":1,"747":1,"748":1,"761":2,"768":1,"771":1,"776":1,"781":1,"786":1,"826":1,"851":1,"852":1,"868":1,"876":1,"892":1,"961":2,"967":1,"996":2,"1060":1,"1066":1,"1088":1,"1097":1,"1098":1,"1101":1,"1111":1,"1193":1,"1225":2,"1232":1,"1233":1,"1237":1,"1239":2,"1284":1,"1366":1,"1385":2,"1386":1,"1409":1,"1427":1,"1447":1,"1449":1,"1451":1,"1454":2,"1493":1,"1511":1,"1519":3,"1521":1,"1523":1,"1525":1,"1569":1,"1575":1,"1590":1,"1605":1,"1609":1,"1614":1,"1664":1,"1685":1,"1687":1,"1706":1,"1732":1,"1738":1,"1741":2,"1767":1,"1792":35,"1823":2,"1825":1,"1831":1,"1832":1,"1837":1,"1840":1,"1856":2,"1862":1,"1875":2,"1882":1,"1887":1,"1906":1,"1917":1,"1922":1,"1925":1,"1957":3,"1958":1,"1991":1,"2004":1,"2062":1,"2110":1,"2111":1,"2112":1,"2146":1,"2156":1,"2177":1,"2193":1,"2195":1,"2210":1,"2258":1,"2264":1,"2265":1,"2282":1,"2283":1,"2289":2,"2291":1,"2296":1,"2303":1,"2318":1,"2322":1,"2329":2,"2330":1,"2336":1,"2337":1,"2338":1,"2339":1,"2347":1,"2357":1,"2358":1,"2360":1,"2364":2,"2365":2,"2367":1,"2379":3,"2380":2,"2413":1,"2430":1,"2434":1,"2438":1,"2444":2,"2445":1,"2446":1,"2453":1,"2483":2,"2487":1,"2490":1,"2497":3,"2505":2,"2517":1,"2518":4,"2519":1,"2520":1,"2529":1,"2530":2,"2532":4,"2533":1,"2536":1,"2537":1,"2542":1,"2544":1,"2549":1,"2566":1,"2572":2,"2586":1,"2589":1,"2590":1,"2591":1,"2597":1,"2603":1,"2634":1,"2635":1,"2645":1,"2649":1,"2656":1,"2659":1,"2679":2,"2688":1,"2692":1,"2696":1,"2767":1,"2768":1,"2779":1,"2811":1,"2830":2,"2836":2,"2840":1,"2847":1,"2854":1,"2875":1}}],["ex",{"2":{"1184":2}}],["exhausted",{"2":{"2459":1}}],["exhaust",{"2":{"1069":1}}],["exhaustion",{"0":{"1329":1},"2":{"213":1,"1037":1,"1741":1,"2289":1}}],["exfiltration",{"2":{"941":1}}],["exec",{"2":{"2875":1}}],["executables",{"2":{"2157":1,"2543":1,"2744":1,"2792":1}}],["executable",{"0":{"2778":1},"1":{"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1},"2":{"1084":1,"1086":2,"1087":1,"1840":1,"2261":1,"2389":1,"2576":1,"2709":1,"2711":1,"2714":1,"2716":1,"2776":1,"2779":1,"2782":2,"2783":2,"2784":2,"2786":1,"2792":2,"2821":1}}],["executebatchreaderwithretryasync",{"2":{"2320":1,"2372":1}}],["executenonquery",{"2":{"829":1}}],["execute",{"0":{"2798":1},"2":{"223":1,"317":1,"412":1,"414":1,"439":1,"456":1,"529":1,"786":1,"788":1,"829":1,"901":1,"926":1,"932":1,"933":1,"948":1,"988":1,"1076":2,"1095":1,"1104":1,"1105":3,"1129":1,"1161":1,"1166":1,"1324":1,"1343":1,"1388":1,"1393":1,"1398":1,"1399":1,"1684":1,"1733":1,"1792":3,"1805":1,"1813":1,"1961":1,"2087":1,"2245":1,"2256":2,"2264":1,"2283":1,"2284":1,"2300":1,"2302":1,"2346":1,"2466":1,"2481":1,"2532":1,"2533":1,"2545":1,"2550":1,"2721":1,"2755":1,"2774":1,"2791":1,"2795":1,"2809":1,"2852":1,"2853":1}}],["executescalar",{"2":{"528":1}}],["executes",{"0":{"2750":1},"2":{"216":1,"284":1,"285":1,"415":1,"423":1,"621":1,"703":1,"933":1,"986":1,"1015":1,"1016":2,"1023":1,"1029":1,"1044":1,"1219":1,"1220":1,"1221":1,"1222":1,"1305":2,"1386":1,"1394":1,"1396":1,"1426":1,"1524":1,"1686":1,"1723":2,"1792":1,"1824":2,"1869":1,"1870":1,"1871":1,"1872":1,"2283":1,"2303":1,"2304":1,"2463":1,"2526":1,"2537":1,"2834":1,"2850":1}}],["executed",{"2":{"41":1,"362":1,"438":1,"618":1,"622":1,"625":1,"823":1,"829":1,"848":1,"860":1,"880":1,"974":1,"1016":1,"1073":1,"1102":1,"1105":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1255":1,"1331":1,"1370":1,"1386":1,"1394":2,"1398":2,"1399":1,"1472":2,"1792":9,"1799":1,"1802":1,"1844":1,"1850":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"2104":1,"2108":1,"2338":1,"2342":1,"2391":1,"2459":1,"2528":2,"2532":1,"2540":1,"2580":1,"2807":1,"2809":2,"2845":1,"2863":1,"2880":1}}],["executive",{"0":{"1084":1}}],["executing",{"2":{"184":1,"202":1,"737":1,"1076":1,"1363":1,"1388":1,"1618":1,"1745":1,"1792":4,"2250":1,"2264":1,"2292":1,"2318":1,"2463":1,"2615":1,"2634":1,"2635":1,"2840":1}}],["executions",{"2":{"1792":1,"2463":1,"2464":1,"2465":2,"2466":1}}],["executionid",{"2":{"1317":2,"1416":3,"2247":3}}],["executionidheadername>",{"2":{"1792":1}}],["executionidheadername",{"2":{"639":1,"1792":1,"1836":1,"1848":1,"1863":1,"2701":1,"2833":1}}],["execution",{"0":{"1104":1,"1106":1,"1326":1,"2300":1,"2614":1},"1":{"1105":1,"1106":1,"1107":1,"1108":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1},"2":{"132":1,"140":1,"226":1,"277":1,"456":1,"549":1,"639":4,"650":1,"667":1,"668":3,"696":1,"761":1,"763":1,"771":1,"801":1,"807":1,"966":1,"968":1,"993":2,"1070":1,"1076":1,"1095":1,"1102":1,"1104":1,"1105":2,"1107":1,"1110":1,"1126":1,"1130":1,"1132":1,"1133":1,"1153":1,"1277":1,"1304":1,"1305":1,"1309":1,"1325":1,"1326":2,"1382":1,"1396":1,"1416":1,"1573":1,"1620":2,"1669":1,"1672":1,"1741":1,"1792":6,"1801":1,"1825":1,"1848":1,"1852":1,"1961":1,"2049":2,"2098":1,"2107":1,"2137":1,"2224":1,"2228":1,"2229":1,"2247":1,"2253":1,"2255":2,"2284":3,"2289":2,"2309":1,"2320":1,"2324":1,"2372":2,"2383":1,"2391":1,"2459":1,"2461":1,"2462":1,"2463":1,"2464":2,"2465":4,"2466":1,"2498":1,"2527":1,"2534":1,"2537":1,"2545":1,"2559":1,"2575":1,"2596":1,"2597":1,"2614":1,"2615":1,"2628":1,"2635":2,"2767":1,"2833":2,"2860":1,"2873":1}}],["exe",{"2":{"2781":2}}],["exercise",{"2":{"2417":1,"2529":1}}],["exercised",{"2":{"1792":1,"2107":1,"2465":1}}],["exercises",{"2":{"692":1,"875":1}}],["exited",{"2":{"2414":1,"2543":1}}],["exit",{"0":{"2113":1},"2":{"876":1,"1792":8,"1999":1,"2000":1,"2007":5,"2094":1,"2101":1,"2105":2,"2106":3,"2111":1,"2112":2,"2153":1,"2157":1,"2158":1,"2270":1,"2328":3,"2330":4,"2339":1,"2362":1,"2367":1,"2402":1,"2414":1,"2415":1,"2532":6,"2535":1,"2537":5,"2540":1,"2543":2,"2679":1,"2696":1,"2722":1,"2758":1,"2840":1,"2841":2,"2878":1,"2880":1}}],["exits",{"2":{"587":1,"1609":1,"2094":1,"2095":1,"2106":1,"2107":1,"2112":1,"2155":1,"2157":2,"2221":1,"2328":1,"2337":1,"2415":1,"2416":1,"2527":1,"2532":1,"2537":3,"2540":1,"2541":1,"2543":2,"2659":1,"2669":1,"2672":1,"2785":1,"2862":1,"2878":1,"2879":1}}],["existent",{"2":{"992":1}}],["existence",{"2":{"877":1}}],["existed",{"2":{"852":1,"872":1,"874":1,"1078":2,"1377":1,"1385":1,"2540":1,"2856":1}}],["existing",{"0":{"1221":1,"1871":1,"2714":1,"2856":1},"2":{"375":1,"414":1,"430":1,"835":1,"1054":1,"1102":1,"1105":1,"1193":2,"1203":1,"1213":1,"1218":1,"1220":1,"1221":3,"1222":1,"1226":2,"1232":8,"1233":1,"1237":1,"1238":1,"1253":1,"1368":1,"1388":1,"1419":1,"1460":1,"1520":1,"1522":1,"1554":1,"1571":1,"1722":1,"1753":1,"1792":14,"1840":1,"1851":1,"1870":1,"1872":1,"1876":1,"1882":1,"1893":2,"1898":1,"1908":1,"2193":1,"2254":1,"2258":1,"2266":1,"2283":1,"2287":1,"2289":1,"2297":1,"2300":1,"2302":1,"2308":1,"2313":1,"2314":1,"2317":1,"2323":1,"2332":2,"2371":1,"2375":1,"2378":1,"2380":2,"2382":1,"2389":1,"2391":1,"2397":1,"2406":1,"2413":1,"2419":1,"2422":1,"2426":1,"2427":1,"2428":1,"2429":1,"2430":1,"2431":1,"2435":3,"2452":1,"2456":1,"2461":1,"2474":1,"2482":1,"2484":1,"2495":1,"2502":2,"2513":1,"2581":2,"2587":1,"2679":1,"2692":1,"2723":1}}],["exists",{"0":{"2723":1},"2":{"168":1,"308":1,"313":1,"320":1,"438":1,"701":1,"705":1,"757":1,"847":1,"849":1,"851":1,"852":1,"860":2,"864":1,"865":1,"869":1,"924":2,"925":1,"973":1,"975":1,"977":1,"994":1,"1042":1,"1095":1,"1111":1,"1139":1,"1396":1,"1406":1,"1419":1,"1431":1,"1470":1,"1678":1,"1792":19,"1856":1,"1861":1,"2109":1,"2111":2,"2112":1,"2177":1,"2438":1,"2455":1,"2476":1,"2481":2,"2530":1,"2532":3,"2534":2,"2540":1,"2558":1,"2729":1,"2834":1,"2871":1,"2872":1,"2873":1}}],["exist",{"0":{"2797":1},"2":{"165":1,"362":1,"384":1,"583":1,"584":1,"587":1,"625":1,"691":1,"704":1,"714":1,"737":1,"784":1,"841":1,"845":1,"852":1,"864":2,"869":1,"871":2,"872":2,"873":2,"875":1,"985":1,"996":2,"1055":1,"1079":2,"1111":1,"1358":1,"1376":1,"1382":1,"1386":2,"1388":1,"1396":1,"1406":1,"1409":1,"1417":1,"1419":1,"1543":1,"1593":1,"1624":1,"1678":1,"1792":4,"1840":1,"1961":1,"2098":1,"2127":1,"2322":1,"2328":1,"2337":2,"2438":1,"2489":1,"2496":1,"2534":1,"2685":1,"2741":1,"2840":2,"2849":1,"2854":2,"2868":1}}],["ext",{"2":{"2539":1,"2760":2}}],["extremely",{"2":{"1275":1,"1401":2,"1403":1}}],["extreme",{"2":{"1168":1,"1386":1}}],["extrapolations",{"2":{"2398":1}}],["extra",{"2":{"583":1,"585":1,"1070":1,"1102":2,"1327":1,"1389":2,"1410":1,"1419":1,"1423":1,"1792":1,"1850":1,"2337":1,"2383":1,"2531":1,"2835":1,"2869":1}}],["extractkeywords",{"2":{"1335":1}}],["extractive",{"2":{"1335":1}}],["extraction",{"0":{"2359":1},"2":{"903":1,"2372":1}}],["extracts",{"2":{"1102":1,"1215":1,"1243":1,"2453":1}}],["extract",{"2":{"427":1,"1408":1}}],["extracted",{"2":{"209":1,"253":1,"404":1,"2277":1,"2318":1,"2456":1,"2840":1}}],["extensible",{"2":{"1385":1,"2255":1}}],["extensive",{"2":{"1205":1}}],["extensions",{"0":{"1012":1},"1":{"1013":1,"1014":1,"1015":1},"2":{"859":1,"1010":1,"1012":1,"1013":4,"1015":1,"1036":1,"1037":1,"1104":1,"1106":2,"1126":1,"1394":1,"1515":1,"1751":1,"1792":1,"2193":1,"2274":1,"2386":2,"2465":1,"2495":1,"2567":1}}],["extension",{"0":{"2482":1},"2":{"308":2,"864":1,"876":1,"924":1,"1013":1,"1048":1,"1049":2,"1104":2,"1105":1,"1107":3,"1255":1,"1394":2,"1580":1,"1792":2,"2177":2,"2223":1,"2327":1,"2372":1,"2479":1,"2481":1,"2759":1,"2802":1}}],["extendable",{"2":{"1385":1}}],["extend",{"2":{"1338":1,"1394":1}}],["extended",{"0":{"2591":1},"2":{"1193":1,"1258":1,"1259":1,"1598":1,"2265":1,"2369":1}}],["extending",{"2":{"1071":1}}],["extends",{"2":{"1020":1,"1193":2,"1351":1,"1394":1,"2385":1}}],["externally",{"2":{"2438":1}}],["external",{"0":{"1010":1,"1048":1,"1059":1,"1060":1,"1104":1,"1114":1,"1248":1,"1328":1,"1376":1,"1682":1,"2429":1,"2874":1},"1":{"1011":1,"1012":1,"1013":1,"1014":1,"1015":1,"1016":1,"1017":1,"1018":1,"1019":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1060":2,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1,"1105":1,"1106":1,"1107":1,"1108":1,"1329":1,"1330":1,"1331":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1341":1,"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1,"1683":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1690":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1698":1,"1699":1,"1700":1},"2":{"201":1,"223":1,"308":1,"315":1,"414":1,"426":1,"436":5,"438":3,"452":1,"835":1,"837":2,"848":1,"868":1,"876":3,"1010":3,"1011":5,"1014":1,"1015":1,"1016":1,"1021":1,"1032":1,"1035":3,"1036":2,"1037":4,"1039":1,"1048":2,"1050":2,"1059":3,"1060":5,"1062":2,"1064":2,"1066":1,"1098":3,"1099":1,"1101":2,"1104":2,"1105":3,"1106":3,"1107":1,"1108":4,"1113":1,"1118":1,"1125":1,"1126":1,"1127":1,"1145":1,"1209":1,"1248":1,"1329":1,"1347":1,"1351":3,"1376":2,"1393":1,"1398":2,"1427":1,"1434":1,"1445":3,"1465":1,"1466":2,"1582":1,"1682":1,"1683":2,"1684":4,"1685":1,"1687":1,"1689":3,"1690":1,"1697":2,"1698":2,"1720":1,"1723":1,"1739":1,"1742":1,"1744":1,"1788":1,"1789":1,"1792":21,"1796":1,"1825":2,"1894":1,"1895":2,"1920":3,"1933":1,"2164":4,"2165":1,"2175":2,"2177":1,"2188":1,"2189":1,"2239":1,"2264":1,"2282":1,"2287":1,"2289":1,"2290":1,"2300":1,"2419":1,"2438":2,"2496":2,"2529":1,"2532":1,"2534":1,"2549":2,"2550":1,"2580":3,"2625":1,"2736":1,"2766":1,"2770":2,"2791":1,"2865":1,"2874":1}}],["exclusion",{"2":{"1792":3,"1898":1,"1928":1,"2431":1,"2436":1,"2519":2,"2539":1,"2549":1}}],["exclusions",{"2":{"1792":1}}],["exclusively",{"2":{"1400":1}}],["exclusive",{"2":{"1129":1,"2869":1,"2873":1}}],["excluderesponseheaders",{"2":{"1792":1,"1916":1,"1917":1,"1931":1,"2549":1,"2814":1}}],["excludelanguages",{"2":{"1792":1,"1966":1,"1967":1,"1971":1,"1975":1}}],["excludenames",{"2":{"1792":1,"1836":1,"1838":1,"2701":1}}],["excludemimetypes",{"2":{"1792":1,"1936":1,"1937":1}}],["excludeheaders",{"2":{"1340":2,"1792":1,"1916":1,"1917":1,"1931":1,"2549":1,"2814":1}}],["excludecredentialscolumnname",{"2":{"1240":1,"1792":1,"1889":1}}],["excludecredentials",{"2":{"1220":1,"1221":1}}],["excludes",{"2":{"624":1,"1967":1,"2156":1,"2526":2,"2542":1,"2860":2}}],["excludeschemas",{"2":{"349":1,"1792":2,"1836":1,"1838":1,"1839":1,"1863":1,"1897":1,"1898":1,"1909":1,"1910":1,"2225":1,"2419":1,"2431":1,"2433":1,"2435":1,"2436":1,"2701":1}}],["excludetag=slow",{"2":{"710":2,"1792":1,"2097":1,"2537":2,"2877":1}}],["excludetag",{"0":{"2097":1},"2":{"239":1,"708":1,"712":1,"1792":2,"2093":1,"2094":1,"2097":1,"2221":1,"2533":1,"2537":2,"2870":1}}],["exclude",{"0":{"1971":1,"2539":1},"2":{"238":1,"568":1,"710":1,"747":2,"753":1,"757":1,"781":1,"782":1,"784":1,"786":1,"788":1,"830":1,"864":2,"1214":1,"1220":1,"1221":1,"1232":2,"1240":1,"1358":1,"1792":8,"1838":4,"1882":1,"1889":1,"1917":2,"1937":1,"1967":1,"1971":1,"2094":1,"2097":1,"2125":2,"2221":1,"2343":1,"2432":1,"2812":1,"2852":1,"2877":1}}],["excludedmimetypepatterns",{"2":{"1792":1,"2123":1,"2125":1,"2132":1}}],["excluded",{"0":{"2489":1},"2":{"184":2,"529":1,"618":1,"622":1,"747":1,"753":1,"757":1,"781":1,"782":1,"784":1,"786":1,"788":1,"898":2,"990":1,"1054":1,"1339":5,"1358":1,"1460":1,"1655":1,"1664":1,"1689":1,"1792":5,"1969":2,"1972":2,"2107":1,"2222":1,"2292":1,"2342":1,"2375":1,"2523":2,"2535":1,"2537":1,"2539":1,"2555":4,"2722":1,"2861":1,"2879":1}}],["excited",{"2":{"1073":1,"1404":1}}],["exciting",{"2":{"912":1,"1397":1}}],["exchangeresult",{"2":{"1026":10}}],["exchangerateservice",{"2":{"1026":3}}],["exchangeservice",{"2":{"1026":2}}],["exchange",{"2":{"263":1,"383":2,"851":1,"1010":1,"1011":1,"1018":1,"1019":4,"1020":1,"1021":8,"1023":2,"1024":1,"1026":1,"1032":1,"1115":1,"1376":9,"1696":1,"2344":1,"2348":2,"2764":4,"2766":7}}],["excerpt",{"2":{"1418":1,"2328":1}}],["excessive",{"2":{"1170":1,"1769":1,"2258":1}}],["excessively",{"2":{"919":1,"1149":1}}],["except",{"2":{"216":1,"446":1,"710":1,"768":1,"776":1,"851":1,"852":2,"1080":1,"1366":1,"1382":1,"1385":2,"1792":2,"2180":1}}],["exceptions",{"2":{"216":1,"852":1,"864":1,"1071":1,"1106":1,"1568":1,"1741":1,"2242":1,"2289":1,"2384":1,"2763":1}}],["exception",{"0":{"2404":1},"2":{"208":1,"423":1,"424":1,"777":5,"859":1,"861":3,"897":2,"903":1,"1150":1,"1394":2,"1395":1,"1427":2,"1593":1,"1624":1,"1674":2,"1792":5,"1800":1,"1806":2,"1809":2,"1810":1,"2255":4,"2307":1,"2384":2,"2394":1,"2492":1,"2663":1,"2762":1,"2803":4}}],["excelrowdataasjson",{"2":{"1792":1,"2123":1,"2130":2,"2131":1}}],["excelnumericformat",{"2":{"963":2,"1792":1,"2073":1,"2077":2,"2080":1,"2652":2}}],["excellink",{"2":{"961":1}}],["excellently",{"2":{"1090":1}}],["excellent",{"2":{"909":1,"1280":1,"1342":1}}],["excelkey",{"2":{"958":1,"1792":2,"2073":1,"2077":2,"2080":1,"2123":1,"2130":2,"2652":1}}],["excelenabled",{"2":{"958":1,"963":1,"1792":1,"2073":1,"2077":2,"2080":1,"2652":1}}],["exceltimeformat",{"2":{"889":1,"1792":1,"2123":1,"2130":2}}],["exceldatetimeformat",{"2":{"889":1,"963":2,"1792":2,"2073":1,"2077":2,"2080":1,"2123":1,"2130":2,"2652":2}}],["exceldateformat",{"2":{"889":1,"1792":1,"2123":1,"2130":2}}],["exceldatareader",{"2":{"879":1,"881":1,"904":1,"2649":1}}],["excelallsheets",{"2":{"889":1,"1792":1,"2123":1,"2130":2}}],["exceluploadhandler",{"2":{"2615":1}}],["exceluploadrowcommand",{"2":{"1792":1,"2123":1,"2130":2,"2132":1}}],["exceluploadkey",{"2":{"889":1}}],["exceluploadenabled",{"2":{"889":1,"1792":1,"2123":1,"2130":2,"2132":1}}],["excelsheet=data",{"2":{"1374":1}}],["excelsheetname",{"2":{"964":1,"1792":2,"2073":1,"2077":2,"2080":1,"2123":1,"2130":2,"2652":1}}],["excelsheet",{"2":{"723":1,"961":2,"1374":2,"1413":3}}],["excelfilename",{"2":{"723":1,"961":2,"1374":2,"1413":3}}],["excelfilename=report",{"2":{"679":1,"1374":1}}],["excel",{"0":{"678":1,"769":1,"776":1,"788":1,"878":1,"884":1,"892":1,"893":1,"904":1,"947":1,"948":1,"955":1,"962":1,"1183":1,"1201":1,"1202":1,"1273":1,"1374":1,"2077":1,"2130":1,"2131":1,"2652":1},"1":{"770":1,"771":1,"772":1,"773":1,"774":1,"775":1,"776":1,"789":1,"879":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1,"948":1,"949":1,"950":1,"951":1,"952":1,"953":1,"954":1,"955":1,"956":2,"957":2,"958":2,"959":1,"960":1,"961":1,"962":1,"963":2,"964":2,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":2,"1203":2,"1204":2,"1205":2,"1206":1,"1207":1,"1208":1,"1274":1,"1275":1,"1276":1,"2078":1,"2079":1,"2131":1},"2":{"161":1,"167":1,"228":3,"673":1,"674":2,"675":7,"678":3,"679":7,"680":1,"682":1,"723":6,"746":3,"747":1,"748":1,"762":1,"769":1,"770":1,"772":6,"773":2,"774":8,"775":4,"776":2,"777":1,"788":18,"789":3,"791":2,"868":1,"878":4,"879":1,"880":1,"881":2,"884":6,"885":1,"887":3,"889":2,"892":1,"893":3,"899":2,"900":3,"902":1,"904":8,"913":1,"947":3,"948":2,"949":1,"952":3,"953":1,"956":3,"957":10,"958":1,"959":3,"960":4,"961":6,"963":3,"964":3,"965":2,"966":1,"968":2,"970":1,"971":2,"1037":4,"1086":1,"1099":7,"1121":1,"1127":1,"1183":3,"1184":2,"1202":2,"1203":2,"1206":1,"1207":2,"1208":2,"1373":1,"1374":2,"1377":1,"1382":1,"1386":2,"1413":3,"1789":1,"1792":15,"2047":1,"2054":1,"2072":1,"2073":1,"2075":1,"2077":10,"2078":1,"2079":5,"2080":2,"2081":2,"2083":1,"2122":1,"2123":2,"2125":1,"2130":6,"2132":1,"2134":2,"2164":6,"2165":4,"2233":2,"2496":2,"2572":1,"2635":2,"2648":1,"2649":4,"2650":1,"2651":1,"2652":4,"2653":5,"2664":1,"2726":1,"2856":1}}],["exceed",{"2":{"953":1,"2145":1,"2146":1}}],["exceeded",{"2":{"480":1,"919":1,"1594":1,"1792":1,"1949":2}}],["exceeds",{"2":{"139":1,"1511":1,"1517":1,"1672":1,"1792":1,"2265":1,"2463":1}}],["exceeding",{"2":{"119":1,"1149":1,"1516":1,"2265":1}}],["exp",{"2":{"1792":1}}],["expansion",{"0":{"1192":1},"2":{"1190":1,"2329":1}}],["expands",{"2":{"1097":1,"1190":1,"1192":1}}],["expanding",{"2":{"328":1,"2217":1}}],["expanded",{"2":{"74":4,"75":1,"77":1,"286":1,"330":1,"335":1,"337":1,"912":1,"915":1,"1073":1,"1192":1,"1258":1,"1431":1,"2222":1,"2265":1,"2348":1,"2504":1,"2512":1,"2518":5,"2519":1,"2522":1,"2523":3,"2587":2,"2588":1}}],["expresses",{"2":{"865":1}}],["expressed",{"2":{"659":1,"665":1,"860":1,"1125":1,"2377":1}}],["expressive",{"2":{"920":1,"1150":1,"1382":1,"1403":1}}],["expressiveness",{"2":{"860":1,"1385":2}}],["expressing",{"2":{"868":1,"1404":1}}],["expression>",{"2":{"528":1}}],["expressions",{"0":{"215":1,"1033":1,"1738":1,"2282":1},"1":{"2283":1,"2284":1,"2285":1,"2286":1},"2":{"215":1,"388":1,"395":1,"436":1,"529":3,"1105":1,"1394":1,"1516":1,"1560":1,"1569":1,"1582":1,"1738":1,"1759":1,"1792":4,"1912":1,"1923":1,"2184":1,"2185":1,"2222":2,"2230":1,"2265":1,"2282":2,"2284":2,"2509":1,"2520":1}}],["expression",{"0":{"2273":1},"2":{"212":1,"215":1,"527":1,"528":2,"529":3,"852":1,"857":1,"866":1,"954":1,"1558":1,"1582":1,"1738":2,"1792":3,"2140":1,"2141":1,"2185":1,"2273":1,"2283":2,"2284":1,"2285":1,"2360":1,"2493":1,"2513":1,"2519":2,"2575":2,"2597":1,"2764":1,"2768":1,"2833":1}}],["express",{"2":{"860":2,"1025":1,"1026":5,"1027":1,"1064":1,"1385":1,"1403":1,"2380":1}}],["experiments",{"2":{"1399":1}}],["experiences",{"2":{"1171":1,"2088":1}}],["experience",{"2":{"972":1,"1009":1,"1073":1,"1098":1,"1421":1}}],["experienced",{"2":{"865":1,"872":1,"1123":1}}],["expertise",{"2":{"1064":1}}],["expert",{"2":{"851":1}}],["experts",{"2":{"851":1}}],["expecting",{"2":{"1168":1,"2454":1}}],["expectations",{"2":{"1076":1}}],["expect",{"2":{"859":1,"1499":1}}],["expects",{"2":{"786":1,"1077":1,"1214":1,"1482":1,"1792":3,"2491":1}}],["expected",{"2":{"56":1,"73":1,"916":1,"929":2,"979":1,"980":1,"986":3,"988":2,"990":2,"994":1,"1003":1,"1076":2,"1152":1,"1169":2,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1390":1,"1399":2,"1792":10,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"2428":1,"2824":1,"2876":1}}],["expensive",{"0":{"1346":1},"2":{"307":1,"477":2,"1161":1,"1163":1,"1179":1,"1328":1,"1346":1,"1351":1,"1363":1,"2177":1,"2218":1,"2815":1}}],["exploring",{"0":{"2693":1,"2700":1},"1":{"2694":1,"2695":1,"2696":1},"2":{"2682":1}}],["explore",{"2":{"1123":1,"2169":1}}],["exploration",{"2":{"1123":1}}],["exploits",{"2":{"941":1}}],["exploit",{"2":{"927":1,"1185":1}}],["explosion",{"2":{"918":1}}],["explaration",{"2":{"1254":1}}],["explain",{"2":{"876":1,"1076":1,"1385":1,"1386":1}}],["explains",{"2":{"852":1,"2007":1,"2170":1,"2190":1,"2328":1}}],["explained",{"0":{"461":1},"1":{"462":1,"463":1,"464":1},"2":{"924":1,"1185":1}}],["explanatory",{"2":{"706":1}}],["explanation",{"2":{"221":1}}],["explicitly",{"2":{"301":1,"319":1,"463":1,"464":1,"624":1,"871":1,"918":1,"933":1,"1098":1,"1134":1,"1396":1,"1408":1,"1459":1,"1599":1,"1644":1,"1792":2,"1875":1,"1961":1,"2001":1,"2016":1,"2024":1,"2343":1,"2351":1,"2353":1,"2375":1,"2384":1,"2438":1,"2442":1,"2479":1,"2486":1,"2494":1,"2551":1,"2577":2,"2632":1,"2682":1}}],["explicit",{"0":{"248":1,"313":1,"324":1},"2":{"0":1,"108":1,"297":1,"318":2,"319":5,"326":2,"624":1,"916":1,"974":1,"980":1,"983":1,"1005":1,"1031":1,"1040":1,"1096":2,"1460":1,"1581":1,"1639":1,"1644":1,"1674":1,"1792":5,"1840":1,"1850":1,"1948":1,"2004":1,"2039":1,"2319":2,"2330":1,"2336":1,"2346":1,"2351":1,"2375":1,"2377":1,"2378":1,"2381":2,"2382":1,"2388":1,"2389":2,"2422":2,"2477":1,"2481":4,"2486":1,"2494":1,"2545":1,"2648":1,"2843":2}}],["exponential",{"2":{"1101":1}}],["exposing",{"2":{"362":1,"1096":1,"1105":1,"1382":1,"1403":1,"2164":1,"2282":1}}],["exposeasendpoint",{"2":{"2660":1}}],["exposes",{"2":{"320":1,"663":1,"1100":1,"1166":1,"1185":1,"1406":1,"1410":1,"1792":1,"2045":1,"2194":1,"2391":1,"2470":1,"2635":1}}],["expose",{"0":{"322":1,"2729":1},"2":{"218":1,"223":2,"241":1,"318":3,"326":3,"431":1,"456":1,"835":1,"937":1,"979":1,"1040":2,"1074":1,"1083":1,"1096":2,"1125":1,"1185":1,"1258":1,"1382":1,"1420":1,"1435":1,"1789":1,"1792":1,"1864":1,"1942":1,"1970":1,"2166":1,"2195":1,"2196":1,"2223":1,"2389":1,"2430":1,"2481":3,"2721":1}}],["exposed",{"2":{"171":1,"244":1,"261":1,"436":1,"867":2,"868":1,"869":1,"872":1,"874":1,"937":2,"1038":1,"1040":1,"1095":1,"1096":1,"1185":2,"1385":1,"1398":1,"1504":1,"1747":1,"1792":2,"1813":1,"1838":1,"1840":1,"1930":1,"2095":1,"2195":1,"2344":1,"2391":1,"2438":1,"2477":1,"2538":1,"2539":2,"2788":1}}],["exposure",{"2":{"173":1,"317":1,"1185":1,"1251":1,"1792":1,"2017":1,"2558":1,"2841":1}}],["exporttypes",{"0":{"1571":1,"2484":1},"2":{"1553":1,"1559":1,"1571":1,"1792":1,"2484":2}}],["exporteventsources",{"0":{"1573":1},"2":{"1416":1,"1417":1,"1553":1,"1563":1,"1581":1,"1792":1,"2830":1,"2838":1}}],["exportedby",{"2":{"1193":1}}],["exported",{"2":{"720":1,"971":1,"1187":1,"1188":2,"1189":1,"1192":2,"1373":1,"1416":1,"1571":1,"1572":1,"1573":1,"1581":1,"2359":1,"2656":1}}],["exporting",{"2":{"953":1}}],["exporturls",{"0":{"1572":1},"2":{"720":1,"1415":1,"1416":1,"1417":1,"1553":1,"1563":1,"1581":1,"1792":1,"2655":1}}],["exports",{"0":{"947":1,"948":1,"1183":1},"1":{"948":1,"949":1,"950":1,"951":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1},"2":{"720":1,"723":1,"948":1,"968":1,"971":1,"1026":1,"1037":3,"1099":1,"1368":1,"1386":2,"1413":1,"1574":1,"2164":2,"2165":1,"2655":1,"2726":1}}],["export",{"0":{"489":1,"723":1,"955":1,"1373":1,"1563":1,"2484":1,"2654":1,"2655":1},"1":{"956":1,"957":1,"958":1,"2655":1,"2656":1},"2":{"85":1,"128":3,"129":1,"342":1,"343":1,"344":1,"386":3,"429":1,"489":2,"490":2,"491":2,"493":3,"543":2,"544":3,"601":1,"602":1,"603":1,"604":1,"719":1,"720":2,"832":1,"894":1,"938":2,"947":3,"948":7,"953":1,"958":1,"959":1,"961":1,"968":3,"969":1,"971":1,"995":2,"1024":1,"1099":3,"1127":1,"1163":1,"1199":2,"1203":1,"1207":1,"1317":2,"1342":1,"1366":1,"1377":1,"1386":1,"1408":2,"1415":2,"1559":1,"1563":2,"1567":1,"1571":3,"1572":1,"1574":1,"1606":2,"1792":2,"2081":1,"2164":1,"2165":1,"2206":3,"2233":1,"2247":1,"2310":1,"2313":1,"2357":1,"2484":3,"2655":1,"2656":1,"2689":4,"2856":1}}],["expirashun",{"2":{"2445":1}}],["expirations",{"2":{"1458":1,"1519":1,"2375":1,"2380":1}}],["expiration",{"0":{"118":1,"1143":1},"2":{"91":1,"101":1,"104":1,"105":1,"106":1,"108":1,"118":1,"120":1,"123":1,"214":1,"230":1,"232":1,"278":1,"281":1,"868":1,"1067":1,"1098":1,"1148":1,"1150":4,"1244":1,"1451":1,"1454":4,"1459":1,"1511":3,"1520":3,"1521":2,"1523":1,"1525":1,"1527":1,"1529":3,"1532":2,"1535":1,"1537":1,"1743":1,"1792":14,"2205":2,"2375":1,"2377":3,"2380":8,"2381":6,"2438":1,"2445":1,"2502":1,"2554":4,"2580":1}}],["expiring",{"0":{"2381":1},"2":{"1227":1,"2381":2}}],["expiretimespan",{"2":{"1459":1,"2375":1}}],["expire",{"2":{"1159":1,"1511":1,"1532":1,"1722":1,"1792":3,"2381":3,"2502":1}}],["expired",{"2":{"1137":1,"1235":1,"1243":1,"1511":1,"1513":1,"1722":1,"1792":3,"1885":1,"2494":1,"2502":1,"2769":1}}],["expires`",{"2":{"1792":1}}],["expiresin",{"2":{"1222":1,"1455":1,"2554":1}}],["expires",{"0":{"91":1,"105":1,"278":1,"1532":2},"1":{"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1},"2":{"91":1,"92":1,"94":1,"95":1,"96":1,"97":1,"101":1,"105":2,"108":1,"110":1,"118":1,"119":1,"120":1,"123":1,"230":1,"278":3,"281":1,"531":1,"835":1,"1068":1,"1113":1,"1135":2,"1143":1,"1147":2,"1149":1,"1179":3,"1213":1,"1214":1,"1232":1,"1234":1,"1235":1,"1511":1,"1515":1,"1521":1,"1529":1,"1532":2,"1535":1,"1537":1,"1792":5,"2033":1,"2037":1,"2041":1,"2205":1,"2207":1,"2210":1,"2212":1,"2274":1,"2329":1,"2380":2,"2381":3,"2551":1,"2580":3,"2745":1}}],["expiry",{"2":{"531":1,"1515":1,"1830":1,"2498":1,"2506":1}}],["examined",{"2":{"2110":1,"2528":1}}],["examine",{"2":{"847":1}}],["example6api",{"2":{"1361":1}}],["example10api",{"2":{"1342":1}}],["example14api",{"2":{"961":1}}],["example8api",{"2":{"1318":1,"1321":1,"2830":1,"2836":1}}],["example2api",{"2":{"976":1,"985":1,"995":1,"996":1,"997":2,"998":1}}],["example7api",{"2":{"894":1}}],["example",{"0":{"157":1,"174":1,"180":1,"187":1,"263":1,"264":1,"298":1,"380":1,"577":1,"584":1,"686":1,"695":1,"705":1,"710":1,"715":1,"750":1,"755":1,"764":1,"774":1,"783":1,"785":1,"787":1,"789":1,"883":1,"884":1,"913":1,"970":1,"1171":1,"1207":1,"1212":1,"1339":1,"1408":1,"1425":1,"1429":1,"1483":1,"1494":1,"1502":1,"1503":1,"1504":1,"1505":1,"1529":1,"1534":1,"1542":1,"1546":1,"1547":1,"1548":1,"1578":1,"1598":1,"1629":1,"1633":1,"1646":1,"1663":1,"1678":1,"1689":1,"1698":1,"1710":1,"1730":1,"1734":1,"1742":1,"1758":1,"1777":1,"1810":1,"1859":1,"1863":1,"1891":1,"1907":1,"1911":1,"1931":1,"1944":1,"1960":1,"1975":1,"1995":1,"2006":1,"2012":1,"2026":1,"2042":1,"2065":1,"2076":1,"2078":1,"2080":1,"2089":1,"2132":1,"2146":1,"2187":1,"2194":1,"2290":1,"2294":1,"2434":1,"2697":1,"2815":1,"2836":1},"1":{"585":1,"586":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1426":1,"1427":1,"1428":1,"1504":1,"1579":1,"1580":1,"1581":1,"1582":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1735":1,"1736":1,"1737":1,"1778":1,"1779":1,"1780":1,"1781":1,"1892":1,"1893":1,"2027":1,"2028":1,"2029":1,"2066":1,"2067":1,"2068":1,"2069":1},"2":{"57":1,"58":1,"75":1,"121":1,"128":2,"206":1,"208":1,"209":2,"211":3,"212":1,"213":3,"214":4,"215":1,"298":1,"302":1,"305":2,"308":2,"309":1,"310":1,"383":2,"390":1,"394":1,"423":4,"430":1,"436":4,"442":2,"444":2,"446":7,"449":2,"453":1,"455":1,"488":1,"489":2,"493":2,"531":1,"533":1,"563":1,"611":1,"612":1,"653":1,"654":1,"695":1,"700":1,"704":1,"841":1,"844":1,"845":3,"847":1,"848":1,"849":1,"851":1,"860":1,"864":1,"872":1,"883":2,"884":2,"886":4,"894":1,"902":2,"904":5,"911":1,"913":3,"914":4,"915":3,"916":6,"917":2,"918":5,"919":3,"920":2,"921":1,"922":2,"924":7,"925":2,"926":4,"928":4,"929":3,"930":15,"932":3,"933":1,"934":5,"935":3,"936":3,"937":4,"938":8,"941":1,"946":1,"947":1,"956":1,"957":1,"959":2,"961":3,"966":1,"970":1,"971":1,"972":1,"976":5,"977":12,"979":10,"980":6,"982":4,"986":4,"987":1,"988":10,"989":3,"990":10,"991":4,"992":2,"994":6,"995":4,"998":2,"1017":2,"1019":4,"1020":1,"1021":6,"1030":1,"1033":1,"1034":3,"1036":1,"1038":1,"1043":1,"1044":1,"1045":2,"1047":2,"1048":2,"1050":2,"1051":4,"1053":4,"1054":7,"1055":4,"1056":7,"1057":6,"1058":4,"1059":1,"1060":6,"1061":1,"1062":4,"1064":1,"1065":2,"1073":1,"1074":3,"1075":1,"1078":2,"1103":1,"1105":2,"1111":1,"1119":1,"1139":1,"1183":1,"1185":3,"1187":1,"1188":3,"1189":1,"1192":5,"1193":1,"1196":1,"1200":2,"1202":1,"1203":1,"1205":1,"1207":3,"1208":1,"1209":1,"1211":1,"1212":1,"1218":1,"1220":1,"1225":2,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1239":1,"1252":1,"1254":1,"1307":4,"1308":3,"1309":3,"1310":3,"1317":1,"1321":3,"1327":1,"1334":1,"1336":2,"1337":2,"1338":5,"1339":6,"1348":1,"1351":1,"1355":2,"1357":3,"1358":3,"1362":2,"1366":1,"1367":1,"1369":2,"1370":1,"1371":2,"1372":7,"1373":1,"1375":3,"1376":8,"1386":16,"1387":3,"1390":3,"1391":5,"1393":5,"1394":4,"1395":5,"1396":3,"1398":9,"1399":1,"1408":3,"1410":2,"1414":1,"1419":1,"1423":2,"1426":2,"1427":4,"1430":1,"1431":6,"1433":1,"1449":4,"1579":1,"1608":1,"1614":3,"1616":2,"1632":1,"1640":2,"1655":1,"1697":3,"1708":1,"1709":3,"1730":3,"1731":3,"1738":1,"1740":3,"1742":1,"1792":34,"1833":1,"1856":1,"1858":1,"1868":1,"1875":2,"1894":2,"1900":2,"1907":1,"1920":2,"1921":1,"1924":1,"1926":1,"1931":1,"1973":1,"1974":1,"2021":1,"2062":1,"2111":1,"2119":1,"2125":1,"2160":1,"2161":1,"2162":1,"2164":1,"2165":2,"2166":1,"2167":2,"2168":1,"2170":1,"2175":1,"2180":1,"2181":1,"2183":1,"2184":1,"2247":1,"2252":2,"2253":2,"2254":1,"2255":1,"2264":1,"2265":1,"2272":1,"2273":1,"2283":1,"2286":1,"2288":3,"2290":1,"2297":1,"2308":1,"2323":1,"2327":1,"2333":1,"2336":1,"2337":3,"2348":2,"2376":1,"2380":1,"2394":1,"2410":1,"2411":2,"2413":2,"2417":1,"2425":2,"2428":1,"2429":2,"2442":1,"2444":1,"2445":1,"2447":1,"2456":1,"2483":1,"2526":2,"2529":1,"2530":1,"2531":1,"2532":1,"2546":1,"2549":3,"2555":1,"2565":1,"2580":2,"2586":1,"2588":2,"2589":1,"2607":1,"2625":1,"2632":3,"2633":5,"2634":1,"2635":2,"2739":1,"2762":1,"2765":1,"2766":1,"2768":2,"2806":1,"2810":1,"2811":4,"2823":1,"2827":1,"2834":2,"2839":2,"2842":2,"2850":1,"2860":2,"2865":1,"2868":1,"2869":2,"2871":1,"2873":1}}],["examples",{"0":{"6":1,"15":1,"36":1,"47":1,"59":1,"70":1,"82":1,"93":1,"103":1,"114":1,"127":1,"135":1,"146":1,"194":1,"205":1,"246":1,"270":1,"287":1,"311":1,"321":1,"331":1,"341":1,"350":1,"359":1,"371":1,"391":1,"400":1,"425":1,"450":1,"465":1,"475":1,"486":1,"500":1,"509":1,"519":1,"530":1,"538":1,"552":1,"561":1,"571":1,"591":1,"600":1,"610":1,"620":1,"630":1,"640":1,"657":1,"676":1,"721":1,"731":1,"796":1,"810":1,"825":1,"1461":1,"1579":1,"1839":1,"1842":1,"2003":1,"2160":1,"2163":1,"2164":1,"2165":1,"2188":1,"2212":1,"2770":1,"2816":1,"2837":1},"1":{"7":1,"8":1,"9":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"37":1,"38":1,"39":1,"40":1,"48":1,"49":1,"50":1,"60":1,"61":1,"62":1,"71":1,"72":1,"83":1,"84":1,"85":1,"86":1,"94":1,"95":1,"96":1,"97":1,"104":1,"105":1,"106":1,"107":1,"115":1,"116":1,"117":1,"118":1,"119":1,"128":1,"129":1,"136":1,"137":1,"138":1,"147":1,"148":1,"149":1,"195":1,"196":1,"206":1,"207":1,"208":1,"209":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"271":1,"272":1,"273":1,"274":1,"275":1,"288":1,"289":1,"290":1,"291":1,"292":1,"312":1,"313":1,"314":1,"322":1,"323":1,"324":1,"325":1,"332":1,"333":1,"334":1,"335":1,"342":1,"343":1,"344":1,"351":1,"352":1,"353":1,"354":1,"360":1,"361":1,"372":1,"373":1,"374":1,"375":1,"392":1,"393":1,"394":1,"401":1,"402":1,"403":1,"426":1,"427":1,"428":1,"451":1,"452":1,"453":1,"454":1,"466":1,"467":1,"468":1,"476":1,"477":1,"478":1,"479":1,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"501":1,"502":1,"503":1,"510":1,"511":1,"520":1,"521":1,"522":1,"523":1,"531":1,"532":1,"533":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"553":1,"554":1,"555":1,"562":1,"563":1,"564":1,"565":1,"566":1,"572":1,"573":1,"574":1,"592":1,"593":1,"594":1,"601":1,"602":1,"603":1,"604":1,"611":1,"612":1,"613":1,"614":1,"621":1,"622":1,"623":1,"631":1,"632":1,"633":1,"641":1,"642":1,"643":1,"644":1,"645":1,"658":1,"659":1,"660":1,"661":1,"662":1,"677":1,"678":1,"679":1,"722":1,"723":1,"724":1,"732":1,"733":1,"734":1,"735":1,"736":1,"797":1,"798":1,"799":1,"800":1,"811":1,"812":1,"813":1,"814":1,"815":1,"826":1,"827":1,"828":1,"1462":1,"1463":1,"1464":1,"2161":1,"2162":1,"2163":1,"2164":2,"2165":2,"2166":2,"2167":2,"2168":1,"2169":1},"2":{"92":1,"133":2,"221":1,"306":1,"338":1,"448":1,"845":1,"878":1,"913":1,"921":1,"947":1,"963":1,"970":1,"976":1,"1010":1,"1047":1,"1048":1,"1082":1,"1097":1,"1135":2,"1183":1,"1207":1,"1212":1,"1302":1,"1328":1,"1352":1,"1368":1,"1380":3,"1386":4,"1392":1,"1408":1,"1409":1,"1410":1,"1412":1,"1413":1,"1433":6,"1472":1,"1482":1,"1566":1,"1579":1,"1664":1,"1665":1,"1792":5,"1894":1,"2077":2,"2160":4,"2161":1,"2162":1,"2164":1,"2165":1,"2169":1,"2188":1,"2225":1,"2254":1,"2371":1,"2411":1,"2505":1,"2537":1,"2545":4,"2546":1,"2652":2,"2839":1,"2856":2,"2858":1,"2859":2,"2860":3,"2872":1,"2873":1}}],["exact",{"2":{"656":1,"859":1,"865":1,"879":1,"916":1,"1045":1,"1382":1,"1396":1,"1523":1,"1707":1,"1792":3,"1858":1,"2107":1,"2112":1,"2170":1,"2455":1,"2456":1,"2466":1,"2532":1,"2537":1,"2723":1,"2759":1,"2806":1,"2827":1,"2828":1,"2832":2,"2871":1,"2873":1}}],["exactly",{"2":{"32":1,"102":1,"304":1,"320":1,"370":1,"383":1,"390":1,"448":1,"690":2,"836":1,"845":1,"848":1,"851":1,"852":3,"855":1,"856":1,"857":1,"860":2,"863":1,"864":2,"874":1,"876":1,"920":1,"929":1,"980":1,"983":1,"995":1,"1002":1,"1045":1,"1065":1,"1079":1,"1096":2,"1122":1,"1176":1,"1185":1,"1214":1,"1366":1,"1371":1,"1382":3,"1385":2,"1401":1,"1423":1,"1430":1,"1431":1,"1441":1,"1442":1,"1792":2,"1825":1,"1958":1,"2348":1,"2377":1,"2379":1,"2389":2,"2422":1,"2452":1,"2461":1,"2465":3,"2470":1,"2477":1,"2487":1,"2498":2,"2506":1,"2511":1,"2527":1,"2528":1,"2529":1,"2531":1,"2533":1,"2546":1,"2677":1,"2724":1,"2742":1,"2799":1,"2862":1,"2864":1,"2868":2,"2869":1,"2876":1,"2878":1}}],["enlist=false",{"2":{"2824":1,"2825":1}}],["engaged",{"2":{"2459":1}}],["engages",{"2":{"2423":1,"2462":1}}],["engineer",{"2":{"865":1}}],["engineers",{"2":{"857":1}}],["engineering",{"2":{"847":2,"852":1,"1078":1,"1096":1}}],["engine=memory",{"2":{"848":1}}],["engine=",{"2":{"848":1}}],["engines",{"2":{"848":1}}],["engine",{"0":{"857":1},"2":{"377":1,"848":2,"849":1,"851":1,"852":1,"857":2,"860":3,"861":2,"864":2,"865":2,"874":1,"875":1,"1077":1,"1134":1,"1403":1,"1432":1,"1792":2,"1802":1,"2095":1,"2096":1,"2333":1,"2537":2,"2539":1,"2794":1,"2795":2}}],["enhancement",{"0":{"2371":1},"2":{"2371":1}}],["enjoy",{"2":{"1081":1,"1254":1,"1370":2,"2822":1,"2824":1,"2850":2}}],["enums",{"2":{"2267":1}}],["enum",{"2":{"872":1,"1605":1,"2277":1,"2330":3,"2372":1,"2497":1,"2621":2,"2670":1,"2688":1}}],["energy",{"2":{"871":1,"1037":1,"1403":1,"1405":3}}],["enemy",{"2":{"857":1,"865":1}}],["enforcing",{"2":{"864":1,"985":1}}],["enforcement",{"2":{"864":2,"865":1,"1199":1,"2223":1,"2490":1,"2506":1}}],["enforces",{"0":{"982":1},"2":{"843":1,"845":2,"863":1,"940":1,"974":1,"1419":1}}],["enforced",{"0":{"2490":1},"2":{"320":1,"327":1,"803":1,"852":1,"863":1,"864":2,"865":3,"921":1,"975":1,"983":1,"1004":1,"1005":3,"1009":1,"1045":1,"1077":1,"1098":1,"1792":1,"1825":1,"1830":1,"1832":1,"1833":1,"1834":1,"2223":1,"2481":1,"2498":1}}],["enforce",{"2":{"175":1,"864":2,"1500":1,"1792":1}}],["en",{"2":{"841":1,"1792":16,"2257":4,"2632":2,"2633":1,"2634":1}}],["enough",{"2":{"836":1,"864":1,"1037":1,"1079":1,"1150":1,"1165":1,"1402":2,"2459":1}}],["enabling",{"0":{"1141":1,"1157":1,"1981":1,"2689":1,"2761":1,"2808":1},"2":{"529":1,"880":1,"1094":1,"1105":2,"1111":1,"1130":1,"1825":1,"1942":1,"2110":1,"2185":1,"2284":1,"2329":1,"2353":1,"2481":1,"2530":1,"2550":1,"2615":1,"2625":1,"2759":1,"2791":1,"2806":1}}],["enableforhttps",{"2":{"1792":1,"1936":1,"1937":1,"1942":1,"1944":2}}],["enableregister",{"2":{"1217":2,"1220":2,"1224":1,"1253":1,"1792":1,"1870":1,"1874":1,"1893":1}}],["enables",{"2":{"179":2,"384":1,"414":1,"650":1,"666":1,"667":1,"761":1,"771":1,"779":1,"885":1,"904":1,"905":1,"998":1,"1062":1,"1187":1,"1362":1,"1458":1,"1511":1,"1745":1,"1792":5,"1816":1,"1979":1,"2024":1,"2264":1,"2300":1,"2346":1,"2347":1,"2371":1,"2531":1,"2532":1,"2554":1,"2633":1,"2664":1}}],["enabled=true",{"2":{"1521":1,"2155":1}}],["enabled",{"0":{"177":1,"1816":1,"2001":1,"2155":1,"2350":1},"1":{"178":1,"179":1,"180":1,"181":1},"2":{"102":1,"106":2,"107":1,"121":3,"176":1,"177":3,"178":2,"179":2,"180":2,"182":1,"216":1,"223":1,"317":1,"336":1,"378":1,"430":2,"436":1,"449":1,"455":1,"476":2,"477":2,"478":2,"479":2,"577":1,"624":1,"673":2,"688":1,"704":1,"718":2,"720":1,"868":2,"889":1,"919":1,"937":1,"958":1,"963":1,"966":1,"967":2,"1022":1,"1045":1,"1054":1,"1059":2,"1062":2,"1067":2,"1068":1,"1069":2,"1135":2,"1141":1,"1145":1,"1146":1,"1147":2,"1148":1,"1150":4,"1152":2,"1153":1,"1154":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":3,"1177":5,"1196":1,"1197":1,"1199":1,"1217":2,"1224":1,"1340":1,"1356":1,"1408":2,"1415":1,"1416":1,"1417":3,"1418":1,"1445":1,"1449":1,"1455":1,"1458":3,"1459":1,"1469":1,"1475":2,"1477":2,"1482":1,"1488":1,"1489":1,"1494":1,"1498":1,"1499":1,"1502":1,"1503":1,"1505":1,"1510":1,"1511":1,"1513":1,"1514":1,"1515":2,"1516":2,"1517":1,"1518":1,"1520":4,"1521":1,"1522":1,"1529":4,"1534":2,"1548":1,"1553":1,"1554":1,"1572":1,"1579":1,"1580":1,"1581":1,"1582":1,"1587":1,"1588":1,"1597":1,"1598":1,"1605":5,"1615":1,"1617":1,"1622":1,"1623":1,"1625":1,"1633":1,"1638":1,"1639":1,"1640":2,"1641":1,"1644":1,"1646":2,"1650":1,"1651":1,"1661":1,"1662":1,"1663":2,"1683":1,"1684":1,"1690":2,"1696":1,"1697":2,"1698":3,"1702":1,"1703":1,"1706":1,"1707":1,"1708":1,"1709":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1721":1,"1722":1,"1735":1,"1752":1,"1753":1,"1758":3,"1759":1,"1763":1,"1764":1,"1769":1,"1770":1,"1771":1,"1776":1,"1778":2,"1779":1,"1780":1,"1781":1,"1792":83,"1814":1,"1824":1,"1867":1,"1874":1,"1892":1,"1893":1,"1897":1,"1898":1,"1899":1,"1907":1,"1909":1,"1911":1,"1912":1,"1916":1,"1917":1,"1926":1,"1928":1,"1931":2,"1936":1,"1937":1,"1944":2,"1948":1,"1949":1,"1951":2,"1952":2,"1953":2,"1954":2,"1955":3,"1958":3,"1959":2,"1960":6,"1966":1,"1967":1,"1974":1,"1979":1,"1980":1,"1981":2,"1983":1,"1995":2,"1999":1,"2000":2,"2001":1,"2003":1,"2010":1,"2012":1,"2015":1,"2016":2,"2017":1,"2018":2,"2019":1,"2020":1,"2021":1,"2027":1,"2028":1,"2029":1,"2033":2,"2034":1,"2035":1,"2037":1,"2038":1,"2039":1,"2040":1,"2042":2,"2046":1,"2047":1,"2049":1,"2054":1,"2055":1,"2058":1,"2059":1,"2060":1,"2061":2,"2062":1,"2063":1,"2064":1,"2066":1,"2067":1,"2068":1,"2069":1,"2073":1,"2074":1,"2075":1,"2077":1,"2080":1,"2106":2,"2111":8,"2123":1,"2124":1,"2132":1,"2138":1,"2139":1,"2142":1,"2146":1,"2154":2,"2155":1,"2156":1,"2178":1,"2247":1,"2254":1,"2257":5,"2264":1,"2265":1,"2267":1,"2274":1,"2291":1,"2297":2,"2308":2,"2330":3,"2333":1,"2350":2,"2351":2,"2352":1,"2353":2,"2357":1,"2359":1,"2360":1,"2375":4,"2378":4,"2379":3,"2380":7,"2381":2,"2389":1,"2394":1,"2405":1,"2412":3,"2421":1,"2422":1,"2429":1,"2434":1,"2441":1,"2443":4,"2470":1,"2471":2,"2476":2,"2481":1,"2486":2,"2492":1,"2497":5,"2502":1,"2520":1,"2532":8,"2537":3,"2541":3,"2542":2,"2549":4,"2551":2,"2554":1,"2558":1,"2565":2,"2575":1,"2597":1,"2607":1,"2611":2,"2632":5,"2633":1,"2634":2,"2635":1,"2645":1,"2655":1,"2688":5,"2689":1,"2690":2,"2719":1,"2736":1,"2746":1,"2761":1,"2769":2,"2808":1,"2814":2,"2821":2,"2824":1,"2825":2,"2841":1,"2858":1,"2871":1,"2878":1}}],["enable",{"0":{"180":1,"732":1,"2745":1,"2746":1},"2":{"43":1,"54":1,"55":1,"99":1,"112":1,"131":1,"151":1,"170":2,"176":1,"177":1,"201":1,"223":1,"225":1,"230":1,"233":1,"236":1,"327":1,"336":1,"346":1,"455":1,"456":2,"606":1,"635":1,"648":1,"649":1,"688":1,"720":4,"728":1,"794":1,"851":1,"868":1,"889":1,"917":4,"924":1,"958":1,"1005":1,"1022":1,"1065":1,"1141":1,"1175":1,"1193":1,"1217":1,"1224":2,"1245":1,"1252":2,"1340":1,"1356":1,"1367":1,"1408":1,"1421":1,"1434":1,"1447":1,"1451":1,"1454":1,"1475":1,"1477":1,"1486":1,"1489":1,"1494":1,"1499":1,"1506":1,"1508":1,"1511":1,"1516":1,"1530":1,"1535":1,"1537":1,"1540":4,"1544":3,"1549":2,"1554":1,"1588":1,"1616":1,"1623":1,"1639":2,"1651":1,"1684":1,"1696":1,"1703":1,"1717":1,"1720":1,"1722":1,"1753":1,"1764":1,"1792":39,"1803":1,"1804":1,"1805":1,"1807":1,"1825":1,"1860":1,"1864":1,"1867":1,"1874":2,"1898":1,"1917":1,"1932":3,"1934":1,"1937":2,"1942":1,"1944":1,"1949":1,"1951":1,"1952":1,"1953":1,"1954":1,"1967":1,"1973":2,"1980":1,"1981":1,"1994":1,"2000":1,"2001":2,"2012":1,"2016":1,"2034":1,"2038":1,"2047":1,"2052":1,"2059":1,"2074":1,"2075":1,"2077":1,"2110":1,"2124":1,"2126":1,"2127":1,"2128":1,"2130":1,"2133":1,"2136":1,"2139":1,"2172":1,"2175":1,"2183":1,"2184":2,"2205":1,"2254":1,"2264":2,"2291":1,"2330":1,"2353":1,"2481":1,"2530":1,"2554":1,"2587":2,"2632":1,"2633":2,"2634":2,"2635":3,"2641":1,"2689":1,"2733":1,"2824":1,"2825":1,"2835":1,"2841":1}}],["enriched",{"2":{"452":2,"1338":1,"1347":2,"1974":1,"2607":1}}],["enrich",{"2":{"452":1,"1037":1,"1105":2,"1332":1,"2803":1,"2806":1}}],["enrichment",{"0":{"452":1,"1347":1},"2":{"876":1,"1029":1,"1035":1,"1328":1,"1351":1,"1974":1,"2607":1}}],["envfile",{"0":{"2272":1},"2":{"1603":1,"1604":1,"1608":2,"1792":1,"2272":3,"2719":1}}],["env",{"0":{"1608":1},"2":{"390":4,"395":1,"873":1,"926":1,"1107":2,"1119":2,"1441":1,"1574":1,"1604":3,"1605":3,"1607":1,"1608":4,"1792":2,"2040":6,"2119":1,"2224":1,"2272":4,"2456":1,"2474":1,"2476":3,"2477":1,"2497":3,"2534":1,"2688":3,"2704":1,"2705":2,"2719":3}}],["environmentname",{"2":{"1792":3,"1808":1,"2116":1,"2117":1,"2119":1,"2701":1,"2702":1,"2704":1}}],["environments",{"2":{"1145":1,"1146":1,"1708":1,"1792":2,"1944":1,"1974":1,"1983":1,"2059":1,"2346":1,"2543":1,"2607":1,"2635":1,"2680":1}}],["environment",{"0":{"390":1,"1606":1,"1607":1,"1615":1,"1862":1,"2040":1,"2483":1,"2497":1,"2687":1,"2689":1,"2690":1,"2719":1},"1":{"2688":1,"2689":1,"2690":1},"2":{"212":1,"388":1,"390":6,"394":1,"395":1,"534":1,"873":2,"926":1,"1026":1,"1067":1,"1080":1,"1255":1,"1416":1,"1457":1,"1574":1,"1604":3,"1606":1,"1607":1,"1608":2,"1615":1,"1633":1,"1661":2,"1738":1,"1785":1,"1787":1,"1792":17,"1794":1,"1800":2,"1807":2,"1808":3,"1856":1,"1862":3,"2038":1,"2040":3,"2117":1,"2119":3,"2223":2,"2224":2,"2272":3,"2474":2,"2476":1,"2477":1,"2483":3,"2532":1,"2537":1,"2543":2,"2645":2,"2680":1,"2681":1,"2687":2,"2689":2,"2690":1,"2697":1,"2702":1,"2704":3,"2705":3,"2764":1,"2768":1,"2772":1,"2804":3,"2874":1}}],["ensures",{"2":{"666":1,"933":1,"937":1,"944":1,"985":1,"989":1,"1147":1,"1371":1,"1621":1,"1982":1,"2359":1,"2589":1,"2603":1}}],["ensure",{"2":{"380":1,"844":1,"929":1,"1074":1,"1169":1,"1178":1,"1193":1,"1654":1,"2161":1,"2333":1,"2792":1,"2819":1}}],["ensuring",{"2":{"366":1,"930":1,"974":1,"986":1,"994":1,"2776":1}}],["encapsulate",{"2":{"974":1,"1096":1}}],["encapsulation",{"0":{"1437":1},"2":{"843":4,"849":1,"851":1,"1385":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1}}],["encoding=textencoding",{"2":{"1202":1}}],["encoding",{"2":{"843":1,"1138":1,"1198":1,"1218":1,"1340":1,"1792":2,"1916":2,"1917":2,"1931":2,"1940":1,"1941":1,"2309":1,"2495":1,"2549":2,"2814":2,"2824":1}}],["encoder",{"2":{"2040":1}}],["encodes",{"2":{"1403":1}}],["encodeuricomponent",{"2":{"1364":1,"1574":2}}],["encode",{"2":{"308":5,"1214":2,"1232":3,"1234":2,"2177":2}}],["encoded",{"2":{"58":1,"64":1,"1214":1,"1232":2,"1234":1,"1243":1,"1792":2,"1856":1,"1882":2,"1884":1,"1925":2,"2517":2}}],["enclosed",{"2":{"768":2,"786":3,"891":2,"2128":1}}],["encrypting",{"2":{"2565":1}}],["encryptionalgorithm",{"2":{"1650":1,"1651":1,"1656":1,"1663":1,"1792":1}}],["encryption",{"0":{"1054":1,"1656":1,"1659":1,"1660":1,"1661":1,"1662":1,"1664":1,"2565":1},"1":{"1660":1,"1661":1,"1662":1},"2":{"182":2,"187":1,"188":1,"189":1,"191":1,"868":1,"1054":1,"1100":5,"1127":1,"1198":1,"1496":1,"1649":2,"1651":4,"1656":1,"1658":1,"1660":1,"1662":2,"1664":3,"1667":1,"1788":1,"1792":6,"1795":1,"2291":2,"2294":1,"2296":1,"2297":3,"2329":1,"2565":2,"2856":1}}],["encrypts",{"2":{"184":1,"1098":1,"2292":1}}],["encrypt",{"0":{"182":1,"183":1,"2291":1,"2292":1},"1":{"183":1,"184":2,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1},"2":{"182":1,"184":6,"187":1,"188":1,"237":2,"868":2,"1100":1,"1127":1,"1382":1,"1649":1,"1651":1,"1662":1,"1664":4,"1665":1,"1667":1,"2230":1,"2291":1,"2292":5,"2294":1,"2295":1,"2296":1,"2297":1,"2323":1,"2329":1,"2353":2}}],["encrypted",{"0":{"2757":1},"2":{"64":1,"182":2,"187":1,"188":5,"835":1,"1054":3,"1086":2,"1098":5,"1100":1,"1126":1,"1445":1,"1450":1,"1457":1,"1653":1,"1659":1,"1664":3,"1792":4,"2171":1,"2173":1,"2291":2,"2294":1,"2295":1,"2296":5,"2297":4,"2554":1}}],["entities",{"2":{"851":2,"852":1,"916":1}}],["entity",{"2":{"844":1,"845":1,"849":1,"857":1,"861":1,"871":1,"874":1,"1366":2}}],["entire",{"0":{"84":1},"2":{"81":1,"88":1,"119":1,"668":1,"847":1,"849":2,"851":2,"852":1,"861":1,"864":1,"865":1,"868":1,"872":2,"876":1,"888":1,"903":1,"909":1,"914":1,"915":1,"920":1,"948":3,"949":1,"958":1,"969":1,"977":1,"979":1,"993":1,"1005":1,"1006":1,"1021":1,"1075":2,"1076":2,"1096":2,"1098":1,"1108":1,"1185":1,"1211":1,"1309":2,"1324":1,"1399":1,"1400":1,"1401":1,"1403":1,"1404":1,"1406":1,"1431":1,"1517":1,"1557":1,"1755":1,"1756":1,"1758":1,"1792":3,"1868":1,"1909":1,"2265":1,"2320":1,"2337":1,"2389":1,"2481":1,"2537":1,"2615":1,"2678":1,"2695":1,"2853":1,"2871":1,"2875":1,"2879":1}}],["entirely",{"2":{"0":1,"301":1,"347":1,"421":1,"445":1,"582":1,"586":1,"587":1,"848":2,"851":2,"866":1,"871":1,"872":1,"942":1,"1033":1,"1037":1,"1038":1,"1066":1,"1067":1,"1069":1,"1075":1,"1101":1,"1108":1,"1139":1,"1150":2,"1162":1,"1209":1,"1328":1,"1338":1,"1384":1,"1398":1,"1511":1,"1524":1,"1525":1,"1529":1,"1569":1,"1575":1,"1746":1,"1792":6,"1925":1,"1929":1,"1956":1,"2021":1,"2265":1,"2337":2,"2346":1,"2347":1,"2379":1,"2414":1,"2421":1,"2440":1,"2510":1,"2537":2,"2544":1,"2632":1,"2656":1,"2762":1,"2794":1,"2815":1,"2840":1,"2854":1,"2874":1}}],["entra",{"2":{"1045":1,"1792":1,"1825":1}}],["entries",{"0":{"2381":1},"2":{"108":1,"116":1,"356":1,"1024":2,"1067":2,"1142":1,"1143":1,"1359":1,"1511":2,"1513":1,"1522":2,"1523":1,"1532":1,"1703":2,"1706":3,"1722":1,"1792":12,"1801":1,"1898":1,"1900":1,"1957":1,"2111":1,"2221":1,"2254":1,"2379":1,"2380":3,"2381":3,"2410":1,"2422":1,"2495":1,"2502":2,"2537":1,"2633":2,"2666":1,"2769":1}}],["entrypoint",{"2":{"1420":1}}],["entry",{"2":{"105":1,"347":1,"453":1,"650":1,"663":1,"693":1,"694":1,"778":1,"834":1,"887":1,"903":3,"976":1,"1067":1,"1102":1,"1147":1,"1148":1,"1305":1,"1458":1,"1518":3,"1521":1,"1523":2,"1527":1,"1792":9,"1802":1,"1852":1,"1957":1,"2094":1,"2098":1,"2111":1,"2112":1,"2254":1,"2265":3,"2375":1,"2379":1,"2380":3,"2381":1,"2383":1,"2411":1,"2427":1,"2432":1,"2436":1,"2489":1,"2504":1,"2532":1,"2533":1,"2534":1,"2537":1,"2544":1,"2679":1,"2752":1,"2812":1,"2828":1,"2871":1}}],["enters",{"2":{"1217":1,"1341":1,"1792":1}}],["enterprise",{"0":{"1064":1},"1":{"1065":1},"2":{"841":1,"851":1,"908":1,"948":1,"1121":1,"1127":1,"1230":2,"1382":2,"1792":3,"1880":2,"2438":1,"2776":1}}],["enter",{"2":{"51":1,"1200":1,"1202":1}}],["endless",{"2":{"1075":1}}],["ends",{"2":{"301":1,"685":1,"706":1,"861":1,"868":1,"873":1,"994":1,"1038":1,"1079":1,"1792":1,"1847":1,"2529":1,"2741":1,"2868":1,"2869":1}}],["endings",{"0":{"342":1,"343":1}}],["ending",{"2":{"245":1,"840":1,"849":1,"1792":1,"2197":1}}],["ended",{"2":{"106":1,"1066":1,"1067":1,"1402":1,"1525":1,"1529":1,"1609":1,"2391":1,"2661":1}}],["end",{"0":{"972":2,"1409":2},"1":{"973":2,"974":2,"975":2,"976":2,"977":2,"978":2,"979":2,"980":2,"981":2,"982":2,"983":2,"984":2,"985":2,"986":2,"987":2,"988":2,"989":2,"990":2,"991":2,"992":2,"993":2,"994":2,"995":2,"996":2,"997":2,"998":2,"999":2,"1000":2,"1001":2,"1002":2,"1003":2,"1004":2,"1005":2,"1006":2,"1007":2,"1008":2,"1009":2},"2":{"7":1,"16":1,"18":1,"19":1,"20":1,"21":1,"37":2,"38":2,"39":2,"40":1,"48":1,"50":1,"60":1,"61":1,"62":1,"71":1,"72":1,"104":1,"106":1,"115":1,"116":1,"117":1,"119":1,"128":1,"136":1,"137":1,"157":1,"184":1,"186":1,"206":1,"207":2,"208":2,"209":3,"247":1,"248":1,"249":1,"250":1,"254":1,"255":1,"256":1,"257":1,"264":1,"288":1,"289":1,"290":1,"291":1,"292":1,"296":2,"310":5,"313":2,"332":1,"333":1,"334":1,"335":1,"360":1,"361":1,"365":1,"366":1,"374":1,"401":1,"405":1,"406":1,"408":2,"415":1,"423":1,"426":1,"427":1,"428":1,"436":1,"438":1,"439":2,"449":2,"451":2,"452":2,"453":1,"454":1,"466":1,"467":1,"468":1,"469":1,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"503":1,"510":1,"511":1,"520":1,"521":1,"523":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"584":2,"592":1,"593":1,"594":1,"611":1,"621":1,"641":1,"646":1,"658":1,"659":1,"664":2,"665":1,"677":1,"679":1,"685":1,"722":1,"723":1,"733":1,"734":1,"735":1,"736":1,"750":1,"751":1,"752":1,"755":1,"756":1,"764":2,"765":1,"766":1,"774":2,"777":1,"797":1,"798":1,"799":1,"811":1,"812":1,"813":1,"814":1,"815":1,"826":1,"831":1,"833":2,"835":1,"845":1,"849":3,"851":1,"864":1,"866":2,"871":2,"872":4,"875":2,"883":1,"884":1,"886":1,"888":2,"896":1,"897":2,"904":2,"914":2,"915":1,"916":3,"918":1,"922":2,"928":3,"929":5,"930":1,"934":1,"935":1,"936":1,"946":2,"956":1,"972":2,"979":2,"980":2,"982":1,"986":1,"988":2,"989":3,"990":4,"991":1,"992":3,"994":2,"1005":1,"1009":2,"1021":5,"1029":1,"1037":4,"1054":2,"1055":1,"1056":2,"1057":1,"1058":1,"1060":2,"1065":2,"1076":1,"1086":3,"1088":3,"1105":5,"1111":2,"1113":1,"1127":2,"1135":1,"1138":1,"1139":1,"1141":1,"1142":1,"1149":1,"1179":5,"1183":1,"1184":1,"1185":2,"1188":1,"1192":1,"1197":1,"1214":1,"1215":1,"1216":1,"1220":3,"1221":3,"1222":3,"1232":2,"1234":3,"1235":1,"1236":2,"1239":2,"1308":1,"1309":1,"1310":1,"1321":1,"1331":1,"1332":3,"1337":1,"1338":3,"1339":3,"1345":2,"1347":1,"1348":1,"1357":1,"1362":1,"1368":1,"1372":2,"1376":6,"1386":2,"1393":1,"1394":2,"1395":5,"1396":2,"1409":4,"1419":1,"1427":3,"1429":1,"1431":1,"1433":2,"1442":2,"1504":2,"1547":1,"1632":1,"1655":2,"1689":2,"1727":3,"1736":2,"1742":1,"1745":1,"1920":1,"1921":2,"1924":1,"1926":1,"1973":1,"1974":1,"2076":1,"2078":1,"2079":1,"2147":1,"2164":4,"2170":2,"2264":2,"2283":1,"2290":1,"2292":1,"2293":1,"2303":1,"2304":1,"2337":2,"2338":1,"2342":1,"2343":1,"2346":1,"2385":1,"2398":2,"2407":2,"2435":2,"2498":2,"2521":2,"2528":1,"2532":1,"2546":6,"2549":4,"2572":1,"2575":1,"2580":2,"2762":2,"2764":1,"2766":3,"2775":1,"2798":1,"2802":1,"2809":1,"2810":2,"2812":1,"2815":3,"2818":1,"2822":1,"2826":2,"2829":2,"2834":3,"2836":1,"2855":2,"2858":2,"2864":1,"2868":2,"2871":1}}],["endpointcreated",{"2":{"2487":1}}],["endpointrequestingannotations",{"2":{"2482":1}}],["endpointsource",{"2":{"2824":1,"2825":1}}],["endpointsourcescreated",{"2":{"2369":1}}],["endpointsources",{"2":{"2369":1,"2389":1}}],["endpoints",{"0":{"265":1,"306":1,"828":1,"866":1,"966":1,"1148":1,"1186":1,"1368":1,"1386":1,"1398":1,"1412":1,"1413":1,"1518":1,"1747":1,"1930":1,"2048":1,"2182":1,"2489":1,"2504":1,"2529":1,"2634":1,"2635":1,"2672":1,"2674":1,"2720":1,"2739":1,"2749":1,"2767":1,"2797":1,"2798":1,"2806":1,"2839":1,"2865":1},"1":{"867":1,"868":1,"869":1,"870":1,"871":1,"872":1,"873":1,"874":1,"875":1,"876":1,"877":1,"967":1,"1187":1,"1188":1,"1189":1,"1369":1,"1370":1,"1371":1,"1372":1,"1373":1,"1374":1,"1375":1,"1376":1,"1377":1,"1378":1,"1379":1,"1380":1,"1399":1,"2049":1,"2050":1,"2051":1,"2052":1,"2183":1,"2184":1,"2185":1,"2721":1,"2722":1,"2723":1,"2724":1,"2725":1,"2726":1,"2727":1,"2728":1,"2729":1,"2807":1,"2808":1,"2809":1,"2810":1,"2811":1,"2812":1,"2813":1,"2814":1,"2815":1,"2816":1,"2817":1,"2840":1,"2841":1,"2842":1,"2843":1,"2844":1,"2845":1,"2846":1,"2847":1,"2848":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2859":1},"2":{"10":1,"91":1,"102":1,"109":1,"150":1,"165":1,"170":2,"174":1,"175":1,"177":1,"179":1,"220":1,"238":1,"244":3,"258":1,"296":1,"314":1,"316":2,"320":1,"324":1,"338":1,"352":2,"357":1,"369":1,"376":1,"382":1,"385":1,"388":1,"429":1,"431":1,"456":1,"470":2,"556":2,"559":2,"567":1,"609":1,"625":1,"656":1,"679":1,"681":1,"684":1,"691":1,"694":1,"718":1,"720":3,"722":1,"723":1,"724":2,"737":1,"778":1,"792":1,"801":1,"827":1,"828":1,"829":1,"833":1,"834":1,"835":1,"837":1,"867":1,"868":4,"869":4,"872":3,"876":1,"904":1,"911":1,"920":1,"925":2,"946":1,"948":1,"961":1,"966":3,"967":1,"971":1,"975":1,"986":1,"1007":1,"1036":1,"1037":4,"1045":1,"1048":1,"1052":1,"1064":1,"1065":2,"1067":2,"1073":4,"1074":1,"1077":2,"1078":3,"1080":2,"1084":1,"1086":2,"1095":6,"1096":5,"1100":5,"1101":1,"1106":1,"1121":1,"1122":1,"1125":4,"1127":2,"1138":1,"1140":1,"1141":2,"1142":1,"1148":1,"1150":3,"1158":1,"1162":1,"1163":1,"1176":1,"1177":1,"1178":1,"1181":1,"1182":1,"1183":1,"1184":1,"1185":1,"1190":1,"1193":1,"1199":1,"1200":1,"1204":1,"1205":1,"1208":2,"1211":3,"1220":1,"1221":1,"1226":1,"1245":1,"1250":1,"1253":1,"1276":1,"1281":1,"1303":1,"1327":1,"1328":2,"1329":2,"1343":1,"1351":2,"1367":1,"1368":1,"1371":1,"1377":2,"1379":1,"1380":1,"1382":1,"1383":1,"1385":11,"1386":4,"1393":1,"1396":1,"1398":3,"1404":1,"1405":1,"1406":1,"1411":1,"1412":1,"1413":1,"1414":2,"1420":2,"1441":1,"1465":1,"1467":1,"1468":1,"1470":1,"1475":1,"1477":1,"1486":1,"1511":1,"1518":1,"1519":1,"1520":2,"1522":1,"1527":1,"1535":1,"1537":1,"1540":2,"1544":2,"1552":1,"1569":1,"1573":1,"1575":2,"1581":1,"1588":1,"1599":1,"1600":1,"1609":1,"1664":1,"1679":1,"1688":1,"1690":1,"1699":1,"1719":1,"1745":1,"1747":1,"1748":1,"1751":1,"1754":1,"1758":1,"1759":1,"1762":1,"1764":1,"1765":1,"1782":1,"1784":1,"1789":1,"1791":2,"1792":84,"1825":2,"1838":1,"1840":6,"1841":1,"1843":1,"1846":2,"1847":1,"1861":1,"1868":3,"1871":1,"1876":1,"1895":1,"1896":1,"1898":2,"1908":2,"1912":1,"1913":1,"1915":1,"1917":1,"1924":2,"1927":1,"1930":1,"1932":2,"1934":1,"1947":1,"1949":1,"1961":1,"1962":1,"1964":1,"1973":2,"1984":2,"1986":1,"1987":1,"1988":1,"1989":2,"1995":1,"1998":1,"2000":1,"2001":1,"2004":2,"2009":1,"2010":2,"2011":2,"2013":1,"2045":2,"2047":3,"2058":1,"2059":2,"2070":1,"2092":1,"2095":2,"2106":1,"2107":1,"2112":1,"2133":1,"2136":1,"2153":1,"2156":2,"2158":1,"2159":1,"2160":1,"2164":1,"2165":2,"2167":1,"2170":1,"2175":1,"2184":1,"2185":1,"2189":1,"2190":2,"2191":1,"2198":1,"2208":1,"2209":3,"2222":2,"2228":1,"2234":2,"2254":2,"2257":3,"2258":1,"2265":3,"2267":1,"2270":1,"2271":1,"2277":1,"2278":3,"2309":1,"2310":1,"2313":4,"2317":2,"2320":2,"2325":2,"2329":2,"2330":1,"2332":1,"2334":1,"2338":1,"2339":1,"2346":2,"2347":3,"2351":2,"2354":2,"2356":2,"2357":3,"2358":1,"2362":1,"2365":1,"2372":1,"2380":3,"2384":1,"2388":1,"2389":4,"2394":1,"2419":1,"2420":2,"2431":2,"2434":1,"2436":1,"2438":1,"2481":1,"2482":1,"2489":3,"2494":1,"2500":1,"2504":1,"2508":1,"2515":1,"2520":1,"2523":1,"2525":2,"2527":1,"2529":2,"2532":1,"2537":2,"2538":2,"2539":1,"2540":1,"2541":1,"2542":3,"2549":2,"2550":1,"2558":1,"2572":1,"2580":3,"2634":10,"2635":9,"2638":4,"2641":2,"2645":1,"2656":1,"2661":1,"2666":1,"2672":2,"2674":1,"2706":1,"2709":1,"2725":1,"2731":1,"2737":1,"2739":1,"2742":2,"2749":1,"2755":1,"2759":1,"2767":1,"2772":3,"2773":2,"2774":2,"2775":1,"2791":1,"2793":1,"2795":1,"2797":2,"2802":1,"2806":1,"2811":1,"2812":2,"2820":1,"2821":1,"2822":1,"2825":1,"2826":1,"2834":1,"2838":1,"2839":1,"2841":1,"2859":1,"2860":1,"2862":1,"2865":1,"2872":1,"2876":1,"2878":3,"2879":1,"2881":1,"2882":2}}],["endpoint",{"0":{"7":1,"247":1,"284":1,"297":1,"314":1,"592":1,"593":1,"658":1,"659":1,"691":1,"886":1,"904":1,"955":1,"959":1,"1202":1,"1226":1,"1369":1,"1411":1,"1415":1,"1876":1,"1924":1,"2079":1,"2176":1,"2259":1,"2310":1,"2313":1,"2317":1,"2389":1,"2539":1,"2614":1,"2653":1,"2654":1,"2721":1,"2722":1,"2723":1,"2727":1,"2728":1,"2750":1,"2820":1,"2824":1,"2829":1,"2879":1},"1":{"285":1,"286":1,"887":1,"956":1,"957":1,"958":1,"960":1,"1412":1,"1413":1,"1414":1,"1415":1,"2177":1,"2178":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1,"2655":1,"2656":1,"2821":1,"2822":1},"2":{"4":1,"7":1,"12":1,"13":1,"16":1,"18":1,"19":1,"20":1,"27":2,"31":1,"32":1,"37":2,"39":2,"41":2,"43":1,"48":1,"50":2,"52":1,"55":1,"61":1,"71":1,"101":2,"104":1,"108":1,"109":1,"110":1,"115":1,"128":1,"132":1,"136":1,"139":1,"144":1,"154":1,"156":1,"157":1,"160":1,"161":1,"163":1,"165":1,"167":2,"171":1,"173":1,"174":2,"175":1,"177":1,"179":1,"180":2,"181":1,"184":1,"192":1,"196":1,"206":2,"218":1,"223":6,"224":2,"227":1,"239":2,"241":1,"244":1,"247":1,"252":4,"261":2,"263":1,"264":2,"265":1,"266":1,"282":2,"284":1,"288":1,"294":1,"296":2,"297":3,"298":2,"301":1,"306":1,"312":1,"316":1,"317":1,"320":5,"325":1,"327":1,"336":3,"347":3,"351":2,"353":1,"360":1,"368":1,"369":2,"380":1,"384":1,"386":1,"388":1,"397":1,"401":1,"402":2,"411":1,"415":1,"421":2,"423":1,"429":1,"431":1,"433":1,"435":1,"436":7,"438":2,"439":1,"445":2,"448":2,"452":1,"453":1,"456":1,"466":1,"470":1,"473":1,"476":1,"478":1,"480":2,"487":1,"503":1,"510":1,"515":1,"520":1,"524":3,"526":1,"536":1,"539":1,"545":2,"556":1,"586":1,"589":1,"592":1,"595":1,"597":1,"615":1,"636":2,"641":3,"648":1,"649":1,"650":2,"652":2,"653":2,"654":3,"656":1,"658":2,"660":2,"661":2,"662":4,"668":1,"669":2,"675":2,"677":1,"688":2,"689":1,"690":1,"693":2,"696":1,"703":1,"708":1,"713":1,"720":2,"722":1,"728":1,"733":1,"743":1,"750":1,"764":1,"774":1,"780":1,"792":1,"794":1,"797":1,"807":1,"811":1,"819":1,"823":1,"829":1,"833":2,"835":9,"837":1,"838":1,"868":3,"869":7,"871":4,"872":2,"873":5,"886":1,"904":1,"910":1,"915":1,"934":1,"957":1,"964":2,"966":1,"979":1,"986":1,"1037":3,"1038":1,"1039":1,"1041":1,"1047":1,"1057":1,"1064":1,"1067":2,"1068":1,"1073":5,"1074":4,"1077":3,"1078":4,"1079":1,"1080":3,"1081":1,"1082":2,"1086":2,"1094":3,"1095":2,"1098":2,"1100":1,"1101":5,"1105":2,"1107":1,"1109":6,"1111":4,"1113":3,"1115":1,"1121":1,"1127":3,"1135":1,"1141":1,"1148":2,"1150":1,"1154":1,"1176":2,"1181":2,"1182":4,"1183":1,"1184":1,"1191":4,"1192":2,"1193":1,"1203":1,"1204":1,"1207":2,"1219":1,"1220":1,"1221":1,"1222":1,"1226":1,"1232":1,"1233":1,"1234":1,"1236":1,"1237":1,"1238":1,"1239":1,"1255":1,"1309":1,"1329":2,"1331":1,"1332":1,"1333":1,"1340":1,"1351":1,"1364":1,"1366":1,"1368":2,"1369":2,"1370":2,"1372":1,"1382":3,"1385":5,"1386":7,"1388":1,"1389":1,"1394":1,"1396":1,"1398":3,"1399":2,"1401":1,"1402":1,"1403":1,"1405":8,"1406":4,"1407":2,"1408":3,"1409":1,"1410":3,"1412":2,"1415":3,"1416":3,"1419":1,"1422":3,"1423":1,"1427":1,"1430":1,"1435":1,"1451":1,"1454":1,"1455":1,"1458":1,"1465":2,"1467":2,"1470":2,"1479":4,"1483":1,"1484":2,"1486":2,"1501":1,"1504":1,"1506":3,"1508":3,"1511":4,"1518":3,"1521":3,"1527":2,"1533":1,"1535":1,"1540":1,"1544":1,"1547":1,"1549":2,"1563":1,"1567":2,"1572":1,"1575":1,"1583":1,"1585":1,"1602":1,"1609":1,"1632":1,"1634":1,"1636":1,"1670":1,"1672":1,"1679":1,"1681":1,"1684":1,"1686":1,"1689":1,"1699":2,"1727":2,"1745":1,"1746":1,"1753":1,"1754":2,"1758":1,"1759":1,"1764":3,"1788":1,"1792":84,"1795":1,"1802":2,"1807":1,"1813":1,"1816":2,"1817":3,"1822":5,"1824":4,"1825":1,"1835":1,"1837":1,"1840":3,"1843":1,"1844":1,"1855":1,"1858":1,"1860":2,"1861":2,"1864":2,"1869":1,"1870":1,"1871":1,"1872":1,"1876":1,"1888":1,"1898":2,"1909":1,"1910":1,"1912":1,"1915":1,"1920":1,"1924":3,"1925":1,"1929":2,"1930":1,"1949":1,"1958":2,"1959":1,"1961":3,"1967":1,"1973":1,"1977":1,"2000":2,"2004":5,"2010":3,"2012":1,"2052":1,"2076":1,"2079":1,"2081":1,"2092":1,"2094":2,"2095":1,"2098":1,"2106":5,"2107":5,"2112":2,"2113":1,"2114":1,"2137":1,"2147":1,"2150":1,"2151":1,"2153":2,"2156":4,"2157":1,"2158":2,"2159":1,"2164":2,"2165":1,"2166":1,"2167":3,"2169":1,"2170":1,"2171":3,"2175":2,"2176":4,"2180":1,"2183":1,"2186":1,"2187":2,"2194":1,"2195":2,"2201":1,"2203":1,"2207":1,"2209":1,"2219":1,"2221":6,"2222":2,"2228":3,"2229":1,"2233":1,"2247":2,"2252":1,"2254":2,"2255":2,"2257":3,"2259":1,"2265":10,"2266":1,"2267":1,"2306":1,"2310":1,"2313":1,"2314":1,"2317":1,"2318":1,"2319":2,"2322":1,"2327":1,"2329":2,"2330":2,"2332":1,"2333":1,"2337":1,"2338":3,"2339":1,"2344":4,"2346":3,"2347":3,"2350":1,"2352":1,"2366":3,"2369":1,"2372":4,"2378":1,"2380":4,"2381":1,"2389":2,"2392":3,"2394":1,"2395":1,"2419":1,"2420":1,"2423":2,"2424":1,"2430":2,"2432":2,"2433":3,"2437":1,"2438":1,"2461":1,"2466":5,"2468":1,"2470":1,"2471":1,"2481":7,"2482":4,"2487":2,"2490":1,"2491":1,"2494":1,"2495":1,"2498":1,"2504":1,"2508":1,"2509":3,"2511":3,"2518":1,"2519":1,"2520":1,"2526":1,"2527":5,"2529":4,"2532":2,"2533":2,"2534":2,"2535":1,"2536":1,"2537":15,"2538":1,"2539":3,"2541":2,"2542":3,"2543":3,"2545":1,"2546":2,"2549":1,"2554":2,"2569":1,"2575":1,"2587":1,"2596":1,"2597":1,"2614":1,"2615":1,"2621":1,"2628":1,"2629":1,"2634":4,"2635":1,"2649":1,"2653":1,"2654":1,"2655":2,"2661":1,"2721":1,"2722":1,"2723":1,"2728":1,"2729":1,"2732":1,"2739":1,"2742":2,"2747":1,"2749":1,"2750":1,"2756":1,"2759":1,"2767":1,"2772":1,"2774":1,"2775":2,"2793":1,"2794":1,"2795":2,"2797":2,"2798":1,"2800":1,"2802":1,"2805":1,"2806":1,"2807":1,"2808":1,"2809":2,"2812":2,"2815":2,"2817":1,"2818":1,"2821":1,"2823":1,"2824":4,"2825":1,"2826":1,"2827":1,"2828":1,"2829":2,"2830":4,"2831":2,"2832":3,"2833":3,"2834":2,"2835":4,"2836":2,"2838":2,"2840":1,"2841":2,"2842":1,"2850":3,"2853":1,"2856":1,"2857":2,"2858":2,"2860":2,"2861":5,"2862":3,"2865":3,"2867":1,"2868":1,"2870":1,"2871":1,"2876":2,"2878":4,"2879":3,"2881":2}}],["ftl",{"2":{"2535":1}}],["fts",{"2":{"1096":1}}],["f5f5f5",{"2":{"1792":1,"2073":1,"2075":1,"2080":1}}],["fff",{"2":{"1792":1,"1800":1,"1809":2,"1810":1}}],["f2",{"2":{"1220":2,"1221":2,"1222":2}}],["f1",{"2":{"1220":2,"1221":2,"1222":2}}],["fks",{"2":{"2868":1,"2869":1}}],["fk",{"2":{"992":1,"1079":1,"2868":1}}],["fdw",{"2":{"848":1}}],["fp",{"2":{"841":2,"843":1}}],["fs",{"2":{"755":2,"756":2,"758":1,"1355":1}}],["fn",{"2":{"325":2,"881":1,"2760":2}}],["f",{"2":{"297":2,"852":1,"927":2,"1088":1,"1366":3,"1381":1,"1775":1,"1792":1,"2111":1,"2144":5,"2532":1,"2534":1,"2874":1,"2875":1}}],["flushasync",{"2":{"2615":1}}],["flushed",{"2":{"2495":1}}],["flush",{"2":{"2393":1}}],["fluent",{"2":{"1078":1}}],["fluency",{"2":{"876":1}}],["fledged",{"2":{"1458":1,"1792":1,"2375":1}}],["flexibility",{"0":{"882":1},"1":{"883":1,"884":1},"2":{"888":1,"1049":1,"1127":1,"1378":1,"2200":1}}],["flexible",{"0":{"880":1},"2":{"214":1,"1084":1,"1122":1,"1127":1,"1385":1,"1390":1,"2255":1}}],["flyway",{"2":{"1385":1,"2534":1,"2874":2}}],["floor",{"2":{"2803":1}}],["float8",{"2":{"956":3,"1374":3}}],["float",{"2":{"952":1,"956":1,"1374":1}}],["flow",{"0":{"364":1,"650":1},"1":{"365":1,"366":1},"2":{"296":1,"297":1,"300":1,"364":1,"414":1,"876":1,"938":1,"949":1,"1008":1,"1108":1,"1211":1,"1214":1,"1220":3,"1231":1,"1234":1,"1247":1,"1253":1,"1792":7,"1868":1,"1870":2,"1881":1,"2300":1,"2363":1,"2391":1,"2427":1,"2438":1,"2490":1,"2872":1}}],["flows",{"0":{"1219":1,"1869":1},"1":{"1220":1,"1221":1,"1222":1,"1870":1,"1871":1,"1872":1},"2":{"11":1,"26":1,"41":1,"65":1,"293":1,"636":1,"666":1,"996":1,"1066":1,"1068":1,"1098":1,"1202":1,"1218":1,"1219":1,"1229":1,"1235":1,"1394":1,"1458":1,"1792":2,"1869":1,"1879":1,"1885":1,"2171":1,"2375":1,"2795":1,"2881":1}}],["flagged",{"2":{"2413":1,"2442":1,"2444":1,"2535":1,"2881":1}}],["flagging",{"2":{"2410":1,"2447":1}}],["flag",{"2":{"1102":1,"1105":1,"1398":1,"1722":1,"1792":3,"1959":1,"2038":1,"2040":3,"2111":1,"2153":1,"2154":1,"2372":1,"2453":1,"2455":1,"2471":1,"2474":1,"2476":3,"2532":1,"2541":1,"2542":1,"2673":1,"2742":1,"2769":1,"2835":1,"2871":1,"2878":1}}],["flags",{"2":{"872":1,"1609":1,"2040":1,"2493":1,"2621":2,"2661":1}}],["flavors",{"2":{"1082":1,"1792":2,"2106":1,"2153":2,"2154":1,"2157":1,"2542":1,"2543":1,"2546":1}}],["flavor",{"2":{"840":1,"2153":1,"2155":1}}],["flattening",{"2":{"1375":1}}],["flattened",{"2":{"1097":1,"1973":1,"2000":1,"2330":1}}],["flat",{"2":{"335":1,"337":1,"848":1,"851":1,"916":1,"917":1,"918":1,"951":1,"1097":2,"1190":1,"1192":2,"1370":1,"1792":3,"1967":1,"2000":1,"2009":1,"2010":2,"2325":1,"2329":1,"2330":1,"2356":1,"2357":2,"2445":1,"2446":2,"2453":1,"2641":1,"2725":1,"2841":1,"2842":1,"2851":1}}],["flips",{"2":{"848":1,"1403":1,"2376":1}}],["flip",{"2":{"704":1,"1792":2,"1856":1,"2111":1,"2380":2,"2532":1,"2728":1,"2871":1}}],["flight",{"2":{"214":1,"1609":1,"1792":1,"2100":1,"2462":2,"2466":1,"2502":1,"2537":1,"2669":1,"2785":1}}],["future",{"0":{"1399":1},"2":{"1401":1,"1825":1,"2438":1,"2779":1}}],["funnel",{"2":{"2532":1}}],["funny",{"2":{"1404":1}}],["fundamentals",{"2":{"1792":1}}],["fundamental",{"2":{"1108":1}}],["fundamentally",{"2":{"946":1,"1105":1,"1137":1}}],["fun",{"2":{"977":1,"980":1,"990":1,"1404":1}}],["funcntions",{"2":{"920":1}}],["func",{"2":{"23":1,"174":2,"417":3,"418":3,"419":3,"420":3,"421":3,"441":2,"442":2,"443":2,"444":2,"445":2,"462":4,"463":3,"464":4,"501":1,"502":1,"511":2,"532":1,"1855":1,"1968":1,"2193":5,"2196":5,"2199":3,"2200":3,"2201":1,"2285":1,"2305":1,"2306":1,"2461":1,"2549":6,"2581":3,"2591":2,"2596":1,"2721":1}}],["func3",{"2":{"17":1}}],["func2",{"2":{"17":1,"522":1}}],["func1",{"2":{"17":1,"522":1}}],["functionally",{"2":{"1102":2,"1135":1,"2420":1}}],["functional",{"2":{"841":2,"843":1,"844":1,"1302":1,"2389":1,"2432":1}}],["functionality",{"2":{"455":1,"1588":1,"1722":1,"1792":4,"1917":1,"2264":2,"2265":1,"2555":1,"2776":1,"2792":1}}],["functionsql",{"2":{"2762":1,"2809":1,"2813":1,"2829":1,"2834":1}}],["functions",{"0":{"119":1,"285":1,"286":1,"930":1,"931":1,"974":1,"978":1,"985":1,"987":1,"1107":1,"1115":1,"1149":1,"1214":1,"1215":1,"1423":1,"1435":1,"1517":1,"2775":1,"2858":1},"1":{"932":1,"933":1,"934":1,"935":1,"936":1,"979":1,"980":1,"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1,"1424":1,"1425":1,"1426":1,"1427":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"1434":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1},"2":{"119":1,"120":1,"174":1,"175":4,"201":1,"245":2,"265":1,"338":1,"366":1,"369":1,"377":1,"429":1,"615":1,"673":2,"684":4,"829":1,"833":1,"835":1,"836":1,"857":1,"860":1,"868":2,"871":2,"873":2,"874":2,"876":1,"911":1,"914":1,"915":1,"916":1,"920":2,"922":2,"924":1,"926":1,"930":1,"932":6,"933":7,"937":1,"940":2,"941":1,"942":1,"943":1,"945":1,"946":2,"956":1,"966":1,"967":2,"971":1,"972":1,"974":3,"975":2,"976":1,"997":2,"1000":1,"1003":1,"1005":2,"1006":1,"1007":1,"1036":1,"1037":6,"1038":1,"1043":1,"1049":1,"1063":1,"1064":1,"1065":1,"1074":1,"1076":2,"1084":1,"1086":2,"1095":2,"1096":5,"1098":4,"1099":2,"1104":1,"1105":1,"1107":5,"1108":1,"1113":1,"1115":2,"1121":1,"1125":5,"1126":4,"1127":2,"1129":1,"1130":2,"1132":1,"1133":1,"1135":2,"1149":1,"1179":1,"1184":1,"1185":3,"1187":1,"1193":3,"1203":1,"1208":3,"1209":2,"1211":3,"1231":1,"1240":1,"1244":1,"1247":1,"1252":3,"1255":2,"1304":1,"1327":1,"1333":1,"1351":1,"1357":1,"1367":1,"1377":2,"1378":8,"1385":5,"1386":1,"1390":1,"1405":3,"1409":1,"1414":2,"1416":3,"1419":1,"1423":1,"1435":5,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":2,"1442":1,"1511":1,"1517":1,"1558":1,"1563":2,"1570":2,"1571":2,"1581":1,"1655":1,"1720":1,"1723":1,"1789":1,"1792":15,"1796":1,"1868":3,"1881":1,"1889":1,"1907":1,"1933":1,"1965":1,"1967":1,"1972":2,"1973":1,"2009":1,"2045":1,"2049":4,"2064":1,"2072":2,"2075":1,"2077":1,"2106":1,"2156":2,"2164":2,"2165":1,"2190":1,"2197":2,"2227":1,"2239":1,"2256":1,"2264":2,"2265":2,"2273":1,"2310":1,"2313":1,"2317":2,"2325":1,"2327":1,"2332":1,"2333":1,"2338":1,"2339":1,"2344":1,"2350":1,"2357":1,"2388":1,"2389":2,"2456":1,"2484":1,"2531":1,"2542":2,"2580":1,"2586":1,"2588":1,"2590":1,"2597":1,"2618":1,"2635":6,"2666":1,"2709":1,"2713":1,"2722":1,"2723":1,"2732":1,"2755":1,"2772":1,"2774":1,"2775":1,"2802":1,"2820":1,"2836":1,"2858":4}}],["function",{"0":{"365":1,"366":1,"374":1,"611":1,"658":1,"664":1,"733":1,"760":1,"763":1,"770":1,"773":1,"828":1,"882":1,"883":1,"884":1,"886":1,"928":1,"929":1,"934":1,"935":1,"936":1,"956":1,"988":1,"1021":1,"1055":1,"1060":1,"1188":1,"1216":1,"1308":1,"1357":1,"1504":1,"1547":1,"1561":1,"1567":1,"1689":1,"1727":1,"2164":1,"2183":1,"2504":1,"2721":1,"2799":1,"2813":1,"2822":1},"1":{"883":1,"884":1,"887":1,"1056":1},"2":{"7":2,"8":1,"9":2,"16":2,"17":3,"18":2,"19":2,"20":2,"21":2,"22":1,"23":1,"24":1,"37":4,"38":3,"39":3,"40":2,"41":1,"43":1,"48":2,"49":1,"50":2,"51":1,"54":1,"60":2,"61":2,"62":2,"66":2,"71":2,"72":2,"75":1,"83":1,"84":1,"85":1,"86":1,"94":1,"95":1,"96":1,"97":1,"104":2,"105":1,"106":1,"107":1,"115":2,"116":2,"117":2,"118":1,"119":3,"128":2,"129":1,"136":2,"137":2,"138":1,"147":1,"148":1,"149":1,"156":1,"157":3,"173":1,"174":3,"175":3,"179":1,"180":3,"184":3,"186":5,"187":4,"195":1,"196":1,"202":2,"206":2,"207":1,"208":1,"209":2,"212":2,"213":1,"215":2,"216":3,"218":1,"220":2,"223":2,"225":1,"241":1,"244":1,"245":1,"247":2,"248":2,"249":2,"250":2,"251":1,"252":1,"254":2,"255":2,"256":2,"257":2,"263":4,"264":3,"277":3,"278":3,"284":1,"285":2,"286":1,"288":2,"289":2,"290":2,"291":2,"292":2,"296":1,"297":1,"298":2,"302":1,"304":1,"306":1,"308":3,"309":2,"312":3,"313":2,"314":1,"316":1,"320":1,"322":2,"323":1,"324":1,"325":1,"330":1,"332":2,"333":2,"334":2,"335":2,"342":1,"343":1,"344":1,"351":2,"352":2,"353":1,"354":1,"360":2,"361":2,"362":3,"363":1,"365":2,"366":2,"374":3,"376":1,"386":2,"392":1,"393":1,"401":2,"402":2,"403":1,"405":2,"406":2,"408":6,"412":1,"414":4,"415":2,"417":2,"418":2,"419":3,"420":2,"421":3,"423":4,"424":1,"426":2,"427":2,"428":2,"429":3,"431":1,"435":1,"436":7,"438":4,"439":6,"441":2,"442":2,"443":2,"444":2,"445":2,"447":1,"448":4,"449":3,"451":4,"452":3,"453":6,"454":4,"456":2,"458":1,"462":2,"466":2,"467":2,"468":2,"469":2,"476":1,"477":1,"478":1,"479":1,"487":2,"488":2,"489":2,"490":2,"491":2,"492":2,"493":2,"497":1,"499":2,"501":1,"502":1,"503":2,"510":2,"511":2,"520":2,"521":2,"522":2,"523":2,"527":1,"528":1,"531":1,"532":1,"539":2,"540":2,"541":2,"542":2,"543":2,"544":2,"545":2,"553":1,"554":1,"555":1,"572":1,"573":1,"574":1,"577":2,"592":2,"593":2,"594":2,"601":1,"602":1,"603":1,"604":1,"611":2,"631":1,"632":1,"633":1,"641":1,"642":1,"643":1,"644":1,"645":1,"646":3,"653":2,"654":2,"658":2,"659":1,"660":1,"661":1,"662":2,"673":1,"677":2,"678":1,"679":3,"683":2,"684":2,"686":2,"720":3,"722":2,"723":2,"724":2,"732":1,"733":2,"734":2,"735":2,"736":2,"737":1,"741":1,"750":2,"751":2,"752":2,"755":2,"756":2,"758":1,"760":2,"763":1,"764":3,"765":1,"766":1,"767":1,"770":2,"773":1,"774":3,"775":1,"777":3,"783":1,"785":1,"787":1,"789":1,"794":1,"797":2,"798":2,"799":2,"800":1,"801":1,"803":1,"811":2,"812":2,"813":2,"814":2,"815":2,"817":1,"828":2,"833":1,"835":3,"843":1,"852":2,"860":2,"868":2,"871":5,"872":1,"873":1,"874":2,"876":9,"878":1,"880":3,"881":3,"883":1,"884":3,"885":1,"886":4,"888":3,"894":3,"899":1,"900":1,"902":1,"903":2,"904":5,"910":2,"911":2,"914":5,"915":9,"916":6,"917":3,"918":4,"919":3,"922":1,"928":2,"929":1,"932":1,"933":4,"934":3,"935":2,"936":3,"937":2,"938":2,"947":1,"949":2,"956":2,"957":4,"959":1,"960":2,"961":1,"964":1,"965":1,"966":1,"968":1,"971":1,"975":3,"976":2,"978":4,"979":3,"980":4,"981":1,"982":7,"983":4,"984":2,"985":3,"986":4,"988":6,"989":1,"990":3,"991":3,"992":1,"994":4,"995":6,"996":6,"997":2,"1002":1,"1005":2,"1010":2,"1015":1,"1016":4,"1017":1,"1019":1,"1021":2,"1023":3,"1024":1,"1026":1,"1029":3,"1031":1,"1033":2,"1037":2,"1043":1,"1049":1,"1052":2,"1053":1,"1054":1,"1055":4,"1057":2,"1058":1,"1060":2,"1063":1,"1064":4,"1065":1,"1067":1,"1068":3,"1069":1,"1073":1,"1076":5,"1077":5,"1080":1,"1084":1,"1095":2,"1096":1,"1098":1,"1099":1,"1102":7,"1104":1,"1105":17,"1106":1,"1107":1,"1108":3,"1111":1,"1113":2,"1121":1,"1125":2,"1126":1,"1127":2,"1128":3,"1129":4,"1132":2,"1133":1,"1134":2,"1135":5,"1138":4,"1139":3,"1141":2,"1142":3,"1143":1,"1149":2,"1150":4,"1154":2,"1158":1,"1161":1,"1163":3,"1174":1,"1176":2,"1178":1,"1179":6,"1183":2,"1185":2,"1188":1,"1189":2,"1190":1,"1191":4,"1192":1,"1193":10,"1196":1,"1197":3,"1203":2,"1214":4,"1215":3,"1216":2,"1219":1,"1232":1,"1234":1,"1235":1,"1236":1,"1239":1,"1255":1,"1281":1,"1284":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1305":1,"1308":2,"1310":2,"1317":2,"1318":3,"1320":1,"1321":1,"1331":4,"1332":6,"1337":3,"1338":5,"1339":2,"1341":1,"1342":1,"1345":4,"1347":2,"1348":2,"1350":1,"1352":2,"1357":2,"1358":4,"1359":1,"1362":3,"1363":1,"1366":7,"1367":2,"1368":4,"1369":2,"1371":1,"1377":1,"1378":2,"1380":1,"1382":1,"1385":2,"1386":1,"1387":3,"1388":6,"1389":2,"1390":2,"1391":1,"1393":4,"1396":1,"1398":3,"1405":1,"1406":1,"1407":1,"1408":3,"1409":4,"1410":3,"1413":1,"1415":2,"1416":6,"1419":2,"1422":2,"1423":2,"1426":2,"1427":2,"1431":3,"1435":1,"1436":1,"1438":2,"1442":2,"1458":5,"1460":2,"1477":1,"1503":1,"1504":1,"1517":1,"1529":4,"1531":2,"1532":2,"1533":1,"1538":1,"1544":2,"1547":2,"1551":1,"1560":1,"1562":1,"1567":6,"1568":1,"1569":3,"1571":1,"1575":1,"1576":3,"1581":2,"1599":3,"1618":1,"1632":3,"1655":2,"1664":4,"1674":1,"1689":1,"1723":3,"1727":2,"1733":4,"1736":3,"1738":2,"1741":2,"1742":1,"1745":1,"1747":1,"1789":1,"1792":14,"1855":1,"1864":1,"1869":1,"1915":1,"1920":3,"1921":4,"1922":2,"1923":1,"1924":2,"1926":2,"1928":1,"1929":1,"1930":2,"1968":1,"1973":3,"1974":1,"2010":1,"2047":1,"2072":1,"2076":3,"2078":2,"2079":4,"2147":3,"2156":2,"2160":1,"2162":1,"2164":2,"2165":4,"2176":2,"2177":3,"2181":1,"2183":3,"2184":3,"2185":1,"2186":2,"2187":6,"2190":1,"2193":5,"2194":1,"2195":1,"2196":5,"2197":1,"2199":3,"2200":3,"2201":1,"2202":3,"2204":2,"2205":3,"2206":2,"2207":1,"2214":2,"2215":2,"2216":1,"2217":1,"2218":1,"2222":1,"2242":1,"2247":5,"2255":7,"2256":3,"2264":9,"2265":1,"2267":1,"2277":8,"2278":1,"2282":2,"2283":3,"2284":1,"2285":1,"2287":1,"2289":2,"2290":1,"2292":3,"2293":5,"2294":4,"2300":2,"2302":3,"2303":2,"2304":4,"2305":2,"2306":1,"2307":1,"2309":1,"2310":3,"2313":1,"2314":4,"2323":1,"2329":1,"2330":1,"2332":1,"2339":3,"2344":4,"2346":3,"2357":1,"2358":1,"2359":2,"2375":6,"2380":1,"2389":1,"2391":2,"2397":1,"2404":1,"2432":2,"2437":1,"2496":3,"2500":1,"2504":2,"2512":1,"2520":1,"2523":1,"2542":2,"2546":2,"2549":18,"2572":2,"2575":4,"2580":4,"2581":3,"2586":2,"2587":4,"2588":1,"2589":1,"2591":2,"2596":1,"2597":1,"2607":1,"2635":2,"2649":1,"2650":1,"2651":1,"2652":1,"2653":3,"2655":1,"2656":2,"2664":1,"2665":6,"2666":1,"2712":1,"2721":2,"2723":1,"2727":1,"2742":1,"2751":1,"2759":2,"2760":3,"2762":3,"2763":1,"2764":2,"2766":5,"2767":2,"2768":1,"2775":2,"2797":1,"2802":1,"2806":1,"2807":5,"2809":3,"2810":2,"2812":2,"2813":4,"2815":3,"2817":1,"2822":8,"2823":1,"2824":13,"2825":5,"2830":2,"2835":1,"2836":2,"2837":1,"2839":3,"2848":1,"2855":1,"2858":1,"2878":1}}],["fuss",{"2":{"848":2}}],["furthermore",{"2":{"1398":1}}],["further",{"2":{"180":1,"865":1,"1047":1,"1048":1,"1088":1,"1386":2,"1429":1,"2438":1,"2465":1}}],["fullstackandmessage",{"2":{"1792":1,"1845":1,"1863":1,"2802":1}}],["fullscreen",{"2":{"1381":1}}],["fully",{"2":{"529":1,"845":1,"849":2,"860":1,"1054":1,"1080":1,"1086":1,"1127":1,"1302":1,"1412":1,"1420":1,"1458":1,"1792":1,"1801":1,"1825":1,"1958":1,"1974":1,"2156":1,"2221":1,"2284":1,"2375":1,"2389":1,"2461":1,"2466":2,"2470":1,"2477":1,"2496":1,"2542":1,"2544":1,"2588":2,"2607":2,"2682":1,"2700":1,"2711":1,"2729":1,"2731":1,"2765":1,"2801":1}}],["full",{"0":{"187":1,"1282":1,"1339":1,"1893":1,"2029":1,"2294":1},"1":{"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1301":1},"2":{"110":1,"215":1,"217":1,"292":2,"307":1,"308":1,"315":1,"320":1,"423":1,"431":1,"446":1,"456":1,"634":1,"647":1,"670":1,"692":1,"734":2,"799":2,"848":1,"868":1,"869":1,"872":3,"874":1,"876":1,"918":2,"920":1,"922":1,"945":2,"949":1,"954":1,"1009":1,"1032":1,"1033":1,"1054":1,"1055":1,"1060":1,"1066":1,"1067":3,"1070":1,"1073":1,"1074":1,"1082":1,"1084":2,"1086":1,"1088":1,"1094":1,"1096":5,"1097":1,"1099":1,"1121":1,"1135":1,"1150":1,"1155":1,"1197":1,"1207":1,"1212":1,"1230":1,"1247":1,"1278":1,"1323":1,"1324":1,"1335":1,"1339":1,"1351":1,"1368":1,"1380":2,"1382":1,"1398":1,"1402":1,"1408":1,"1409":1,"1412":1,"1415":1,"1416":1,"1465":1,"1484":1,"1506":1,"1533":1,"1549":1,"1556":1,"1557":1,"1560":1,"1594":1,"1664":1,"1686":1,"1699":1,"1722":1,"1738":1,"1743":1,"1748":1,"1753":2,"1755":1,"1758":2,"1792":14,"1845":1,"1880":1,"1894":1,"1911":1,"1922":1,"1929":1,"1932":1,"2011":2,"2013":1,"2019":5,"2023":1,"2092":1,"2094":1,"2104":1,"2106":1,"2107":1,"2114":1,"2156":1,"2177":2,"2220":1,"2221":1,"2242":1,"2244":1,"2261":1,"2263":1,"2269":1,"2276":1,"2281":1,"2299":1,"2312":1,"2316":1,"2320":1,"2354":2,"2358":1,"2359":2,"2374":1,"2384":1,"2388":1,"2409":1,"2419":1,"2434":1,"2440":1,"2450":1,"2453":1,"2459":1,"2468":1,"2474":1,"2479":1,"2498":1,"2500":1,"2502":1,"2508":1,"2513":1,"2515":1,"2523":1,"2525":1,"2527":1,"2529":1,"2535":1,"2537":4,"2539":1,"2540":1,"2546":2,"2548":1,"2553":1,"2557":1,"2561":1,"2564":1,"2569":1,"2571":1,"2574":1,"2577":1,"2579":1,"2584":1,"2586":1,"2593":1,"2599":1,"2602":1,"2606":1,"2610":1,"2613":1,"2617":1,"2620":1,"2624":1,"2631":1,"2632":1,"2637":1,"2640":1,"2644":1,"2647":1,"2658":1,"2670":1,"2672":1,"2676":1,"2678":1,"2694":1,"2695":1,"2713":1,"2723":1,"2739":1,"2750":1,"2771":1,"2837":1,"2859":1,"2860":1,"2862":1,"2865":1,"2868":1,"2872":1,"2879":2,"2880":1,"2881":1}}],["frustration",{"2":{"1402":1}}],["fraction",{"2":{"2621":1}}],["fragments",{"2":{"2531":1,"2712":1}}],["fragment",{"2":{"1428":1,"2531":1}}],["frankly",{"2":{"1404":1}}],["frank",{"2":{"913":1}}],["franz",{"2":{"913":1}}],["framed",{"2":{"2018":1}}],["frame>",{"2":{"1792":1,"2632":1}}],["frames",{"2":{"871":1,"2020":1}}],["frame",{"0":{"1493":1,"2018":1},"2":{"868":1,"869":1,"1100":1,"1489":1,"1493":3,"1788":1,"1792":10,"1845":1,"2016":1,"2018":2,"2020":1,"2028":1,"2030":1,"2632":4}}],["frameworks",{"0":{"1254":1,"1271":1,"1273":1},"1":{"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"1263":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":2,"1275":2,"1276":2,"1277":1,"1278":1,"1279":1,"1280":1,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1301":1},"2":{"869":1,"1007":1,"1089":1,"1092":1,"1097":2,"1254":3,"1255":2,"1259":1,"1265":1,"1279":1}}],["framework",{"0":{"2246":1},"2":{"383":1,"852":1,"857":1,"868":1,"869":3,"873":2,"876":1,"1007":1,"1074":1,"1075":1,"1076":1,"1079":1,"1090":1,"1091":1,"1104":1,"1254":1,"1255":4,"1257":1,"1258":1,"1267":2,"1268":1,"1269":2,"1270":1,"1276":1,"1279":1,"1280":1,"1281":3,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1393":1,"1419":1,"1447":1,"1451":1,"1454":2,"1464":1,"1792":6,"1822":1,"2157":1,"2240":1,"2246":1,"2348":1,"2377":1,"2420":1,"2438":1,"2543":1,"2794":1,"2795":1}}],["framing",{"2":{"851":1,"869":1,"2018":1}}],["friendlier",{"2":{"2495":1}}],["friendly",{"2":{"372":1,"1251":1,"1385":3,"2866":1}}],["fringe",{"2":{"847":1}}],["friday",{"2":{"836":1}}],["fronting",{"2":{"1101":1}}],["front",{"2":{"868":1,"1074":1,"1270":1,"1328":1,"1436":1,"2809":1,"2815":1}}],["frontends",{"2":{"1382":1}}],["frontend",{"0":{"1011":1,"1318":1},"2":{"251":1,"833":3,"834":4,"835":1,"836":1,"837":2,"867":1,"868":2,"869":1,"871":5,"872":2,"873":1,"875":1,"876":1,"877":1,"879":1,"894":1,"910":1,"911":1,"961":1,"973":1,"1008":2,"1020":1,"1024":1,"1037":1,"1038":1,"1080":1,"1086":1,"1094":2,"1127":1,"1303":1,"1318":1,"1320":1,"1322":1,"1366":3,"1382":1,"1406":2,"1407":1,"1409":2,"1412":1,"1413":1,"1414":3,"1417":2,"1418":1,"1419":2,"1420":2,"1422":2,"1436":1,"1441":1,"2419":1,"2543":1,"2775":1,"2857":1}}],["frozendictionary",{"2":{"2372":1}}],["frozen",{"2":{"851":1,"860":1,"861":1}}],["fromdate",{"2":{"2845":1}}],["fromdate=2024",{"2":{"2845":1}}],["fromdate=",{"2":{"2731":1}}],["from=base",{"2":{"1420":1}}],["from=2025",{"2":{"1067":3}}],["from=usd",{"2":{"263":1}}],["from",{"0":{"289":1,"290":1,"312":1,"323":1,"393":1,"544":1,"803":1,"947":1,"1010":1,"1125":1,"1126":1,"1266":1,"1362":1,"1368":1,"1406":1,"1608":1,"2389":1,"2489":1,"2520":1,"2539":1,"2712":1,"2792":1,"2830":1,"2834":1},"1":{"948":1,"949":1,"950":1,"951":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1,"1011":1,"1012":1,"1013":1,"1014":1,"1015":1,"1016":1,"1017":1,"1018":1,"1019":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1363":1,"1369":1,"1370":1,"1371":1,"1372":1,"1373":1,"1374":1,"1375":1,"1376":1,"1377":1,"1378":1,"1379":1,"1380":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1},"2":{"0":1,"16":2,"18":1,"19":1,"20":1,"31":3,"35":1,"37":3,"38":1,"39":1,"40":1,"50":1,"74":1,"87":1,"106":3,"115":2,"116":1,"119":1,"128":2,"136":2,"156":1,"165":1,"167":1,"168":4,"171":1,"174":1,"175":1,"186":2,"209":1,"212":2,"214":1,"215":4,"221":1,"223":1,"238":2,"245":1,"249":1,"250":1,"253":1,"263":3,"264":1,"265":1,"286":4,"288":3,"289":1,"290":1,"291":3,"292":1,"298":2,"302":1,"309":2,"312":2,"313":2,"318":1,"322":1,"323":1,"325":1,"326":1,"336":1,"347":1,"348":2,"355":4,"356":1,"366":1,"372":3,"373":1,"374":1,"376":2,"383":2,"384":1,"386":1,"388":1,"390":3,"395":1,"396":1,"401":1,"404":1,"414":1,"415":2,"417":1,"419":1,"426":2,"427":2,"428":1,"429":2,"436":3,"439":1,"441":1,"443":1,"447":1,"448":3,"452":1,"454":3,"488":1,"489":1,"490":1,"493":1,"504":2,"517":2,"520":2,"527":3,"529":4,"531":2,"532":2,"534":2,"535":1,"542":1,"549":1,"562":2,"563":2,"565":2,"566":3,"568":1,"581":1,"582":2,"584":3,"585":3,"595":1,"611":1,"612":1,"613":1,"614":2,"618":1,"621":1,"622":6,"623":2,"624":1,"636":3,"646":1,"650":3,"656":1,"662":2,"663":1,"666":1,"673":1,"677":2,"679":1,"689":1,"691":2,"693":1,"694":1,"695":1,"696":1,"699":1,"700":2,"703":1,"705":1,"708":1,"710":1,"713":1,"715":1,"722":2,"723":1,"724":1,"761":1,"763":1,"765":1,"766":1,"771":1,"773":1,"781":1,"782":1,"784":1,"786":1,"788":4,"811":2,"830":1,"831":2,"833":2,"834":5,"835":3,"837":1,"841":2,"843":1,"845":1,"847":2,"848":6,"849":5,"851":3,"852":1,"854":1,"855":1,"856":2,"859":2,"860":4,"861":1,"863":3,"864":3,"865":1,"866":1,"868":4,"869":1,"871":1,"872":1,"873":3,"874":1,"876":3,"880":2,"882":1,"883":2,"894":1,"903":2,"905":1,"910":1,"912":1,"914":3,"916":5,"917":1,"918":9,"928":1,"929":1,"934":1,"936":2,"937":1,"949":1,"952":1,"956":1,"957":4,"961":2,"967":1,"972":1,"978":1,"979":2,"980":2,"982":1,"986":1,"988":2,"989":1,"990":7,"991":4,"994":1,"995":1,"996":1,"997":1,"1001":1,"1005":1,"1007":1,"1008":1,"1009":1,"1010":2,"1011":3,"1012":1,"1014":3,"1015":3,"1016":1,"1018":1,"1019":1,"1021":1,"1023":1,"1033":2,"1037":11,"1038":3,"1040":2,"1042":1,"1043":2,"1044":1,"1046":1,"1049":1,"1054":1,"1055":1,"1057":1,"1058":1,"1059":1,"1060":4,"1062":1,"1065":1,"1067":6,"1068":3,"1069":1,"1070":1,"1071":1,"1073":6,"1074":2,"1076":3,"1078":4,"1079":2,"1082":2,"1089":1,"1090":2,"1094":1,"1096":2,"1101":1,"1102":2,"1105":7,"1106":1,"1107":4,"1111":1,"1113":1,"1127":1,"1135":2,"1137":1,"1138":4,"1139":1,"1141":2,"1142":2,"1147":1,"1148":1,"1149":2,"1150":4,"1154":1,"1156":2,"1157":1,"1162":2,"1169":1,"1176":2,"1178":1,"1179":3,"1180":3,"1184":1,"1188":3,"1192":1,"1193":2,"1197":4,"1203":1,"1204":2,"1205":1,"1206":1,"1215":1,"1216":1,"1217":5,"1225":1,"1232":3,"1234":2,"1235":2,"1236":2,"1237":1,"1239":2,"1253":1,"1254":3,"1255":1,"1258":2,"1262":1,"1266":1,"1274":1,"1276":2,"1305":1,"1308":1,"1309":1,"1310":1,"1316":1,"1318":1,"1320":1,"1321":1,"1324":1,"1328":1,"1329":1,"1332":1,"1338":1,"1339":1,"1340":1,"1341":1,"1342":2,"1346":1,"1347":3,"1357":2,"1358":3,"1359":1,"1361":1,"1362":1,"1363":2,"1365":1,"1366":1,"1367":1,"1368":3,"1369":2,"1370":2,"1371":3,"1372":2,"1373":3,"1374":2,"1375":2,"1376":7,"1378":2,"1381":2,"1382":3,"1383":2,"1385":7,"1386":11,"1387":2,"1388":1,"1390":2,"1391":4,"1393":3,"1394":2,"1395":3,"1396":4,"1398":11,"1399":1,"1401":1,"1402":2,"1403":2,"1404":2,"1405":2,"1406":1,"1407":1,"1408":3,"1409":1,"1410":3,"1412":2,"1413":2,"1414":4,"1416":3,"1419":1,"1420":2,"1421":2,"1422":1,"1427":4,"1429":4,"1431":2,"1434":1,"1435":1,"1436":2,"1437":1,"1439":1,"1442":2,"1447":1,"1451":1,"1454":1,"1458":4,"1459":2,"1460":3,"1470":2,"1471":1,"1489":1,"1501":2,"1503":1,"1504":4,"1505":1,"1511":2,"1515":1,"1520":1,"1525":1,"1529":2,"1559":2,"1560":2,"1566":1,"1569":2,"1571":3,"1574":3,"1576":3,"1577":2,"1581":3,"1582":1,"1608":1,"1620":1,"1631":1,"1632":3,"1637":1,"1641":1,"1645":1,"1655":1,"1664":1,"1670":2,"1683":1,"1684":1,"1687":1,"1689":4,"1696":2,"1698":1,"1703":2,"1706":1,"1707":1,"1708":1,"1713":1,"1717":2,"1722":1,"1723":1,"1738":4,"1743":1,"1746":1,"1753":1,"1757":1,"1774":1,"1789":2,"1792":102,"1796":1,"1801":1,"1808":2,"1818":1,"1824":4,"1825":1,"1830":1,"1837":2,"1841":2,"1850":1,"1851":1,"1852":2,"1862":1,"1882":1,"1885":1,"1886":1,"1887":1,"1888":1,"1893":8,"1898":1,"1907":1,"1917":3,"1918":1,"1922":1,"1930":1,"1933":1,"1937":1,"1947":1,"1955":1,"1958":1,"1967":1,"1973":1,"1974":1,"1998":1,"2006":1,"2009":1,"2010":2,"2012":1,"2016":3,"2017":2,"2018":1,"2019":1,"2021":1,"2023":2,"2024":1,"2037":1,"2039":1,"2040":2,"2047":1,"2049":1,"2050":1,"2051":1,"2052":1,"2063":2,"2076":2,"2078":1,"2079":2,"2106":1,"2107":1,"2110":2,"2111":2,"2112":2,"2119":2,"2153":1,"2164":1,"2165":3,"2167":1,"2170":3,"2171":1,"2176":2,"2177":1,"2178":1,"2183":6,"2184":1,"2187":3,"2193":1,"2194":1,"2197":2,"2216":1,"2221":1,"2222":3,"2224":1,"2228":1,"2239":1,"2242":1,"2249":4,"2254":1,"2255":6,"2256":1,"2257":1,"2258":2,"2265":1,"2272":2,"2274":1,"2277":1,"2282":1,"2283":3,"2284":1,"2285":2,"2291":1,"2293":2,"2303":1,"2310":2,"2313":1,"2317":1,"2318":1,"2319":3,"2320":2,"2321":2,"2322":3,"2323":1,"2324":2,"2327":1,"2328":1,"2336":1,"2337":5,"2339":4,"2340":4,"2342":3,"2343":2,"2344":3,"2346":1,"2347":1,"2348":1,"2350":1,"2352":1,"2363":1,"2364":1,"2369":1,"2370":1,"2372":2,"2375":8,"2379":1,"2380":2,"2382":2,"2383":2,"2385":1,"2388":2,"2389":2,"2394":2,"2395":2,"2397":1,"2398":2,"2400":1,"2402":2,"2407":1,"2412":1,"2415":1,"2427":1,"2432":2,"2435":2,"2438":1,"2446":1,"2448":1,"2450":1,"2464":1,"2470":1,"2474":1,"2477":1,"2479":1,"2481":3,"2483":1,"2484":1,"2487":1,"2490":1,"2502":1,"2504":1,"2515":1,"2519":1,"2520":1,"2523":3,"2525":1,"2526":2,"2527":2,"2528":1,"2530":2,"2531":1,"2532":3,"2533":1,"2535":1,"2536":1,"2537":3,"2539":1,"2540":3,"2543":1,"2546":2,"2549":2,"2551":1,"2554":1,"2555":4,"2558":2,"2562":1,"2571":1,"2572":1,"2576":2,"2580":1,"2586":1,"2590":1,"2596":1,"2607":1,"2608":4,"2614":1,"2615":1,"2621":1,"2626":1,"2632":5,"2633":3,"2634":1,"2635":9,"2641":1,"2653":1,"2666":1,"2681":1,"2684":3,"2704":2,"2705":1,"2709":1,"2712":1,"2713":1,"2722":1,"2726":1,"2729":1,"2731":2,"2733":2,"2734":1,"2739":1,"2751":1,"2758":1,"2760":1,"2762":4,"2768":2,"2770":1,"2771":1,"2772":1,"2773":1,"2774":3,"2775":2,"2779":1,"2792":2,"2795":1,"2802":4,"2803":2,"2811":4,"2813":2,"2815":2,"2820":2,"2821":1,"2826":2,"2827":3,"2828":1,"2830":1,"2831":1,"2835":1,"2836":3,"2839":2,"2840":2,"2841":1,"2842":2,"2843":1,"2845":6,"2846":3,"2847":1,"2850":2,"2851":1,"2852":1,"2854":5,"2855":1,"2860":2,"2861":3,"2862":2,"2864":1,"2866":3,"2868":1,"2869":3,"2871":2,"2873":1,"2876":1,"2879":1}}],["frequently",{"2":{"1147":1,"1179":1,"1354":1,"1511":1,"1513":1,"1515":1,"1792":1,"2274":1,"2559":1,"2580":1}}],["frequency",{"2":{"1035":1,"1036":1,"1323":1,"1327":1,"1351":1}}],["fresh",{"2":{"107":1,"214":1,"695":1,"701":1,"1067":1,"1068":1,"1079":1,"1082":1,"1139":2,"1147":1,"1148":1,"1342":1,"1518":1,"1519":1,"1524":1,"1722":1,"1792":3,"2099":1,"2109":1,"2110":1,"2112":1,"2167":1,"2265":1,"2397":1,"2502":1,"2527":1,"2530":2,"2533":1,"2543":1,"2545":1,"2769":1,"2815":1,"2862":1,"2866":1,"2872":1,"2873":1}}],["freeing",{"2":{"2615":1}}],["freed",{"2":{"2157":1,"2543":1}}],["freely",{"2":{"448":1,"2193":1,"2207":1,"2581":1}}],["free",{"2":{"107":2,"319":1,"854":1,"869":3,"872":2,"873":2,"1018":1,"1037":1,"1044":1,"1206":3,"1400":2,"1401":1,"1421":1,"1443":1,"1792":1,"2380":1,"2614":1,"2776":1}}],["fonts",{"2":{"1943":1,"2020":1}}],["font",{"2":{"1792":7,"1936":4,"1943":4,"2020":1,"2029":1,"2073":3,"2075":3,"2080":3}}],["focused",{"2":{"2184":1,"2396":1,"2397":1}}],["focus",{"2":{"859":1,"975":1,"1084":1,"1385":1,"1386":1,"1421":1}}],["fowler",{"2":{"851":4,"859":2}}],["food",{"2":{"1400":1}}],["footnotes",{"2":{"2531":1}}],["footer>",{"2":{"996":2}}],["footprint",{"2":{"860":1,"1278":1}}],["foo",{"2":{"650":1}}],["folding",{"2":{"2493":1}}],["folder",{"2":{"913":1,"1086":1}}],["folded",{"2":{"874":1}}],["folds",{"2":{"388":1}}],["follow",{"2":{"687":1,"1080":1,"1111":1,"1403":1,"1480":1,"1792":1,"2193":1,"2509":1,"2511":1,"2529":1,"2543":1,"2857":1,"2865":1}}],["follows",{"0":{"1924":1},"2":{"422":1,"833":1,"853":1,"976":1,"1087":1,"1211":1,"1254":1,"1424":1,"1655":1,"1728":1,"2193":2,"2264":1,"2391":1,"2509":1,"2848":1}}],["followed",{"2":{"382":1,"826":1,"854":1,"1192":1,"2106":1,"2156":1,"2252":1,"2334":1,"2338":1,"2537":1,"2648":1}}],["following",{"2":{"31":1,"52":1,"158":1,"280":1,"446":1,"685":1,"748":1,"849":1,"914":1,"915":1,"918":2,"1254":1,"1386":3,"1391":1,"1403":1,"1589":1,"1620":1,"1671":1,"1792":3,"2002":1,"2141":1,"2222":1,"2438":1,"2513":1,"2586":1,"2681":1,"2792":1,"2824":1}}],["fought",{"2":{"852":1}}],["fourth",{"2":{"1152":1,"1590":1}}],["four",{"0":{"870":1,"882":1},"1":{"871":1,"872":1,"873":1,"874":1,"875":1,"883":1,"884":1},"2":{"33":1,"300":1,"304":1,"816":1,"852":2,"853":2,"857":1,"861":1,"864":1,"868":1,"873":1,"966":1,"1048":1,"1066":2,"1101":1,"1156":1,"1424":1,"1440":1,"1464":1,"1792":3,"1950":1,"2142":1,"2180":1,"2376":2,"2377":1,"2397":1,"2435":2,"2451":1,"2455":1,"2456":1,"2457":2,"2575":1,"2810":1,"2870":1}}],["foundation",{"2":{"832":1,"2670":1}}],["found",{"0":{"2491":1},"2":{"3":1,"63":1,"263":1,"309":1,"524":1,"587":1,"801":1,"913":1,"1055":1,"1060":1,"1235":1,"1236":1,"1254":1,"1335":1,"1339":1,"1394":1,"1395":1,"1427":1,"1518":1,"1792":6,"1885":1,"2095":1,"2113":1,"2220":1,"2242":1,"2255":3,"2258":1,"2265":1,"2266":1,"2267":1,"2271":1,"2337":1,"2363":1,"2491":1,"2535":1,"2537":1,"2880":1}}],["forbids",{"2":{"2519":1}}],["forbidden",{"2":{"25":1,"1057":1,"1061":1,"1674":1,"1792":2,"2255":1,"2271":1}}],["forgiven",{"2":{"2531":1}}],["forgery",{"2":{"1487":1,"1564":1,"1792":4}}],["forgets",{"2":{"1402":1}}],["forgetting",{"2":{"1128":1,"2107":1,"2392":1,"2537":1,"2879":1}}],["forget",{"2":{"847":1,"1107":1,"1325":1,"1527":1}}],["forgotten",{"2":{"1441":1}}],["forcing",{"2":{"1045":1,"1054":1}}],["forced",{"2":{"852":1,"1392":1,"1792":1,"2153":1,"2511":1,"2527":1,"2543":1,"2811":1,"2862":1,"2879":1}}],["forces",{"2":{"845":1,"1111":1,"1130":1,"1385":1,"1489":1,"1792":2,"2106":1,"2338":1,"2456":1,"2537":2,"2853":1}}],["force",{"0":{"520":1,"521":1,"2338":1},"2":{"74":1,"227":1,"389":1,"588":1,"705":1,"714":1,"823":1,"851":1,"1139":1,"1217":1,"1224":1,"1252":1,"1792":4,"1843":1,"1846":2,"1874":1,"2106":1,"2111":2,"2204":2,"2381":1,"2518":1,"2532":3,"2533":1,"2534":2,"2537":1,"2758":1,"2859":1,"2871":1,"2872":1,"2873":1}}],["foremost",{"2":{"1254":1}}],["forecast",{"2":{"1105":2}}],["foreach",{"2":{"1021":1,"1376":1,"2836":1}}],["forever",{"2":{"864":1,"1079":1,"1792":1,"2381":1}}],["foreign",{"2":{"848":2,"851":2,"852":3,"857":1,"864":1,"992":1,"1075":1,"1079":2,"1096":1,"1111":1,"2741":1,"2868":1}}],["forth",{"2":{"847":1,"974":1}}],["fork",{"0":{"833":1}}],["forwardchallenge",{"2":{"2437":1}}],["forwarddefaultselector",{"2":{"2421":1,"2422":1,"2435":1}}],["forwarduploadcontent",{"2":{"1792":1,"1916":1,"1917":1,"1927":1,"1928":1,"1931":1,"2549":5,"2814":1}}],["forwardlimit",{"2":{"1702":1,"1703":1,"1706":3,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1717":1,"1792":1,"2633":1}}],["forwardresponseheaders",{"2":{"1340":2,"1792":1,"1916":1,"1917":1,"1931":1,"2549":1,"2814":2}}],["forwardheaders",{"2":{"1340":2,"1792":1,"1916":1,"1917":1,"1931":1,"2549":1,"2814":2}}],["forwardsignout",{"2":{"2437":1}}],["forwards",{"2":{"414":1,"423":1,"433":1,"435":1,"436":3,"453":1,"868":1,"1331":2,"1332":1,"1338":1,"1348":1,"1396":2,"1825":1,"1925":1,"2185":1,"2302":2,"2513":1,"2806":1,"2807":1,"2809":1,"2816":1}}],["forwardedheaders",{"2":{"1702":1,"1706":2,"1707":1,"1708":1,"1709":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1792":1,"2633":1}}],["forwarded",{"0":{"1701":1,"1704":1,"2633":1},"1":{"1702":1,"1703":1,"1704":1,"1705":1,"1706":1,"1707":1,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1717":1,"1718":1,"1719":1},"2":{"320":1,"327":1,"415":1,"424":1,"436":2,"448":2,"452":3,"454":2,"668":1,"869":1,"1100":3,"1340":1,"1431":1,"1475":1,"1477":1,"1701":1,"1703":4,"1704":1,"1705":3,"1706":2,"1708":1,"1711":4,"1712":1,"1716":1,"1717":1,"1784":1,"1788":2,"1792":14,"1915":1,"1923":1,"1924":9,"1926":2,"1957":1,"1961":1,"2031":1,"2234":1,"2302":1,"2303":1,"2304":1,"2307":1,"2309":1,"2379":1,"2509":2,"2510":1,"2512":3,"2513":2,"2549":8,"2633":12,"2809":1,"2812":5,"2813":1,"2814":3,"2815":2}}],["forward",{"0":{"1706":1,"2813":1},"2":{"75":1,"77":1,"223":1,"412":2,"414":1,"421":1,"431":1,"436":1,"439":1,"451":1,"454":1,"456":1,"650":1,"949":1,"951":1,"1104":2,"1105":3,"1328":1,"1348":1,"1717":1,"1792":3,"1917":3,"1925":1,"1927":1,"2222":2,"2300":1,"2301":1,"2302":2,"2392":1,"2508":1,"2515":1,"2517":1,"2532":1,"2549":3,"2580":1,"2771":1,"2806":1,"2807":1,"2809":1,"2812":2,"2813":1,"2814":3,"2817":1,"2832":1}}],["forwarding",{"0":{"423":1,"1348":1,"1923":1,"1927":1,"2304":1,"2812":1},"1":{"1924":1,"1925":1,"1926":1},"2":{"75":1,"414":1,"436":1,"438":1,"453":1,"456":2,"1105":2,"1109":1,"1329":1,"1351":1,"1789":1,"1792":2,"1824":1,"1917":2,"1924":1,"1928":3,"1932":2,"2309":1,"2392":1,"2404":2,"2481":1,"2549":5,"2806":1,"2817":1}}],["for",{"0":{"85":1,"86":1,"180":1,"466":1,"467":1,"553":1,"554":1,"798":1,"868":1,"900":1,"904":1,"912":1,"1011":1,"1052":1,"1076":1,"1193":1,"1344":1,"1435":1,"1973":1,"2217":1,"2251":1,"2333":1,"2335":1,"2336":1,"2340":1,"2346":1,"2356":1,"2359":1,"2377":1,"2397":1,"2399":1,"2429":1,"2430":1,"2519":1,"2555":1,"2581":1,"2587":1,"2589":1,"2594":1,"2626":1,"2664":1,"2667":1,"2695":1,"2719":1,"2755":1},"1":{"913":1,"914":1,"915":1,"916":1,"917":1,"918":1,"919":1,"920":1,"1345":1,"1346":1,"1347":1,"1348":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1,"2398":1,"2431":1,"2432":1,"2433":1,"2434":1,"2595":1,"2596":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1},"2":{"10":1,"13":1,"25":1,"32":1,"33":3,"41":2,"51":1,"54":1,"55":1,"56":1,"57":1,"58":1,"66":1,"74":1,"81":1,"84":1,"87":1,"88":1,"91":1,"101":1,"106":1,"110":1,"112":1,"119":1,"120":1,"121":1,"132":1,"139":1,"140":1,"144":1,"154":1,"157":2,"165":2,"168":1,"174":2,"175":1,"176":1,"177":1,"188":1,"209":1,"210":1,"212":2,"213":1,"214":5,"215":1,"216":1,"220":2,"223":4,"228":1,"229":2,"232":1,"233":1,"238":1,"239":2,"244":1,"245":2,"277":1,"292":1,"296":3,"297":2,"298":2,"300":2,"302":2,"305":5,"307":2,"308":1,"310":2,"320":3,"322":3,"323":2,"324":1,"330":1,"334":1,"338":3,"339":1,"347":1,"348":2,"351":1,"362":1,"370":1,"376":3,"377":1,"384":1,"388":5,"389":1,"390":3,"393":1,"408":1,"409":1,"414":1,"419":1,"423":1,"424":2,"429":1,"430":1,"435":1,"438":1,"446":1,"447":1,"448":1,"449":1,"452":1,"453":1,"454":1,"455":1,"470":2,"480":1,"493":1,"523":1,"524":2,"536":1,"542":1,"556":2,"569":1,"577":3,"581":1,"582":1,"586":2,"587":5,"598":1,"624":3,"627":1,"646":1,"649":1,"650":1,"656":4,"668":1,"675":3,"680":1,"681":1,"683":3,"684":1,"685":2,"686":2,"687":4,"693":1,"696":1,"706":1,"716":1,"718":1,"720":5,"722":1,"723":1,"728":1,"737":1,"745":2,"747":2,"751":2,"753":2,"755":1,"756":1,"757":3,"758":1,"760":1,"761":2,"762":1,"764":2,"767":2,"771":2,"772":1,"773":1,"774":2,"775":1,"776":3,"777":1,"779":1,"781":1,"782":5,"783":1,"784":5,"785":1,"786":4,"787":1,"788":5,"789":1,"792":1,"794":1,"801":2,"823":1,"829":1,"834":1,"835":1,"836":2,"837":4,"840":1,"841":8,"844":6,"845":2,"847":1,"848":4,"849":3,"851":5,"852":6,"857":3,"860":4,"861":2,"863":2,"864":1,"868":4,"869":7,"871":1,"872":2,"874":2,"876":2,"879":3,"880":1,"881":3,"882":1,"883":1,"884":2,"885":1,"886":1,"891":1,"892":3,"893":1,"894":1,"899":1,"900":1,"902":2,"903":2,"904":5,"907":1,"908":1,"909":1,"911":1,"913":8,"914":2,"915":2,"916":6,"917":3,"918":9,"919":5,"920":2,"924":1,"925":2,"926":2,"927":1,"928":2,"929":2,"930":1,"933":2,"948":3,"951":2,"953":1,"954":1,"959":3,"961":4,"965":2,"966":1,"967":2,"968":3,"969":1,"971":1,"974":1,"975":2,"988":1,"992":1,"993":1,"994":1,"996":2,"1006":1,"1014":2,"1019":3,"1021":1,"1024":2,"1026":1,"1029":1,"1031":2,"1032":1,"1033":1,"1035":2,"1036":3,"1037":6,"1038":3,"1042":2,"1048":1,"1049":2,"1052":1,"1054":2,"1055":1,"1056":4,"1058":1,"1060":2,"1063":3,"1064":5,"1066":2,"1067":6,"1068":3,"1069":4,"1070":4,"1071":1,"1073":5,"1074":2,"1075":3,"1076":1,"1078":2,"1079":1,"1080":1,"1081":2,"1084":2,"1086":4,"1094":3,"1096":2,"1097":6,"1098":7,"1099":2,"1100":8,"1101":5,"1102":3,"1103":1,"1104":1,"1105":2,"1107":2,"1110":1,"1111":6,"1113":1,"1114":1,"1115":4,"1118":1,"1121":3,"1123":1,"1125":1,"1127":5,"1128":1,"1129":3,"1132":1,"1133":3,"1135":2,"1138":3,"1141":2,"1142":3,"1144":1,"1145":1,"1146":1,"1147":2,"1148":2,"1149":1,"1150":3,"1152":1,"1153":1,"1154":1,"1158":1,"1160":1,"1161":1,"1162":5,"1164":1,"1165":2,"1166":1,"1167":1,"1168":1,"1171":1,"1172":2,"1174":2,"1175":1,"1178":1,"1179":1,"1180":2,"1181":3,"1185":1,"1196":1,"1197":2,"1198":1,"1202":1,"1204":1,"1205":3,"1206":4,"1207":2,"1211":1,"1212":1,"1213":4,"1214":2,"1216":3,"1217":4,"1218":2,"1220":2,"1221":1,"1222":1,"1223":1,"1224":2,"1225":2,"1226":2,"1232":1,"1234":3,"1236":3,"1238":1,"1239":2,"1247":1,"1250":2,"1252":1,"1254":3,"1255":3,"1258":1,"1259":2,"1260":1,"1272":1,"1274":1,"1280":4,"1281":1,"1303":4,"1304":1,"1305":1,"1307":1,"1309":1,"1312":1,"1320":1,"1323":3,"1324":3,"1325":1,"1326":2,"1327":3,"1329":2,"1337":1,"1338":1,"1339":1,"1340":1,"1341":1,"1343":2,"1349":2,"1351":3,"1352":1,"1355":2,"1356":1,"1358":6,"1361":1,"1362":1,"1363":2,"1366":5,"1367":2,"1368":2,"1374":2,"1377":1,"1381":2,"1382":5,"1385":14,"1386":20,"1388":2,"1389":1,"1390":1,"1391":3,"1392":1,"1393":1,"1394":1,"1395":3,"1396":8,"1398":6,"1399":1,"1400":3,"1401":5,"1402":2,"1403":5,"1404":4,"1405":3,"1406":1,"1409":4,"1410":4,"1412":2,"1413":1,"1414":1,"1415":4,"1416":5,"1423":2,"1430":2,"1431":1,"1432":3,"1434":1,"1435":2,"1436":1,"1437":1,"1438":1,"1439":1,"1440":2,"1441":1,"1442":1,"1443":1,"1447":5,"1448":1,"1450":1,"1451":1,"1454":4,"1458":2,"1460":1,"1468":1,"1470":3,"1471":5,"1472":1,"1473":1,"1474":3,"1475":5,"1477":6,"1479":2,"1480":2,"1487":1,"1489":2,"1492":1,"1499":1,"1503":1,"1509":1,"1511":9,"1514":1,"1515":3,"1516":2,"1517":1,"1518":1,"1519":5,"1523":1,"1524":2,"1525":1,"1528":1,"1530":1,"1531":2,"1533":2,"1540":4,"1544":2,"1552":2,"1554":1,"1555":1,"1558":1,"1559":3,"1563":2,"1564":1,"1565":1,"1566":1,"1567":1,"1569":1,"1572":2,"1573":2,"1574":1,"1581":4,"1582":1,"1586":1,"1590":2,"1592":1,"1596":1,"1597":1,"1599":2,"1604":1,"1605":1,"1606":1,"1608":1,"1609":3,"1614":1,"1615":1,"1616":1,"1618":2,"1620":3,"1622":1,"1623":1,"1625":1,"1628":2,"1629":1,"1632":1,"1633":1,"1637":1,"1639":4,"1641":2,"1649":1,"1651":4,"1656":1,"1657":1,"1659":1,"1661":1,"1664":2,"1668":1,"1670":3,"1673":1,"1674":1,"1677":1,"1678":1,"1680":1,"1684":5,"1685":1,"1686":1,"1690":3,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":3,"1701":2,"1703":2,"1705":1,"1706":2,"1708":1,"1711":2,"1720":1,"1722":9,"1732":1,"1738":3,"1743":6,"1751":2,"1756":1,"1757":2,"1758":1,"1762":1,"1764":5,"1771":2,"1774":1,"1785":4,"1788":1,"1789":4,"1791":1,"1792":294,"1796":1,"1799":2,"1801":2,"1802":2,"1803":1,"1804":3,"1805":2,"1807":3,"1809":2,"1813":1,"1817":1,"1823":4,"1825":1,"1830":1,"1835":1,"1836":7,"1840":3,"1841":1,"1844":2,"1846":2,"1847":2,"1848":2,"1850":1,"1851":2,"1856":2,"1857":2,"1858":3,"1859":1,"1862":2,"1868":1,"1870":1,"1871":1,"1872":1,"1874":3,"1875":1,"1876":2,"1882":2,"1884":2,"1886":3,"1895":1,"1896":2,"1898":5,"1899":1,"1901":3,"1906":3,"1911":1,"1913":1,"1915":1,"1917":2,"1918":7,"1921":1,"1922":2,"1924":3,"1927":2,"1928":1,"1929":1,"1932":1,"1933":1,"1934":1,"1935":1,"1937":3,"1940":1,"1941":1,"1942":1,"1944":2,"1951":1,"1952":1,"1953":1,"1954":1,"1956":1,"1957":2,"1958":4,"1961":1,"1965":1,"1967":2,"1968":1,"1969":1,"1974":1,"1983":1,"1991":2,"1994":2,"1998":1,"2000":2,"2002":2,"2008":1,"2010":2,"2013":1,"2019":10,"2020":7,"2024":1,"2034":3,"2038":4,"2040":1,"2041":1,"2045":1,"2047":8,"2054":2,"2055":1,"2063":1,"2070":1,"2071":1,"2075":1,"2077":2,"2084":1,"2088":1,"2092":3,"2094":3,"2096":1,"2098":2,"2104":2,"2105":1,"2106":3,"2107":1,"2109":1,"2122":1,"2124":2,"2125":3,"2127":1,"2130":4,"2137":1,"2141":4,"2153":1,"2154":2,"2157":2,"2164":3,"2168":1,"2169":1,"2170":1,"2172":1,"2173":1,"2174":1,"2176":1,"2177":5,"2181":4,"2183":1,"2184":2,"2185":2,"2191":1,"2192":1,"2193":1,"2197":1,"2201":1,"2205":1,"2209":1,"2210":1,"2212":1,"2217":1,"2220":1,"2221":2,"2222":3,"2223":1,"2224":2,"2225":3,"2226":1,"2228":1,"2230":1,"2232":2,"2235":1,"2237":1,"2242":1,"2245":1,"2247":6,"2250":1,"2251":2,"2252":4,"2253":3,"2254":6,"2255":1,"2256":3,"2257":6,"2258":3,"2259":1,"2261":3,"2264":9,"2265":15,"2266":6,"2267":2,"2270":5,"2272":2,"2273":3,"2274":3,"2277":2,"2278":2,"2279":1,"2284":1,"2291":1,"2296":1,"2297":3,"2305":1,"2307":2,"2309":1,"2310":1,"2313":1,"2318":1,"2321":2,"2322":1,"2323":1,"2324":1,"2326":1,"2327":1,"2330":3,"2333":1,"2335":1,"2336":1,"2337":3,"2338":2,"2340":1,"2343":1,"2346":1,"2347":1,"2350":2,"2351":1,"2357":1,"2358":1,"2359":2,"2364":1,"2366":1,"2370":2,"2371":1,"2372":8,"2375":4,"2379":3,"2380":1,"2381":1,"2382":2,"2384":1,"2385":2,"2389":1,"2391":3,"2392":1,"2393":1,"2394":4,"2395":3,"2398":2,"2402":1,"2406":1,"2407":5,"2410":1,"2411":1,"2413":1,"2414":1,"2415":2,"2417":2,"2419":1,"2421":1,"2422":5,"2423":2,"2424":1,"2425":1,"2426":1,"2428":1,"2429":1,"2430":3,"2431":3,"2433":1,"2434":1,"2435":3,"2436":2,"2438":6,"2440":1,"2447":1,"2450":2,"2451":1,"2455":1,"2456":2,"2459":2,"2461":1,"2463":1,"2466":2,"2468":2,"2472":1,"2479":1,"2481":1,"2482":3,"2483":2,"2484":1,"2487":1,"2490":1,"2492":2,"2493":2,"2494":1,"2495":2,"2497":2,"2498":4,"2500":1,"2502":4,"2511":3,"2515":1,"2518":1,"2519":4,"2520":1,"2523":3,"2525":2,"2526":1,"2529":2,"2530":1,"2531":1,"2532":2,"2533":1,"2534":4,"2535":2,"2537":13,"2541":1,"2542":1,"2543":3,"2546":2,"2549":4,"2550":1,"2554":2,"2555":1,"2558":2,"2559":1,"2562":1,"2565":3,"2569":1,"2572":1,"2575":5,"2576":2,"2577":1,"2580":5,"2581":1,"2585":1,"2586":3,"2587":1,"2588":3,"2590":3,"2591":1,"2594":1,"2595":1,"2596":1,"2597":1,"2600":1,"2603":1,"2604":2,"2607":1,"2608":1,"2611":1,"2614":4,"2615":1,"2621":4,"2622":1,"2627":2,"2628":3,"2629":1,"2632":3,"2633":8,"2634":9,"2635":14,"2641":3,"2645":1,"2648":1,"2649":1,"2651":1,"2652":2,"2655":2,"2656":1,"2659":2,"2664":2,"2665":1,"2666":1,"2667":1,"2670":2,"2671":1,"2677":1,"2679":1,"2680":1,"2682":2,"2686":1,"2687":1,"2688":1,"2689":1,"2693":1,"2699":1,"2700":1,"2705":1,"2706":1,"2711":1,"2713":1,"2718":1,"2719":1,"2722":1,"2723":2,"2725":1,"2726":2,"2729":1,"2731":1,"2737":1,"2740":1,"2744":1,"2750":1,"2752":1,"2754":1,"2759":1,"2763":1,"2764":1,"2765":2,"2769":8,"2772":4,"2774":2,"2775":2,"2776":2,"2779":3,"2783":1,"2786":1,"2788":1,"2789":2,"2790":4,"2791":1,"2792":3,"2793":1,"2795":1,"2797":1,"2800":1,"2802":1,"2804":1,"2806":1,"2809":1,"2810":1,"2812":2,"2813":2,"2814":1,"2818":1,"2824":4,"2825":4,"2826":1,"2827":1,"2829":1,"2830":5,"2831":2,"2833":1,"2834":1,"2835":2,"2838":1,"2840":1,"2841":2,"2849":1,"2851":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2859":1,"2860":1,"2861":1,"2865":1,"2868":2,"2869":2,"2870":2,"2871":2,"2872":1,"2873":2,"2878":2,"2879":2,"2880":1}}],["form>",{"2":{"1491":1,"1792":1}}],["formfieldname",{"2":{"1488":1,"1489":1,"1792":2}}],["formed",{"2":{"1424":1,"1427":1,"1428":1}}],["formula",{"2":{"1169":1,"1429":1}}],["formulas",{"2":{"952":1}}],["formdata",{"2":{"894":4,"1366":5,"1410":6}}],["formal",{"2":{"1405":1}}],["formalized",{"2":{"848":1}}],["formatvalue",{"2":{"2372":1}}],["formattable",{"2":{"2614":1}}],["formatted",{"2":{"1618":1,"1792":1,"2679":1}}],["formatting",{"2":{"484":1,"971":1,"1792":1,"1809":2,"2206":1,"2270":1,"2328":1,"2635":1,"2829":1}}],["format=json",{"2":{"1792":1,"2056":1,"2674":1}}],["format=",{"2":{"1792":1,"2047":1}}],["format=excel",{"2":{"679":1,"959":1,"961":1,"1374":1}}],["format=html",{"2":{"167":1,"679":1,"959":1,"961":1,"2056":1,"2322":1,"2674":1}}],["format>",{"2":{"674":1}}],["formatstring",{"2":{"2270":1}}],["formats",{"0":{"280":1,"959":1,"963":1,"2053":1,"2210":1},"1":{"960":1,"2054":1,"2055":1,"2056":1,"2211":1,"2212":1},"2":{"133":1,"214":1,"277":1,"280":1,"848":1,"880":1,"1034":1,"1098":1,"1143":1,"1358":1,"1731":1,"2212":2,"2264":1,"2502":1,"2635":1}}],["format",{"0":{"138":1,"161":1,"228":1,"232":1,"267":1,"491":1,"673":1,"679":1,"900":1,"958":1,"960":1,"962":1,"965":1,"1728":1,"1782":1,"2054":1,"2055":1,"2056":1,"2072":1,"2650":1,"2651":1,"2652":1,"2674":1,"2686":1},"1":{"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"278":1,"279":1,"280":1,"281":1,"674":1,"675":1,"676":1,"677":1,"678":1,"679":1,"680":1,"681":1,"682":1,"963":1,"964":1,"1729":1,"1730":1,"2073":1,"2074":1,"2075":1,"2076":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2651":1,"2652":1,"2653":1},"2":{"63":1,"92":2,"98":2,"110":2,"118":1,"122":2,"133":1,"141":2,"156":1,"161":1,"164":2,"165":1,"167":9,"197":1,"211":3,"212":1,"213":1,"214":1,"217":2,"228":1,"232":2,"267":1,"279":1,"322":1,"383":1,"423":1,"428":1,"524":1,"537":1,"567":1,"664":1,"665":1,"673":3,"674":2,"675":7,"677":2,"678":1,"679":5,"680":1,"681":1,"682":1,"720":1,"723":5,"726":2,"747":4,"768":1,"776":6,"781":3,"782":2,"784":2,"786":3,"788":9,"814":1,"848":1,"849":1,"868":1,"879":2,"892":7,"897":2,"904":4,"911":1,"947":1,"949":2,"952":1,"956":1,"957":8,"959":2,"960":4,"961":4,"963":2,"964":1,"965":2,"966":3,"970":1,"971":1,"1017":1,"1034":1,"1054":1,"1098":2,"1099":2,"1109":1,"1111":3,"1138":1,"1237":1,"1279":2,"1360":1,"1374":5,"1386":1,"1398":1,"1401":1,"1410":1,"1413":5,"1447":1,"1450":1,"1451":1,"1454":3,"1457":1,"1511":2,"1518":1,"1521":1,"1532":1,"1535":2,"1608":1,"1620":1,"1685":1,"1689":1,"1726":1,"1728":1,"1731":3,"1733":1,"1740":1,"1743":1,"1748":1,"1750":1,"1764":1,"1769":1,"1789":1,"1792":33,"1837":1,"1844":1,"1887":1,"1906":1,"1917":2,"1974":1,"2039":1,"2047":3,"2056":2,"2060":1,"2072":3,"2074":2,"2075":2,"2076":2,"2077":8,"2078":1,"2079":4,"2081":2,"2083":1,"2130":3,"2146":1,"2164":2,"2165":3,"2193":1,"2202":1,"2205":1,"2207":1,"2210":1,"2233":1,"2253":2,"2255":1,"2261":1,"2264":4,"2265":1,"2271":2,"2272":1,"2288":1,"2304":1,"2320":1,"2322":8,"2329":1,"2348":1,"2370":1,"2372":1,"2380":1,"2554":1,"2555":1,"2603":1,"2607":1,"2611":1,"2634":1,"2635":2,"2649":1,"2650":2,"2651":1,"2652":3,"2653":4,"2656":4,"2664":3,"2674":1,"2686":1,"2692":1,"2726":1,"2758":1,"2765":1,"2814":1,"2823":1,"2833":2,"2834":2,"2849":5,"2856":1}}],["forms",{"0":{"1605":1},"2":{"262":1,"269":1,"277":1,"369":1,"370":1,"378":1,"834":1,"837":1,"1135":1,"1491":1,"1581":1,"1605":1,"1792":3,"2040":1,"2211":1,"2212":1,"2332":1,"2337":1,"2372":1,"2395":1,"2476":1,"2497":1,"2506":1,"2540":1,"2688":1,"2854":1}}],["form",{"0":{"8":1,"175":1,"196":1,"271":1,"272":1,"522":1,"664":1,"665":1,"1491":1},"2":{"175":3,"209":1,"326":1,"355":1,"370":1,"390":2,"417":2,"418":2,"419":2,"420":2,"421":2,"436":1,"441":2,"442":2,"443":2,"444":2,"445":2,"454":1,"779":1,"833":1,"834":1,"851":2,"857":1,"859":1,"879":1,"881":2,"918":1,"938":1,"1043":1,"1044":1,"1061":1,"1142":1,"1157":2,"1383":1,"1385":1,"1413":1,"1429":1,"1489":2,"1491":2,"1564":1,"1572":1,"1792":12,"1824":1,"1862":2,"1917":1,"1927":1,"1948":1,"2038":5,"2039":1,"2181":1,"2221":1,"2332":3,"2378":1,"2389":1,"2476":1,"2484":1,"2540":2,"2549":1,"2687":1,"2814":1,"2836":1,"2845":2}}],["fifth",{"2":{"1590":1}}],["fifteen",{"2":{"848":1,"867":1}}],["ficciones",{"2":{"1440":1,"1442":1}}],["fisy",{"2":{"1254":1}}],["fiaterror",{"2":{"1023":1,"1024":1,"1026":2}}],["fiatsuccess",{"2":{"1023":1,"1024":2,"1026":2}}],["fiatlastupdated",{"2":{"1023":1,"1024":1,"1026":2}}],["fiatrates",{"2":{"1023":1,"1024":2,"1026":2}}],["fiatbasecurrency",{"2":{"1023":1,"1024":1,"1026":2}}],["fiat",{"2":{"1018":1,"1020":6,"1021":7,"1376":4}}],["fidelity",{"2":{"2156":1,"2542":1}}],["fido2",{"0":{"2625":1},"2":{"869":1,"873":1,"1248":1,"1792":2,"1866":1,"2235":1,"2496":1,"2625":1,"2736":1}}],["fiddling",{"2":{"851":1}}],["fiddled",{"2":{"843":1}}],["fight",{"2":{"865":1,"1440":1}}],["figures",{"2":{"869":1}}],["figure",{"2":{"851":1,"872":1,"1381":1}}],["fibonacci",{"2":{"860":1}}],["five",{"2":{"857":1,"865":1,"868":1,"872":1,"1258":1,"1382":2,"1687":1,"1792":1,"1806":1,"1908":1,"2430":1,"2436":1,"2803":1}}],["fitting",{"2":{"860":1}}],["fit",{"2":{"831":1,"869":1,"1435":1,"2170":1,"2463":1}}],["fits",{"2":{"308":1,"831":1,"1135":1,"1280":1,"2177":1}}],["fixing",{"2":{"974":1,"2450":1,"2537":1}}],["fixes",{"0":{"2258":1,"2267":1,"2361":1,"2401":1,"2488":1,"2503":1,"2551":1,"2558":1,"2597":1,"2600":1,"2603":1,"2608":1,"2638":1,"2641":1,"2645":1,"2648":1,"2666":1},"1":{"2259":1,"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1,"2402":1,"2403":1,"2404":1,"2405":1,"2489":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":1,"2497":1,"2504":1,"2505":1},"2":{"856":1,"874":1,"1071":1,"2222":1,"2265":1,"2336":1,"2401":1,"2409":2,"2440":1,"2455":1,"2461":1,"2479":1,"2497":1,"2500":1,"2515":1,"2518":1}}],["fixedwindow",{"2":{"476":1,"479":1,"480":1,"868":1,"1069":1,"1158":1,"1162":2,"1792":5,"1950":1,"1951":2,"1955":2,"1958":1,"1959":1,"1960":2,"2257":2,"2378":2,"2379":2,"2441":1,"2443":1,"2444":1,"2470":1,"2471":1}}],["fixed",{"0":{"476":1,"987":1,"1158":1,"1951":1},"1":{"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1},"2":{"1":1,"308":1,"319":1,"388":1,"423":1,"476":3,"967":1,"987":1,"988":1,"990":1,"1067":1,"1101":1,"1158":3,"1163":1,"1511":1,"1516":1,"1577":1,"1792":5,"1856":1,"1950":1,"1951":4,"1960":1,"2177":1,"2247":1,"2257":2,"2258":3,"2261":1,"2265":4,"2267":5,"2274":1,"2278":1,"2360":1,"2378":2,"2442":1,"2490":1,"2494":1,"2551":2,"2555":1,"2558":5,"2566":1,"2569":1,"2572":1,"2589":1,"2597":3,"2600":1,"2603":1,"2608":1,"2611":1,"2615":1,"2618":1,"2626":1,"2634":1,"2638":3,"2641":2,"2645":1,"2648":2,"2666":1}}],["fix",{"0":{"2360":1,"2365":1,"2367":1,"2384":1,"2410":1,"2413":1,"2414":1,"2416":1,"2420":1,"2423":1,"2441":1,"2444":1,"2445":1,"2451":1,"2589":1,"2618":1},"1":{"2411":1,"2412":1,"2413":1,"2415":1,"2416":1,"2421":1,"2422":1,"2423":1,"2424":1,"2442":1,"2443":1,"2444":1},"2":{"852":2,"859":1,"871":1,"872":1,"933":1,"985":1,"1076":1,"1078":1,"1080":1,"1409":1,"1419":1,"1431":1,"2222":5,"2223":5,"2224":3,"2225":3,"2235":1,"2242":4,"2258":5,"2384":1,"2419":1,"2440":1,"2445":1,"2452":1,"2466":1,"2486":1,"2498":2,"2504":1,"2520":1,"2546":1,"2589":2,"2603":1,"2611":1,"2615":1,"2679":1,"2823":1,"2878":1}}],["fixtures",{"0":{"1079":1,"2741":1,"2868":1},"2":{"1079":3,"1082":1,"1094":1,"2110":1,"2114":1,"2153":1,"2167":2,"2530":1,"2531":2,"2541":1,"2545":2,"2739":1,"2867":1,"2869":4,"2876":1}}],["fixture",{"2":{"715":2,"876":1,"1073":1,"1074":6,"1075":1,"1078":2,"1079":1,"2103":1,"2106":1,"2456":1,"2472":1,"2526":2,"2527":1,"2531":3,"2533":1,"2537":1,"2546":1,"2741":1,"2860":2,"2862":1,"2868":6,"2869":6,"2878":1,"2881":1}}],["fingerprints",{"2":{"1210":1}}],["fingerprint",{"2":{"1098":1,"1792":1,"2546":1}}],["finishes",{"2":{"2466":1}}],["finished",{"2":{"852":1}}],["finishing",{"2":{"2440":1}}],["finish",{"2":{"874":1,"1792":1,"2100":1,"2537":1}}],["financialdashboardresponse",{"2":{"1026":1}}],["financialdashboardrequest",{"2":{"1026":1}}],["financial",{"0":{"1018":1},"1":{"1019":1,"1020":1,"1021":1,"1022":1},"2":{"1010":1,"1011":1,"1020":1,"1021":5,"1023":1,"1026":1,"1036":1,"1376":4,"1792":1,"2766":3,"2770":1}}],["finance",{"2":{"866":1,"1037":1,"1196":1}}],["finally",{"0":{"2402":1},"2":{"848":1,"851":1,"1073":1,"1384":1,"1386":1,"1395":1,"1405":1,"1416":1,"2226":1,"2247":1,"2402":1,"2403":1,"2404":1}}],["final",{"2":{"763":1,"773":1,"851":1,"885":1,"903":1,"982":1,"1399":1,"1404":1,"2038":1}}],["findmatchingpathparameter",{"2":{"2614":1}}],["findunknownconfigkeys",{"2":{"2411":1,"2417":1,"2442":1,"2443":1,"2448":1}}],["findings",{"0":{"1261":1},"1":{"1262":1,"1263":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1},"2":{"1090":1}}],["findfirst",{"2":{"1070":1,"1957":1,"2379":1}}],["find",{"2":{"554":1,"876":1,"920":1,"1044":2,"1060":1,"1403":1,"1409":1,"1419":1,"1442":1,"1689":1,"1792":2}}],["finds",{"2":{"388":1,"1403":1,"1437":1}}],["finer",{"2":{"1071":1,"1464":1,"2376":1}}],["finest",{"2":{"913":1}}],["fine",{"2":{"307":1,"835":1,"841":1,"843":2,"852":1,"859":1,"916":1,"1070":1,"1329":1,"1384":1,"1386":1,"1398":1,"1792":1,"2177":1,"2628":1}}],["firing",{"2":{"2504":3}}],["fire",{"2":{"1106":1,"1107":1,"1325":1,"2397":1,"2398":2,"2459":1,"2506":1,"2546":1}}],["firewalls",{"2":{"1014":1}}],["fired",{"0":{"2504":1},"2":{"856":1,"1326":1,"2222":1,"2504":1,"2510":1}}],["fires",{"0":{"2832":1},"2":{"214":2,"388":1,"948":1,"1722":1,"1743":1,"1792":2,"2224":1,"2363":1,"2392":2,"2395":1,"2398":1,"2502":2,"2506":1,"2766":1,"2827":1,"2835":1,"2878":1}}],["firststackframeandmessage",{"2":{"1792":2,"1836":1,"1844":1,"1845":1,"1863":1,"2701":1,"2802":1}}],["firstname",{"2":{"914":2,"915":1,"916":6,"917":4,"918":2,"919":2,"920":5,"1375":1}}],["first",{"0":{"831":1,"1247":1,"2741":1,"2820":1},"1":{"832":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1,"2821":1,"2822":1},"2":{"39":1,"41":1,"74":1,"108":1,"125":1,"133":1,"214":1,"223":1,"277":1,"299":1,"309":1,"349":1,"378":1,"412":1,"456":1,"565":1,"582":1,"585":1,"586":1,"614":1,"615":1,"694":1,"695":1,"704":1,"706":1,"709":1,"714":1,"747":2,"761":1,"771":1,"776":1,"781":2,"818":1,"831":1,"832":2,"836":1,"838":1,"843":1,"844":3,"852":3,"859":2,"863":1,"864":4,"865":1,"866":1,"868":1,"869":1,"873":1,"876":1,"877":1,"885":1,"892":1,"904":2,"913":2,"914":4,"915":4,"916":5,"918":4,"919":1,"932":1,"969":1,"977":1,"980":1,"981":1,"986":1,"990":1,"992":1,"994":2,"1019":1,"1029":1,"1037":1,"1066":1,"1067":1,"1069":1,"1076":1,"1081":1,"1084":1,"1095":1,"1101":1,"1105":1,"1133":1,"1136":1,"1150":1,"1152":1,"1153":1,"1162":1,"1187":1,"1211":1,"1213":1,"1217":1,"1229":1,"1254":1,"1285":1,"1332":1,"1335":1,"1338":1,"1346":1,"1351":1,"1358":2,"1360":1,"1363":1,"1369":1,"1370":4,"1375":2,"1380":1,"1385":1,"1386":2,"1390":1,"1396":1,"1400":1,"1401":1,"1402":1,"1406":1,"1408":1,"1418":1,"1429":1,"1431":1,"1472":1,"1523":1,"1590":1,"1613":1,"1628":2,"1631":1,"1688":1,"1703":1,"1792":15,"1837":1,"1845":1,"1879":1,"1910":1,"1954":1,"1956":1,"2005":1,"2006":2,"2094":1,"2098":1,"2100":1,"2125":1,"2130":1,"2149":1,"2162":1,"2164":1,"2165":2,"2192":1,"2206":1,"2212":1,"2223":1,"2266":3,"2300":1,"2323":1,"2330":1,"2333":1,"2337":1,"2339":2,"2379":1,"2380":1,"2393":1,"2414":1,"2422":2,"2424":2,"2427":1,"2433":1,"2438":2,"2452":1,"2494":2,"2502":1,"2518":1,"2528":4,"2529":3,"2532":1,"2533":2,"2534":1,"2537":1,"2575":1,"2633":1,"2684":1,"2721":1,"2725":1,"2793":1,"2797":1,"2806":1,"2813":1,"2818":2,"2822":3,"2823":3,"2824":10,"2825":4,"2841":1,"2850":5,"2864":3,"2865":3,"2870":1,"2881":1}}],["fil",{"2":{"388":1,"2493":1}}],["filtertoolsbyrole",{"0":{"1832":1},"2":{"1792":1,"1814":1,"1833":1,"2481":2}}],["filteredrates",{"2":{"1026":3}}],["filtered",{"2":{"521":3,"639":1,"1021":4,"1376":4,"2533":1,"2537":1,"2828":2,"2833":1}}],["filter=login",{"2":{"1792":1,"2092":1,"2094":1,"2096":1,"2537":1,"2877":1}}],["filter=active",{"2":{"467":1}}],["filter=",{"2":{"467":1}}],["filter=null",{"2":{"467":1}}],["filters",{"0":{"349":1,"1908":1,"1909":1,"2431":1},"1":{"1909":1,"1910":1,"1911":1},"2":{"349":1,"354":1,"356":1,"521":2,"668":1,"1096":1,"1305":1,"1326":1,"1385":2,"1792":2,"1909":1,"1910":1,"2156":1,"2419":1,"2430":1,"2433":2,"2435":1,"2438":1,"2542":1,"2751":1,"2799":1,"2804":1}}],["filtering",{"0":{"656":1,"758":1,"1838":1,"1839":1,"1969":1,"2062":1,"2430":1,"2629":1,"2877":1},"1":{"1839":1,"1970":1,"1971":1,"1972":1,"2431":1,"2432":1,"2433":1,"2434":1},"2":{"239":1,"356":1,"650":1,"980":1,"1096":3,"1122":1,"1127":1,"1305":1,"1326":1,"1787":1,"1792":1,"1794":1,"2097":1,"2159":1,"2184":1,"2221":2,"2225":1,"2369":1,"2391":1,"2419":1,"2533":1,"2546":1,"2701":1,"2870":1}}],["filter",{"0":{"354":1,"1910":1,"2096":1,"2433":1,"2678":2},"2":{"168":1,"188":1,"213":2,"223":1,"349":2,"356":1,"378":1,"467":5,"636":1,"638":1,"712":1,"852":1,"860":1,"967":1,"1021":1,"1026":1,"1032":1,"1043":1,"1098":1,"1309":1,"1326":2,"1431":1,"1741":3,"1792":10,"1838":1,"1908":1,"1911":2,"2047":1,"2062":1,"2093":1,"2094":1,"2097":1,"2106":1,"2107":1,"2221":1,"2231":2,"2289":3,"2296":1,"2333":1,"2419":1,"2430":1,"2431":4,"2435":2,"2438":2,"2494":1,"2537":6,"2546":1,"2608":1,"2635":1,"2678":1,"2679":1,"2695":1,"2877":2,"2879":1}}],["fills",{"2":{"948":1,"1039":1,"1371":1,"1372":1,"1426":1,"1923":1,"2183":1,"2187":1,"2283":1,"2509":1,"2760":2,"2762":1,"2810":1,"2848":1}}],["filled",{"0":{"2517":1,"2520":1},"2":{"376":2,"380":1,"383":1,"436":1,"454":1,"529":1,"534":1,"936":1,"1431":2,"1559":1,"1569":3,"1738":1,"1753":1,"1759":1,"1792":4,"1898":1,"1912":1,"1917":1,"1923":1,"1924":1,"1925":2,"2183":3,"2222":3,"2284":1,"2333":1,"2348":1,"2508":1,"2509":1,"2510":1,"2515":2,"2517":1,"2520":1}}],["fill",{"2":{"168":1,"380":1,"535":1,"2183":1,"2322":1,"2333":1,"2504":2}}],["filling",{"2":{"165":1,"384":1}}],["fileid",{"2":{"2648":1}}],["fileinput",{"2":{"894":1,"1361":2}}],["file`",{"2":{"1792":2}}],["fileminimumlevel",{"2":{"1792":1,"1800":1,"1804":2,"1810":1,"2804":2}}],["filemode",{"2":{"1366":1,"1752":1,"1753":2,"1758":2,"1792":2}}],["file>",{"2":{"1792":4}}],["fileoverwrite",{"2":{"1417":1,"1553":1,"1554":1,"1581":1,"1752":1,"1753":1,"1758":1,"1792":3,"1897":1,"1898":1,"1907":1,"2254":1,"2551":1}}],["filepattern",{"0":{"2002":1,"2095":1},"1":{"2003":1},"2":{"1135":1,"1408":1,"1792":4,"1999":1,"2000":1,"2003":3,"2010":1,"2012":1,"2093":1,"2094":1,"2095":3,"2096":1,"2106":1,"2330":2,"2534":1,"2537":3,"2539":2,"2821":1,"2825":1,"2841":1,"2861":1,"2872":1}}],["filepaths",{"2":{"1792":1,"2033":1,"2037":1,"2038":1,"2040":1,"2042":1,"2476":1}}],["filepath",{"2":{"748":1,"937":1,"998":2,"1062":1,"1357":2,"1359":2,"1360":1,"1364":2,"1366":10,"1408":1,"1416":1,"1417":1,"1553":1,"1554":1,"1577":1,"1579":1,"1580":1,"1581":1,"1582":1,"1792":3,"1800":1,"1804":2,"1810":1,"2804":2}}],["filelist",{"2":{"894":1,"1366":1,"1410":2}}],["filegroups",{"2":{"848":1}}],["file=report",{"2":{"544":1}}],["file=users",{"2":{"493":1}}],["file=q1",{"2":{"386":1}}],["filename>",{"2":{"674":1}}],["filename",{"2":{"392":2,"393":1,"493":1,"546":1,"675":1,"748":1,"762":2,"763":1,"764":1,"765":1,"766":1,"772":2,"773":2,"774":1,"883":2,"884":1,"887":3,"888":1,"893":2,"894":1,"903":3,"904":1,"957":1,"961":3,"1357":2,"1358":2,"1359":1,"1360":1,"1366":13,"1410":1,"1577":1,"1792":1,"1897":1,"1898":1,"1907":1,"1911":1,"2079":1,"2254":1,"2318":1,"2327":1,"2358":1,"2434":1,"2653":1,"2840":1}}],["filenames",{"2":{"387":1,"1358":1,"2841":1}}],["filename=report",{"2":{"544":1}}],["filename=users",{"2":{"493":1}}],["filename=q1",{"2":{"386":1}}],["filename=",{"2":{"386":1,"392":1,"492":1,"493":1,"543":1,"544":1,"1189":1,"1373":1}}],["filesizelimitbytes",{"2":{"1792":1,"1800":1,"1804":2,"1810":1,"2804":1}}],["filesize",{"2":{"1366":1}}],["filestream",{"2":{"1366":1}}],["filesystemuploadhandler",{"2":{"2615":1}}],["filesystemuseuniquefilename",{"2":{"1356":1,"1792":1,"2123":1,"2127":2,"2132":1}}],["filesystemchecktext",{"2":{"1792":1,"2123":1,"2127":2}}],["filesystemcheckimage",{"2":{"1356":1,"1792":1,"2123":1,"2127":2,"2132":1}}],["filesystemcreatepathifnotexists",{"2":{"1356":1,"1792":1,"2123":1,"2127":2,"2132":1}}],["filesystempath",{"2":{"1356":1,"1650":1,"1651":1,"1654":2,"1662":1,"1663":1,"1792":2,"2123":1,"2127":2,"2132":1,"2297":2,"2565":1,"2757":1}}],["filesystemkey",{"2":{"1356":1,"1792":1,"2123":1,"2127":2}}],["filesystemenabled",{"2":{"1356":1,"1792":1,"2123":1,"2127":2,"2132":1}}],["filesystem",{"2":{"869":1,"1651":1,"1653":1,"1654":1,"1662":1,"1663":1,"1664":1,"1792":4,"2157":1,"2296":1,"2297":2,"2543":1,"2565":1,"2757":1}}],["files",{"0":{"372":1,"383":1,"614":1,"1017":1,"1072":1,"1078":1,"1368":1,"1378":1,"1386":1,"1387":1,"1570":1,"1757":1,"2032":1,"2319":1,"2320":1,"2340":1,"2348":1,"2356":1,"2367":1,"2448":1,"2457":1,"2539":1,"2540":1,"2626":1,"2683":1,"2684":1,"2685":1,"2731":1,"2774":1,"2804":1,"2842":1,"2850":1,"2858":1},"1":{"1073":1,"1074":1,"1075":1,"1076":1,"1077":1,"1078":1,"1079":1,"1080":1,"1081":1,"1082":1,"1369":1,"1370":1,"1371":1,"1372":1,"1373":1,"1374":1,"1375":1,"1376":1,"1377":1,"1378":1,"1379":1,"1380":1,"1388":1,"1389":1,"1390":1,"1391":1,"1392":1,"1393":1,"1394":1,"1395":1,"1396":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2038":1,"2039":1,"2040":1,"2041":1,"2042":1,"2043":1,"2044":1,"2684":1,"2685":1,"2686":1,"2843":1,"2851":1,"2852":1,"2853":1},"2":{"170":1,"220":2,"239":2,"265":1,"279":1,"372":1,"377":1,"384":1,"559":1,"586":2,"587":1,"588":1,"595":1,"614":1,"615":2,"616":1,"617":1,"626":1,"659":1,"665":1,"689":2,"693":2,"696":1,"698":2,"703":3,"706":1,"708":2,"710":1,"713":3,"746":4,"747":3,"749":1,"754":1,"759":1,"769":1,"778":1,"784":1,"786":1,"829":1,"832":1,"833":1,"835":1,"837":1,"841":1,"848":2,"849":1,"867":1,"868":2,"869":1,"871":3,"872":1,"873":2,"874":1,"875":1,"879":1,"886":1,"894":8,"907":1,"911":3,"975":3,"985":1,"986":1,"988":1,"1006":1,"1017":1,"1027":1,"1036":1,"1037":5,"1038":2,"1043":2,"1044":1,"1073":3,"1074":1,"1077":1,"1078":2,"1080":1,"1082":1,"1083":1,"1084":1,"1086":2,"1094":3,"1095":2,"1096":4,"1099":1,"1108":1,"1113":2,"1114":1,"1121":3,"1125":4,"1126":4,"1127":3,"1135":3,"1154":1,"1176":1,"1179":1,"1353":1,"1354":2,"1358":1,"1361":1,"1363":1,"1366":9,"1368":1,"1371":1,"1377":2,"1378":9,"1379":1,"1382":4,"1384":1,"1385":2,"1386":10,"1388":3,"1389":2,"1390":2,"1391":2,"1392":2,"1393":1,"1394":2,"1396":1,"1397":1,"1398":1,"1401":3,"1404":1,"1405":2,"1406":1,"1407":1,"1408":2,"1410":9,"1414":3,"1416":1,"1417":2,"1418":1,"1419":2,"1420":3,"1554":2,"1565":1,"1574":3,"1581":1,"1582":1,"1584":1,"1615":1,"1661":1,"1728":1,"1751":1,"1753":1,"1754":2,"1757":3,"1758":2,"1789":2,"1791":1,"1792":34,"1796":1,"1798":1,"1804":3,"1836":1,"1896":1,"1898":1,"1914":1,"1927":1,"1967":1,"1998":1,"2000":1,"2002":1,"2003":2,"2004":2,"2007":2,"2009":1,"2034":1,"2035":1,"2036":3,"2037":1,"2038":2,"2042":1,"2092":1,"2094":4,"2095":2,"2097":2,"2099":2,"2107":1,"2113":1,"2114":1,"2126":1,"2127":2,"2128":1,"2130":1,"2135":1,"2153":3,"2155":1,"2156":1,"2157":3,"2162":1,"2165":11,"2166":1,"2167":2,"2168":1,"2190":2,"2221":5,"2228":2,"2235":1,"2254":2,"2258":1,"2264":1,"2267":1,"2278":1,"2317":3,"2319":1,"2321":2,"2323":1,"2328":2,"2330":2,"2333":1,"2337":2,"2338":1,"2339":3,"2340":1,"2342":1,"2344":1,"2348":1,"2350":1,"2359":1,"2367":4,"2372":2,"2388":1,"2428":1,"2435":1,"2474":1,"2479":1,"2481":1,"2525":2,"2526":2,"2527":4,"2528":1,"2532":1,"2533":1,"2535":3,"2537":8,"2538":1,"2539":3,"2540":1,"2541":3,"2542":1,"2543":4,"2545":2,"2555":1,"2577":1,"2621":1,"2626":1,"2627":1,"2648":2,"2649":1,"2662":1,"2680":1,"2681":2,"2684":5,"2685":3,"2686":1,"2687":1,"2691":1,"2693":1,"2694":1,"2695":1,"2705":1,"2709":1,"2713":1,"2722":2,"2723":2,"2729":1,"2732":1,"2739":1,"2742":1,"2772":5,"2774":2,"2775":1,"2794":1,"2804":1,"2820":2,"2826":1,"2837":1,"2839":1,"2840":1,"2841":2,"2844":1,"2845":1,"2855":1,"2856":1,"2857":3,"2858":4,"2859":1,"2860":2,"2861":1,"2862":4,"2869":1,"2877":1,"2878":1}}],["file",{"0":{"238":1,"239":1,"265":1,"377":1,"392":1,"492":1,"612":1,"659":1,"665":1,"754":1,"757":1,"778":1,"784":1,"902":1,"964":1,"988":1,"1099":1,"1352":1,"1363":1,"1368":1,"1565":1,"1577":1,"1580":1,"1608":1,"1654":1,"1751":1,"1756":1,"1804":1,"1986":1,"1987":1,"1998":1,"2127":1,"2165":1,"2333":1,"2336":1,"2357":1,"2358":1,"2528":1,"2533":1,"2686":1,"2694":1,"2722":1,"2799":1,"2821":1,"2825":1,"2839":1,"2863":1,"2870":1},"1":{"378":1,"379":1,"380":1,"381":1,"755":1,"756":1,"757":1,"758":1,"785":1,"903":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1,"1369":1,"1370":1,"1371":1,"1372":1,"1373":1,"1374":1,"1375":1,"1376":1,"1377":1,"1378":1,"1379":1,"1380":1,"1752":1,"1753":1,"1754":1,"1755":1,"1756":1,"1757":1,"1758":1,"1759":1,"1760":1,"1761":1,"1999":1,"2000":1,"2001":1,"2002":1,"2003":1,"2004":1,"2005":1,"2006":1,"2007":1,"2008":1,"2009":1,"2010":1,"2011":1,"2012":1,"2013":1,"2840":1,"2841":1,"2842":1,"2843":1,"2844":1,"2845":1,"2846":1,"2847":1,"2848":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2859":1,"2864":1,"2865":1,"2866":1,"2867":1,"2868":1},"2":{"7":1,"16":1,"37":1,"48":1,"61":1,"71":1,"74":1,"104":1,"115":1,"128":1,"136":1,"157":18,"160":1,"165":1,"170":3,"175":1,"179":1,"184":1,"206":2,"220":2,"228":1,"234":1,"238":1,"239":4,"241":1,"247":1,"288":1,"296":1,"298":1,"312":1,"320":3,"324":1,"325":1,"338":2,"351":1,"360":1,"369":1,"376":1,"377":1,"385":1,"386":3,"388":1,"393":2,"401":1,"415":1,"417":1,"418":1,"419":1,"420":1,"421":1,"438":1,"441":1,"442":1,"443":1,"444":1,"445":1,"466":1,"487":1,"492":1,"493":2,"503":1,"510":1,"520":1,"539":1,"544":2,"559":2,"567":1,"568":2,"587":2,"588":2,"592":1,"618":1,"624":1,"625":1,"626":2,"641":1,"659":1,"665":3,"674":1,"675":1,"677":1,"678":1,"679":3,"684":1,"693":1,"694":3,"695":1,"696":1,"697":1,"699":2,"703":1,"704":1,"705":3,"706":1,"707":2,"708":1,"709":1,"711":2,"713":2,"714":2,"715":2,"716":4,"717":2,"720":2,"722":1,"723":4,"724":2,"733":1,"743":1,"746":3,"747":7,"748":6,"750":1,"754":1,"755":1,"756":5,"757":18,"758":2,"762":3,"763":1,"764":2,"765":1,"766":1,"768":1,"772":3,"774":2,"777":2,"778":1,"779":3,"780":1,"781":1,"782":1,"784":20,"785":2,"788":1,"791":1,"797":1,"811":1,"829":1,"832":1,"833":4,"834":1,"835":7,"847":1,"848":1,"851":1,"868":2,"871":1,"872":2,"876":2,"878":1,"879":4,"880":4,"881":2,"882":1,"883":2,"884":1,"887":1,"888":3,"894":1,"902":6,"903":6,"904":8,"907":1,"909":1,"911":5,"914":1,"920":5,"926":1,"946":3,"956":1,"957":4,"959":2,"960":1,"961":2,"964":1,"971":3,"975":1,"976":1,"986":1,"988":1,"990":1,"994":1,"1005":1,"1010":1,"1027":3,"1036":3,"1037":7,"1038":1,"1065":3,"1073":7,"1074":1,"1076":2,"1077":2,"1078":1,"1079":1,"1080":3,"1082":2,"1086":6,"1094":7,"1095":4,"1096":1,"1099":6,"1110":2,"1118":1,"1121":2,"1125":1,"1126":1,"1127":5,"1135":4,"1138":1,"1141":1,"1142":1,"1150":2,"1161":1,"1179":2,"1182":2,"1189":1,"1196":1,"1199":1,"1200":1,"1208":3,"1254":1,"1323":1,"1327":3,"1351":4,"1352":1,"1353":1,"1354":2,"1355":8,"1356":1,"1357":4,"1358":11,"1359":4,"1360":6,"1361":1,"1363":2,"1364":2,"1365":1,"1366":37,"1367":4,"1368":6,"1369":2,"1370":1,"1371":1,"1372":2,"1373":2,"1374":3,"1375":1,"1376":3,"1377":3,"1378":1,"1379":1,"1380":4,"1382":5,"1386":8,"1387":1,"1391":1,"1394":2,"1396":2,"1398":2,"1401":1,"1405":3,"1406":2,"1407":3,"1408":2,"1409":1,"1410":9,"1412":2,"1413":3,"1414":1,"1416":2,"1417":1,"1418":1,"1419":3,"1422":5,"1442":2,"1458":1,"1502":1,"1504":2,"1547":1,"1554":1,"1559":3,"1567":2,"1569":1,"1570":4,"1571":5,"1574":2,"1577":1,"1579":1,"1580":1,"1581":2,"1584":1,"1603":1,"1604":1,"1607":1,"1608":3,"1632":1,"1651":3,"1661":1,"1663":1,"1664":1,"1689":2,"1727":2,"1751":1,"1752":1,"1753":6,"1754":4,"1756":2,"1758":3,"1787":1,"1789":4,"1791":1,"1792":70,"1794":1,"1796":2,"1798":1,"1799":1,"1804":4,"1810":1,"1836":1,"1898":3,"1912":1,"1914":1,"1920":1,"1928":1,"1973":2,"2000":3,"2001":1,"2003":1,"2004":4,"2005":2,"2007":4,"2008":1,"2010":2,"2011":4,"2012":2,"2013":2,"2032":1,"2034":2,"2036":2,"2038":2,"2076":1,"2078":1,"2079":4,"2081":1,"2082":1,"2092":1,"2094":2,"2096":1,"2097":3,"2099":1,"2101":2,"2106":3,"2109":2,"2110":3,"2111":3,"2112":1,"2114":2,"2120":1,"2122":2,"2123":1,"2124":2,"2125":1,"2127":5,"2128":1,"2132":2,"2133":1,"2134":1,"2135":1,"2136":1,"2147":1,"2153":2,"2155":1,"2157":6,"2158":2,"2159":3,"2160":1,"2164":2,"2165":18,"2166":1,"2167":1,"2171":1,"2176":1,"2185":4,"2190":1,"2193":2,"2221":3,"2222":2,"2228":1,"2247":2,"2254":3,"2272":4,"2278":1,"2297":1,"2318":2,"2319":1,"2320":1,"2323":2,"2325":1,"2328":3,"2329":1,"2330":2,"2332":1,"2333":1,"2336":1,"2337":1,"2338":1,"2339":1,"2354":4,"2356":1,"2357":2,"2358":4,"2359":1,"2360":2,"2364":3,"2365":1,"2366":4,"2371":9,"2372":1,"2394":1,"2435":1,"2456":1,"2481":2,"2482":3,"2484":6,"2489":1,"2493":1,"2504":1,"2512":1,"2518":2,"2523":1,"2525":1,"2526":2,"2527":3,"2528":5,"2529":1,"2530":4,"2531":9,"2532":3,"2533":16,"2534":1,"2535":5,"2536":3,"2537":16,"2539":3,"2540":6,"2541":3,"2542":1,"2543":7,"2545":3,"2546":5,"2549":1,"2565":2,"2577":1,"2581":1,"2589":3,"2615":1,"2627":1,"2648":1,"2649":1,"2653":4,"2662":1,"2664":3,"2677":2,"2682":2,"2684":1,"2687":1,"2694":1,"2700":1,"2701":1,"2705":1,"2712":1,"2714":1,"2719":1,"2722":3,"2723":1,"2725":1,"2727":1,"2729":2,"2731":2,"2742":2,"2751":2,"2762":2,"2774":2,"2776":1,"2779":2,"2788":1,"2795":1,"2799":1,"2804":1,"2809":1,"2813":1,"2821":3,"2825":3,"2826":3,"2829":1,"2834":1,"2839":1,"2840":2,"2841":3,"2842":1,"2844":1,"2845":2,"2850":1,"2856":3,"2857":1,"2859":3,"2860":1,"2861":1,"2862":3,"2863":2,"2864":3,"2865":1,"2866":1,"2867":1,"2869":3,"2870":5,"2871":2,"2872":1,"2873":2,"2878":4,"2880":2,"2881":2,"2882":1}}],["field2",{"2":{"383":1,"2348":1}}],["field1",{"2":{"383":1,"2348":1}}],["fields=id",{"2":{"1695":1,"1792":1}}],["fields",{"0":{"210":1,"1459":1,"1521":1,"1675":1,"1732":1,"1956":1,"2376":1,"2377":1,"2518":1},"1":{"1676":1,"1677":1},"2":{"74":1,"75":1,"77":1,"110":1,"202":1,"210":1,"328":1,"330":1,"335":1,"337":1,"436":1,"768":2,"786":4,"849":1,"851":1,"891":2,"897":2,"914":2,"915":2,"916":1,"917":1,"995":1,"1016":1,"1023":1,"1067":1,"1068":1,"1071":2,"1097":3,"1098":1,"1105":2,"1111":1,"1190":1,"1192":1,"1193":1,"1279":1,"1359":1,"1426":1,"1429":1,"1431":2,"1459":3,"1464":3,"1491":1,"1520":1,"1523":1,"1559":1,"1569":1,"1671":1,"1723":1,"1725":1,"1732":1,"1733":1,"1759":1,"1792":12,"1912":1,"1923":1,"1924":1,"1925":2,"1973":1,"1974":1,"2000":1,"2010":2,"2128":1,"2217":1,"2222":2,"2264":5,"2330":1,"2375":4,"2376":3,"2379":1,"2380":1,"2397":1,"2399":1,"2427":1,"2509":1,"2510":1,"2513":1,"2518":1,"2520":1,"2521":1,"2522":1,"2523":1,"2587":1,"2603":1,"2607":2,"2760":2,"2763":3,"2769":1,"2812":1}}],["field",{"0":{"75":1,"1031":1,"1268":1,"1491":1,"2504":1,"2618":1},"2":{"74":2,"75":2,"77":1,"210":2,"212":1,"216":1,"388":1,"786":1,"847":1,"851":1,"861":1,"904":1,"915":1,"1031":3,"1067":1,"1068":1,"1097":1,"1111":1,"1157":1,"1191":1,"1193":3,"1217":1,"1229":1,"1233":1,"1409":3,"1428":1,"1431":2,"1489":1,"1491":1,"1521":1,"1523":1,"1569":1,"1620":1,"1670":1,"1671":3,"1722":6,"1725":1,"1732":2,"1792":21,"1879":1,"1925":3,"1948":1,"1956":1,"1958":1,"1968":1,"1974":6,"2038":1,"2128":1,"2222":4,"2255":4,"2264":7,"2270":1,"2372":1,"2376":4,"2378":2,"2381":2,"2395":1,"2412":1,"2470":1,"2504":4,"2506":2,"2512":1,"2517":1,"2518":4,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2551":2,"2586":1,"2589":1,"2607":6,"2618":1,"2641":1,"2763":2,"2769":7}}],["fell",{"2":{"2491":1}}],["feauture",{"2":{"917":1}}],["features",{"0":{"258":1,"1028":1,"1094":1,"1096":1,"1101":1,"1109":1,"1397":1,"1789":1,"1796":1,"1928":1,"2480":1,"2501":1,"2649":1,"2856":1},"1":{"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1398":1,"1399":1,"2481":1,"2482":1,"2483":1,"2484":1,"2502":1},"2":{"395":1,"427":1,"868":5,"869":2,"912":2,"995":1,"1037":1,"1062":1,"1064":1,"1073":1,"1098":1,"1101":1,"1106":1,"1121":1,"1125":1,"1127":1,"1179":1,"1180":1,"1182":1,"1323":1,"1368":1,"1382":1,"1385":1,"1386":1,"1396":1,"1397":1,"1402":1,"1518":1,"1528":1,"1792":2,"1979":1,"2016":1,"2021":2,"2160":1,"2265":1,"2266":1,"2277":1,"2314":1,"2329":1,"2409":1,"2534":1,"2549":1,"2627":1,"2632":2,"2701":1,"2856":1}}],["feature",{"0":{"1083":1,"1093":1,"2251":1,"2282":1,"2287":1,"2291":1,"2300":1,"2329":1,"2425":1,"2430":1,"2549":1,"2625":1,"2632":1,"2633":1,"2634":1,"2635":1,"2650":1,"2659":1},"1":{"1084":1,"1085":1,"1086":1,"1087":1,"1088":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1094":2,"1095":2,"1096":2,"1097":2,"1098":2,"1099":2,"1100":2,"1101":2,"1102":2,"1103":2,"1104":2,"1105":2,"1106":2,"1107":2,"1108":2,"1109":2,"1110":2,"1111":1,"1112":1,"1113":1,"1114":1,"1115":1,"1116":1,"1117":1,"1118":1,"1119":1,"1120":1,"1121":1,"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"2283":1,"2284":1,"2285":1,"2286":1,"2288":1,"2289":1,"2290":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2426":1,"2427":1,"2428":1,"2429":1,"2431":1,"2432":1,"2433":1,"2434":1,"2651":1,"2652":1,"2653":1},"2":{"3":1,"387":1,"395":1,"427":1,"803":1,"868":1,"871":2,"872":4,"958":1,"986":1,"1010":1,"1037":1,"1080":1,"1094":1,"1095":1,"1096":1,"1097":1,"1098":1,"1099":1,"1100":1,"1101":1,"1102":1,"1103":1,"1104":1,"1109":1,"1110":1,"1111":1,"1135":1,"1180":2,"1181":2,"1328":1,"1330":1,"1351":1,"1366":2,"1368":1,"1377":1,"1382":1,"1385":2,"1386":2,"1396":1,"1398":1,"1399":1,"1402":1,"1404":2,"1414":4,"1457":1,"1605":1,"1792":2,"1894":1,"2000":1,"2001":1,"2003":1,"2013":1,"2040":1,"2153":1,"2159":1,"2238":1,"2264":1,"2404":1,"2420":1,"2437":1,"2459":1,"2461":1,"2474":1,"2481":1,"2497":1,"2542":1,"2554":1,"2572":1,"2575":1,"2586":1,"2588":1,"2607":1,"2625":1,"2632":1,"2645":1,"2688":1,"2713":2,"2755":1,"2860":1,"2882":1}}],["february",{"2":{"859":1,"887":1,"947":1}}],["feet",{"2":{"852":1}}],["feel",{"2":{"832":1,"872":1}}],["feeds",{"2":{"167":1,"1011":1,"2322":1,"2849":1}}],["feed",{"2":{"165":1,"663":1,"833":1,"1309":1,"1373":1,"1374":1,"2391":1}}],["feedback",{"0":{"3":1},"2":{"3":1,"876":1,"986":1,"1081":2,"1386":1}}],["fetching",{"2":{"860":1,"1021":1}}],["fetched",{"2":{"263":1,"531":2,"851":1,"1015":1,"2051":1,"2344":1,"2766":1}}],["fetches",{"2":{"214":1,"859":1,"1018":1,"1147":1,"1423":1,"1427":1,"2502":1,"2764":1,"2816":1}}],["fetch",{"0":{"1410":1,"1426":1,"1431":1},"2":{"206":2,"209":1,"429":1,"452":1,"679":1,"720":1,"723":1,"834":1,"849":1,"856":1,"860":1,"872":2,"938":1,"948":1,"957":1,"961":3,"995":2,"1004":1,"1011":1,"1021":2,"1024":1,"1026":1,"1029":1,"1037":2,"1067":1,"1107":1,"1139":1,"1317":1,"1335":1,"1342":1,"1346":1,"1386":2,"1399":1,"1403":1,"1405":5,"1406":1,"1407":1,"1408":1,"1410":2,"1411":1,"1412":2,"1413":3,"1415":1,"1416":3,"1423":3,"1424":1,"1427":1,"1430":2,"1431":2,"1432":1,"1492":1,"1519":1,"1567":1,"1568":1,"1569":1,"1575":1,"1792":1,"2020":1,"2164":3,"2222":1,"2247":2,"2310":1,"2313":1,"2489":1,"2519":2,"2521":1,"2523":1,"2562":1,"2656":2,"2762":2,"2770":1,"2810":3,"2815":1,"2826":1,"2836":1}}],["fewer",{"2":{"843":1,"876":3,"1042":1,"1065":1,"1349":1,"1440":1,"2400":1}}],["few",{"2":{"0":1,"297":1,"386":1,"395":1,"869":1,"876":1,"910":1,"1064":1,"1181":1,"1209":1,"1302":1,"1385":1,"1432":1,"2176":1,"2398":1}}],["faq",{"0":{"2707":1},"1":{"2708":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2715":1,"2716":1,"2717":1,"2718":1,"2719":1,"2720":1,"2721":1,"2722":1,"2723":1,"2724":1,"2725":1,"2726":1,"2727":1,"2728":1,"2729":1,"2730":1,"2731":1,"2732":1,"2733":1,"2734":1,"2735":1,"2736":1,"2737":1,"2738":1,"2739":1,"2740":1,"2741":1,"2742":1,"2743":1,"2744":1,"2745":1,"2746":1,"2747":1,"2748":1,"2749":1,"2750":1,"2751":1,"2752":1,"2753":1,"2754":1,"2755":1,"2756":1,"2757":1,"2758":1},"2":{"2805":1}}],["fault",{"2":{"2384":1}}],["favor",{"2":{"2255":1}}],["favorite",{"2":{"452":2,"860":1,"1081":3,"1347":2,"1399":1,"1419":1}}],["fa",{"2":{"2144":5}}],["fan",{"2":{"1745":1,"2346":1,"2347":1,"2464":1,"2498":1}}],["fancy",{"2":{"1393":1}}],["faking",{"2":{"1075":1}}],["fakes",{"2":{"1075":1}}],["fake",{"2":{"1":1,"851":1,"875":1,"1706":1,"1717":1}}],["famous",{"2":{"852":1,"861":1}}],["family",{"2":{"711":1,"832":1,"1411":1,"1792":1,"2073":1,"2075":1,"2080":1,"2869":1}}],["familiar",{"2":{"1":1,"1010":1,"2193":1}}],["fatal",{"2":{"1792":4,"1801":1,"1806":1,"2414":1,"2415":1,"2544":2,"2794":1,"2801":2}}],["fat",{"2":{"844":1}}],["fairly",{"2":{"913":1}}],["fair",{"2":{"841":1,"845":1,"851":1,"1254":2}}],["failfast",{"0":{"2100":1},"2":{"1792":1,"2093":1,"2094":1,"2537":1}}],["failovers",{"2":{"1152":1}}],["failover",{"2":{"1101":2,"1121":1,"1172":1,"1177":1,"1180":2,"1181":2,"1182":1,"1618":1,"1626":1,"1628":1,"1792":1,"2266":2}}],["failing",{"2":{"299":1,"1080":1,"1081":1,"1792":1,"2094":1,"2104":2,"2242":1,"2376":1,"2378":1,"2492":1,"2528":1,"2533":1,"2535":3,"2537":1,"2546":1,"2802":1,"2864":1,"2878":1,"2880":2}}],["fail",{"0":{"1360":1,"1460":1},"2":{"102":1,"213":1,"587":1,"829":1,"982":1,"994":1,"996":2,"1032":1,"1154":1,"1157":1,"1385":1,"1386":2,"1409":1,"1449":1,"1464":1,"1704":1,"1739":1,"1741":1,"1792":6,"1948":1,"2007":1,"2094":1,"2225":2,"2287":1,"2289":1,"2328":1,"2375":1,"2376":1,"2377":1,"2378":1,"2380":1,"2389":1,"2392":1,"2394":1,"2409":1,"2415":1,"2416":1,"2428":1,"2435":1,"2528":1,"2532":1,"2533":1,"2535":2,"2537":2,"2600":1,"2608":1,"2634":1,"2800":1,"2864":1,"2875":1,"2880":1}}],["fails",{"2":{"48":1,"51":1,"63":1,"109":1,"308":1,"424":2,"584":1,"701":1,"715":1,"747":3,"781":2,"819":1,"829":2,"871":1,"872":1,"875":1,"876":1,"892":1,"901":1,"903":2,"904":2,"975":1,"982":1,"984":2,"985":1,"986":2,"996":1,"997":1,"1055":1,"1071":1,"1076":3,"1150":1,"1173":1,"1177":1,"1386":1,"1409":1,"1419":1,"1422":1,"1527":1,"1621":1,"1792":6,"2000":1,"2007":1,"2107":1,"2109":1,"2112":1,"2177":1,"2267":1,"2307":2,"2320":2,"2337":1,"2394":1,"2528":1,"2530":1,"2532":2,"2533":3,"2537":2,"2649":1,"2664":2,"2813":2,"2841":1,"2864":1,"2876":1,"2879":1,"2881":1}}],["failed",{"2":{"39":2,"41":1,"208":1,"209":1,"210":1,"310":2,"447":1,"449":1,"713":1,"777":1,"818":1,"930":11,"1021":2,"1031":1,"1056":8,"1062":1,"1074":1,"1105":1,"1152":1,"1320":1,"1341":1,"1354":1,"1360":1,"1410":1,"1427":2,"1624":1,"1674":1,"1722":1,"1732":1,"1792":1,"1918":1,"1922":1,"2094":1,"2103":1,"2107":1,"2113":2,"2141":1,"2149":1,"2258":1,"2264":1,"2365":1,"2405":2,"2445":1,"2491":1,"2492":1,"2496":1,"2504":1,"2526":1,"2528":2,"2535":1,"2536":1,"2537":2,"2549":1,"2575":1,"2597":1,"2722":1,"2762":1,"2763":1,"2810":2,"2860":1,"2864":1}}],["failurethreshold",{"2":{"1773":2}}],["failures",{"0":{"1592":1,"2405":1,"2492":1},"2":{"188":1,"213":1,"310":1,"569":1,"575":1,"879":1,"1041":1,"1071":1,"1101":1,"1135":1,"1151":1,"1152":1,"1153":2,"1155":1,"1177":1,"1180":1,"1250":1,"1622":1,"1623":1,"1624":1,"1792":2,"1824":2,"2007":2,"2226":1,"2271":1,"2296":1,"2324":1,"2328":1,"2384":1,"2481":2,"2491":1,"2880":1}}],["failure",{"0":{"35":1,"2401":1},"1":{"2402":1,"2403":1,"2404":1,"2405":1},"2":{"33":2,"142":1,"213":1,"214":1,"298":1,"300":1,"301":1,"309":1,"310":1,"818":1,"852":1,"1032":1,"1152":1,"1172":1,"1303":1,"1402":1,"1471":1,"1472":1,"1592":1,"1593":1,"1624":2,"1674":1,"1740":1,"1743":1,"1774":1,"1792":9,"2094":1,"2100":1,"2141":1,"2149":1,"2177":1,"2255":3,"2287":1,"2288":1,"2384":1,"2401":1,"2404":1,"2405":1,"2414":1,"2453":1,"2492":1,"2502":1,"2528":2,"2531":1,"2533":1,"2535":3,"2537":1,"2575":2,"2669":1,"2765":1,"2785":1,"2815":1,"2864":2,"2871":1,"2880":1}}],["facility",{"2":{"2802":1}}],["facial",{"2":{"1210":1}}],["facing",{"0":{"1911":1,"2430":1,"2434":1},"1":{"2431":1,"2432":1,"2433":1,"2434":1},"2":{"369":1,"414":1,"663":1,"836":2,"911":1,"1792":2,"2302":1,"2434":1,"2482":1}}],["face",{"2":{"1098":1,"1792":1}}],["facebook",{"0":{"1695":1},"2":{"868":1,"1060":1,"1445":1,"1465":1,"1682":1,"1690":1,"1695":5,"1788":1,"1792":8,"1894":1,"2736":1}}],["faces",{"2":{"852":2}}],["fact",{"2":{"666":1,"843":1,"848":1,"876":1,"1385":4,"1393":2,"1399":1,"1401":1,"1402":1,"1404":1,"2179":1}}],["factories",{"2":{"2741":1,"2868":1}}],["factory",{"2":{"868":1,"1181":1,"1304":1,"1317":1,"1416":1,"1581":1,"2459":1,"2461":2,"2462":1,"2463":2,"2466":2,"2830":1}}],["factor",{"2":{"41":1,"308":2,"1090":1,"1164":1,"1267":1,"2177":1,"2804":1}}],["facts",{"2":{"1":1,"1385":1}}],["falling",{"2":{"1792":1,"1818":1,"2348":1,"2377":1,"2405":1}}],["falls",{"2":{"675":1,"852":1,"904":1,"1162":1,"1464":1,"1819":1,"1941":1,"1956":1,"2224":1,"2266":1,"2377":1,"2379":1,"2405":1,"2422":1,"2453":1}}],["fall",{"2":{"380":1,"904":1,"1150":1,"1447":1,"1451":1,"1454":2,"1525":1,"1605":1,"1628":2,"1792":7,"1856":1,"2266":2,"2333":1,"2380":1,"2405":1,"2427":1,"2455":1,"2497":1,"2664":1,"2688":1}}],["fallback",{"0":{"904":1,"1941":1,"2664":1},"2":{"319":2,"378":1,"747":3,"781":2,"892":1,"904":4,"1162":1,"1792":3,"1937":1,"1955":1,"1957":1,"2020":1,"2232":1,"2233":1,"2326":1,"2333":1,"2370":1,"2379":2,"2435":1,"2481":1,"2486":1,"2551":3,"2649":4,"2664":4}}],["false`",{"2":{"1792":1}}],["false>",{"2":{"1792":1}}],["false",{"0":{"1568":1},"2":{"31":1,"33":1,"35":4,"39":3,"41":1,"256":1,"301":1,"317":1,"381":1,"586":1,"624":1,"704":1,"720":1,"722":3,"747":4,"768":1,"776":2,"892":2,"894":1,"919":2,"929":2,"956":1,"990":1,"998":1,"1021":2,"1026":2,"1067":1,"1068":2,"1070":1,"1102":1,"1147":1,"1148":1,"1150":3,"1199":2,"1213":1,"1220":1,"1224":2,"1338":1,"1339":1,"1356":1,"1360":2,"1366":1,"1374":1,"1386":1,"1410":1,"1412":3,"1415":3,"1416":1,"1417":2,"1445":4,"1447":1,"1451":1,"1454":3,"1458":2,"1459":1,"1462":1,"1469":4,"1470":1,"1475":1,"1477":1,"1482":1,"1488":3,"1489":3,"1493":1,"1498":1,"1499":1,"1501":1,"1502":2,"1510":3,"1511":4,"1515":2,"1518":1,"1521":1,"1529":1,"1539":2,"1540":1,"1544":1,"1553":9,"1554":1,"1559":4,"1561":2,"1563":2,"1568":1,"1569":2,"1570":1,"1571":3,"1576":1,"1577":1,"1580":2,"1581":1,"1603":1,"1604":1,"1608":1,"1616":1,"1617":1,"1618":1,"1630":1,"1631":1,"1633":1,"1638":2,"1639":2,"1641":1,"1644":1,"1646":1,"1650":2,"1651":2,"1662":1,"1669":1,"1670":1,"1676":1,"1677":1,"1678":3,"1684":1,"1702":1,"1703":1,"1721":1,"1722":2,"1752":2,"1753":2,"1759":1,"1763":1,"1764":1,"1781":1,"1792":155,"1800":3,"1804":2,"1805":2,"1807":2,"1810":1,"1814":3,"1816":2,"1824":1,"1827":2,"1832":2,"1836":3,"1837":1,"1844":2,"1850":1,"1851":2,"1856":2,"1863":3,"1870":1,"1874":2,"1897":3,"1898":3,"1912":1,"1916":2,"1917":2,"1927":2,"1931":1,"1936":2,"1937":2,"1948":1,"1949":1,"1951":1,"1952":1,"1953":1,"1954":1,"1956":1,"1957":1,"1959":2,"1966":1,"1967":2,"1973":1,"1974":1,"1975":1,"1979":1,"1980":1,"1988":1,"1994":8,"1999":2,"2000":3,"2001":1,"2009":1,"2011":1,"2015":1,"2016":1,"2033":2,"2034":1,"2037":1,"2038":2,"2040":2,"2046":2,"2047":2,"2073":1,"2074":2,"2093":4,"2094":5,"2107":1,"2111":6,"2123":11,"2124":4,"2125":1,"2126":4,"2127":4,"2130":4,"2132":2,"2154":2,"2156":1,"2222":1,"2223":1,"2254":1,"2255":1,"2257":3,"2264":1,"2265":3,"2267":1,"2272":1,"2274":3,"2277":1,"2279":1,"2330":4,"2333":1,"2337":1,"2342":1,"2350":2,"2351":1,"2353":1,"2354":2,"2360":2,"2372":1,"2375":3,"2378":2,"2379":2,"2380":4,"2382":2,"2406":1,"2415":2,"2431":1,"2436":1,"2453":1,"2455":4,"2471":3,"2476":2,"2484":4,"2486":2,"2502":1,"2520":1,"2528":1,"2532":6,"2537":7,"2542":1,"2549":4,"2551":4,"2554":3,"2565":1,"2586":1,"2587":1,"2607":1,"2629":2,"2632":1,"2633":1,"2634":2,"2635":2,"2641":1,"2686":1,"2692":1,"2697":1,"2701":5,"2724":1,"2765":1,"2769":2,"2814":2,"2815":1,"2848":1,"2864":1,"2879":1}}],["farewell",{"2":{"913":1}}],["farm",{"2":{"335":2,"913":1,"918":2,"919":2,"2586":3}}],["far",{"2":{"307":1,"847":1,"849":1,"859":1,"866":1,"871":2,"873":1,"908":1,"1401":1,"1403":1,"1404":1,"1428":1,"1431":1}}],["fastest",{"0":{"1137":1},"1":{"1138":1,"1139":1},"2":{"1123":1,"1127":1,"1137":1,"1402":1,"1792":2,"1937":1,"1938":2,"2274":1}}],["faster",{"2":{"691":1,"803":1,"871":1,"872":4,"874":1,"876":1,"911":1,"946":1,"993":1,"994":1,"1076":2,"1090":1,"1121":1,"1127":1,"1269":1,"1349":1,"1382":2,"1385":1,"1401":1,"1405":1,"2184":1,"2245":1,"2246":1,"2270":4,"2621":5,"2789":1}}],["fastify",{"2":{"1007":1,"1255":1,"1257":1,"1265":1,"1277":1,"1279":1,"1280":1,"1281":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["fastapi",{"2":{"868":1,"869":4,"871":1,"873":1,"876":1,"1037":1,"1255":1,"1257":1,"1265":1,"1268":1,"1271":2,"1277":1,"1279":1,"1281":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1335":1,"1409":1}}],["fast",{"0":{"993":1,"1460":1,"2744":1},"2":{"104":3,"577":1,"837":1,"907":1,"1005":1,"1015":1,"1074":1,"1081":1,"1147":1,"1150":4,"1154":2,"1180":1,"1353":1,"1354":2,"1365":1,"1382":1,"1386":1,"1393":1,"1401":1,"1449":1,"1515":2,"1520":1,"1529":3,"1533":1,"1599":1,"1792":2,"2007":1,"2096":1,"2270":2,"2274":1,"2328":1,"2375":1,"2376":1,"2378":1,"2380":1,"2394":1,"2416":1,"2428":1,"2435":1,"2445":1,"2528":1,"2533":1,"2776":1,"2841":1,"2864":1}}],["bdn",{"2":{"2397":1}}],["btn",{"2":{"938":3,"1061":4}}],["btree",{"2":{"864":1}}],["b9",{"2":{"927":2}}],["bqc6",{"2":{"927":2}}],["blade",{"2":{"1792":1}}],["blank",{"2":{"1409":1,"1819":1,"2529":1,"2762":1,"2865":1}}],["blast",{"2":{"868":1,"1458":1,"1792":1,"2375":1}}],["blindly",{"2":{"1170":1}}],["bleak",{"2":{"913":1,"919":2}}],["bluntly",{"2":{"847":1}}],["blunt",{"2":{"847":1}}],["blow",{"2":{"1067":1}}],["blowfish",{"2":{"928":1}}],["blobs",{"2":{"851":1}}],["blob",{"2":{"429":1,"851":3,"1412":1,"1792":1,"2310":1,"2313":1}}],["blocking",{"2":{"1107":1,"1170":1,"1274":1,"1792":1,"2760":1}}],["blocked",{"2":{"876":1,"1014":1,"1324":1,"2362":1}}],["blocks",{"0":{"1395":1,"1396":1,"2352":1,"2529":1,"2855":1,"2865":1},"2":{"583":1,"624":1,"687":1,"689":1,"694":1,"698":1,"699":2,"701":1,"849":1,"851":1,"990":1,"994":1,"1005":2,"1073":1,"1074":1,"1082":1,"1104":1,"1105":1,"1107":1,"1378":1,"1394":2,"1395":1,"1396":2,"1419":1,"1424":1,"1428":1,"1459":1,"1792":4,"2092":1,"2109":1,"2167":1,"2221":1,"2267":1,"2319":2,"2342":1,"2375":1,"2405":1,"2528":1,"2529":1,"2531":1,"2537":1,"2802":1,"2841":1,"2854":1,"2855":2,"2858":2,"2863":1,"2865":1,"2869":2}}],["block",{"0":{"621":1},"2":{"176":1,"239":2,"480":1,"621":1,"659":1,"689":1,"690":1,"691":1,"692":1,"694":1,"698":1,"699":2,"701":1,"702":1,"704":1,"706":1,"709":1,"714":1,"826":1,"868":1,"869":1,"979":1,"986":1,"989":1,"1014":1,"1067":1,"1068":1,"1069":2,"1074":1,"1075":1,"1076":1,"1077":2,"1079":1,"1082":1,"1101":2,"1106":1,"1121":1,"1162":2,"1372":1,"1376":1,"1378":1,"1382":1,"1393":1,"1394":5,"1395":1,"1396":1,"1442":1,"1459":1,"1792":10,"1824":2,"1951":1,"1952":1,"1953":1,"1954":1,"1957":2,"2075":2,"2094":1,"2109":5,"2110":4,"2167":1,"2190":1,"2221":1,"2319":2,"2323":1,"2338":2,"2365":2,"2375":1,"2379":2,"2389":3,"2438":1,"2447":2,"2481":1,"2528":6,"2529":5,"2530":7,"2535":2,"2537":3,"2539":1,"2546":1,"2843":1,"2855":2,"2861":1,"2863":1,"2864":3,"2865":4,"2866":2,"2881":1}}],["blog",{"0":{"791":1,"1037":1,"1065":1,"2134":1},"2":{"0":1,"327":1,"338":1,"847":1,"866":1,"1384":3,"1399":1,"1400":1,"1401":1,"1403":1,"1404":2,"1409":1,"1834":1,"1894":1,"2164":1,"2166":1,"2479":1,"2625":1,"2713":1,"2737":1}}],["b1",{"2":{"775":1,"900":1}}],["bmp",{"2":{"747":1,"1792":1,"2123":1,"2125":1}}],["bc",{"2":{"650":5,"663":2,"2265":1,"2828":3}}],["bcrypt",{"0":{"927":1,"944":1},"1":{"928":1,"929":1,"930":1},"2":{"308":3,"921":1,"927":1,"928":2,"944":1,"946":1,"1049":2,"2177":3}}],["brute",{"2":{"1217":1,"1224":1,"1252":1,"1792":1,"1874":1}}],["breaches",{"2":{"1867":1}}],["breach",{"2":{"1209":1,"1251":1,"1942":1}}],["breakdown",{"2":{"1128":1,"2713":1}}],["breaking",{"0":{"2368":1,"2376":1,"2378":1,"2454":1,"2485":1,"2642":1},"1":{"2369":1,"2370":1,"2371":1,"2372":1,"2486":1,"2487":1},"2":{"1069":1,"1193":1,"1792":1,"2164":1,"2165":1,"2223":2,"2224":1,"2258":1,"2369":1,"2419":1,"2448":1,"2450":1,"2479":1,"2482":1,"2537":1}}],["breakers",{"2":{"1011":1}}],["break",{"0":{"2517":1},"2":{"1001":1,"1080":1,"1428":1,"2040":1,"2434":1,"2476":1,"2543":1,"2546":1,"2878":1}}],["breaks",{"2":{"972":1,"973":1,"983":1,"2425":1}}],["brevity",{"2":{"913":1}}],["brief",{"2":{"1152":1,"1404":1}}],["briefly",{"2":{"1066":1}}],["bring",{"2":{"1045":1,"1825":1,"2481":1}}],["brings",{"2":{"835":1,"947":1,"1080":1,"1402":1,"2537":1,"2878":1}}],["brilliant",{"2":{"913":2,"919":2}}],["brittle",{"0":{"879":1}}],["bridges",{"2":{"1372":1}}],["bridge",{"2":{"841":1,"845":1,"1351":1,"1376":1,"2179":1,"2855":1}}],["brackets",{"2":{"2400":1}}],["bracket",{"2":{"1398":1}}],["brace",{"0":{"389":1},"2":{"389":1,"1605":1,"2270":1,"2497":1,"2688":1}}],["braces",{"2":{"387":1,"388":1,"2400":1}}],["branding",{"2":{"1685":1}}],["brand",{"2":{"990":2,"1404":1}}],["branched",{"2":{"2414":1}}],["branches",{"2":{"873":1}}],["branching",{"2":{"1394":3}}],["branch",{"2":{"835":1,"1260":2,"1792":1,"2309":1,"2407":1,"2763":1}}],["br",{"2":{"650":7,"663":6,"836":4,"949":1,"1940":1}}],["brotli",{"0":{"1940":1},"2":{"1101":1,"1790":1,"1792":2,"1797":1,"1935":1,"1937":2,"1940":2,"1941":1}}],["broke",{"2":{"1385":1,"1419":1}}],["broker",{"2":{"1302":1,"1303":1,"1304":1}}],["brokers",{"2":{"1037":1,"1103":1,"1372":1}}],["broken",{"2":{"382":1,"863":1,"1792":1,"2112":1,"2153":1,"2157":1,"2334":1,"2454":1,"2461":1,"2519":1,"2532":1,"2537":1,"2543":2,"2555":1,"2857":1}}],["browse",{"2":{"1045":1}}],["browsersessionmessagekey",{"2":{"1684":1,"1792":1}}],["browsersessionstatuskey",{"2":{"1684":1,"1792":1}}],["browsers",{"2":{"51":1,"1137":1,"1138":2,"1139":1,"1363":1,"1447":1,"1449":2,"1641":1,"1645":1,"1792":4,"1983":1,"2016":1,"2017":1,"2393":1,"2425":1,"2428":1,"2632":2}}],["browser",{"0":{"1413":1,"2830":1},"2":{"45":1,"51":1,"663":1,"679":1,"720":1,"723":1,"832":1,"949":3,"959":2,"961":1,"965":2,"966":1,"971":1,"1008":1,"1044":1,"1060":1,"1063":1,"1068":2,"1136":1,"1137":1,"1138":1,"1189":1,"1199":1,"1200":1,"1207":1,"1209":1,"1211":3,"1215":1,"1218":1,"1220":3,"1221":3,"1222":3,"1229":1,"1235":1,"1236":1,"1305":2,"1362":1,"1373":1,"1405":8,"1412":1,"1413":1,"1432":2,"1459":1,"1644":1,"1684":1,"1687":1,"1792":14,"1823":1,"1825":1,"1868":3,"1879":1,"1885":1,"1886":1,"2016":3,"2018":1,"2020":2,"2021":1,"2023":1,"2024":1,"2040":1,"2054":1,"2075":1,"2166":1,"2173":1,"2363":1,"2375":1,"2425":1,"2429":2,"2615":1,"2632":4,"2635":2,"2651":1,"2656":1,"2768":1,"2827":2,"2828":1,"2834":1,"2836":1}}],["brown",{"2":{"913":1,"919":2}}],["broader",{"2":{"868":1}}],["broadcasts",{"2":{"663":1,"1305":1,"1309":1,"1372":1,"2391":1,"2827":1,"2829":1,"2836":1,"2838":1}}],["broadcasting",{"2":{"650":1,"666":1,"2490":1}}],["broadcast",{"0":{"645":1},"2":{"642":1,"650":2,"663":1,"1103":1,"1305":1,"1309":1,"1312":1,"1315":1,"1318":1,"1320":1,"1792":1,"2391":2,"2392":1,"2828":1,"2829":4,"2832":3,"2833":1,"2834":1,"2835":3,"2836":3}}],["broadcaster",{"2":{"636":1,"650":3,"664":1,"666":2,"668":1,"669":1,"1305":1,"1309":1,"2362":2,"2393":1,"2407":1,"2828":2,"2833":1}}],["broad",{"2":{"349":1,"354":1,"941":1}}],["b>",{"2":{"348":1}}],["bf",{"2":{"308":3,"592":1,"813":1,"928":1,"1307":2,"2147":2,"2177":2,"2575":1}}],["bidirectional",{"2":{"1323":1,"1327":1}}],["bi",{"0":{"1183":1},"1":{"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1},"2":{"1037":2,"1183":2,"1184":1,"1203":2,"1206":4,"1208":1,"2164":2}}],["billing",{"2":{"1577":1,"2869":1}}],["billingapitypes",{"2":{"1577":1}}],["billingapi",{"2":{"1577":1}}],["bills",{"2":{"860":1}}],["bill",{"2":{"856":1,"865":1}}],["bilopavlović",{"2":{"2":1,"1096":1}}],["biometric",{"2":{"1209":1,"1210":2,"1217":1,"1220":1,"1221":1,"1222":1,"1228":2,"1251":1,"1792":4,"1867":1,"1868":1,"1878":2}}],["biometrics",{"2":{"1037":1,"1098":3,"1210":1,"1792":1,"1866":1,"2164":1,"2625":1}}],["bio",{"2":{"815":4}}],["bin",{"2":{"2782":1,"2783":1,"2784":1}}],["binaries",{"2":{"2576":1,"2744":1}}],["binary",{"0":{"1412":1},"2":{"722":1,"747":1,"832":4,"834":1,"866":1,"868":1,"904":1,"954":1,"1084":4,"1087":1,"1088":1,"1094":2,"1108":1,"1117":1,"1121":2,"1127":3,"1323":1,"1327":1,"1358":1,"1360":1,"1362":1,"1363":1,"1381":1,"1382":2,"1405":1,"1412":2,"2162":1,"2329":1,"2372":1,"2415":1,"2621":1,"2664":1,"2785":1}}],["bind",{"0":{"2395":1},"2":{"859":1,"2157":1,"2226":1,"2395":1,"2407":1,"2543":1,"2807":1}}],["binding",{"0":{"2689":1},"2":{"855":1,"869":1,"1074":1,"1102":3,"1825":1,"2115":1,"2223":1,"2394":1,"2424":1,"2438":1,"2481":1,"2496":1,"2498":3,"2527":1,"2645":1,"2687":1,"2689":1,"2702":1,"2739":1,"2860":1}}],["bindings",{"2":{"690":1}}],["bindable",{"2":{"380":1,"1371":1,"2333":1}}],["binds",{"2":{"215":1,"527":1,"852":1,"864":3,"865":1,"1407":1,"1738":1,"2540":1,"2807":1,"2845":1}}],["bitwise",{"2":{"2621":3}}],["bitcoin",{"2":{"1023":1,"1024":1}}],["bits",{"2":{"847":1}}],["bit",{"2":{"309":1,"363":1,"841":2,"845":1,"1049":1,"1394":1,"1395":2,"1396":1,"1400":1,"1405":1,"1656":6,"2423":2}}],["biggest",{"2":{"1385":1,"1403":1}}],["bigger",{"2":{"296":1}}],["big",{"0":{"2171":1},"2":{"844":2,"847":1,"849":2,"861":1,"1073":3,"1254":2,"1385":1,"1388":1,"1390":1,"1391":1,"1393":1,"1395":1,"1401":1,"2170":1}}],["bigquery",{"2":{"834":1}}],["bigint",{"2":{"258":1,"301":1,"585":1,"751":2,"777":2,"903":1,"952":1,"956":5,"1213":2,"1214":2,"1215":1,"1216":1,"1232":3,"1234":4,"1235":2,"1236":3,"1239":2,"1355":4,"1357":4,"1362":2,"1374":4,"1410":2,"1792":3,"1882":1,"1884":1,"1886":1,"1888":1,"2277":1}}],["b",{"0":{"309":1,"2822":1},"2":{"109":1,"307":1,"310":1,"355":1,"491":1,"650":5,"848":2,"914":2,"916":5,"918":4,"1086":2,"1087":1,"1088":2,"1193":1,"1211":1,"1305":2,"1375":2,"1401":1,"1429":6,"1431":2,"1792":4,"1868":1,"1974":2,"2330":2,"2371":2,"2422":2,"2432":1,"2533":2,"2586":1,"2588":2,"2607":2,"2725":1,"2828":2,"2841":1}}],["bxlfbmftztptev9wyxnzd29yza==",{"2":{"38":1,"58":1,"61":1}}],["borges",{"2":{"1442":3}}],["borrow",{"2":{"1435":1}}],["boring",{"2":{"1405":1}}],["border",{"2":{"965":2,"1792":2,"2073":2,"2075":2,"2080":2}}],["bonus",{"0":{"966":1},"1":{"967":1},"2":{"1404":1,"1436":1}}],["bolted",{"2":{"946":1}}],["bob",{"2":{"913":1,"919":2,"938":2,"977":2,"979":2,"980":2,"986":2,"988":2,"990":2,"1051":3,"1061":2,"1305":1,"1307":2,"1313":1,"2009":2,"2842":1}}],["bodies",{"0":{"1030":1,"2446":1},"2":{"876":1,"996":1,"1010":1,"1030":1,"1792":1,"1898":1,"2225":1,"2271":1,"2512":1,"2528":1,"2540":1,"2555":1,"2845":1,"2863":1}}],["bodyparamtobodytests",{"2":{"2523":1}}],["bodyparamgettests",{"2":{"2523":1}}],["bodyjson",{"2":{"1846":1,"1847":1,"1924":2,"2509":1,"2511":1,"2812":2}}],["body>loading",{"2":{"1792":1}}],["body>",{"2":{"539":4,"965":2,"1685":2,"1792":1}}],["bodycolumnname",{"2":{"300":1,"1469":1,"1470":1,"1471":1,"1792":4,"2259":2}}],["body",{"0":{"68":1,"71":1,"72":1,"75":1,"208":1,"257":1,"303":1,"521":1,"533":1,"1270":1,"1294":1,"2204":1,"2286":1,"2491":1,"2518":1,"2519":1},"1":{"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"1295":1},"2":{"33":4,"35":1,"68":2,"69":1,"71":2,"72":3,"73":2,"74":3,"75":4,"76":1,"77":3,"157":1,"165":1,"203":1,"206":3,"207":2,"208":2,"209":4,"210":2,"212":1,"214":2,"215":1,"226":3,"253":1,"257":1,"258":1,"264":2,"297":2,"300":3,"303":6,"313":3,"383":1,"385":1,"387":1,"394":1,"396":1,"409":1,"412":1,"414":4,"419":1,"423":1,"424":1,"428":1,"436":1,"438":1,"439":2,"447":2,"448":2,"449":3,"452":2,"453":1,"454":2,"493":1,"515":4,"516":2,"517":4,"518":1,"521":1,"522":2,"523":1,"524":2,"526":2,"527":1,"533":1,"553":1,"554":1,"555":1,"616":1,"650":1,"665":1,"669":1,"689":1,"695":1,"700":2,"716":1,"829":1,"915":1,"938":1,"982":1,"985":3,"996":1,"1016":1,"1017":2,"1019":2,"1021":2,"1026":1,"1029":2,"1031":3,"1074":1,"1078":2,"1104":1,"1105":10,"1107":1,"1214":5,"1220":3,"1221":3,"1222":3,"1232":4,"1233":2,"1234":3,"1239":1,"1254":1,"1255":2,"1258":1,"1264":1,"1270":1,"1285":1,"1331":1,"1332":5,"1338":3,"1339":2,"1341":2,"1342":1,"1347":2,"1348":2,"1366":2,"1376":2,"1398":8,"1399":1,"1407":1,"1426":3,"1427":1,"1431":13,"1438":1,"1469":1,"1470":1,"1471":2,"1480":2,"1489":1,"1559":1,"1569":1,"1686":1,"1688":1,"1721":1,"1722":2,"1725":1,"1727":2,"1728":1,"1730":1,"1732":2,"1733":1,"1736":2,"1738":1,"1742":3,"1743":2,"1744":2,"1745":2,"1759":2,"1792":31,"1864":1,"1882":2,"1883":2,"1884":2,"1912":1,"1916":1,"1918":2,"1921":2,"1922":2,"1924":9,"1925":7,"1926":1,"1991":1,"2011":1,"2093":2,"2109":3,"2110":2,"2164":2,"2180":1,"2183":1,"2204":2,"2222":8,"2223":1,"2255":2,"2259":1,"2264":8,"2271":1,"2277":4,"2282":1,"2283":3,"2286":2,"2290":3,"2300":1,"2302":1,"2305":1,"2307":1,"2321":1,"2346":4,"2348":1,"2354":1,"2391":2,"2395":2,"2398":1,"2438":1,"2481":1,"2483":1,"2491":3,"2493":1,"2498":3,"2502":2,"2509":5,"2511":1,"2512":1,"2513":3,"2517":3,"2518":8,"2519":8,"2520":2,"2521":3,"2523":11,"2526":1,"2529":4,"2530":4,"2531":1,"2533":1,"2535":1,"2537":2,"2549":8,"2555":1,"2566":1,"2580":1,"2615":1,"2626":1,"2666":1,"2762":6,"2763":4,"2764":3,"2765":1,"2766":4,"2767":4,"2769":2,"2807":2,"2809":4,"2810":5,"2812":1,"2813":2,"2814":1,"2815":2,"2816":1,"2828":2,"2829":1,"2834":2,"2835":1,"2860":1,"2861":1,"2865":2,"2866":2,"2868":1,"2869":2,"2873":1}}],["boilerplate",{"2":{"871":1,"872":1,"873":1,"879":1,"880":1,"1006":1,"1009":1,"1037":3,"1281":1,"1378":1,"1385":1,"1386":1,"1389":1,"1390":2,"1391":2,"1405":1,"1410":1,"1416":1,"2774":1}}],["box",{"2":{"307":1,"363":1,"880":1,"966":1,"1123":1,"1162":1,"1322":1,"1386":1,"1394":1,"1401":1,"2438":1,"2450":1,"2539":1,"2776":1,"2835":1}}],["boosted",{"2":{"1404":1}}],["booga",{"2":{"1401":1}}],["boo",{"2":{"1385":1}}],["boots",{"2":{"1418":1,"1420":1,"2465":1,"2472":1}}],["boot",{"2":{"1007":1,"1037":1,"1064":1,"1076":1,"1255":1,"1257":1,"1265":1,"1269":1,"1270":1,"1277":1,"1278":1,"1279":1,"1281":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1366":1,"2040":1,"2224":1,"2474":1}}],["bool",{"2":{"520":2,"747":4,"748":1,"757":2,"768":3,"776":2,"956":2,"1197":2,"1255":1,"1374":1,"1447":3,"1451":1,"1454":5,"1470":2,"1475":1,"1477":1,"1480":1,"1489":3,"1499":2,"1501":1,"1504":2,"1511":3,"1521":1,"1540":1,"1544":1,"1554":4,"1555":1,"1556":1,"1558":1,"1559":5,"1561":2,"1563":3,"1588":1,"1604":2,"1605":2,"1618":3,"1623":1,"1631":1,"1639":2,"1651":2,"1670":2,"1684":1,"1696":1,"1703":1,"1722":2,"1753":4,"1764":2,"1792":2,"1803":1,"1804":2,"1805":1,"1807":1,"1837":1,"1841":2,"1843":1,"1844":5,"1850":1,"1856":1,"1861":1,"1874":2,"1877":1,"1898":5,"1917":4,"1937":4,"1949":1,"1951":2,"1952":2,"1953":2,"1954":2,"1956":1,"1967":1,"1980":3,"2000":3,"2016":1,"2034":1,"2038":2,"2047":2,"2074":1,"2075":1,"2077":1,"2094":5,"2124":5,"2125":1,"2126":3,"2127":5,"2128":4,"2130":3,"2139":1,"2154":1,"2255":1,"2265":1,"2330":3,"2379":1,"2380":1,"2431":1,"2436":1,"2497":3,"2688":2}}],["booleans",{"2":{"952":1,"1824":1,"1924":1,"2509":1,"2662":1}}],["boolean",{"2":{"31":1,"33":1,"35":2,"37":1,"38":2,"39":2,"188":1,"206":1,"207":1,"208":1,"209":2,"210":1,"256":2,"301":2,"308":1,"370":1,"373":1,"374":2,"378":1,"439":2,"447":1,"449":2,"452":2,"520":1,"582":1,"584":1,"585":1,"592":1,"700":1,"756":4,"894":2,"903":1,"929":1,"952":2,"977":1,"995":2,"996":1,"1019":2,"1020":2,"1024":2,"1026":2,"1031":1,"1057":1,"1067":1,"1074":1,"1092":1,"1105":4,"1150":2,"1193":2,"1213":1,"1215":1,"1237":1,"1332":1,"1338":1,"1339":1,"1341":1,"1347":1,"1355":1,"1357":2,"1366":1,"1368":3,"1386":1,"1387":1,"1398":4,"1399":1,"1408":1,"1410":1,"1426":1,"1428":1,"1431":1,"1471":1,"1480":1,"1504":1,"1529":1,"1689":1,"1725":1,"1732":1,"1736":1,"1743":1,"1792":5,"1816":1,"1827":1,"1832":1,"1887":1,"1921":2,"1922":1,"1967":2,"2102":1,"2109":1,"2167":1,"2177":1,"2187":1,"2221":1,"2264":2,"2277":2,"2296":1,"2309":1,"2333":1,"2337":1,"2415":1,"2528":2,"2530":1,"2535":1,"2549":3,"2588":1,"2621":2,"2629":1,"2692":1,"2762":2,"2763":2,"2764":1,"2766":2,"2810":3,"2815":2,"2847":1,"2848":1,"2864":2,"2866":1,"2881":2}}],["bookkeeping",{"2":{"2537":1}}],["booked",{"2":{"865":1}}],["bookid",{"2":{"335":2,"918":4,"919":9,"920":2,"2586":2,"2590":1,"2611":3}}],["book",{"0":{"1425":1},"1":{"1426":1,"1427":1,"1428":1},"2":{"335":5,"843":1,"851":2,"860":1,"913":4,"916":4,"918":5,"919":1,"1403":1,"1423":1,"1424":1,"1427":6,"1430":1,"1431":3,"2164":2,"2586":5,"2611":1,"2760":2,"2762":5}}],["bookstore",{"2":{"1435":2,"1437":1,"1442":3}}],["books>",{"2":{"1427":2}}],["booksinfo",{"2":{"917":2,"920":2}}],["books",{"2":{"214":2,"335":4,"913":7,"914":3,"916":15,"917":4,"918":18,"919":3,"920":6,"1375":3,"1423":1,"1426":3,"1427":4,"1430":2,"1431":5,"1435":1,"1436":2,"1437":2,"1442":5,"1743":3,"2502":2,"2586":5,"2590":1,"2611":1,"2760":1,"2762":10}}],["boundaries",{"2":{"865":1,"940":1,"1159":1,"2002":1,"2371":1,"2840":1}}],["boundary",{"0":{"943":1},"2":{"390":1,"863":3,"864":1,"865":1,"872":1,"921":1,"2157":1,"2297":1,"2483":1,"2543":1}}],["bounds",{"2":{"841":1,"1208":1,"1429":2,"1459":1,"2375":1,"2502":1,"2540":1,"2845":1}}],["bounded",{"2":{"841":1,"861":1,"863":1,"1067":1,"2464":2}}],["bound",{"2":{"165":1,"170":1,"238":1,"377":2,"388":2,"439":1,"447":2,"448":1,"1070":2,"1102":1,"1167":1,"1792":2,"1852":2,"1922":2,"2087":1,"2322":1,"2323":1,"2333":2,"2383":2,"2395":2,"2496":1,"2540":1,"2546":1,"2572":1,"2845":1,"2848":2,"2849":1}}],["bottlenecks",{"2":{"2088":1}}],["bottleneck",{"2":{"1014":1,"2398":1}}],["bottom",{"0":{"1009":1},"2":{"3":1,"872":1,"1069":1,"1271":1,"1442":1,"1956":1,"2379":1}}],["bother",{"2":{"1401":1}}],["both",{"0":{"904":1,"2424":1},"2":{"41":1,"101":1,"106":1,"155":1,"168":1,"203":1,"213":1,"220":1,"290":1,"310":1,"324":1,"347":1,"353":1,"362":1,"369":1,"370":1,"388":1,"420":1,"423":2,"444":1,"587":1,"639":1,"650":1,"663":1,"666":1,"667":1,"691":1,"696":1,"701":1,"812":1,"818":1,"832":1,"836":3,"837":1,"838":1,"840":1,"841":1,"855":1,"864":3,"865":1,"868":1,"871":2,"873":1,"876":1,"884":2,"902":2,"903":1,"904":2,"920":1,"957":1,"959":1,"970":1,"1000":1,"1023":1,"1026":1,"1029":1,"1032":1,"1054":3,"1067":3,"1071":1,"1079":1,"1082":2,"1086":1,"1087":1,"1088":1,"1095":1,"1125":1,"1127":1,"1135":1,"1167":1,"1177":1,"1179":1,"1193":1,"1220":2,"1271":1,"1326":1,"1327":1,"1352":1,"1353":2,"1355":1,"1358":1,"1359":1,"1376":1,"1382":1,"1385":1,"1386":1,"1396":2,"1407":1,"1408":1,"1416":1,"1421":1,"1422":1,"1423":2,"1433":1,"1460":2,"1473":1,"1515":1,"1525":1,"1567":1,"1608":1,"1661":1,"1708":1,"1740":1,"1753":1,"1754":2,"1792":6,"1870":1,"1911":1,"2009":1,"2040":1,"2056":1,"2080":1,"2097":2,"2106":1,"2153":1,"2154":1,"2155":1,"2157":2,"2166":1,"2184":1,"2188":1,"2190":1,"2193":3,"2200":1,"2222":1,"2272":1,"2288":1,"2313":1,"2330":1,"2332":1,"2346":2,"2360":1,"2372":1,"2375":2,"2381":1,"2391":2,"2407":1,"2409":1,"2413":1,"2414":1,"2415":1,"2417":1,"2419":1,"2422":1,"2424":1,"2426":1,"2428":1,"2431":1,"2432":1,"2435":1,"2438":1,"2452":2,"2466":1,"2472":1,"2476":1,"2481":1,"2482":1,"2492":1,"2505":2,"2525":1,"2537":1,"2541":1,"2542":2,"2543":3,"2546":2,"2581":2,"2591":1,"2649":1,"2681":1,"2684":1,"2687":1,"2765":1,"2766":1,"2834":1,"2858":1,"2868":1}}],["bumped",{"2":{"2450":1}}],["bump",{"2":{"2448":1,"2461":1}}],["budge",{"2":{"1435":1}}],["buddy",{"2":{"1401":2,"1402":1,"1404":2}}],["buys",{"2":{"1180":1,"2412":1}}],["buy",{"2":{"1043":1}}],["bunch",{"2":{"1073":1,"1386":1,"1394":1,"1401":1}}],["bundler",{"2":{"1406":1}}],["bundle",{"2":{"1047":1,"1107":1,"1417":1,"1420":2,"2040":1,"2224":1,"2474":2}}],["bundles",{"0":{"1414":1},"2":{"101":1}}],["bun",{"0":{"1343":1,"2550":1,"2791":1},"2":{"970":3,"997":4,"1007":1,"1044":1,"1047":3,"1255":2,"1257":1,"1264":1,"1265":1,"1266":1,"1267":1,"1270":2,"1277":1,"1279":1,"1280":1,"1281":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1334":1,"1335":2,"1343":6,"1380":3,"1396":1,"1418":2,"1420":4,"1433":5,"2106":1,"2111":1,"2161":2,"2162":2,"2167":2,"2168":5,"2238":1,"2385":1,"2532":1,"2537":1,"2550":8,"2791":13,"2871":1,"2872":1,"2873":1,"2878":1}}],["busting",{"0":{"1139":1},"2":{"1139":1,"1769":1,"1792":2,"2060":1,"2634":1,"2635":1}}],["busy",{"2":{"919":1,"1164":1,"1165":1,"2803":1}}],["business",{"2":{"333":2,"414":1,"836":2,"841":4,"843":1,"844":2,"847":1,"849":3,"854":1,"860":1,"861":1,"863":3,"873":1,"902":1,"974":1,"1035":1,"1041":1,"1096":1,"1106":1,"1184":1,"1205":1,"1211":1,"1244":1,"1247":1,"1382":3,"1403":4,"1405":2,"1824":1,"1868":1,"2300":1,"2481":1}}],["burned",{"2":{"1075":1}}],["buried",{"2":{"1015":1}}],["burden",{"2":{"871":1,"1281":1}}],["bursts",{"2":{"1160":1,"1164":1,"1171":1,"1180":1,"2498":1}}],["bursting",{"2":{"1160":1}}],["burst",{"0":{"1171":1},"2":{"214":1,"1159":1,"1160":1,"1165":1,"1171":1,"1430":1,"1743":1,"2088":1,"2224":1,"2459":1,"2462":1,"2464":1,"2465":1,"2502":1}}],["bulk",{"2":{"857":1,"907":1,"2270":2}}],["bucketwindow",{"2":{"2257":1}}],["buckets",{"2":{"1066":1,"1101":1,"1121":1}}],["bucket",{"0":{"477":1,"1160":1,"1953":1},"2":{"477":3,"479":1,"480":2,"847":1,"1069":6,"1101":2,"1160":2,"1162":5,"1792":6,"1950":1,"1953":5,"1955":3,"1957":3,"1960":2,"2218":1,"2257":2,"2379":6,"2442":1,"2634":1}}],["buffers",{"2":{"2397":1}}],["buffersize",{"2":{"1356":1,"1792":1,"2123":1,"2125":1,"2132":1}}],["bufferedimage",{"2":{"1366":1}}],["buffered",{"2":{"87":1,"88":1}}],["buffering",{"0":{"83":1},"2":{"81":1,"87":2,"142":1,"231":1,"949":1,"953":2,"1859":3,"2835":2}}],["buffer",{"0":{"78":1,"84":1,"85":1,"86":1,"2404":1},"1":{"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1},"2":{"78":2,"79":4,"81":3,"83":1,"84":1,"85":1,"86":1,"89":1,"142":1,"159":3,"231":1,"747":5,"753":4,"757":4,"768":1,"776":2,"782":6,"784":6,"786":3,"968":1,"969":1,"971":1,"1007":1,"1255":1,"1258":1,"1792":3,"1991":2,"2125":3,"2329":1,"2364":1,"2402":1,"2404":1,"2591":1,"2835":1}}],["button>",{"2":{"938":3,"1061":4}}],["button",{"2":{"938":3,"948":1,"1061":4,"1384":1}}],["but",{"0":{"1077":1,"2723":1},"2":{"64":1,"109":1,"119":1,"165":1,"168":1,"174":1,"180":1,"206":1,"261":1,"263":1,"303":1,"308":1,"320":2,"354":1,"389":1,"390":1,"419":1,"454":1,"524":2,"587":1,"618":2,"621":1,"622":1,"639":1,"663":2,"710":1,"831":1,"834":1,"835":1,"841":10,"844":4,"845":3,"848":4,"849":1,"854":1,"855":1,"856":1,"857":2,"859":2,"860":3,"863":1,"866":1,"868":1,"869":2,"872":3,"873":4,"875":1,"876":5,"877":1,"884":1,"907":1,"908":1,"909":1,"912":1,"913":3,"916":2,"917":1,"918":2,"919":4,"920":2,"927":1,"934":1,"946":1,"953":1,"974":1,"987":1,"1012":1,"1036":1,"1042":2,"1045":1,"1048":1,"1049":2,"1054":1,"1063":1,"1070":1,"1073":1,"1075":1,"1077":2,"1088":1,"1096":1,"1097":1,"1100":3,"1101":2,"1102":4,"1106":2,"1107":1,"1111":1,"1118":1,"1133":1,"1149":1,"1160":2,"1165":1,"1169":1,"1171":2,"1178":1,"1180":1,"1185":1,"1199":1,"1205":1,"1236":1,"1254":1,"1271":1,"1281":1,"1329":1,"1338":1,"1378":1,"1382":1,"1385":5,"1386":6,"1388":1,"1389":1,"1390":1,"1391":1,"1392":1,"1393":1,"1394":6,"1395":4,"1396":2,"1397":1,"1398":2,"1399":3,"1400":3,"1401":7,"1402":6,"1403":3,"1404":2,"1405":3,"1411":1,"1413":1,"1420":1,"1430":1,"1431":2,"1432":1,"1435":2,"1511":2,"1517":1,"1527":2,"1528":1,"1533":1,"1572":1,"1576":1,"1645":1,"1664":1,"1708":1,"1747":1,"1792":15,"1802":1,"1823":1,"1850":1,"1861":1,"1930":2,"1938":1,"1941":1,"2177":1,"2187":1,"2193":1,"2245":1,"2255":1,"2265":1,"2282":1,"2291":1,"2305":1,"2332":1,"2344":3,"2347":1,"2380":1,"2383":1,"2384":1,"2393":1,"2394":1,"2395":4,"2405":1,"2415":1,"2419":1,"2420":2,"2424":1,"2425":1,"2428":1,"2430":1,"2431":1,"2438":5,"2442":1,"2446":1,"2451":1,"2459":1,"2461":1,"2466":1,"2472":1,"2481":1,"2490":1,"2491":1,"2493":1,"2494":1,"2495":1,"2506":1,"2510":1,"2527":1,"2529":1,"2532":1,"2588":1,"2590":1,"2597":1,"2608":1,"2729":1,"2779":1,"2789":1,"2798":1,"2811":1,"2815":1,"2823":1,"2834":1,"2835":2,"2852":1,"2862":1,"2865":1,"2876":1,"2881":2}}],["bugfix",{"0":{"2626":1}}],["buggy",{"2":{"2451":1}}],["bugs",{"2":{"843":5,"845":1,"857":1,"865":1,"872":2,"873":1,"1006":1,"1036":1,"1065":1,"2360":1,"2395":1,"2450":1,"2627":1}}],["bug",{"0":{"2361":1,"2558":1,"2597":1,"2600":1,"2603":1,"2608":1},"1":{"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1},"2":{"3":1,"852":1,"864":1,"865":1,"872":2,"873":1,"973":1,"974":1,"1281":1,"1409":1,"1856":1,"2409":1,"2411":1,"2448":1,"2452":2,"2453":1,"2455":1,"2490":1,"2500":1,"2603":1,"2648":1}}],["buildratelimiter",{"2":{"2443":1,"2472":1}}],["buildlabel",{"2":{"2040":1,"2476":1}}],["building",{"0":{"921":1,"955":1,"1018":1,"1306":1,"1334":1,"2792":1},"1":{"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"956":1,"957":1,"958":1,"1019":1,"1020":1,"1021":1,"1022":1,"1307":1,"1308":1,"1309":1,"1310":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1},"2":{"834":1,"837":1,"851":1,"852":1,"869":1,"912":1,"1068":1,"1079":1,"1123":1,"1185":1,"1193":1,"1303":1,"1399":1,"2614":5,"2712":1,"2792":1,"2826":1}}],["builds",{"2":{"388":1,"436":1,"851":1,"852":2,"867":1,"872":1,"877":1,"949":1,"1010":1,"1178":1,"1183":1,"1328":1,"1376":1,"1382":1,"1420":1,"1423":1,"2160":1,"2242":1,"2527":1,"2776":1,"2779":2,"2862":1,"2875":1}}],["builders",{"2":{"2868":1}}],["builder",{"2":{"78":1,"87":1,"679":1,"723":1,"834":1,"872":1,"961":1,"1413":1,"1572":1,"1581":1,"1792":3,"2267":2,"2419":1,"2422":2,"2472":1}}],["build",{"0":{"869":1,"985":1,"1302":1,"2576":1},"1":{"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1308":1,"1309":1,"1310":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1},"2":{"1":1,"207":1,"209":2,"264":1,"361":1,"374":1,"388":1,"395":1,"415":2,"423":1,"426":1,"427":2,"428":1,"439":2,"449":2,"452":3,"503":1,"510":1,"812":1,"813":1,"814":1,"815":1,"834":1,"841":1,"851":1,"866":1,"867":1,"871":3,"872":1,"885":1,"916":1,"920":1,"921":1,"948":1,"958":1,"968":1,"972":1,"973":1,"975":1,"976":1,"978":1,"984":1,"985":3,"988":1,"994":1,"996":3,"997":5,"1001":1,"1005":2,"1021":1,"1026":1,"1029":1,"1037":4,"1047":1,"1049":1,"1065":1,"1071":1,"1076":1,"1081":1,"1094":1,"1105":4,"1108":1,"1161":1,"1179":2,"1181":1,"1200":1,"1203":1,"1214":1,"1215":1,"1216":1,"1232":2,"1234":1,"1236":1,"1239":1,"1302":1,"1309":1,"1321":1,"1326":1,"1332":1,"1338":3,"1339":6,"1347":2,"1372":1,"1376":1,"1382":1,"1402":1,"1404":1,"1406":1,"1407":2,"1409":2,"1413":1,"1417":1,"1418":1,"1419":1,"1420":2,"1421":2,"1422":4,"1432":1,"1436":2,"1442":1,"1727":2,"1736":1,"1745":1,"1792":3,"1921":2,"1924":1,"1926":1,"1974":2,"2038":1,"2040":5,"2107":1,"2147":2,"2160":1,"2164":1,"2165":1,"2168":1,"2223":1,"2224":1,"2237":1,"2242":1,"2264":1,"2303":1,"2304":1,"2346":1,"2372":1,"2385":1,"2386":1,"2438":2,"2456":1,"2474":1,"2476":3,"2481":2,"2493":1,"2537":1,"2549":4,"2575":1,"2576":4,"2586":1,"2588":1,"2607":2,"2764":1,"2766":1,"2767":1,"2790":1,"2792":4,"2810":2,"2813":3,"2815":3,"2829":2,"2830":1,"2836":1,"2858":1,"2879":1}}],["built",{"0":{"158":1,"309":1,"363":1,"436":1,"966":1,"986":1,"1049":1,"1055":1,"1250":1},"1":{"159":1,"160":1,"161":1,"162":1,"163":1,"967":1,"1056":1},"2":{"0":1,"2":1,"300":1,"307":2,"308":1,"309":2,"310":1,"312":3,"316":1,"362":1,"364":1,"414":1,"582":1,"585":1,"694":1,"832":1,"834":1,"835":1,"848":1,"859":1,"861":1,"866":1,"868":1,"869":8,"873":3,"876":1,"880":6,"918":1,"920":1,"946":1,"966":1,"969":1,"979":1,"1009":1,"1027":1,"1037":3,"1038":1,"1043":1,"1048":3,"1049":4,"1052":1,"1055":1,"1056":1,"1064":1,"1075":1,"1078":1,"1086":1,"1094":3,"1097":1,"1098":3,"1100":4,"1101":2,"1102":1,"1105":1,"1106":1,"1108":3,"1126":1,"1127":2,"1135":1,"1140":1,"1185":1,"1188":1,"1209":1,"1276":1,"1322":1,"1323":1,"1324":1,"1350":1,"1382":2,"1385":1,"1396":1,"1404":2,"1423":2,"1472":2,"1792":4,"1822":1,"1825":1,"2167":1,"2177":3,"2188":1,"2190":1,"2257":1,"2289":1,"2438":4,"2462":1,"2474":1,"2479":1,"2481":1,"2482":1,"2532":1,"2537":2,"2544":1,"2575":1,"2739":1,"2775":1,"2776":2,"2792":1,"2794":1,"2811":1,"2860":1,"2879":1}}],["bag",{"2":{"2482":1}}],["band",{"2":{"2397":1}}],["bandwidth",{"2":{"1944":1}}],["banking",{"2":{"1228":1,"1792":2,"1878":1}}],["banks",{"2":{"852":1}}],["bail",{"2":{"1427":1}}],["balancing",{"0":{"1175":1},"2":{"1172":1,"1175":1,"1177":1,"1180":2,"1182":1,"1618":1,"1626":1,"1628":1,"1792":1,"2266":2}}],["balances",{"2":{"1168":1}}],["balancers",{"2":{"1329":1,"1712":1,"1792":1,"2634":1}}],["balancer",{"0":{"1715":1},"2":{"844":1,"864":1,"1067":1,"1337":1,"1706":1,"1767":1,"1774":1,"1792":1,"2633":1}}],["balance",{"2":{"320":1,"622":8,"860":2,"1175":2,"1176":1,"1177":1,"1938":1}}],["balanced",{"2":{"88":1,"859":2,"1177":1,"1280":1}}],["badrequest",{"2":{"1366":4}}],["badly",{"2":{"874":1}}],["bad",{"0":{"2384":1,"2491":1},"2":{"843":1,"918":1,"1071":1,"1234":1,"1236":1,"1527":1,"1674":2,"1676":1,"1677":1,"1742":1,"1792":3,"2223":1,"2255":4,"2290":1,"2380":1,"2491":1}}],["badges",{"2":{"0":1}}],["badge",{"2":{"0":2}}],["bar",{"2":{"650":1,"834":2}}],["barely",{"2":{"1076":1}}],["bare",{"0":{"2494":1},"2":{"110":1,"214":2,"320":1,"323":1,"327":1,"436":1,"515":1,"585":1,"613":1,"615":1,"1042":1,"1415":1,"1428":1,"1429":1,"1431":1,"1743":2,"1759":1,"1834":1,"2040":1,"2223":2,"2337":1,"2339":1,"2435":1,"2455":1,"2476":1,"2481":1,"2482":2,"2489":2,"2490":1,"2491":1,"2502":2,"2519":1,"2520":1}}],["battery",{"2":{"1078":1}}],["battle",{"2":{"2":1,"876":1,"1402":1}}],["batched",{"2":{"2228":1}}],["batch",{"2":{"324":1,"1086":1,"1095":2,"1125":1,"1792":1,"1850":1,"1852":1,"2383":2}}],["backing",{"2":{"1655":1}}],["backup",{"0":{"1365":1},"2":{"1213":1,"1215":3,"1237":1,"1353":2,"1354":1,"1365":1,"1792":1,"1887":1}}],["backups",{"2":{"993":1,"994":1,"1354":2}}],["backoff",{"2":{"1101":2,"1104":1,"1155":1,"1181":1,"2459":1}}],["backslashes",{"2":{"2589":1}}],["backslash",{"2":{"340":1,"599":1,"2040":1,"2476":1,"2531":1,"2603":1}}],["backwards",{"2":{"921":1}}],["backward",{"2":{"330":1,"917":1,"1792":3,"1958":1,"1974":1,"2002":1,"2371":1,"2423":1,"2461":1,"2470":1,"2477":1,"2481":1,"2496":1,"2587":1,"2607":1}}],["background",{"2":{"324":1,"660":3,"844":1,"852":1,"855":1,"864":1,"1035":1,"1036":1,"1792":1,"2073":1,"2075":1,"2080":1}}],["back",{"2":{"186":1,"188":1,"296":1,"313":1,"315":1,"380":1,"436":1,"675":1,"777":2,"833":1,"847":1,"848":2,"849":2,"851":1,"852":2,"854":2,"856":1,"857":1,"859":2,"860":2,"881":1,"901":1,"903":1,"904":2,"974":1,"992":1,"995":1,"1039":1,"1041":1,"1073":1,"1074":1,"1078":2,"1080":1,"1082":1,"1094":1,"1162":1,"1255":1,"1398":2,"1400":1,"1423":1,"1426":1,"1439":1,"1442":1,"1447":1,"1451":1,"1454":2,"1464":1,"1605":1,"1628":2,"1744":1,"1792":10,"1818":1,"1819":1,"1856":1,"1941":1,"2224":1,"2266":3,"2293":1,"2296":1,"2329":1,"2333":1,"2346":1,"2348":1,"2377":2,"2389":1,"2405":3,"2422":1,"2451":1,"2453":1,"2455":2,"2497":1,"2527":1,"2531":1,"2533":1,"2537":1,"2664":1,"2688":1,"2739":1,"2803":1,"2807":2,"2809":2,"2833":1,"2862":1,"2869":2,"2878":1}}],["backends",{"2":{"123":1,"230":1,"1099":1,"1144":1,"1519":2,"1522":1,"1792":1,"2380":2,"2465":1,"2494":1,"2495":1}}],["backend",{"0":{"866":1,"1011":1,"1026":1,"1381":1,"1522":1,"2462":1},"1":{"867":1,"868":1,"869":1,"870":1,"871":1,"872":1,"873":1,"874":1,"875":1,"876":1,"877":1,"1382":1,"1383":1},"2":{"98":1,"100":1,"101":1,"104":1,"105":1,"108":3,"111":1,"122":1,"124":1,"832":1,"866":1,"867":3,"868":1,"869":1,"872":2,"876":2,"911":1,"958":1,"1021":1,"1027":1,"1037":2,"1067":4,"1070":2,"1083":1,"1084":2,"1150":4,"1177":1,"1181":1,"1303":1,"1309":2,"1320":1,"1321":1,"1322":1,"1366":3,"1381":1,"1382":3,"1383":1,"1410":1,"1414":2,"1421":1,"1427":1,"1511":2,"1515":2,"1522":2,"1792":5,"1851":2,"2274":1,"2380":2,"2382":2,"2445":2,"2465":1,"2495":2,"2745":1,"2806":1,"2812":1,"2874":1}}],["backed",{"2":{"41":1,"844":3,"1067":1,"1328":1,"1792":1,"2274":1,"2399":1,"2465":1,"2504":1,"2815":1,"2816":1}}],["basis",{"2":{"177":1,"847":1,"917":2}}],["basics",{"2":{"879":1,"1082":1,"1792":1,"1801":1,"2164":1,"2165":1,"2167":1}}],["basically",{"2":{"845":1,"851":1,"1385":2,"1388":1,"1398":1,"1405":1,"1440":1}}],["basicauthhandler",{"2":{"2559":1,"2615":1}}],["basicauth",{"2":{"52":1,"1196":1,"1197":1,"1199":1,"1469":1,"1482":1,"1498":1,"1502":1,"1503":1,"1505":1,"1792":2,"1903":1,"2254":1,"2551":1}}],["basic",{"0":{"29":1,"37":1,"44":1,"55":1,"60":1,"61":1,"104":1,"206":1,"225":1,"247":1,"288":1,"332":1,"405":1,"415":1,"417":1,"437":1,"441":1,"487":1,"658":1,"659":1,"750":1,"755":1,"764":1,"774":1,"797":1,"1183":1,"1194":1,"1373":1,"1482":1,"1497":1,"1778":1,"1903":1,"2027":1,"2192":1,"2303":1,"2363":1,"2785":1},"1":{"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"438":1,"439":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":2,"1196":2,"1197":2,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1},"2":{"25":1,"29":2,"30":1,"37":2,"38":8,"39":1,"40":7,"43":3,"44":2,"45":1,"48":3,"49":2,"50":1,"53":1,"54":3,"55":2,"56":2,"58":3,"60":4,"61":8,"62":11,"63":3,"64":1,"65":1,"66":2,"67":2,"225":4,"368":2,"436":1,"835":1,"961":1,"1037":2,"1086":1,"1098":2,"1183":2,"1184":3,"1185":2,"1188":1,"1189":4,"1193":1,"1196":2,"1197":5,"1198":1,"1199":3,"1202":1,"1207":2,"1208":1,"1281":1,"1373":3,"1468":1,"1482":3,"1484":2,"1485":2,"1486":2,"1497":2,"1499":1,"1500":1,"1501":3,"1503":1,"1504":3,"1505":2,"1506":5,"1508":4,"1515":1,"1549":3,"1550":2,"1788":2,"1792":17,"1795":1,"1901":1,"1903":2,"1906":1,"2164":2,"2165":3,"2167":1,"2196":1,"2206":1,"2254":3,"2363":2,"2438":1,"2481":1,"2545":1,"2549":2,"2591":1,"2679":1,"2736":1,"2785":1,"2860":1}}],["baseuploadhandler",{"2":{"2664":1}}],["baseurl",{"2":{"429":1,"723":1,"894":1,"938":1,"961":1,"995":3,"1026":4,"1317":1,"1342":1,"1366":1,"1386":1,"1408":2,"1410":1,"1413":1,"1416":1,"1560":1,"1567":1,"1568":1,"1569":1,"1571":1,"1572":2,"1573":1,"1574":4,"1575":1,"1581":2,"1792":1,"2247":1,"2277":1,"2310":1,"2313":1,"2648":1,"2655":1}}],["basecurrency=eur",{"2":{"2764":1}}],["basecurrency=usd",{"2":{"1023":1}}],["basecurrency",{"2":{"1024":2,"1026":8}}],["baselines",{"2":{"2156":1,"2542":1}}],["baseline",{"0":{"1269":1,"1292":1},"1":{"1293":1},"2":{"868":1,"1254":1,"1255":3,"1258":2,"1264":1,"1266":1,"1272":1,"1275":1,"1285":1,"2398":2,"2804":1}}],["bases",{"2":{"845":1}}],["base",{"0":{"2385":1},"2":{"74":1,"75":1,"1019":2,"1020":1,"1021":5,"1032":1,"1193":4,"1376":6,"1416":1,"1420":3,"1574":1,"1753":1,"1792":1,"2346":1,"2369":1,"2372":1,"2518":1,"2522":1,"2764":2,"2766":2}}],["base64url",{"2":{"1218":1,"1220":1,"1221":1}}],["base64",{"2":{"58":1,"63":1,"308":6,"1198":1,"1214":3,"1232":5,"1234":3,"1482":1,"1497":1,"1792":3,"1882":2,"1884":1,"2177":3}}],["based",{"0":{"1048":1,"1057":1,"2059":1,"2164":1},"1":{"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":1,"1055":1,"1056":1,"1057":1,"1058":2,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1},"2":{"41":2,"66":1,"120":1,"188":1,"210":1,"305":1,"356":1,"363":1,"480":1,"669":1,"760":1,"761":1,"770":1,"771":1,"772":1,"835":1,"841":1,"851":1,"857":2,"860":1,"866":1,"869":1,"882":1,"883":1,"948":1,"961":1,"995":1,"1037":3,"1048":2,"1049":1,"1053":1,"1063":1,"1064":2,"1094":1,"1096":1,"1098":2,"1101":2,"1107":1,"1111":1,"1115":1,"1127":1,"1133":1,"1162":1,"1272":1,"1274":1,"1280":1,"1305":1,"1308":1,"1351":1,"1364":1,"1366":1,"1410":1,"1445":1,"1446":1,"1450":1,"1453":1,"1464":1,"1581":1,"1670":1,"1732":1,"1792":8,"1904":1,"1907":1,"1955":1,"2020":1,"2109":1,"2129":1,"2131":1,"2164":2,"2165":3,"2187":1,"2188":1,"2223":1,"2254":1,"2255":1,"2264":1,"2265":1,"2284":1,"2296":1,"2376":1,"2379":1,"2389":1,"2419":1,"2438":2,"2481":1,"2490":1,"2530":1,"2537":1,"2576":1,"2580":1,"2597":1,"2600":2,"2632":1,"2679":1,"2736":1,"2790":1,"2804":1,"2837":1,"2839":1,"2868":1}}],["bashbashbun",{"2":{"2162":1}}],["bashbashgit",{"2":{"1380":1,"2162":1,"2792":1}}],["bashbashdocker",{"2":{"1343":1}}],["bashbashdotnet",{"2":{"1199":2,"2792":1}}],["bashbashnpgsqlrest",{"2":{"1195":1,"2208":1,"2682":1,"2694":3,"2695":2,"2697":1}}],["bashbashcd",{"2":{"1047":1,"1433":2,"2162":1}}],["bashbashexport",{"2":{"1044":1,"2697":1}}],["bashbash",{"2":{"38":1,"40":1,"57":1,"58":1,"61":1,"62":1,"970":1,"997":1,"1051":1,"1117":1,"1118":1,"1119":1,"1207":1,"1606":1,"2684":1,"2685":1,"2689":1,"2691":1,"2692":1,"2699":1,"2700":1,"2782":1,"2783":1,"2784":1,"2785":5,"2786":2,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2823":1,"2824":1}}],["beyond",{"0":{"987":1},"1":{"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1},"2":{"928":1,"1086":1,"1127":1,"1181":1,"1351":1,"1971":1,"2112":1,"2532":1,"2804":1,"2833":1}}],["besides",{"2":{"860":1,"1385":1,"1435":2,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1}}],["best",{"0":{"1429":1},"2":{"88":1,"713":1,"844":1,"845":1,"857":1,"859":1,"861":1,"917":1,"920":1,"948":1,"1078":1,"1084":1,"1128":1,"1266":1,"1382":1,"1386":1,"1398":1,"1402":1,"1404":1,"1412":1,"1423":1,"1515":1,"1792":3,"1938":1,"2094":1,"2112":1,"2164":1,"2173":1,"2174":1,"2297":1,"2532":1,"2533":2,"2871":1}}],["benefits",{"0":{"999":1,"1193":1},"1":{"1000":1,"1001":1,"1002":1,"1003":1,"1004":1},"2":{"2371":1,"2615":1}}],["benefit",{"2":{"974":1,"1130":1,"1180":2,"1974":1,"2270":1,"2607":1}}],["beneath",{"2":{"847":1,"1042":1}}],["benchmarkdotnet",{"2":{"2397":1}}],["benchmarked",{"2":{"1084":1}}],["benchmark",{"0":{"1254":1,"1256":1,"1282":1},"1":{"1255":1,"1256":1,"1257":2,"1258":2,"1259":2,"1260":2,"1261":1,"1262":1,"1263":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":1,"1275":1,"1276":1,"1277":1,"1278":1,"1279":1,"1280":1,"1281":1,"1282":1,"1283":2,"1284":2,"1285":2,"1286":2,"1287":2,"1288":2,"1289":2,"1290":2,"1291":2,"1292":2,"1293":2,"1294":2,"1295":2,"1296":2,"1297":2,"1298":2,"1299":2,"1300":2,"1301":2},"2":{"877":1,"1037":1,"1084":1,"1089":2,"1170":1,"1254":5,"1256":2,"1258":1,"1260":3,"1277":1,"1281":1,"2397":1,"2398":4,"2621":1,"2744":1}}],["benchmarks",{"0":{"1089":1},"1":{"1090":1,"1091":1,"1092":1},"2":{"874":1,"1007":1,"1037":1,"1254":2,"1259":1,"2621":1,"2744":1}}],["bench",{"2":{"851":1}}],["believe",{"2":{"844":1,"845":1,"1076":1,"1385":1}}],["belief",{"2":{"841":2,"849":1,"1075":3,"1079":1}}],["belongs",{"2":{"1101":1,"2444":1,"2533":1}}],["belong",{"2":{"832":1,"859":1,"926":1,"2389":1}}],["below",{"2":{"212":1,"220":1,"309":1,"436":2,"560":1,"581":1,"614":1,"615":1,"619":1,"650":1,"761":1,"771":1,"845":1,"868":1,"871":1,"919":1,"924":1,"986":1,"1066":1,"1076":1,"1135":1,"1157":1,"1174":1,"1212":1,"1227":3,"1403":1,"1475":1,"1477":1,"1511":2,"1521":1,"1540":1,"1544":1,"1558":1,"1566":1,"1588":1,"1589":1,"1604":3,"1618":2,"1623":1,"1670":2,"1684":1,"1690":1,"1792":8,"1807":1,"1824":1,"1825":1,"1877":3,"1922":1,"1937":1,"2034":1,"2038":1,"2094":2,"2107":1,"2109":1,"2117":1,"2220":1,"2339":1,"2340":1,"2384":1,"2450":1,"2481":1,"2504":1,"2533":1,"2535":1,"2537":2,"2538":1,"2541":1,"2682":1,"2829":1,"2836":1,"2852":1,"2867":1,"2871":1}}],["been",{"2":{"840":1,"851":1,"852":1,"857":1,"872":3,"877":1,"912":2,"1073":1,"1075":1,"1081":1,"1122":1,"1382":2,"1385":1,"1401":1,"1403":1,"1792":1,"1813":1,"2255":1,"2279":1,"2389":2,"2400":1,"2434":1,"2446":1,"2600":1,"2673":1}}],["behind",{"0":{"1711":1},"2":{"836":1,"844":1,"856":1,"864":1,"874":1,"947":1,"1037":2,"1067":1,"1073":1,"1074":1,"1121":1,"1208":1,"1324":1,"1383":1,"1435":1,"1437":1,"1701":1,"1704":1,"1713":1,"1717":1,"1792":2,"1859":1,"2103":1,"2633":3,"2835":1}}],["behaviour",{"2":{"873":1}}],["behavioral",{"2":{"865":1}}],["behavior",{"0":{"10":1,"25":1,"41":1,"51":1,"63":1,"73":1,"87":1,"108":1,"120":1,"139":1,"150":1,"188":1,"197":1,"216":1,"245":1,"284":1,"330":1,"337":1,"362":1,"384":1,"409":1,"461":1,"468":1,"480":1,"494":1,"504":1,"512":1,"518":1,"524":1,"529":1,"567":1,"575":1,"587":1,"595":1,"609":1,"615":1,"625":1,"667":1,"687":1,"737":1,"779":1,"801":1,"818":1,"829":1,"1267":1,"1741":1,"1774":1,"1847":1,"1858":1,"2149":1,"2157":1,"2158":1,"2197":1,"2284":1,"2289":1,"2296":1,"2413":1,"2416":1,"2423":1,"2444":1,"2511":1},"1":{"285":1,"286":1,"462":1,"463":1,"464":1,"616":1,"668":1,"669":1,"738":1,"739":1,"802":1,"803":1},"2":{"1":1,"26":1,"28":1,"33":1,"64":1,"81":1,"160":1,"165":1,"167":1,"214":1,"215":1,"231":1,"244":2,"293":1,"295":1,"315":1,"332":1,"470":1,"523":1,"556":1,"616":1,"617":1,"650":1,"659":1,"737":1,"756":1,"780":1,"801":1,"841":3,"845":3,"859":3,"860":1,"917":1,"932":1,"1044":1,"1069":1,"1102":1,"1129":1,"1134":1,"1155":1,"1174":1,"1181":1,"1199":1,"1228":1,"1229":1,"1230":1,"1324":1,"1326":1,"1386":1,"1401":2,"1577":1,"1609":1,"1612":1,"1617":1,"1622":1,"1664":1,"1688":1,"1738":1,"1792":8,"1840":1,"1851":1,"1856":2,"1878":1,"1879":1,"1880":1,"1957":2,"2000":1,"2004":1,"2007":1,"2009":1,"2023":1,"2024":1,"2107":1,"2115":1,"2157":1,"2189":1,"2209":1,"2219":1,"2258":1,"2267":1,"2313":1,"2314":3,"2322":1,"2328":1,"2330":2,"2339":1,"2354":1,"2356":1,"2363":1,"2378":1,"2379":1,"2381":1,"2382":1,"2393":1,"2395":1,"2416":1,"2431":1,"2443":1,"2447":1,"2450":1,"2454":1,"2455":2,"2482":1,"2486":1,"2502":1,"2510":1,"2528":1,"2539":2,"2540":1,"2543":2,"2551":1,"2554":1,"2558":2,"2586":3,"2587":2,"2588":2,"2589":2,"2595":1,"2596":1,"2771":1,"2822":1,"2826":1,"2835":1,"2840":1,"2841":1,"2845":1,"2864":1,"2876":1}}],["behaving",{"2":{"857":1}}],["behaves",{"2":{"991":1,"2422":1,"2461":1,"2510":1,"2531":1}}],["behave",{"2":{"683":1,"852":1,"864":1,"1792":1,"1840":1,"1958":1,"2325":1,"2470":1,"2477":1,"2487":1,"2533":1,"2537":1}}],["bearing",{"2":{"861":1,"868":1,"1792":1,"1856":2,"2224":2,"2420":1,"2421":1,"2431":1,"2438":1,"2451":3,"2453":1,"2454":1}}],["bearerformat",{"2":{"1792":2,"1902":1,"1906":1,"1907":1,"1911":1,"2254":2,"2434":1}}],["bearerauth",{"2":{"1792":2,"1902":1,"1907":1,"1911":1,"2254":2,"2434":1}}],["bearertokendefaults",{"2":{"1451":1}}],["bearertokenexpire",{"2":{"1450":1,"1451":1,"1458":1,"1459":1,"1464":2,"1792":2,"2375":3,"2376":1,"2412":1}}],["bearertokenexpirehours",{"2":{"1053":1,"1062":1,"1464":1,"2174":1,"2376":1}}],["bearertoken",{"2":{"1068":1,"1098":1,"1451":1,"1458":2,"1459":1,"1460":2,"1792":2,"2227":1,"2375":5,"2412":1,"2438":1}}],["bearertokenrefreshpath",{"2":{"1053":1,"1062":1,"1450":1,"1451":1,"1458":1,"1459":1,"1460":1,"1792":3,"2174":1,"2375":4,"2412":1}}],["bearertokenauthscheme",{"2":{"1053":1,"1062":1,"1450":1,"1451":1,"1460":1,"1792":2,"2174":1,"2175":1,"2375":1}}],["bearertokenauth",{"2":{"1053":1,"1062":1,"1445":1,"1450":1,"1451":1,"1464":1,"1792":1,"2174":1}}],["bearer",{"0":{"1450":1,"1451":1,"1457":1,"1902":1,"2174":1},"1":{"1451":1,"1452":1},"2":{"207":1,"208":1,"209":1,"211":1,"212":2,"215":1,"286":1,"290":2,"297":1,"302":1,"303":1,"312":1,"315":1,"390":1,"394":1,"531":1,"533":1,"835":1,"934":1,"1017":2,"1030":1,"1033":1,"1037":1,"1048":1,"1053":1,"1054":4,"1061":1,"1063":2,"1064":1,"1086":1,"1098":5,"1105":1,"1126":1,"1216":1,"1221":1,"1444":1,"1445":1,"1450":1,"1451":2,"1452":1,"1453":1,"1454":1,"1455":1,"1457":1,"1458":1,"1470":1,"1485":1,"1507":1,"1550":1,"1699":1,"1700":1,"1726":1,"1730":1,"1731":1,"1733":2,"1738":2,"1742":1,"1788":1,"1792":15,"1825":3,"1827":2,"1830":1,"1833":1,"1894":1,"1901":1,"1902":2,"1906":2,"1907":2,"1911":1,"2164":1,"2165":1,"2170":1,"2171":2,"2174":1,"2188":1,"2189":1,"2254":6,"2264":3,"2283":2,"2286":1,"2290":1,"2375":1,"2377":1,"2421":2,"2422":1,"2423":1,"2429":1,"2434":1,"2435":1,"2438":1,"2481":2,"2483":1,"2554":6,"2736":2,"2768":2}}],["beautifulsoup",{"2":{"1423":1}}],["beautiful",{"2":{"843":1,"913":1,"1435":1}}],["beautifully",{"2":{"838":1}}],["beats",{"2":{"1080":1}}],["beat",{"2":{"701":1}}],["being",{"2":{"165":1,"167":1,"171":1,"182":2,"186":1,"384":1,"527":1,"772":1,"841":1,"852":2,"855":1,"857":1,"860":1,"864":1,"868":1,"874":1,"988":1,"1080":1,"1100":1,"1398":1,"1404":1,"1435":1,"1568":1,"1664":2,"1792":3,"2278":1,"2291":2,"2293":1,"2322":1,"2342":1,"2348":1,"2352":1,"2367":1,"2384":1,"2395":1,"2405":1,"2438":1,"2482":1,"2517":1,"2558":1,"2622":1,"2641":1,"2645":1,"2751":1,"2882":1}}],["bet",{"2":{"1404":1}}],["better",{"0":{"2249":1,"2741":1},"2":{"88":1,"369":1,"841":1,"851":1,"873":1,"875":1,"876":1,"912":1,"920":1,"975":1,"1035":1,"1081":1,"1133":1,"1258":1,"1266":1,"1271":1,"1323":1,"1382":1,"1385":1,"1399":1,"1511":1,"1792":2,"1940":1,"2193":1,"2247":1,"2258":3,"2259":1,"2261":1,"2265":1,"2279":1,"2321":1,"2332":3,"2531":1,"2581":1,"2615":1,"2789":1}}],["between",{"2":{"88":1,"268":1,"372":1,"575":1,"840":1,"841":3,"843":1,"845":2,"847":1,"848":2,"851":2,"852":2,"854":2,"857":1,"860":1,"864":1,"865":2,"871":2,"913":1,"915":1,"973":1,"974":1,"978":1,"1070":1,"1073":2,"1075":1,"1079":1,"1090":1,"1111":1,"1152":1,"1169":1,"1179":1,"1180":1,"1183":1,"1254":1,"1259":2,"1263":1,"1272":1,"1385":1,"1387":1,"1394":2,"1396":1,"1399":1,"1401":2,"1405":1,"1590":1,"1623":1,"1792":1,"1938":1,"2172":1,"2179":1,"2265":2,"2319":1,"2531":1,"2731":1,"2845":1,"2846":1}}],["becoming",{"2":{"1384":1}}],["becomes",{"0":{"252":1,"941":1},"2":{"34":3,"286":1,"297":1,"298":2,"304":1,"317":1,"320":1,"388":1,"436":1,"529":1,"775":1,"841":1,"848":1,"856":1,"878":1,"900":1,"926":1,"948":1,"984":1,"998":1,"1020":1,"1037":1,"1040":2,"1042":1,"1080":1,"1086":1,"1164":1,"1305":1,"1309":1,"1382":1,"1405":2,"1435":1,"1459":1,"1559":1,"1571":1,"1792":7,"1842":1,"1862":1,"1968":1,"2004":2,"2040":1,"2098":1,"2143":1,"2157":1,"2180":1,"2185":1,"2330":1,"2375":1,"2389":1,"2466":1,"2481":2,"2482":1,"2484":1,"2539":1,"2540":1,"2543":1,"2588":1,"2721":1,"2723":1,"2760":1,"2764":1,"2828":1,"2840":1,"2850":1,"2873":1}}],["become",{"0":{"304":1},"1":{"305":1,"306":1},"2":{"34":2,"41":2,"113":1,"244":2,"934":2,"956":1,"1040":1,"1044":1,"1081":1,"1125":1,"1126":2,"1165":1,"1239":1,"1304":1,"1370":1,"1378":1,"1405":1,"1408":2,"1480":1,"1567":1,"1688":1,"1792":3,"1813":1,"1888":1,"2004":3,"2102":1,"2171":1,"2389":1,"2470":1,"2802":1,"2828":1,"2832":1,"2841":1,"2848":1,"2880":1}}],["became",{"2":{"1080":1,"1404":1}}],["because",{"2":{"1":1,"39":1,"305":1,"320":1,"377":1,"453":1,"584":1,"669":1,"836":1,"841":2,"843":1,"845":4,"848":1,"851":3,"852":5,"854":1,"857":4,"860":2,"861":1,"863":1,"865":1,"869":1,"871":3,"873":1,"874":1,"915":1,"971":1,"973":1,"992":1,"993":1,"997":1,"1007":1,"1042":1,"1045":1,"1067":1,"1078":2,"1079":2,"1080":1,"1096":1,"1128":1,"1139":1,"1153":1,"1176":1,"1324":1,"1363":1,"1376":1,"1382":2,"1384":1,"1385":2,"1386":2,"1390":1,"1392":1,"1395":1,"1396":1,"1397":1,"1398":1,"1419":1,"1426":1,"1792":2,"2095":1,"2106":1,"2154":1,"2156":2,"2187":1,"2267":1,"2333":1,"2337":1,"2362":1,"2395":1,"2398":2,"2410":1,"2445":1,"2450":1,"2454":1,"2461":1,"2466":1,"2481":1,"2537":1,"2569":1,"2645":1,"2648":1,"2739":1,"2795":1,"2809":1,"2868":1,"2869":1,"2875":1}}],["beforeroutinecommand",{"2":{"1852":1,"2383":1}}],["beforeroutinecommands",{"0":{"1852":1,"2383":1},"2":{"1070":3,"1102":2,"1792":1,"1850":2,"1852":1,"2383":1}}],["before",{"0":{"23":1,"562":1,"1332":1,"2367":1},"2":{"74":1,"78":1,"81":2,"84":1,"87":1,"88":1,"182":2,"184":2,"186":2,"202":1,"203":1,"211":2,"213":1,"216":1,"226":1,"237":2,"239":1,"280":1,"308":1,"320":1,"354":1,"362":1,"364":1,"384":1,"448":1,"529":3,"560":1,"562":1,"619":1,"687":1,"689":1,"694":1,"703":1,"704":1,"705":1,"709":1,"714":1,"717":1,"737":1,"747":1,"766":1,"768":1,"781":1,"786":1,"801":1,"807":2,"818":1,"834":1,"852":2,"854":1,"869":1,"879":1,"972":1,"981":1,"982":2,"1005":1,"1011":1,"1016":1,"1029":1,"1032":1,"1052":1,"1067":1,"1068":1,"1070":1,"1075":1,"1076":1,"1094":1,"1095":1,"1100":2,"1102":1,"1106":1,"1138":1,"1165":1,"1170":1,"1180":1,"1215":1,"1220":1,"1227":1,"1235":1,"1236":1,"1259":1,"1351":1,"1368":1,"1377":1,"1386":1,"1393":1,"1398":1,"1402":2,"1409":1,"1410":1,"1415":1,"1423":1,"1426":1,"1616":1,"1618":1,"1651":1,"1664":2,"1731":2,"1740":1,"1792":15,"1804":1,"1848":1,"1850":1,"1870":1,"1885":1,"1924":1,"1928":1,"1956":1,"1958":1,"2005":1,"2006":1,"2038":1,"2075":1,"2089":1,"2094":1,"2112":1,"2128":1,"2137":2,"2149":1,"2161":1,"2177":1,"2184":1,"2222":1,"2247":2,"2264":2,"2288":1,"2291":2,"2292":2,"2293":2,"2320":1,"2323":1,"2330":1,"2340":1,"2359":1,"2363":1,"2366":1,"2367":1,"2372":1,"2378":1,"2379":1,"2383":1,"2389":1,"2391":1,"2393":1,"2397":1,"2404":1,"2407":1,"2422":2,"2438":2,"2444":1,"2461":1,"2470":1,"2477":1,"2481":1,"2487":2,"2495":1,"2502":1,"2505":2,"2511":1,"2528":1,"2529":1,"2532":2,"2533":2,"2534":1,"2537":1,"2540":1,"2549":1,"2555":1,"2559":1,"2566":1,"2572":1,"2575":2,"2577":1,"2580":1,"2611":1,"2621":1,"2622":1,"2626":1,"2679":1,"2693":1,"2696":1,"2760":2,"2762":2,"2763":1,"2765":2,"2792":1,"2810":1,"2815":1,"2819":1,"2840":1,"2841":1,"2845":1,"2856":1,"2864":1,"2865":1,"2867":1,"2870":2,"2871":1}}],["be",{"0":{"395":1,"1430":1},"2":{"14":1,"40":2,"48":1,"60":1,"63":2,"75":1,"77":1,"119":1,"121":1,"157":1,"167":1,"173":1,"174":1,"182":1,"188":1,"206":2,"209":1,"212":1,"243":1,"244":1,"258":1,"309":1,"320":1,"336":1,"358":1,"362":1,"363":1,"366":1,"370":1,"373":1,"376":1,"377":1,"378":1,"382":1,"387":1,"390":2,"394":1,"409":2,"430":1,"458":1,"470":1,"480":1,"512":1,"529":1,"534":1,"556":1,"560":1,"587":1,"618":1,"619":1,"646":1,"653":1,"654":1,"655":1,"658":1,"660":1,"661":1,"662":2,"663":1,"673":2,"696":1,"704":1,"708":1,"709":1,"714":1,"718":1,"724":1,"737":1,"745":1,"761":1,"768":1,"771":1,"778":1,"784":1,"786":1,"801":1,"809":1,"816":3,"817":2,"819":1,"841":5,"844":1,"845":2,"848":6,"849":3,"851":5,"852":5,"854":2,"857":1,"859":4,"860":1,"861":1,"863":3,"864":2,"865":1,"867":1,"868":1,"869":2,"872":1,"873":1,"876":2,"877":1,"891":1,"903":1,"907":1,"911":1,"912":1,"913":1,"914":1,"915":3,"916":1,"918":4,"919":3,"920":2,"921":1,"926":2,"934":1,"946":1,"956":1,"974":3,"990":1,"992":2,"993":1,"994":2,"1013":3,"1023":1,"1026":1,"1033":1,"1038":1,"1042":1,"1049":1,"1052":2,"1055":1,"1064":1,"1073":3,"1075":1,"1077":2,"1078":1,"1098":2,"1101":1,"1106":1,"1107":1,"1113":1,"1125":1,"1129":2,"1132":1,"1133":2,"1134":1,"1138":1,"1140":1,"1185":1,"1187":1,"1204":1,"1237":1,"1254":1,"1272":1,"1318":1,"1335":1,"1340":1,"1360":1,"1382":1,"1385":4,"1386":2,"1388":1,"1390":3,"1391":1,"1393":3,"1394":3,"1395":2,"1396":2,"1398":3,"1399":3,"1400":3,"1401":4,"1402":5,"1403":5,"1404":3,"1405":5,"1406":1,"1409":2,"1412":2,"1419":2,"1443":1,"1445":1,"1448":1,"1449":1,"1453":1,"1454":1,"1457":1,"1458":1,"1459":1,"1460":4,"1464":1,"1490":1,"1504":1,"1511":5,"1517":2,"1547":1,"1559":1,"1569":1,"1571":1,"1588":1,"1607":1,"1609":1,"1620":2,"1628":2,"1644":1,"1651":1,"1659":1,"1661":1,"1664":1,"1689":1,"1697":1,"1703":1,"1706":1,"1708":1,"1717":1,"1727":2,"1731":1,"1738":1,"1759":1,"1767":1,"1792":129,"1818":1,"1822":1,"1832":1,"1833":1,"1837":1,"1840":1,"1843":1,"1849":1,"1851":1,"1852":1,"1855":1,"1856":1,"1858":1,"1867":3,"1887":1,"1909":1,"1912":1,"1915":1,"1922":1,"1925":1,"1948":1,"1951":1,"1952":1,"1953":1,"1954":1,"1955":1,"1958":1,"1961":1,"1983":1,"1994":1,"2000":1,"2008":1,"2016":4,"2018":2,"2019":1,"2020":1,"2021":1,"2025":1,"2047":1,"2049":1,"2056":1,"2072":1,"2079":1,"2094":1,"2103":1,"2105":1,"2110":1,"2128":1,"2138":1,"2139":1,"2140":3,"2142":3,"2144":3,"2145":1,"2146":6,"2148":2,"2149":1,"2185":1,"2192":1,"2195":1,"2207":1,"2220":1,"2245":1,"2250":1,"2253":1,"2254":2,"2256":5,"2257":2,"2258":2,"2264":1,"2265":4,"2266":2,"2267":1,"2277":1,"2282":2,"2284":1,"2291":2,"2296":1,"2297":2,"2308":1,"2330":1,"2333":1,"2334":1,"2340":1,"2375":6,"2376":1,"2378":1,"2379":1,"2382":1,"2383":1,"2384":1,"2391":1,"2395":1,"2428":1,"2433":1,"2454":1,"2456":1,"2483":1,"2484":2,"2486":1,"2500":1,"2520":1,"2528":1,"2531":2,"2532":2,"2533":1,"2537":1,"2539":1,"2540":2,"2549":1,"2554":3,"2565":1,"2575":8,"2581":1,"2596":1,"2611":1,"2615":1,"2632":4,"2633":2,"2650":1,"2653":1,"2659":1,"2662":1,"2666":1,"2670":1,"2677":1,"2678":1,"2680":1,"2681":1,"2687":2,"2695":1,"2719":1,"2736":1,"2750":1,"2761":1,"2765":1,"2769":1,"2779":1,"2792":2,"2798":1,"2803":1,"2814":1,"2821":1,"2822":1,"2823":1,"2845":1,"2848":1,"2864":1,"2868":1,"2870":1,"2881":2}}],["begintransactionasync",{"2":{"2615":1}}],["beginning",{"2":{"848":1,"912":1,"1073":1,"2192":1}}],["begin",{"0":{"2867":1},"2":{"7":1,"16":1,"18":1,"19":1,"20":1,"21":1,"37":2,"38":2,"39":2,"40":1,"48":1,"50":1,"60":1,"61":1,"62":1,"71":1,"72":1,"104":1,"115":1,"116":1,"117":1,"119":1,"128":1,"136":1,"137":1,"157":1,"184":1,"186":1,"206":1,"207":1,"208":1,"209":1,"247":1,"248":1,"249":1,"250":1,"254":1,"255":1,"256":1,"257":1,"264":1,"288":1,"289":1,"290":1,"291":1,"292":1,"310":2,"313":1,"332":1,"333":1,"334":1,"335":1,"360":1,"361":1,"365":1,"366":1,"374":1,"401":1,"405":1,"406":1,"408":2,"415":1,"423":1,"426":1,"427":1,"428":1,"436":1,"438":1,"439":1,"449":1,"451":2,"452":1,"453":1,"454":1,"466":1,"467":1,"468":1,"469":1,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"503":1,"510":1,"511":1,"520":1,"521":1,"523":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"584":2,"592":1,"593":1,"594":1,"611":1,"621":1,"622":2,"624":1,"641":1,"646":1,"658":1,"659":1,"664":2,"665":1,"677":1,"679":1,"715":1,"722":1,"723":1,"733":1,"734":1,"735":1,"736":1,"750":1,"751":1,"752":1,"755":1,"756":1,"764":2,"765":1,"766":1,"774":2,"777":1,"797":1,"798":1,"799":1,"811":1,"812":1,"813":1,"814":1,"815":1,"826":1,"835":1,"851":1,"864":1,"865":1,"879":1,"883":1,"884":1,"886":1,"888":1,"904":2,"914":2,"915":1,"916":3,"918":1,"928":1,"929":1,"930":1,"934":1,"935":1,"936":1,"956":1,"979":2,"980":2,"982":1,"986":1,"988":2,"989":1,"990":4,"991":1,"992":1,"994":2,"1021":1,"1029":1,"1054":2,"1055":1,"1056":2,"1057":1,"1058":1,"1060":1,"1070":2,"1074":1,"1076":1,"1102":1,"1105":3,"1113":1,"1135":1,"1138":1,"1139":1,"1141":1,"1142":1,"1149":1,"1179":2,"1188":1,"1192":1,"1197":1,"1214":1,"1215":1,"1216":1,"1232":1,"1234":1,"1235":1,"1236":1,"1239":1,"1308":1,"1309":1,"1310":1,"1321":1,"1331":1,"1332":1,"1337":1,"1338":1,"1339":1,"1345":2,"1347":1,"1348":1,"1357":1,"1362":1,"1368":1,"1372":2,"1376":2,"1393":1,"1394":1,"1395":4,"1396":2,"1419":1,"1427":1,"1431":1,"1442":1,"1504":1,"1547":1,"1632":1,"1655":2,"1689":1,"1727":1,"1736":1,"1742":1,"1745":1,"1792":2,"1850":1,"1852":1,"1920":1,"1921":1,"1924":1,"1926":1,"1973":1,"1974":1,"2076":1,"2078":1,"2079":1,"2147":1,"2264":1,"2283":1,"2290":1,"2292":1,"2293":1,"2303":1,"2304":1,"2337":2,"2338":1,"2342":2,"2343":1,"2346":1,"2382":1,"2383":1,"2526":1,"2527":2,"2528":1,"2545":1,"2549":3,"2572":1,"2575":1,"2580":2,"2762":1,"2766":1,"2775":1,"2802":1,"2809":1,"2810":1,"2812":1,"2815":1,"2822":1,"2829":2,"2834":3,"2836":1,"2841":1,"2851":1,"2855":1,"2860":1,"2862":2,"2864":1,"2867":2,"2881":1}}],["byschema",{"0":{"1577":1},"2":{"1416":1,"1417":1,"1553":1,"1554":2,"1577":1,"1580":1,"1581":1,"1792":2}}],["byconnectionname",{"2":{"1174":1,"1176":1,"1177":1,"1617":1,"1628":1,"1629":1,"1792":1,"2266":1}}],["byproduct",{"2":{"873":2}}],["bypassed",{"2":{"1326":1,"2223":1,"2495":1,"2645":1,"2767":1}}],["bypasses",{"2":{"106":1,"1792":1,"2346":1,"2481":1}}],["bypassauthenticated",{"2":{"1069":1,"1101":1,"1162":2,"1792":3,"1955":1,"1956":1,"1957":1,"1959":1,"2379":3,"2443":1,"2471":1}}],["bypassing",{"0":{"927":1},"1":{"928":1,"929":1,"930":1},"2":{"1066":1,"1385":1,"1822":1,"1824":1}}],["bypass",{"2":{"101":1,"108":1,"421":1,"445":1,"1067":2,"1101":2,"1150":2,"1398":1,"1519":2,"1523":1,"1524":1,"1525":1,"1529":1,"1746":1,"1792":1,"1929":1,"2347":1,"2380":2,"2840":1}}],["byte",{"0":{"927":1},"1":{"928":1,"929":1,"930":1},"2":{"308":1,"848":1,"921":1,"927":1,"928":1,"944":1,"948":2,"969":1,"1049":1,"2309":1,"2399":2,"2400":2,"2484":2,"2495":1,"2535":1,"2543":2,"2873":1}}],["bytesio",{"2":{"1366":1}}],["bytes",{"2":{"308":1,"747":2,"748":1,"762":1,"772":1,"848":1,"1214":5,"1232":5,"1234":1,"1235":1,"1358":1,"1410":1,"1412":2,"1511":1,"1792":11,"1804":1,"1882":3,"1885":1,"1991":1,"2125":1,"2177":1,"2309":1,"2399":1}}],["bytearraycontent",{"2":{"2309":1}}],["bytea",{"2":{"73":1,"585":1,"722":1,"1213":4,"1214":2,"1215":3,"1216":1,"1220":1,"1221":1,"1222":1,"1232":2,"1234":1,"1235":3,"1236":5,"1237":3,"1239":2,"1362":1,"1412":2,"1792":6,"1885":1,"1886":2,"1887":3,"1888":1}}],["by",{"0":{"19":1,"20":1,"107":1,"116":1,"180":1,"394":1,"1142":1,"1251":1,"1264":1,"1306":1,"1390":1,"2351":1,"2353":1,"2395":1,"2410":2,"2441":2,"2445":1},"1":{"1307":1,"1308":1,"1309":1,"1310":1,"2411":2,"2412":2,"2413":2,"2442":2,"2443":2,"2444":2},"2":{"0":1,"1":1,"2":1,"13":1,"33":1,"62":1,"64":1,"74":2,"75":1,"108":2,"109":1,"140":1,"168":1,"175":1,"176":1,"177":1,"179":1,"180":1,"181":1,"182":1,"188":1,"212":2,"223":1,"239":1,"251":1,"263":1,"297":1,"299":1,"300":1,"302":1,"320":1,"330":1,"334":2,"336":1,"337":1,"352":1,"356":1,"369":2,"382":1,"386":1,"390":1,"394":1,"395":1,"436":2,"448":3,"453":1,"454":1,"462":1,"463":1,"464":1,"511":1,"527":1,"528":2,"529":2,"531":2,"534":1,"559":1,"609":1,"638":1,"639":1,"652":1,"663":1,"668":1,"688":2,"689":1,"693":1,"694":1,"696":1,"698":1,"699":1,"703":1,"708":2,"713":1,"801":1,"816":1,"826":1,"834":2,"835":2,"836":1,"841":1,"843":1,"844":2,"848":1,"851":3,"852":3,"854":1,"859":2,"860":3,"861":4,"863":2,"864":1,"865":3,"868":2,"869":1,"872":1,"873":1,"875":1,"876":2,"878":1,"888":2,"914":3,"915":1,"916":3,"918":2,"919":3,"920":1,"928":1,"932":2,"936":1,"938":1,"946":1,"948":1,"949":1,"966":1,"974":1,"975":1,"976":1,"992":1,"1005":4,"1013":1,"1016":1,"1037":2,"1038":2,"1040":1,"1042":1,"1043":1,"1046":1,"1049":1,"1054":1,"1060":2,"1063":1,"1066":2,"1067":1,"1069":1,"1071":1,"1079":2,"1096":2,"1097":2,"1098":3,"1099":3,"1100":1,"1101":1,"1102":2,"1105":1,"1106":2,"1121":1,"1134":1,"1138":1,"1140":1,"1157":1,"1164":1,"1170":1,"1174":2,"1177":1,"1181":2,"1187":1,"1188":2,"1189":1,"1191":1,"1192":4,"1197":1,"1210":1,"1220":2,"1235":1,"1241":1,"1243":1,"1283":1,"1285":2,"1305":1,"1310":1,"1324":1,"1329":1,"1349":1,"1357":1,"1373":2,"1375":1,"1377":1,"1378":1,"1382":2,"1385":2,"1386":3,"1390":3,"1393":1,"1394":3,"1395":1,"1396":1,"1398":2,"1401":1,"1402":1,"1403":1,"1404":1,"1414":4,"1417":1,"1423":1,"1429":1,"1448":1,"1449":1,"1458":2,"1477":1,"1487":1,"1504":3,"1520":1,"1527":1,"1559":1,"1569":1,"1571":1,"1574":1,"1576":1,"1592":1,"1618":1,"1621":1,"1639":1,"1641":1,"1664":1,"1697":1,"1717":1,"1738":1,"1743":1,"1757":1,"1759":1,"1766":1,"1767":1,"1768":1,"1792":72,"1813":1,"1823":1,"1833":1,"1839":1,"1844":1,"1849":1,"1852":1,"1856":1,"1858":1,"1870":2,"1885":1,"1890":1,"1912":1,"1915":1,"1922":2,"1923":1,"1924":2,"1937":1,"1940":1,"1941":1,"1948":2,"1949":1,"1958":3,"1961":6,"1969":1,"1972":2,"1973":1,"1974":2,"1989":1,"2017":1,"2018":1,"2021":1,"2035":1,"2062":1,"2072":1,"2075":1,"2077":1,"2094":1,"2106":3,"2107":2,"2108":1,"2111":3,"2112":1,"2118":1,"2142":1,"2153":1,"2155":2,"2156":2,"2157":1,"2164":2,"2165":1,"2171":1,"2175":3,"2178":1,"2183":1,"2184":1,"2191":1,"2194":1,"2202":1,"2221":3,"2222":2,"2224":1,"2225":3,"2226":1,"2252":1,"2253":1,"2257":1,"2258":3,"2264":2,"2265":1,"2266":1,"2274":1,"2282":1,"2284":4,"2291":2,"2296":1,"2314":3,"2320":1,"2325":1,"2329":1,"2334":1,"2338":1,"2343":1,"2344":1,"2347":1,"2353":1,"2366":3,"2369":2,"2372":3,"2375":1,"2378":1,"2380":1,"2383":1,"2384":1,"2389":1,"2397":1,"2399":1,"2404":1,"2405":1,"2411":1,"2412":1,"2423":1,"2424":1,"2425":1,"2429":1,"2437":1,"2438":2,"2440":2,"2442":1,"2444":1,"2450":2,"2452":1,"2453":1,"2454":1,"2455":1,"2464":3,"2465":3,"2470":1,"2481":2,"2482":4,"2484":1,"2489":1,"2490":3,"2494":1,"2495":1,"2500":1,"2502":1,"2504":2,"2515":1,"2518":2,"2523":3,"2528":1,"2532":4,"2533":1,"2534":1,"2536":1,"2537":4,"2538":1,"2539":1,"2540":2,"2541":1,"2542":1,"2543":3,"2545":2,"2546":2,"2549":1,"2558":1,"2575":1,"2587":1,"2607":2,"2611":1,"2621":1,"2626":1,"2632":2,"2634":1,"2648":1,"2650":1,"2659":1,"2667":1,"2679":1,"2684":1,"2687":1,"2688":2,"2703":1,"2712":1,"2713":1,"2719":2,"2721":1,"2722":1,"2723":1,"2725":1,"2794":1,"2797":1,"2802":2,"2804":1,"2806":1,"2812":2,"2818":1,"2822":1,"2824":3,"2825":1,"2828":2,"2829":1,"2830":1,"2831":1,"2833":1,"2836":1,"2840":1,"2841":1,"2842":1,"2845":2,"2850":1,"2863":1,"2868":3,"2871":1,"2874":1,"2877":1,"2878":1,"2879":3,"2880":1,"2881":2}}],["svg",{"2":{"1943":1}}],["svg+xml",{"2":{"1792":1,"1936":1,"1943":1}}],["sveltekit",{"0":{"1581":1},"2":{"1416":1,"1574":1}}],["svelte",{"2":{"867":1}}],["srp",{"2":{"1184":1}}],["sr",{"2":{"1184":2,"1185":1}}],["src=",{"2":{"1412":1}}],["src",{"2":{"937":1,"976":1,"998":1,"1062":1,"1408":2,"1409":1,"1412":1,"1416":1,"1417":1,"1418":4,"1570":1,"1571":1,"1577":4,"1579":1,"1580":1,"1581":2,"1582":1,"1792":3,"2020":10,"2028":1,"2029":6,"2632":3}}],["sdks",{"2":{"1111":1}}],["sdk",{"2":{"1008":1,"2792":1}}],["sniffing",{"2":{"1792":1,"2016":1,"2017":1,"2632":2}}],["snapshots",{"2":{"1205":1}}],["snapshot",{"2":{"855":1,"864":1,"872":2}}],["snake",{"2":{"407":1,"995":1,"1408":1,"1567":1,"2724":1}}],["snowflake",{"2":{"834":1,"837":1,"848":1}}],["s3",{"2":{"650":1,"833":1}}],["s2",{"2":{"650":1,"833":1}}],["s1",{"2":{"650":1,"833":1}}],["sweep",{"2":{"2532":1}}],["sweet",{"2":{"1073":1}}],["swoole",{"0":{"1262":1,"1274":1},"2":{"1007":1,"1090":1,"1091":2,"1255":1,"1257":3,"1262":3,"1264":2,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1274":1,"1277":1,"1278":1,"1279":2,"1280":1,"1281":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["swarm",{"2":{"1762":1,"1792":1,"2634":2}}],["swashbuckle",{"2":{"869":2,"873":1}}],["swapping",{"2":{"1385":1}}],["swapped",{"2":{"860":1,"2106":1,"2537":1}}],["swap",{"2":{"848":1,"873":1,"874":1}}],["swagger",{"2":{"352":2,"835":1,"868":1,"869":1,"1095":1,"1789":1,"1796":1,"2430":1,"2432":2,"2438":1}}],["switched",{"2":{"2457":1,"2761":1}}],["switches",{"2":{"439":1,"696":1,"1070":1,"1102":1,"2798":1}}],["switching",{"2":{"848":1,"960":1,"1169":2,"1170":1,"2089":1,"2265":1}}],["switch",{"2":{"214":1,"838":1,"848":1,"1224":1,"1609":1,"1722":1,"1792":2,"1850":1,"2007":1,"2157":1,"2328":1,"2382":1,"2389":1,"2502":1,"2543":1,"2660":1,"2662":2,"2685":1,"2693":1,"2769":1}}],["skew",{"2":{"1792":1}}],["sku",{"2":{"898":2}}],["skimmed",{"2":{"1382":1}}],["skills",{"2":{"1401":1}}],["skill",{"2":{"876":1,"1401":2}}],["skiptypes",{"0":{"2360":1},"2":{"1553":1,"1559":2,"1571":1,"1580":1,"1792":2,"2360":3,"2484":1}}],["skipfunctionnames",{"2":{"1553":1,"1562":1,"1792":1}}],["skiproutinenames",{"2":{"1553":1,"1562":1,"1792":1}}],["skipnonquerycommands",{"0":{"624":1,"2341":1,"2342":1},"1":{"2342":1,"2343":1},"2":{"624":3,"626":1,"1792":1,"2342":3,"2343":1,"2841":1,"2851":1}}],["skippattern",{"0":{"2539":1},"2":{"1792":2,"2095":1,"2114":1,"2157":1,"2221":1,"2538":2,"2539":4,"2543":1,"2722":2,"2859":1,"2861":1}}],["skippaths",{"2":{"1553":1,"1562":1,"1792":1}}],["skipping",{"0":{"621":1,"622":1,"896":1},"2":{"624":2,"975":1,"1974":1,"2337":1,"2607":1}}],["skipped",{"2":{"320":1,"384":1,"586":1,"587":3,"625":3,"639":1,"720":1,"876":1,"1360":1,"1431":1,"1521":1,"1527":3,"1792":6,"1917":1,"1925":1,"1957":1,"2018":1,"2111":1,"2222":1,"2250":1,"2256":1,"2337":2,"2342":1,"2367":2,"2372":1,"2379":1,"2380":1,"2384":1,"2421":1,"2432":1,"2481":1,"2482":1,"2490":1,"2517":1,"2523":1,"2527":1,"2532":1,"2535":1,"2540":1,"2569":1,"2632":2,"2656":1,"2721":1,"2722":1,"2799":1,"2812":1,"2841":1,"2851":1,"2862":1}}],["skipschemas",{"2":{"1553":1,"1562":1,"1792":1}}],["skips",{"0":{"2367":1},"2":{"582":1,"587":1,"865":1,"1007":1,"1403":1,"1412":1,"1413":1,"1489":1,"1792":3,"2097":1,"2112":1,"2328":1,"2337":1,"2412":1,"2414":1,"2443":1,"2532":1,"2534":1,"2537":1,"2817":1,"2838":1,"2854":1}}],["skip",{"0":{"618":1,"1524":1,"1562":1,"2337":1,"2341":1,"2343":2,"2854":1},"1":{"619":1,"620":1,"621":1,"622":1,"623":1,"624":1,"625":1,"626":1,"2342":1,"2343":1},"2":{"107":1,"108":1,"123":1,"230":1,"238":2,"560":1,"568":1,"581":1,"584":2,"586":1,"587":1,"618":1,"619":3,"621":1,"622":2,"623":1,"624":3,"668":1,"704":2,"722":1,"826":1,"830":1,"888":1,"896":1,"1067":2,"1069":1,"1101":1,"1121":1,"1150":2,"1254":1,"1318":1,"1328":1,"1338":1,"1376":3,"1398":1,"1399":1,"1415":1,"1523":1,"1524":1,"1525":1,"1526":1,"1529":1,"1554":1,"1559":1,"1562":4,"1568":1,"1575":1,"1792":20,"1898":2,"1956":1,"2007":4,"2094":2,"2103":1,"2106":1,"2153":1,"2254":2,"2328":2,"2330":1,"2337":2,"2338":1,"2340":1,"2343":2,"2379":1,"2380":7,"2447":1,"2489":1,"2525":1,"2537":4,"2540":1,"2543":1,"2566":1,"2722":1,"2815":1,"2840":1,"2841":1,"2852":2,"2853":1,"2855":1,"2857":1,"2859":1,"2874":1}}],["sk",{"2":{"187":2,"2294":2}}],["ssd",{"2":{"1255":1}}],["ss",{"2":{"776":2,"889":2,"892":2,"963":1,"1792":7,"1800":1,"1809":2,"1810":1,"1917":1,"2077":1,"2094":1,"2101":1,"2123":2,"2130":4,"2156":1,"2537":1,"2542":1,"2652":1,"2814":1}}],["ssns",{"2":{"1382":1}}],["ssn",{"2":{"184":18,"186":4,"1100":1,"1664":1,"2291":1,"2292":12,"2293":4}}],["ssetestclient",{"2":{"2407":1}}],["sseresponseheaders",{"2":{"2249":1}}],["sse|",{"2":{"663":1}}],["sse",{"0":{"627":1,"636":1,"649":1,"652":1,"658":1,"659":1,"1305":1,"1309":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1323":1,"1372":1,"1573":1,"2249":1,"2362":1,"2391":3,"2392":1,"2393":1,"2490":1,"2827":1,"2828":1},"1":{"628":1,"629":1,"630":1,"631":1,"632":1,"633":1,"634":1,"635":1,"637":1,"638":1,"639":1,"640":1,"641":1,"642":1,"643":1,"644":1,"645":1,"646":1,"647":1,"648":1,"650":1,"651":1,"652":1,"653":2,"654":2,"655":1,"656":1,"657":1,"658":1,"659":1,"660":1,"661":1,"662":1,"663":1,"664":1,"665":1,"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"672":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1},"2":{"162":11,"233":5,"627":1,"628":2,"631":2,"632":2,"633":2,"634":1,"635":2,"636":1,"637":5,"639":1,"641":4,"642":2,"643":2,"644":2,"645":3,"646":2,"647":1,"648":2,"649":3,"650":9,"651":3,"652":2,"653":5,"654":3,"656":4,"658":2,"659":1,"660":2,"661":2,"662":5,"663":3,"664":6,"665":6,"666":2,"667":1,"668":2,"669":3,"670":1,"671":2,"672":1,"720":2,"726":2,"837":1,"868":1,"869":3,"877":1,"1035":1,"1036":1,"1103":1,"1121":1,"1126":1,"1127":1,"1302":2,"1304":2,"1305":7,"1309":9,"1311":1,"1312":2,"1313":4,"1314":2,"1315":2,"1317":2,"1318":1,"1321":2,"1323":2,"1325":3,"1327":2,"1351":1,"1368":1,"1372":5,"1377":1,"1415":1,"1416":4,"1573":2,"1581":1,"1792":9,"1824":1,"1848":1,"1857":3,"1858":4,"1859":1,"1860":4,"1861":5,"1864":1,"2107":1,"2164":2,"2165":1,"2223":2,"2226":5,"2240":1,"2247":9,"2249":5,"2250":1,"2251":3,"2252":17,"2270":1,"2278":1,"2314":2,"2323":1,"2329":1,"2362":3,"2388":1,"2391":13,"2392":10,"2393":1,"2406":2,"2407":2,"2481":2,"2490":4,"2498":1,"2529":1,"2537":1,"2591":1,"2802":1,"2827":4,"2828":5,"2829":7,"2830":2,"2831":7,"2832":5,"2834":8,"2835":7,"2836":4,"2837":1,"2838":4,"2856":2,"2865":1,"2879":1,"2881":1}}],["ssl=false",{"2":{"1146":1,"1510":1,"1514":1,"1792":1}}],["ssl=true",{"2":{"1067":2,"1534":1}}],["sslrequirement",{"2":{"64":1,"1199":2,"1469":1,"1482":1,"1498":1,"1499":1,"1502":1,"1503":1,"1505":1,"1792":1}}],["ssl",{"0":{"64":1,"1198":1,"1500":1,"1978":1,"1979":1},"1":{"1199":1,"1979":1,"1980":2,"1981":2,"1982":2,"1983":2,"1984":1,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1,"1995":1,"1996":1,"1997":1},"2":{"64":2,"1037":1,"1183":1,"1185":1,"1198":1,"1199":2,"1204":1,"1207":1,"1208":1,"1466":1,"1499":1,"1500":2,"1611":1,"1616":2,"1633":2,"1635":1,"1648":1,"1666":1,"1718":1,"1787":1,"1792":2,"1794":1,"1812":1,"1946":1,"1963":1,"1978":1,"1979":2,"1981":2,"1985":1,"1995":2,"2091":1,"2121":1,"2558":1,"2701":2,"2706":1}}],["symptom",{"2":{"2428":1,"2452":1}}],["symbol",{"2":{"876":1,"1409":1}}],["synthetic",{"2":{"2422":1,"2435":1,"2527":1}}],["syntaxes",{"2":{"2193":2,"2581":1,"2591":1}}],["syntax",{"0":{"5":1,"14":1,"30":1,"45":1,"56":1,"69":1,"79":1,"92":1,"102":1,"113":1,"126":1,"133":1,"145":1,"155":1,"166":1,"173":1,"179":1,"184":1,"186":1,"193":1,"203":1,"243":1,"262":1,"268":1,"283":1,"318":1,"329":1,"340":1,"348":1,"358":1,"370":1,"375":1,"378":1,"399":1,"413":1,"434":1,"459":1,"474":1,"485":1,"498":1,"508":1,"516":1,"528":1,"537":1,"550":1,"560":1,"564":1,"570":1,"582":1,"590":1,"599":1,"608":1,"619":1,"628":1,"637":1,"651":1,"674":1,"685":1,"694":1,"700":1,"704":1,"709":1,"714":1,"719":1,"730":1,"745":1,"795":1,"809":1,"824":1,"1017":1,"1740":1,"2196":1,"2200":1,"2288":1,"2301":1,"2662":1,"2692":1},"1":{"319":1},"2":{"79":1,"133":1,"158":1,"159":1,"162":1,"221":1,"253":1,"395":1,"404":1,"408":1,"493":1,"544":1,"570":1,"637":1,"680":1,"692":1,"725":1,"780":1,"790":1,"843":1,"852":1,"876":1,"916":1,"918":1,"926":1,"1010":1,"1017":1,"1037":1,"1078":1,"1086":1,"1382":1,"1398":1,"1464":1,"1580":1,"1582":1,"1605":1,"1607":1,"1608":1,"1609":1,"1664":1,"1665":1,"1792":8,"1809":1,"1909":1,"2007":1,"2040":1,"2094":1,"2155":1,"2193":2,"2210":1,"2252":2,"2272":1,"2277":1,"2283":1,"2328":1,"2333":1,"2340":1,"2358":1,"2360":1,"2365":1,"2376":1,"2431":1,"2476":1,"2497":1,"2519":1,"2529":1,"2531":1,"2533":1,"2575":1,"2581":3,"2591":1,"2597":1,"2662":1,"2665":1,"2667":1,"2671":1,"2673":1,"2681":1,"2687":1,"2688":1,"2691":1,"2694":1,"2705":1,"2763":1,"2785":2,"2841":1,"2848":1,"2865":1}}],["synonymous",{"2":{"863":2,"864":1}}],["synonym",{"2":{"860":1}}],["synced",{"2":{"1237":1,"1792":1,"1887":1}}],["synchronously",{"2":{"2106":1,"2112":1,"2532":1,"2537":1,"2559":1}}],["synchronous",{"2":{"1106":1,"1107":1,"1126":1,"1167":3,"1170":1,"1994":1,"2087":1,"2459":1}}],["synchronized",{"2":{"1008":1}}],["synchronization",{"2":{"973":1,"1000":1,"1008":1}}],["synctimeout=5000",{"2":{"1067":1,"1510":1,"1514":1,"1792":1}}],["sync",{"2":{"834":1,"845":1,"869":1,"871":1,"1006":1,"1038":1,"1094":1,"1104":1,"1422":1,"2324":1,"2840":1}}],["systems",{"2":{"841":1,"843":1,"845":3,"852":1,"948":2,"994":1,"1105":1,"1151":1,"1203":1,"1205":1,"1206":1,"1209":1,"1220":1,"1394":1,"1762":1,"1792":1,"2576":2,"2634":2,"2779":4,"2790":1}}],["system",{"0":{"754":1,"757":1,"784":1,"1352":1,"1363":1,"1595":1,"1654":1,"2127":1,"2438":1},"1":{"755":1,"756":1,"757":1,"758":1,"785":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1},"2":{"157":6,"267":1,"296":1,"393":2,"576":1,"645":1,"646":2,"746":3,"747":2,"748":2,"754":1,"755":1,"756":1,"757":11,"758":1,"777":1,"784":15,"785":2,"791":1,"841":2,"843":3,"847":1,"851":1,"857":2,"859":1,"860":2,"861":1,"867":1,"902":1,"903":1,"904":1,"921":1,"926":1,"933":1,"947":1,"948":1,"966":1,"967":1,"973":1,"1005":1,"1037":3,"1044":1,"1046":1,"1048":2,"1054":1,"1064":2,"1099":1,"1126":1,"1204":1,"1206":2,"1254":1,"1316":1,"1324":1,"1327":1,"1329":1,"1352":1,"1353":1,"1354":1,"1356":1,"1357":1,"1358":8,"1359":2,"1360":1,"1363":1,"1364":1,"1365":1,"1366":2,"1368":1,"1382":1,"1385":1,"1403":5,"1405":2,"1453":1,"1457":1,"1472":1,"1595":1,"1651":1,"1663":1,"1754":2,"1792":15,"1800":1,"1802":3,"1804":1,"1810":1,"2049":1,"2072":1,"2086":4,"2122":1,"2123":1,"2125":1,"2127":4,"2132":2,"2134":1,"2164":1,"2165":1,"2185":2,"2190":1,"2247":1,"2255":1,"2265":1,"2394":1,"2422":1,"2481":1,"2535":1,"2554":1,"2580":1,"2628":1,"2635":1,"2650":1,"2664":1,"2775":1,"2782":1,"2783":1,"2784":1,"2786":1,"2795":2,"2804":1,"2833":1,"2869":1}}],["slug",{"2":{"2146":2}}],["sleep",{"2":{"1259":1,"2875":1}}],["sleeps",{"2":{"859":1}}],["slate",{"2":{"989":1,"1070":1}}],["slots",{"2":{"1328":2,"2459":1}}],["slot",{"2":{"865":1,"1014":1,"1161":1,"2466":1}}],["slogan",{"2":{"863":1}}],["slowapi",{"2":{"869":1}}],["slowly",{"2":{"863":1,"1164":1,"1430":1}}],["slower",{"2":{"308":1,"803":1,"861":1,"1382":1,"1792":1,"1938":1,"2245":1,"2274":1,"2789":1}}],["slow",{"2":{"138":1,"277":1,"710":2,"711":1,"993":1,"994":1,"1005":1,"1132":1,"1768":1,"1792":2,"1958":1,"2402":1,"2466":1,"2470":1,"2537":2,"2545":1,"2615":1,"2634":1,"2815":1,"2873":1}}],["slipped",{"2":{"2413":1}}],["slips",{"2":{"1436":1}}],["sliding",{"0":{"1159":1,"1952":1},"2":{"1101":1,"1159":1,"1163":1,"1792":2,"1950":1,"1952":3,"1960":1,"2257":2,"2378":2,"2438":1,"2442":1}}],["slidingwindow",{"2":{"478":1,"480":1,"868":1,"1159":1,"1177":1,"1245":1,"1792":2,"1893":1,"1950":1,"1952":2,"1960":1,"2257":2,"2378":2,"2443":1}}],["slide",{"2":{"1037":1,"1382":2,"1383":1}}],["slides",{"2":{"1037":1,"1381":1,"1383":1}}],["slices",{"2":{"2546":1}}],["slice",{"2":{"869":1,"873":1,"961":1,"2398":1,"2540":2,"2845":2}}],["slightly",{"2":{"803":2,"1398":1,"2184":1}}],["slight",{"2":{"87":1,"88":1}}],["smoother",{"2":{"1159":1}}],["smoke",{"2":{"709":2,"710":3,"2097":1,"2167":1,"2537":1,"2545":1}}],["smeared",{"2":{"848":1}}],["smart",{"2":{"291":2,"1402":1}}],["smallestsize",{"2":{"1792":1,"1937":1,"1938":1,"1944":1}}],["smaller",{"2":{"869":1,"876":1,"1401":1}}],["small>",{"2":{"996":1}}],["small>$",{"2":{"996":1}}],["smallint",{"2":{"301":1}}],["small",{"0":{"86":1},"2":{"75":1,"84":1,"88":1,"307":1,"871":1,"872":2,"873":1,"1037":1,"1042":1,"1044":1,"1068":1,"1130":1,"1133":1,"1164":1,"1174":1,"1389":2,"1392":1,"1403":1,"1405":1,"1419":1,"1431":1,"1459":1,"1792":1,"1925":1,"2157":1,"2177":1,"2270":1,"2375":1,"2393":1,"2399":1,"2440":1,"2521":1,"2543":1,"2604":1,"2621":1,"2812":1,"2828":1}}],["smith",{"2":{"128":1,"489":1,"493":1,"643":1,"646":1,"913":1,"919":2,"1375":1}}],["sample",{"2":{"1792":1,"2125":1}}],["sameorigin",{"2":{"1792":4,"2016":1,"2018":2,"2029":1,"2632":2}}],["sameasrequest",{"2":{"1447":2,"1792":2,"2425":1,"2426":1,"2427":1,"2436":1}}],["samesite=strict",{"2":{"2438":1}}],["samesite=none",{"2":{"1447":1,"1792":1,"2428":2,"2429":1,"2435":1,"2438":1}}],["samesitemode",{"2":{"2435":1}}],["samesite",{"2":{"1447":1,"1792":2,"2425":1,"2436":2}}],["same",{"0":{"563":1,"988":1,"1178":1},"2":{"1":1,"32":1,"43":1,"74":1,"108":2,"213":1,"214":2,"279":1,"306":1,"308":1,"316":1,"319":1,"347":1,"364":1,"366":1,"388":1,"390":2,"395":1,"414":1,"421":1,"422":1,"423":1,"430":1,"436":2,"445":1,"515":2,"517":2,"529":1,"541":1,"560":2,"563":2,"587":2,"619":2,"636":1,"639":1,"646":1,"650":2,"659":2,"665":1,"666":1,"669":1,"687":1,"690":1,"696":1,"700":1,"712":1,"720":2,"724":1,"814":1,"831":2,"832":1,"834":1,"835":1,"836":3,"838":2,"841":2,"843":1,"844":2,"845":5,"847":1,"848":18,"852":3,"855":1,"860":1,"861":1,"863":1,"864":2,"865":2,"868":1,"871":3,"872":2,"873":1,"874":3,"875":1,"884":2,"902":1,"904":1,"915":2,"925":1,"957":1,"959":1,"966":1,"974":1,"975":1,"988":1,"990":1,"1005":2,"1017":1,"1038":1,"1041":1,"1043":1,"1045":2,"1046":1,"1052":1,"1054":1,"1060":1,"1067":2,"1068":2,"1070":3,"1073":1,"1076":1,"1078":1,"1082":1,"1086":1,"1096":1,"1102":1,"1105":1,"1108":1,"1126":1,"1129":8,"1135":5,"1148":2,"1150":2,"1154":1,"1175":1,"1176":1,"1178":1,"1179":2,"1193":4,"1205":1,"1233":1,"1238":2,"1255":3,"1281":1,"1304":1,"1305":1,"1326":2,"1327":1,"1328":1,"1343":2,"1349":1,"1366":1,"1367":1,"1368":1,"1370":1,"1371":1,"1374":1,"1382":3,"1385":2,"1386":1,"1394":2,"1398":2,"1407":1,"1408":1,"1410":2,"1421":1,"1422":2,"1424":1,"1429":1,"1433":1,"1436":1,"1438":1,"1440":1,"1441":2,"1442":1,"1447":1,"1504":1,"1511":1,"1518":3,"1522":3,"1559":1,"1567":1,"1570":1,"1684":1,"1686":1,"1688":1,"1689":2,"1696":1,"1733":1,"1740":1,"1741":1,"1743":2,"1744":1,"1792":36,"1823":1,"1824":1,"1825":1,"1830":1,"1850":1,"1851":1,"1856":2,"1862":1,"1883":1,"1888":1,"1911":1,"1923":1,"1929":1,"1961":3,"2018":1,"2019":7,"2021":1,"2023":3,"2024":1,"2025":5,"2029":2,"2038":1,"2040":2,"2095":2,"2096":1,"2098":2,"2106":1,"2107":1,"2111":2,"2155":1,"2156":2,"2157":1,"2175":1,"2182":1,"2193":1,"2202":1,"2224":1,"2256":1,"2264":1,"2265":5,"2284":1,"2288":1,"2289":1,"2304":1,"2308":1,"2320":3,"2321":3,"2325":1,"2327":1,"2329":1,"2340":2,"2346":2,"2347":1,"2356":1,"2375":1,"2380":4,"2382":1,"2383":1,"2385":1,"2389":3,"2391":2,"2398":1,"2400":1,"2411":1,"2413":1,"2414":1,"2415":1,"2423":1,"2425":1,"2427":2,"2431":2,"2434":1,"2438":1,"2440":2,"2442":1,"2445":3,"2446":1,"2450":1,"2451":3,"2452":1,"2453":1,"2457":1,"2461":1,"2466":1,"2468":1,"2472":1,"2476":2,"2481":2,"2483":1,"2484":1,"2486":1,"2493":1,"2500":1,"2502":3,"2504":3,"2509":2,"2510":1,"2518":1,"2523":1,"2529":1,"2531":1,"2533":2,"2534":5,"2535":1,"2537":4,"2539":1,"2540":4,"2542":3,"2543":1,"2545":1,"2550":1,"2586":1,"2589":1,"2590":1,"2597":2,"2632":9,"2648":1,"2666":1,"2722":1,"2727":2,"2731":1,"2765":1,"2779":1,"2791":1,"2792":1,"2811":1,"2828":1,"2830":1,"2833":1,"2834":1,"2845":2,"2851":1,"2852":1,"2856":1,"2857":1,"2869":1,"2871":3,"2872":1,"2878":1}}],["satisfies",{"2":{"1386":1}}],["satisfy",{"2":{"1075":1,"1832":1}}],["saving",{"2":{"872":1,"873":2,"1141":1}}],["savings",{"2":{"868":1,"869":1,"871":2,"873":1,"911":1,"1027":1,"1322":1}}],["savepoint",{"2":{"2342":1}}],["savechangesasync",{"2":{"1366":1}}],["save",{"2":{"844":1,"849":2,"851":1,"854":3,"876":1,"904":1,"920":1,"1037":1,"1073":1,"1076":1,"1080":4,"1320":1,"1366":7,"1401":2,"1405":1,"1407":2,"2543":1,"2664":1,"2878":1}}],["saved",{"0":{"872":1,"873":1,"1181":1},"2":{"157":1,"748":1,"872":2,"903":1,"1181":1}}],["sagas",{"2":{"865":1}}],["saw",{"2":{"861":1}}],["sans",{"2":{"1792":1,"2073":1,"2075":1,"2080":1}}],["sane",{"2":{"1385":1}}],["sanding",{"2":{"857":1}}],["sanctioned",{"2":{"704":1}}],["said",{"0":{"1075":1},"2":{"841":1,"872":1,"1404":1,"2486":2}}],["says",{"2":{"847":1,"848":1}}],["say",{"2":{"841":4,"843":2,"844":2,"845":1,"865":1,"947":1,"1046":1,"1067":1,"1134":1,"1382":1,"1385":1,"1386":1,"1399":1,"1400":1,"1403":2,"1404":1}}],["saying",{"2":{"701":1,"851":1,"1074":1}}],["salute",{"2":{"1404":1}}],["salesreportaudit",{"2":{"1193":1}}],["salesreportpublic",{"2":{"1193":1}}],["salesreportbase",{"2":{"1193":3}}],["sales",{"2":{"415":2,"834":2,"876":1,"887":1,"1179":2,"1184":3,"1185":5,"1187":1,"1188":3,"1189":2,"1191":7,"1192":5,"1193":10,"1196":1,"1200":2,"1202":1,"1203":1,"1207":2,"1373":2,"1413":1,"2303":1,"2813":2}}],["salt",{"2":{"308":4,"309":1,"363":1,"592":1,"813":1,"928":1,"1049":1,"1307":2,"2147":2,"2177":3,"2575":1}}],["safer",{"0":{"2486":1},"2":{"971":1,"2175":1,"2223":1}}],["safety",{"0":{"901":1,"1001":1,"1008":1,"1409":1,"1436":1},"2":{"803":1,"874":2,"875":1,"907":1,"917":1,"920":1,"946":1,"968":1,"972":1,"975":1,"986":1,"996":1,"1005":2,"1009":1,"1037":2,"1065":1,"1098":1,"1378":1,"1386":1,"1390":1,"1391":1,"1406":2,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"2164":1,"2165":1,"2466":1,"2502":1,"2527":1,"2826":1,"2862":1}}],["safely",{"2":{"308":1,"714":1,"1382":1}}],["safe",{"0":{"997":1,"1130":1,"1352":1,"1406":1,"2712":1},"1":{"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1},"2":{"106":1,"317":1,"324":1,"347":1,"528":1,"529":1,"918":1,"928":1,"1037":2,"1046":2,"1086":1,"1094":1,"1102":1,"1121":1,"1130":2,"1355":1,"1363":1,"1382":1,"1416":1,"1443":1,"1792":2,"1851":1,"2106":1,"2147":1,"2284":1,"2382":1,"2432":1,"2481":1,"2531":1,"2537":1,"2539":1,"2575":1,"2614":1}}],["scheduling",{"2":{"1275":1,"1792":1,"2094":1,"2100":1,"2537":1}}],["schemaonly",{"2":{"2318":1,"2324":1,"2840":1}}],["schemanotsimilarto",{"2":{"1792":1,"1836":1,"1838":1,"2701":1}}],["schemasimilarto",{"2":{"966":1,"967":2,"1792":2,"1836":1,"1838":1,"2046":1,"2047":1,"2062":1,"2069":1,"2635":1,"2701":1,"2721":1}}],["schemas",{"0":{"1414":1},"2":{"529":1,"724":1,"973":1,"1193":1,"1203":1,"1414":1,"1792":4,"1838":2,"1839":2,"1974":1,"2047":1,"2062":2,"2261":2,"2412":1,"2436":1,"2555":1,"2607":1,"2608":6,"2635":3,"2666":1}}],["schema",{"0":{"923":1,"924":1,"925":1,"977":1,"1050":1,"1178":1,"1191":1,"1213":1,"1307":1,"1336":1,"1355":1,"1577":1,"1838":1,"1909":1,"2062":1,"2069":1,"2670":1,"2755":1},"1":{"924":1,"925":1,"926":1,"1051":1,"1052":1,"1839":1},"2":{"322":1,"347":1,"348":1,"349":1,"352":1,"354":1,"582":1,"854":1,"872":2,"873":2,"875":2,"876":1,"888":1,"913":2,"922":4,"924":7,"925":4,"926":3,"932":2,"933":4,"937":2,"943":1,"945":1,"946":1,"967":2,"972":1,"973":1,"976":2,"977":4,"992":1,"997":1,"998":1,"1001":1,"1005":2,"1006":2,"1037":1,"1039":1,"1040":1,"1046":1,"1047":1,"1050":2,"1064":1,"1065":1,"1070":2,"1073":1,"1074":1,"1076":1,"1079":1,"1080":2,"1094":1,"1107":1,"1113":1,"1126":1,"1178":1,"1185":3,"1193":3,"1203":1,"1206":1,"1207":1,"1247":1,"1252":2,"1253":1,"1368":1,"1378":1,"1381":1,"1382":2,"1385":2,"1388":1,"1403":1,"1408":1,"1409":2,"1414":2,"1422":1,"1435":4,"1441":1,"1554":3,"1562":3,"1576":1,"1577":3,"1579":1,"1581":2,"1609":2,"1618":2,"1752":1,"1753":4,"1756":2,"1758":2,"1792":27,"1824":2,"1838":2,"1839":1,"1898":3,"1974":1,"2062":2,"2111":2,"2156":1,"2256":6,"2261":1,"2369":1,"2370":1,"2411":1,"2430":1,"2431":3,"2432":2,"2435":2,"2436":2,"2442":1,"2443":2,"2445":1,"2446":1,"2448":1,"2464":1,"2481":3,"2522":1,"2532":4,"2534":1,"2542":1,"2545":1,"2555":1,"2607":1,"2608":3,"2659":1,"2661":1,"2670":2,"2679":1,"2701":1,"2721":3,"2754":1,"2755":5,"2762":1,"2799":1,"2803":1,"2824":1,"2825":1,"2840":1,"2868":3,"2869":3,"2871":1,"2873":1,"2874":1,"2875":1}}],["schemename",{"2":{"2422":1}}],["schemecolumnname",{"2":{"300":1,"1469":1,"1471":1,"1483":1,"1792":3}}],["scheme=cookies",{"2":{"291":1}}],["schemes",{"0":{"290":1,"312":1,"1048":1,"1053":1,"1066":1,"1458":1,"1901":1,"2375":2,"2410":1,"2420":1,"2427":1},"1":{"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":2,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1459":1,"1460":1,"1902":1,"1903":1,"1904":1,"1905":1,"1906":1,"2411":1,"2412":1,"2413":1,"2421":1,"2422":1,"2423":1,"2424":1},"2":{"33":1,"285":1,"286":4,"288":1,"290":1,"291":1,"293":1,"302":1,"303":1,"305":1,"310":1,"315":2,"356":1,"691":1,"835":1,"837":1,"1037":2,"1048":2,"1053":1,"1064":2,"1065":1,"1068":1,"1098":7,"1127":1,"1197":1,"1458":4,"1459":1,"1460":3,"1464":1,"1792":8,"1898":1,"1901":1,"1907":1,"1994":1,"2164":1,"2175":1,"2178":1,"2184":1,"2186":1,"2225":3,"2227":2,"2254":1,"2375":7,"2409":1,"2410":5,"2412":1,"2413":2,"2419":3,"2420":1,"2421":1,"2422":4,"2423":1,"2424":1,"2427":2,"2435":1,"2436":1,"2438":1,"2440":1,"2554":1,"2737":1}}],["scheme",{"0":{"289":1,"291":1,"302":1,"1906":1,"2172":1,"2178":1,"2426":1,"2427":1},"1":{"2173":1,"2174":1,"2175":1},"2":{"33":3,"286":3,"289":1,"291":3,"296":1,"297":3,"298":5,"300":3,"302":5,"303":1,"307":1,"310":3,"312":6,"313":1,"835":1,"921":1,"934":6,"935":1,"937":1,"1053":5,"1055":4,"1056":8,"1060":3,"1061":4,"1065":1,"1068":5,"1098":5,"1216":4,"1222":1,"1239":4,"1249":1,"1308":1,"1371":1,"1447":1,"1451":1,"1454":1,"1458":15,"1459":2,"1460":13,"1469":1,"1471":2,"1473":1,"1480":2,"1481":2,"1483":1,"1686":1,"1688":1,"1792":31,"1830":1,"1888":1,"1902":1,"1903":1,"1906":5,"1907":1,"1911":1,"2019":1,"2170":1,"2171":3,"2172":1,"2175":2,"2176":5,"2177":1,"2178":6,"2180":1,"2186":3,"2187":1,"2189":1,"2225":2,"2227":2,"2254":4,"2375":29,"2410":1,"2411":3,"2412":2,"2413":2,"2417":1,"2420":3,"2421":9,"2422":9,"2423":11,"2424":3,"2427":1,"2434":1,"2435":6,"2437":4,"2438":2,"2481":1,"2554":2}}],["sc",{"2":{"949":2}}],["score",{"2":{"1336":1,"1339":7,"1423":1,"1429":1,"2164":1,"2815":7}}],["scores",{"0":{"870":1},"1":{"871":1,"872":1,"873":1,"874":1,"875":1}}],["scoping",{"2":{"1103":1,"1792":1,"2223":1,"2490":2}}],["scope=public",{"2":{"1695":1,"1792":1}}],["scope=r",{"2":{"1692":1,"1792":1}}],["scope=openid",{"2":{"1691":1,"1694":1,"1792":2}}],["scopessupported",{"0":{"1829":1},"2":{"1792":1,"1814":1,"2481":1}}],["scopes",{"0":{"1311":1,"1316":1},"1":{"1312":1,"1313":1,"1314":1,"1315":1,"1316":1},"2":{"646":1,"687":1,"708":1,"1121":1,"1573":1,"1690":1,"1792":2,"1829":2,"1833":1,"2223":1}}],["scope>",{"2":{"637":3}}],["scoped",{"0":{"2490":1},"2":{"176":1,"688":2,"876":1,"1036":1,"1070":1,"1304":1,"1529":2,"1850":1,"1851":2,"1911":1,"2223":1,"2382":3,"2434":1,"2490":1,"2498":2}}],["scope",{"0":{"636":1,"641":1,"642":1,"646":1,"1312":1,"1313":1,"1314":1,"1315":1,"1658":1,"1961":1,"2250":1,"2437":1,"2490":1,"2831":1},"1":{"637":1,"638":1,"639":1,"640":1,"641":1,"642":1,"643":1,"644":1,"645":1,"646":1,"647":1,"648":1},"2":{"162":3,"233":2,"480":1,"635":2,"636":4,"637":5,"639":1,"641":2,"642":1,"643":1,"644":1,"645":1,"646":6,"650":2,"663":1,"664":2,"665":3,"669":2,"671":2,"685":1,"849":1,"945":1,"1068":1,"1098":1,"1106":1,"1127":1,"1305":3,"1309":3,"1311":1,"1312":1,"1313":2,"1314":1,"1315":1,"1316":2,"1321":1,"1326":1,"1372":1,"1395":1,"1447":2,"1458":1,"1651":1,"1658":1,"1662":1,"1792":4,"1825":1,"1860":2,"2005":1,"2249":5,"2250":1,"2252":3,"2314":2,"2375":1,"2391":2,"2403":1,"2424":1,"2438":1,"2466":1,"2481":2,"2490":4,"2498":1,"2827":2,"2828":3,"2829":4,"2831":10,"2833":3,"2834":5,"2836":2,"2838":1}}],["scenmarios",{"2":{"918":1}}],["scene",{"2":{"843":1,"852":1}}],["scenario",{"0":{"1264":1,"2872":1,"2873":1,"2874":1,"2875":1,"2876":1},"2":{"697":1,"982":1,"985":1,"990":1,"1255":1,"1258":1,"1264":1,"1272":1,"1402":1,"1825":1,"1974":1,"2167":1,"2398":1,"2538":1,"2545":1,"2586":1,"2607":1,"2697":1,"2740":1}}],["scenarios",{"0":{"576":1,"990":1,"1258":1,"1262":1,"1263":1,"1285":1},"2":{"844":1,"876":1,"904":1,"916":1,"1066":1,"1091":1,"1105":1,"1144":1,"1145":1,"1146":1,"1152":1,"1205":1,"1228":1,"1254":2,"1255":1,"1258":1,"1262":1,"1263":1,"1266":2,"1271":1,"1396":1,"1625":1,"1792":3,"1878":1,"2088":1,"2111":1,"2114":1,"2245":1,"2255":1,"2270":1,"2380":1,"2398":3,"2438":1,"2532":1,"2550":1,"2585":1,"2611":1,"2664":1,"2789":1,"2791":1,"2871":1}}],["science",{"0":{"839":1},"1":{"840":1,"841":1,"842":1,"843":1,"844":1,"845":1,"846":1,"847":1,"848":1,"849":1,"850":1,"851":1,"852":1,"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"859":1,"860":1,"861":1,"862":1,"863":1,"864":1,"865":1},"2":{"840":1}}],["scattered",{"2":{"945":1}}],["scaffolding",{"2":{"872":1,"1408":1}}],["scans",{"2":{"2318":1}}],["scan",{"2":{"857":1,"860":2,"966":2,"1096":1,"1792":2,"2050":1,"2051":1,"2157":1,"2422":1,"2543":1,"2635":4,"2825":1}}],["scanning",{"2":{"848":1,"2371":1}}],["scanned",{"2":{"388":1,"2721":1,"2799":1}}],["scalable",{"2":{"1385":1}}],["scalability",{"0":{"1135":1},"1":{"1136":1,"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1151":1,"1152":1,"1153":1,"1154":1,"1155":1,"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1164":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"1172":1,"1173":1,"1174":1,"1175":1,"1176":1,"1177":1,"1178":1,"1179":1,"1180":1,"1181":1,"1182":1},"2":{"1037":1,"1135":1,"1324":1,"1325":2}}],["scalar",{"0":{"585":1},"2":{"120":1,"186":1,"299":1,"528":1,"582":2,"583":1,"585":2,"673":1,"1041":1,"1517":1,"1523":2,"1792":1,"1824":1,"2072":1,"2205":1,"2265":1,"2293":1,"2337":2,"2380":1,"2463":1,"2465":1,"2466":2,"2498":1,"2854":1}}],["scaling",{"0":{"1267":1,"1416":1},"2":{"1014":1,"1037":1,"1090":1,"1258":1,"1266":1,"1267":2,"1303":2,"1320":1,"1322":1}}],["scales",{"0":{"1007":1},"2":{"877":1,"1090":1,"1325":1}}],["scale",{"2":{"307":1,"841":1,"861":1,"871":1,"1015":1,"1119":1,"2177":1,"2270":1}}],["screams",{"2":{"1436":1}}],["screenshots",{"2":{"1442":1}}],["screen",{"2":{"838":1,"1060":1,"1080":1,"1435":1,"1687":1,"1792":5,"2543":1}}],["scrypt",{"2":{"1049":1}}],["scrutiny",{"2":{"876":1}}],["scrap",{"2":{"1433":5,"2164":3,"2762":1,"2770":2,"2816":1}}],["scraping",{"0":{"1423":1},"1":{"1424":1,"1425":1,"1426":1,"1427":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"1434":1},"2":{"1037":1,"1162":1,"1423":2,"1430":1,"2164":5,"2762":1,"2770":2,"2816":1}}],["scraped",{"2":{"1430":1,"1431":3,"1925":1,"2164":1,"2517":1,"2816":1}}],["scraper",{"2":{"1037":1,"1423":2,"1424":1,"1432":1}}],["scrape",{"2":{"75":1}}],["scratch",{"2":{"869":1,"1065":1,"1792":1,"2111":1,"2532":1}}],["scroll",{"2":{"854":1}}],["script>",{"2":{"2040":2,"2476":2}}],["scripts",{"0":{"2531":1},"2":{"1073":1,"1074":1,"1086":1,"1125":1,"1343":1,"1385":4,"1386":5,"1403":1,"1418":1,"1792":1,"2168":1,"2367":1,"2481":1,"2482":1,"2531":1,"2550":1,"2791":1,"2841":1,"2869":1,"2874":1}}],["script",{"0":{"1386":1},"2":{"320":1,"835":2,"1073":1,"1076":2,"1209":1,"1211":2,"1218":2,"1385":1,"1386":2,"1388":2,"1394":2,"1401":2,"1404":1,"1792":2,"1868":2,"2020":2,"2029":1,"2221":1,"2319":1,"2632":1,"2709":1,"2869":1}}],["sh",{"2":{"2161":1}}],["shrinks",{"2":{"1440":1,"2869":1}}],["shy",{"2":{"1403":1}}],["shuts",{"2":{"2362":1}}],["shut",{"2":{"1384":3}}],["shutdown",{"0":{"2362":1},"2":{"1155":1,"1595":2,"1792":2}}],["shutter",{"2":{"852":1}}],["shifting",{"2":{"1856":1,"2450":1}}],["shifted",{"2":{"1856":1,"2398":1,"2451":2}}],["shifts",{"2":{"1266":1,"1792":1}}],["shift",{"2":{"1073":1,"1262":1,"2224":1,"2450":1,"2451":2,"2453":1}}],["shines",{"2":{"913":1,"1127":1,"1432":1,"2869":1}}],["shipped",{"2":{"861":1,"867":1,"872":1,"873":1,"874":1,"876":1,"877":1,"1076":1,"1096":1,"1402":1,"1959":1,"2377":1,"2461":1,"2471":1,"2486":3,"2493":1}}],["shipping",{"2":{"388":1}}],["ship",{"2":{"861":1,"865":1,"869":1,"872":1,"873":1,"1037":1,"1066":1,"1432":1,"1825":1,"2438":1,"2804":1}}],["ships",{"2":{"704":1,"834":1,"852":1,"868":1,"869":1,"1044":1,"1096":1,"1101":1,"1382":1,"2111":1,"2224":1,"2380":1,"2389":2,"2461":1,"2479":1,"2532":1,"2537":1,"2860":1,"2871":1}}],["shell",{"2":{"868":1,"1432":1,"1792":1,"2111":1,"2532":1,"2871":1,"2875":1}}],["sheetname",{"2":{"961":2}}],["sheet2",{"2":{"773":1}}],["sheet1",{"2":{"772":1,"773":1,"893":1}}],["sheets",{"0":{"899":1},"2":{"771":2,"773":1,"774":1,"776":3,"788":2,"789":1,"887":2,"892":2,"904":1,"2130":1}}],["sheet",{"2":{"228":1,"674":2,"675":1,"678":1,"679":3,"723":3,"770":1,"771":2,"772":5,"773":7,"774":3,"776":3,"788":2,"884":5,"887":3,"892":3,"893":4,"899":1,"904":3,"956":1,"957":4,"960":1,"964":1,"1374":1,"1413":1,"2079":4,"2081":1,"2130":2,"2653":4}}],["shshdocker",{"2":{"2717":1}}],["shshnpgsqlrest",{"2":{"2092":1,"2096":1,"2097":1,"2110":1,"2155":1,"2543":1,"2857":1,"2861":1,"2872":1,"2877":2,"2878":1}}],["shsh",{"2":{"710":1}}],["sha",{"2":{"308":2,"309":1,"363":1,"1049":1,"1067":1,"1657":2,"2177":1,"2495":1}}],["sha256",{"2":{"307":1,"308":4,"1049":1,"1511":1,"1516":1,"1792":1,"2177":2,"2265":2}}],["shapes",{"0":{"2520":1},"2":{"871":1,"1519":1,"1567":1,"1792":1,"2104":1,"2222":1,"2380":1,"2389":1,"2498":1,"2515":1,"2535":1,"2725":1,"2800":1,"2815":1,"2871":1}}],["shaped",{"0":{"394":1},"2":{"1041":1,"1077":1,"2463":1,"2493":1}}],["shape",{"0":{"1567":1,"1924":1,"2445":1},"2":{"214":1,"436":1,"665":1,"835":1,"848":1,"856":1,"868":1,"872":1,"873":1,"875":1,"1046":1,"1101":1,"1150":1,"1190":1,"1385":1,"1402":1,"1406":1,"1407":1,"1408":1,"1410":1,"1419":2,"1422":1,"1431":1,"1519":1,"1525":1,"1566":1,"1569":1,"1743":1,"1792":1,"1824":2,"2111":2,"2225":1,"2378":1,"2389":2,"2398":3,"2440":1,"2442":1,"2445":1,"2502":1,"2508":1,"2512":2,"2765":1,"2800":1,"2802":1,"2804":1,"2812":1}}],["sharpens",{"2":{"2388":1}}],["shards",{"2":{"1632":1}}],["sharding",{"2":{"1632":1}}],["sharded",{"2":{"848":1}}],["shares",{"2":{"831":1,"1073":1,"1105":1,"1162":1,"1957":1,"2157":1,"2379":1,"2466":1,"2543":1}}],["share",{"2":{"390":1,"666":1,"712":1,"836":1,"912":1,"915":1,"974":1,"1067":2,"1070":1,"1145":1,"1150":1,"1178":1,"1193":1,"1384":1,"1385":1,"1515":1,"1522":1,"1527":1,"1571":1,"1574":1,"1733":1,"1792":2,"1852":1,"1955":1,"2175":1,"2264":1,"2320":1,"2380":2,"2383":1,"2398":1,"2429":1,"2440":1,"2445":1,"2446":1,"2463":1,"2504":1,"2522":1,"2851":1,"2873":1}}],["sharedarraybuffer",{"2":{"1792":1,"2024":1,"2632":1}}],["shared",{"0":{"711":1,"747":1,"781":1,"832":1,"855":1},"2":{"74":1,"105":1,"156":1,"212":1,"214":1,"369":1,"386":1,"544":1,"695":1,"706":1,"711":3,"753":1,"757":1,"768":1,"776":1,"832":1,"841":1,"843":2,"852":3,"857":1,"1066":1,"1067":1,"1069":1,"1079":1,"1147":1,"1150":3,"1162":1,"1193":7,"1209":1,"1303":1,"1519":1,"1520":1,"1529":2,"1581":1,"1743":1,"1792":5,"1823":1,"2016":2,"2023":1,"2025":1,"2167":2,"2222":1,"2274":1,"2319":1,"2372":1,"2380":1,"2402":2,"2443":1,"2445":1,"2466":2,"2502":1,"2504":1,"2518":2,"2520":1,"2531":4,"2533":4,"2534":1,"2537":1,"2545":1,"2546":1,"2632":2,"2764":1,"2833":1,"2867":2,"2869":3,"2873":3,"2881":2}}],["sharing",{"2":{"108":1,"479":1,"1146":1,"1515":2,"1522":1,"1637":1,"1639":1,"1788":1,"1792":4,"1795":1,"1955":1,"1963":1,"2030":1,"2274":2,"2379":1,"2380":1,"2459":1,"2466":1,"2546":2,"2632":2}}],["shot",{"2":{"1422":1}}],["shotgun",{"2":{"840":2}}],["shocked",{"2":{"1400":1}}],["shop",{"2":{"869":1}}],["showing",{"2":{"1792":3,"2052":1,"2635":1}}],["showdisconnected",{"2":{"1320":1}}],["showed",{"2":{"1157":1,"1324":1,"2222":1,"2505":1,"2577":1}}],["shows",{"0":{"2577":1},"2":{"871":1,"914":1,"966":1,"1002":1,"1188":1,"1229":1,"1302":1,"1368":1,"1408":1,"1792":3,"1879":1,"2052":1,"2104":1,"2156":1,"2358":1,"2537":1,"2577":1,"2635":1,"2723":1,"2795":1,"2799":1}}],["show",{"2":{"622":1,"848":1,"1044":2,"1068":1,"1079":1,"1401":1,"1402":1,"1685":1,"1792":3,"2104":1,"2532":1,"2535":2,"2621":1,"2785":3,"2786":2,"2795":1}}],["shown",{"2":{"212":1,"1225":1,"1232":2,"1377":1,"1379":1,"1685":1,"1792":2,"1875":1,"1882":2,"2372":1,"2414":1,"2518":1,"2528":1,"2678":1,"2695":1,"2722":1,"2802":1,"2864":1}}],["shouldcommit",{"2":{"2267":1}}],["shouldn",{"2":{"168":1,"374":1,"1205":1,"1385":1,"1768":1,"1792":1,"2428":1,"2634":1}}],["should",{"0":{"2731":1},"2":{"73":1,"174":1,"307":1,"409":1,"458":1,"512":1,"663":1,"847":1,"849":1,"851":2,"859":2,"860":1,"921":1,"922":1,"926":2,"930":12,"946":1,"989":1,"990":3,"991":2,"994":1,"1049":1,"1052":1,"1054":1,"1132":1,"1204":1,"1231":1,"1232":1,"1233":1,"1238":1,"1393":2,"1399":1,"1404":1,"1405":1,"1406":1,"1419":2,"1574":1,"1653":1,"1792":10,"1823":1,"1983":1,"2016":3,"2018":1,"2019":1,"2020":1,"2025":1,"2267":1,"2351":1,"2353":1,"2391":1,"2452":1,"2456":2,"2528":1,"2533":1,"2611":1,"2632":3,"2831":1,"2864":1}}],["shortrun",{"2":{"2397":1}}],["shortcut",{"2":{"2040":1,"2413":1}}],["shortly",{"2":{"1958":1,"2470":1}}],["shorthand",{"2":{"1792":1,"2106":1,"2154":1,"2335":1,"2391":1,"2541":1,"2542":1,"2878":1}}],["shorter",{"2":{"1134":1,"1401":1,"1458":1,"1459":1,"1511":2,"1792":4,"2265":1,"2375":2}}],["shortening",{"2":{"1098":1}}],["short",{"0":{"8":1,"94":1,"136":1,"196":1,"271":1,"522":1,"1068":1,"1442":1},"2":{"269":1,"277":1,"913":1,"1037":1,"1066":1,"1067":1,"1068":5,"1121":1,"1134":1,"1150":1,"1254":1,"1378":1,"1385":1,"1419":1,"1442":1,"1458":4,"1529":1,"1792":5,"1823":2,"1910":1,"1961":1,"2145":1,"2211":1,"2212":1,"2375":4,"2397":1,"2410":4,"2413":1,"2415":1,"2427":2,"2433":1,"2466":2,"2713":1}}],["sudo",{"2":{"2782":1,"2783":1,"2784":1}}],["suddenly",{"2":{"1079":1,"1165":1,"2868":1}}],["sufficient",{"2":{"1140":1,"1323":1}}],["suffixed",{"2":{"1792":1,"1856":2,"2454":1,"2455":1,"2523":1}}],["suffix",{"2":{"211":1,"268":1,"381":1,"1034":1,"1366":1,"1511":1,"1731":1,"1753":1,"1792":2,"1821":1,"1823":2,"2265":1,"2333":1,"2456":4,"2519":1,"2539":2,"2848":1}}],["sustained",{"2":{"872":1,"1160":2,"2397":1,"2398":1,"2789":1}}],["suggests",{"2":{"872":1}}],["suggest",{"2":{"859":1,"1254":1,"1386":1}}],["suitable",{"2":{"851":1,"965":1,"1133":1,"1403":1,"1450":1,"2055":1,"2075":1,"2245":1,"2381":1,"2651":1}}],["suites",{"2":{"2534":1}}],["suited",{"2":{"975":1,"1035":1,"1144":1}}],["suite",{"0":{"2407":1},"2":{"221":1,"710":1,"865":1,"875":2,"1082":1,"1419":1,"2231":1,"2456":1,"2498":2,"2506":1,"2513":1,"2523":1,"2546":1,"2679":1}}],["supavisor",{"2":{"1101":1,"1102":2}}],["supabase",{"0":{"1070":1,"1083":1,"1088":1,"1107":1,"1115":1,"1119":1,"1123":1,"1126":1,"2713":1},"1":{"1084":1,"1085":1,"1086":1,"1087":1,"1088":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1094":1,"1095":1,"1096":1,"1097":1,"1098":1,"1099":1,"1100":1,"1101":1,"1102":1,"1103":1,"1104":1,"1105":1,"1106":1,"1107":1,"1108":1,"1109":1,"1110":1,"1111":1,"1112":1,"1113":1,"1114":1,"1115":1,"1116":1,"1117":1,"1118":1,"1119":1,"1120":1,"1121":1,"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1},"2":{"831":1,"1037":1,"1066":1,"1070":1,"1083":2,"1084":1,"1088":4,"1092":1,"1094":4,"1095":2,"1096":2,"1097":4,"1098":8,"1099":3,"1100":6,"1101":4,"1102":4,"1103":1,"1104":1,"1105":1,"1107":10,"1108":3,"1109":1,"1110":1,"1111":3,"1113":1,"1115":1,"1119":3,"1121":1,"1123":1,"1126":1,"1127":11,"1382":1,"1383":1,"1385":7,"1528":1,"1792":1,"1851":1,"1894":1,"2382":1}}],["supervises",{"2":{"1792":1,"2221":1}}],["supervisor",{"2":{"637":1,"644":1,"2157":3,"2199":1,"2200":3,"2543":5}}],["super",{"2":{"1394":2}}],["superior",{"0":{"1006":1},"1":{"1007":1,"1008":1,"1009":1},"2":{"946":1,"1280":1}}],["superuser",{"2":{"907":1,"926":3,"932":2,"933":2,"934":1,"937":1,"1618":1,"1792":1,"2256":2,"2459":1}}],["suppressxframeoptionsheader",{"2":{"1488":1,"1489":1,"1493":2,"1792":2,"2018":1,"2632":1}}],["suppressreadingtokenfromformbody",{"2":{"1488":1,"1489":1,"1494":1,"1792":1}}],["suppress",{"2":{"1415":1,"1792":2,"2430":1}}],["suppresses",{"2":{"319":1,"326":1,"347":1,"1040":1,"2481":1,"2629":2}}],["suppressed",{"2":{"173":1,"2414":1,"2672":1,"2879":1}}],["supposed",{"2":{"843":1,"1134":1,"1402":1}}],["supporting",{"2":{"1054":1,"1457":1,"2479":1,"2554":1}}],["supports",{"2":{"258":1,"379":1,"784":2,"876":1,"926":1,"1053":1,"1060":1,"1070":1,"1098":3,"1136":1,"1144":1,"1190":1,"1209":1,"1219":1,"1304":1,"1386":1,"1445":1,"1453":1,"1608":1,"1623":1,"1626":1,"1682":1,"1792":2,"1866":1,"1869":1,"1940":1,"1985":1,"2002":1,"2117":1,"2272":1,"2277":1,"2317":1,"2330":1,"2333":1,"2337":1,"2350":1,"2371":1,"2372":1,"2580":2,"2702":1,"2792":1,"2823":1}}],["supported",{"0":{"204":1,"269":1,"1395":1,"1729":1,"2710":1,"2736":1},"2":{"175":1,"267":1,"280":1,"370":1,"585":1,"684":1,"912":1,"918":1,"919":1,"1034":1,"1086":1,"1097":1,"1127":1,"1229":1,"1385":1,"1394":1,"1458":1,"1757":1,"1792":9,"1829":1,"1833":2,"1879":1,"1901":1,"1937":2,"2202":1,"2210":1,"2212":1,"2250":1,"2254":1,"2325":1,"2332":1,"2340":1,"2375":1,"2389":1,"2394":1,"2531":1,"2538":1,"2634":1,"2671":1,"2688":1,"2719":1,"2731":1,"2745":1,"2785":2,"2845":1}}],["support",{"0":{"1063":1,"1626":1,"2251":1,"2254":1,"2266":1,"2274":1,"2277":1,"2310":1,"2313":1,"2325":1,"2346":1,"2356":1,"2357":1,"2554":1,"2555":1,"2572":1,"2585":1,"2588":1,"2611":1},"1":{"1627":1,"1628":1,"1629":1,"2586":1,"2587":1},"2":{"32":1,"156":1,"158":1,"159":1,"162":1,"323":2,"408":1,"674":1,"767":1,"777":1,"778":1,"834":1,"876":1,"912":2,"918":2,"919":2,"1005":1,"1030":1,"1037":1,"1066":1,"1068":1,"1078":1,"1097":3,"1098":4,"1099":2,"1101":1,"1102":1,"1105":2,"1106":1,"1127":5,"1135":1,"1172":1,"1193":2,"1250":1,"1302":1,"1317":2,"1327":1,"1385":1,"1386":1,"1394":1,"1395":2,"1398":1,"1497":1,"1499":1,"1605":1,"1615":1,"1639":1,"1701":1,"1744":1,"1751":1,"1789":1,"1792":5,"1894":1,"1941":2,"1979":1,"2032":1,"2079":1,"2185":1,"2193":1,"2228":2,"2229":1,"2236":2,"2238":2,"2239":2,"2240":1,"2247":1,"2254":1,"2256":1,"2257":1,"2265":2,"2266":2,"2277":1,"2319":1,"2329":1,"2346":1,"2369":1,"2372":1,"2385":2,"2429":1,"2438":1,"2479":1,"2497":1,"2529":1,"2549":1,"2555":1,"2565":1,"2576":1,"2580":1,"2581":1,"2585":1,"2586":1,"2600":1,"2625":1,"2633":1,"2645":1,"2653":1,"2665":1,"2686":1,"2858":1,"2869":1}}],["supply",{"2":{"1738":1,"2723":1,"2768":1}}],["supplying",{"2":{"215":1}}],["supplied",{"2":{"106":1,"212":2,"388":1,"448":1,"527":1,"1792":1,"1923":1,"2183":1,"2247":1,"2250":1,"2267":1,"2282":1,"2395":2,"2432":1,"2466":1,"2712":1}}],["supplies",{"2":{"104":1,"105":1,"531":1,"1792":1,"2395":1}}],["summer",{"2":{"1443":1}}],["summit",{"2":{"851":1}}],["summing",{"2":{"761":1,"771":1}}],["summarization",{"0":{"1338":1},"2":{"1335":1,"1338":1}}],["summarizetext",{"2":{"1335":2}}],["summarize",{"2":{"320":2,"1332":3,"1335":1,"1338":5}}],["summary>",{"2":{"2255":6,"2256":4,"2257":2,"2265":8,"2266":2}}],["summary",{"0":{"1062":1,"1084":1,"1180":1,"1283":1,"1351":1,"1367":1,"1422":1,"2436":1},"1":{"1063":1,"1181":1,"1284":1,"1285":1},"2":{"351":2,"353":1,"1176":1,"1179":1,"1191":2,"1193":2,"1254":1,"1287":15,"1288":15,"1289":15,"1290":15,"1291":15,"1293":15,"1295":15,"1297":15,"1299":15,"1301":15,"1335":5,"1336":1,"1338":10,"1339":10,"1792":1,"2094":1,"2107":1,"2364":1,"2537":1}}],["sum",{"2":{"426":1,"566":2,"860":1,"885":1,"1398":1}}],["sunny",{"2":{"322":1}}],["subdomains",{"2":{"2429":1}}],["subdirectories",{"2":{"2003":1}}],["submit",{"2":{"1491":1,"1492":1,"2438":1}}],["submitted",{"2":{"309":2,"1490":1}}],["submission",{"0":{"1490":1},"1":{"1491":1,"1492":1}}],["subqueries",{"2":{"919":1}}],["subquery",{"2":{"528":1}}],["subtotal",{"2":{"869":2}}],["subgraph",{"2":{"833":2,"922":2,"1086":1,"1088":3,"1184":1,"1185":2,"1220":3,"1221":3,"1222":3}}],["subproc",{"2":{"663":1}}],["suburl",{"2":{"663":2}}],["subject",{"2":{"428":1,"859":1,"1402":1,"1792":2,"1988":1}}],["sub",{"2":{"347":2,"1302":1,"1303":1,"1320":4,"1322":1,"2432":1,"2443":1,"2447":2}}],["subsystem",{"2":{"872":2}}],["subset",{"2":{"852":1,"2430":1,"2529":1,"2537":1,"2865":1}}],["subsequent",{"2":{"120":1,"214":1,"625":1,"683":1,"747":1,"934":1,"1346":1,"1363":1,"1517":1,"1743":1,"2265":1,"2494":1,"2502":1}}],["subscribing",{"0":{"2830":1},"2":{"2827":1}}],["subscribes",{"2":{"668":1,"2830":1,"2834":1}}],["subscribed",{"2":{"666":1,"1103":1,"2391":1,"2834":1}}],["subscribe",{"0":{"2391":1,"2834":1},"2":{"663":4,"664":3,"665":2,"666":3,"669":1,"1320":1,"2226":1,"2391":8,"2393":1,"2827":1,"2828":2,"2829":1,"2830":1,"2832":2,"2834":8,"2836":1,"2838":1}}],["subscriber",{"0":{"669":1,"2490":1},"2":{"636":1,"650":3,"666":1,"668":1,"2223":1,"2226":1,"2391":1,"2393":1,"2407":1,"2490":1,"2498":2,"2836":1}}],["subscribers",{"2":{"636":1,"650":3,"669":1,"1309":1,"1792":1,"2391":2,"2392":2,"2407":1,"2490":6,"2498":1,"2827":1}}],["subscriptions",{"2":{"1094":1}}],["subscription",{"2":{"663":1,"1320":1,"2836":1}}],["substrate",{"2":{"877":1}}],["substring",{"2":{"309":1,"928":1,"929":1,"1427":1,"1429":1,"1792":1,"2094":1,"2096":1,"2537":2,"2762":2,"2877":1}}],["substitute",{"2":{"390":1,"834":1,"876":1,"933":1,"1733":1,"2264":1}}],["substituted",{"2":{"387":1,"390":1,"1010":1,"1019":1,"1605":2,"1862":1,"2040":1,"2264":1,"2476":1,"2483":1,"2497":2,"2534":1,"2688":2,"2871":1}}],["substitutes",{"2":{"212":3,"215":2,"395":1,"1016":1,"1023":1,"1033":1,"1723":1,"1733":2,"1738":2,"2040":1,"2264":2,"2283":1,"2477":1,"2768":1}}],["substitutions",{"2":{"2874":1}}],["substitutionenvironmentvariables",{"2":{"2483":1}}],["substitution",{"0":{"212":1,"386":1,"1733":1,"2483":1},"1":{"387":1,"388":1,"389":1,"390":1,"391":1,"392":1,"393":1,"394":1,"395":1,"396":1},"2":{"156":2,"212":1,"216":1,"387":2,"388":1,"395":1,"452":1,"527":1,"529":2,"535":2,"544":2,"926":1,"1094":1,"1104":1,"1105":2,"1661":1,"1792":1,"1862":1,"2185":1,"2223":1,"2264":1,"2282":1,"2284":1,"2481":1,"2493":2,"2764":1,"2771":1}}],["substantially",{"2":{"869":1}}],["substantial",{"2":{"0":1,"1011":1}}],["surfacing",{"2":{"2405":1,"2437":1}}],["surfaced",{"2":{"2411":1,"2415":1,"2416":1,"2450":1,"2481":1,"2489":1,"2491":1,"2515":1}}],["surfaces",{"2":{"871":1,"1407":1,"1792":2,"1822":1,"2528":1,"2864":1}}],["surface",{"2":{"175":1,"320":1,"388":1,"529":1,"847":1,"868":1,"872":3,"877":1,"943":1,"984":1,"985":1,"1042":1,"1071":1,"1080":1,"1096":1,"1414":1,"1527":1,"1568":1,"1792":1,"1823":1,"1911":2,"2380":1,"2389":1,"2430":1,"2434":2,"2446":1,"2457":1,"2461":1,"2481":1,"2537":1,"2729":1,"2879":1}}],["surprising",{"2":{"2376":1,"2380":1}}],["surprised",{"2":{"1400":1}}],["surprise",{"2":{"1080":1,"1096":1}}],["surreal",{"2":{"913":1}}],["surrounding",{"2":{"849":1,"1083":1,"2040":1,"2476":1}}],["survived",{"2":{"1401":1}}],["survive",{"2":{"876":1,"1135":1,"1403":1}}],["survives",{"2":{"389":1,"1067":1,"1079":1,"1792":1,"2537":1,"2873":1}}],["surely",{"2":{"1401":1}}],["sure",{"2":{"305":1,"843":1,"967":1,"1386":1,"1402":2,"2824":1}}],["succeed",{"2":{"881":1}}],["succeeded",{"2":{"310":2,"748":1,"1056":5,"1062":1,"1360":1}}],["succeeds",{"2":{"297":1,"299":1,"587":1,"689":1,"700":1,"941":1,"985":1,"997":1,"1078":1,"1153":1,"1358":1,"1792":1,"2187":1,"2428":1,"2535":1}}],["successfully",{"2":{"1385":1,"1394":1,"1455":1,"1792":1,"1844":1,"2554":1}}],["successful",{"2":{"34":1,"214":1,"747":1,"781":1,"934":1,"1056":1,"1237":1,"1238":1,"1239":1,"1357":2,"1430":1,"1480":1,"1628":1,"1686":1,"1743":1,"1792":3,"1887":1,"1888":1,"2125":1,"2266":1,"2502":1}}],["success",{"0":{"34":1},"2":{"33":2,"206":1,"207":2,"208":2,"209":4,"210":1,"213":1,"298":1,"300":1,"301":2,"310":2,"439":2,"447":1,"452":2,"700":1,"747":1,"748":1,"763":1,"773":2,"781":1,"812":1,"813":1,"814":1,"815":1,"887":3,"894":1,"903":3,"1019":2,"1020":2,"1021":6,"1026":12,"1031":1,"1045":1,"1105":7,"1179":1,"1218":2,"1220":1,"1221":1,"1237":1,"1332":2,"1338":2,"1339":2,"1341":1,"1347":1,"1355":1,"1357":2,"1358":1,"1359":1,"1360":3,"1366":1,"1376":4,"1385":1,"1398":5,"1399":1,"1410":1,"1426":1,"1427":1,"1431":2,"1471":2,"1472":1,"1480":2,"1721":1,"1722":2,"1725":1,"1727":2,"1732":1,"1736":2,"1741":1,"1743":1,"1792":13,"1887":1,"1916":1,"1918":2,"1921":2,"1922":1,"2093":1,"2105":1,"2109":1,"2110":1,"2147":2,"2177":1,"2222":1,"2264":5,"2289":1,"2402":1,"2502":1,"2530":2,"2537":1,"2549":4,"2575":1,"2669":1,"2762":3,"2763":4,"2764":2,"2766":4,"2769":2,"2785":1,"2810":3,"2814":1,"2815":2,"2866":1}}],["such",{"2":{"41":1,"75":1,"320":1,"723":1,"843":1,"844":1,"864":1,"872":1,"918":1,"1254":1,"1384":1,"1386":1,"1394":2,"1569":1,"1759":1,"1792":1,"1822":1,"1840":1,"1912":1,"1925":1,"2466":2,"2493":1,"2517":1,"2518":1,"2841":1}}],["sister",{"2":{"2440":1}}],["sigkills",{"2":{"2532":1}}],["sigkill",{"2":{"2157":1,"2543":1,"2546":1,"2758":1,"2881":1}}],["sigterm",{"2":{"2106":1,"2112":1,"2157":2,"2158":1,"2221":1,"2532":1,"2537":1,"2543":2,"2546":2,"2758":1,"2871":1,"2878":1,"2881":1}}],["sigint",{"2":{"2106":1,"2112":1,"2532":1,"2537":1,"2546":1}}],["signcountcolumnname",{"2":{"1240":1,"1792":1,"1889":1}}],["signup=false",{"2":{"1693":1,"1792":1}}],["signup",{"2":{"888":6}}],["signals",{"2":{"876":1}}],["signal",{"2":{"871":1,"1415":1,"2112":1,"2532":1,"2543":1}}],["signatures",{"2":{"871":1,"995":1,"1005":1,"1178":1,"1211":1,"1243":1,"1368":1,"1792":1,"2359":1,"2666":1,"2723":1,"2858":1}}],["signature",{"0":{"760":1,"770":1},"2":{"74":2,"75":1,"362":1,"448":1,"872":4,"975":1,"978":1,"985":1,"995":1,"1002":1,"1098":1,"1210":1,"1222":1,"1227":1,"1236":3,"1239":2,"1243":1,"1366":1,"1419":1,"1436":1,"1792":3,"1830":1,"1868":1,"1877":1,"1886":2,"1888":2,"2184":1,"2222":1,"2247":1,"2438":2,"2518":3,"2519":1,"2523":1}}],["significantly",{"2":{"1090":1,"1091":1,"1263":1,"1792":1,"2270":1,"2359":1,"2366":1,"2789":1}}],["significant",{"2":{"848":1,"869":1,"872":1,"2621":1}}],["signinasync",{"2":{"2424":1}}],["signinhtmltemplate",{"0":{"1685":1},"2":{"1684":1,"1792":1}}],["signing",{"2":{"1098":1,"1220":1,"1415":1,"1454":2,"1458":1,"1792":4,"1870":1,"2040":1,"2375":1,"2438":2,"2477":1,"2554":2}}],["signinurl",{"2":{"1059":1,"1683":1,"1684":1,"1792":1}}],["signin",{"2":{"296":1,"1059":2,"1061":1,"1683":1,"1684":1,"1697":1,"1792":4,"2554":1}}],["signed",{"2":{"297":1,"298":1,"305":1,"306":1,"1054":1,"1068":2,"1069":1,"1162":1,"1458":1,"1792":1,"1956":1,"2172":1,"2175":1,"2179":1,"2181":1,"2187":1,"2375":1,"2379":1,"2419":1,"2420":1,"2424":1,"2836":1}}],["signs",{"2":{"286":1,"291":2,"297":1,"934":1,"1210":1,"1460":1,"1792":1,"2176":1,"2186":2,"2375":1}}],["signoutasync",{"2":{"2437":1}}],["signout",{"2":{"282":1,"288":3}}],["sign",{"2":{"12":1,"27":1,"33":1,"224":2,"282":1,"284":1,"285":1,"286":2,"294":1,"296":1,"298":2,"300":1,"302":1,"312":1,"316":1,"597":1,"849":1,"868":1,"1213":1,"1215":3,"1216":4,"1222":1,"1224":1,"1236":3,"1239":5,"1240":1,"1465":2,"1467":2,"1481":2,"1484":2,"1486":1,"1684":2,"1685":1,"1697":1,"1699":2,"1792":12,"1874":1,"1886":1,"1888":1,"1889":1,"2170":1,"2176":2,"2186":1,"2187":1,"2189":3,"2420":1,"2437":1}}],["sibling",{"2":{"1570":1,"2092":1,"2154":1}}],["sizing",{"0":{"1169":1}}],["sized",{"2":{"1255":1,"2873":1}}],["size=len",{"2":{"1366":1}}],["size=50",{"2":{"1177":1,"1633":1}}],["size=100",{"2":{"1177":1,"1633":1}}],["sizes",{"2":{"966":1,"1266":1,"1792":2,"1935":1,"2050":1,"2051":1,"2059":1,"2124":1,"2364":1,"2400":1,"2635":3}}],["size",{"0":{"1170":1},"2":{"89":1,"324":1,"747":4,"748":2,"753":4,"757":4,"762":3,"763":1,"768":1,"772":3,"773":2,"776":2,"779":1,"782":6,"784":6,"786":3,"872":1,"879":1,"883":1,"887":1,"893":2,"894":1,"903":2,"948":1,"951":1,"971":1,"1060":1,"1107":1,"1272":1,"1285":1,"1355":2,"1357":3,"1359":1,"1360":1,"1366":1,"1410":3,"1511":1,"1616":2,"1687":1,"1792":6,"1804":2,"1974":1,"1991":5,"2073":1,"2075":1,"2080":1,"2125":2,"2245":3,"2270":1,"2451":1,"2607":1,"2789":1,"2804":1}}],["sieve",{"2":{"1101":1}}],["simd",{"0":{"2270":1},"2":{"2239":1,"2270":2}}],["simultaneous",{"2":{"1161":1}}],["simultaneously",{"2":{"948":1,"1053":1,"1098":1,"1147":1,"1745":1,"2270":1,"2346":1,"2736":1,"2873":1}}],["simulation",{"0":{"857":1},"2":{"852":3,"857":3,"860":1,"865":1}}],["simulated",{"2":{"854":1}}],["simulates",{"2":{"851":1,"1335":1}}],["simulate",{"2":{"851":1,"852":1,"1074":1}}],["simlpler",{"2":{"920":1}}],["similarly",{"2":{"1385":1}}],["similar",{"2":{"851":1,"918":1,"1087":1,"1102":1,"1303":1,"1401":1,"1728":1,"1792":8,"1838":4,"1898":2,"1909":1,"2047":1,"2062":1,"2264":1,"2431":1,"2436":2,"2635":1}}],["simplified",{"2":{"1728":1,"2264":1}}],["simplification",{"2":{"871":1,"1405":1}}],["simplify",{"2":{"1390":1,"1792":2}}],["simplicity",{"0":{"1405":1},"2":{"871":1,"1037":1,"1118":1,"1127":1,"1378":1,"1405":1}}],["simply",{"2":{"285":1,"304":1,"308":1,"389":1,"851":1,"857":1,"872":1,"873":1,"880":1,"920":1,"994":1,"1134":1,"1139":1,"1385":1,"1386":3,"1395":2,"1396":1,"1398":1,"1399":1,"1569":1,"1759":1,"1792":1,"1912":1,"2111":1,"2461":1,"2470":1,"2495":1,"2532":1,"2540":1,"2827":1,"2868":1}}],["simpler",{"2":{"307":1,"904":1,"918":1,"971":1,"975":1,"1006":1,"1088":1,"1094":1,"1097":1,"1103":1,"1126":1,"1323":1,"1385":2,"1398":1,"1405":2,"1792":1,"2820":1}}],["simplest",{"0":{"1369":1,"2173":1},"2":{"298":1,"308":1,"961":1,"1125":1,"1579":1,"2332":2,"2809":1}}],["simple",{"0":{"115":1,"360":1,"1064":1,"2194":1},"1":{"1065":1},"2":{"206":6,"438":1,"501":1,"663":1,"750":3,"752":2,"755":2,"835":1,"841":1,"849":1,"879":1,"908":1,"913":2,"914":1,"915":1,"918":1,"919":2,"930":1,"933":1,"934":1,"938":1,"948":1,"977":1,"987":1,"1005":1,"1019":1,"1023":1,"1026":1,"1073":2,"1076":1,"1084":3,"1121":2,"1123":1,"1125":1,"1126":1,"1205":1,"1206":1,"1207":1,"1302":1,"1323":1,"1335":2,"1351":1,"1372":1,"1385":1,"1386":3,"1387":2,"1389":1,"1398":3,"1401":1,"1402":1,"1553":1,"1556":2,"1557":1,"1581":1,"1685":1,"1730":1,"1752":1,"1753":3,"1755":1,"1758":1,"1792":7,"2164":1,"2165":2,"2180":1,"2205":1,"2589":1,"2766":1,"2772":1,"2823":1,"2837":2}}],["silicon",{"2":{"2576":1,"2779":1,"2790":1}}],["silenced",{"2":{"2879":1}}],["silence",{"0":{"2752":1,"2801":1},"2":{"1802":1,"2392":1,"2544":1,"2794":1}}],["silences",{"2":{"1801":1,"2537":1}}],["silent",{"0":{"2384":1,"2401":1,"2492":1},"1":{"2402":1,"2403":1,"2404":1,"2405":1},"2":{"704":1,"1071":1,"1150":1,"1792":1,"1801":1,"2221":1,"2224":1,"2353":1,"2378":1,"2384":1,"2401":1,"2402":1,"2405":2,"2451":2,"2493":1,"2544":2,"2752":1,"2801":1}}],["silently",{"0":{"2505":1},"2":{"308":1,"320":1,"382":1,"388":1,"701":1,"927":1,"928":1,"973":1,"1042":1,"1199":1,"1449":2,"1527":1,"1609":1,"1792":1,"1856":1,"2222":1,"2223":1,"2334":1,"2348":1,"2365":1,"2367":1,"2376":2,"2377":1,"2378":1,"2380":1,"2392":1,"2395":1,"2412":1,"2425":1,"2428":1,"2443":1,"2444":1,"2446":1,"2450":1,"2453":1,"2454":1,"2481":1,"2492":1,"2493":1,"2495":1,"2505":1,"2535":1,"2659":1}}],["silly",{"2":{"849":1}}],["sitting",{"2":{"851":1,"876":1,"1073":1,"1075":1}}],["sits",{"2":{"847":1,"848":1,"851":1,"852":1,"860":1,"1106":1,"1409":1,"1713":1,"2531":1,"2835":1}}],["situation",{"2":{"843":1,"2868":1}}],["sit",{"2":{"838":1,"859":1,"873":1,"2531":1}}],["sites",{"2":{"1209":1,"1423":1,"1867":1,"2400":1,"2405":1,"2414":1}}],["site",{"2":{"831":1,"834":1,"856":1,"866":1,"872":1,"1449":1,"1487":1,"1504":1,"1581":1,"1689":1,"1792":7,"1983":1,"2019":1,"2025":2,"2425":1,"2429":1,"2632":1}}],["six",{"2":{"448":1,"861":1,"2140":1,"2457":1}}],["sidesteps",{"2":{"921":1,"1428":1}}],["sides",{"2":{"666":1,"667":1,"1407":1}}],["side",{"0":{"668":1,"669":1,"826":1,"1140":1,"1218":1,"2768":1},"1":{"1141":1,"1142":1,"1143":1},"2":{"112":1,"182":1,"212":1,"215":1,"390":1,"395":1,"396":1,"527":1,"529":1,"534":1,"548":1,"667":1,"823":1,"826":1,"834":1,"837":2,"868":1,"871":1,"1033":1,"1037":2,"1039":1,"1043":2,"1068":1,"1084":1,"1096":6,"1100":1,"1104":1,"1105":1,"1106":1,"1108":1,"1109":1,"1111":1,"1121":1,"1122":1,"1126":1,"1127":1,"1136":1,"1137":1,"1139":1,"1140":1,"1149":1,"1181":1,"1209":1,"1232":1,"1234":1,"1241":1,"1279":1,"1399":2,"1403":1,"1409":1,"1410":2,"1419":1,"1432":1,"1448":1,"1459":1,"1569":1,"1738":3,"1769":1,"1792":5,"1882":1,"1884":1,"1890":1,"1923":2,"2020":1,"2040":2,"2156":1,"2164":1,"2230":1,"2282":1,"2284":1,"2291":1,"2338":2,"2346":1,"2375":1,"2384":1,"2391":2,"2394":1,"2477":1,"2495":1,"2496":1,"2509":2,"2520":1,"2542":1,"2634":1,"2635":1,"2759":1,"2762":1,"2768":2,"2771":1,"2835":1,"2853":1,"2868":2,"2878":1}}],["sink",{"2":{"2794":1,"2804":1}}],["sinks",{"2":{"2794":1}}],["sin",{"2":{"852":1}}],["singleton",{"2":{"1522":1,"1792":1,"2372":1,"2380":1}}],["single",{"0":{"254":1,"607":1,"609":1,"613":1,"811":1,"827":1,"914":1,"975":1,"1000":1,"1580":1,"2319":1,"2339":1,"2618":1,"2842":1},"1":{"608":1,"609":1,"610":1,"611":1,"612":1,"613":1,"614":1,"615":1,"616":1,"617":1,"2843":1},"2":{"102":1,"109":1,"121":1,"133":1,"186":1,"214":2,"227":2,"286":1,"302":1,"312":1,"335":1,"352":1,"378":2,"379":1,"383":1,"386":1,"480":1,"528":1,"560":1,"567":1,"568":2,"582":1,"583":1,"584":1,"585":3,"586":1,"587":2,"588":2,"607":3,"608":1,"609":3,"611":1,"612":1,"613":2,"614":5,"615":2,"616":1,"619":1,"626":2,"636":1,"663":1,"683":1,"705":1,"778":1,"827":1,"832":2,"833":1,"841":1,"844":2,"863":1,"864":1,"865":2,"867":1,"872":1,"873":1,"875":1,"876":1,"877":1,"901":1,"903":1,"904":1,"914":2,"916":1,"919":3,"920":1,"947":1,"954":1,"974":1,"975":1,"983":1,"996":2,"1005":1,"1010":1,"1029":1,"1038":1,"1039":1,"1041":2,"1045":2,"1067":2,"1069":1,"1070":1,"1074":1,"1077":1,"1084":5,"1086":3,"1087":2,"1088":1,"1094":1,"1098":3,"1099":1,"1101":1,"1102":2,"1105":1,"1107":2,"1121":1,"1127":3,"1145":1,"1150":2,"1162":2,"1172":2,"1181":1,"1192":1,"1193":1,"1206":1,"1235":1,"1266":1,"1302":1,"1304":1,"1305":1,"1322":1,"1367":1,"1370":5,"1376":2,"1378":2,"1381":1,"1382":2,"1385":1,"1386":8,"1391":4,"1393":1,"1398":3,"1402":4,"1409":1,"1410":1,"1416":1,"1427":2,"1429":1,"1430":1,"1431":1,"1439":1,"1450":1,"1457":1,"1458":1,"1459":1,"1517":1,"1522":1,"1527":1,"1577":1,"1608":1,"1651":1,"1655":2,"1743":2,"1745":1,"1746":1,"1758":1,"1792":15,"1813":1,"1817":1,"1824":4,"1852":2,"1885":1,"1911":1,"1917":1,"1925":1,"1955":1,"1957":2,"2000":1,"2002":2,"2009":3,"2040":1,"2056":1,"2149":1,"2156":1,"2179":1,"2212":1,"2222":1,"2224":1,"2252":1,"2265":1,"2270":1,"2272":1,"2274":1,"2277":1,"2287":1,"2293":1,"2297":1,"2320":2,"2330":3,"2333":3,"2337":5,"2339":16,"2340":1,"2346":1,"2347":2,"2348":2,"2354":1,"2357":3,"2364":1,"2366":3,"2372":1,"2375":2,"2379":2,"2380":3,"2383":2,"2397":1,"2398":1,"2400":1,"2419":1,"2423":1,"2435":3,"2438":2,"2445":1,"2452":1,"2456":1,"2461":1,"2463":1,"2464":1,"2470":1,"2474":1,"2481":3,"2482":1,"2502":2,"2504":1,"2512":1,"2518":2,"2522":1,"2529":1,"2531":2,"2540":2,"2542":1,"2546":1,"2554":1,"2590":2,"2618":1,"2649":1,"2725":3,"2744":1,"2762":2,"2774":1,"2776":1,"2814":1,"2830":1,"2833":1,"2841":2,"2842":1,"2845":1,"2850":2,"2851":1,"2852":3,"2854":2,"2865":1}}],["sincere",{"2":{"841":1}}],["since",{"2":{"19":1,"20":1,"22":1,"310":1,"325":1,"412":1,"429":1,"458":1,"559":1,"581":1,"618":1,"653":1,"823":1,"840":2,"844":1,"845":1,"849":1,"876":1,"892":1,"919":1,"932":1,"953":1,"986":1,"988":1,"990":1,"992":1,"1049":1,"1073":1,"1077":1,"1094":2,"1111":1,"1122":1,"1179":1,"1238":1,"1251":1,"1372":1,"1379":2,"1398":1,"1400":1,"1407":1,"1792":1,"1801":1,"1802":1,"1840":2,"2289":1,"2310":1,"2313":1,"2384":1,"2389":1,"2398":1,"2430":1,"2434":1,"2444":1,"2466":1,"2533":1,"2544":1,"2621":1,"2719":1,"2721":1,"2731":1,"2739":1,"2752":1,"2767":1,"2794":1,"2801":1,"2803":1,"2824":1,"2841":1,"2844":1,"2865":1}}],["spurious",{"2":{"2542":1}}],["spun",{"2":{"1522":1}}],["spoofed",{"2":{"1717":1}}],["spoof",{"2":{"1716":1,"1792":1,"2633":1}}],["spot",{"2":{"859":2,"861":1,"2531":1}}],["spots",{"2":{"859":1,"861":1}}],["sprint",{"2":{"1382":2}}],["spring",{"2":{"1007":1,"1037":1,"1064":1,"1255":1,"1257":1,"1265":1,"1269":1,"1270":1,"1277":1,"1278":1,"1279":1,"1281":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["spreadcheetah",{"2":{"949":1,"951":2,"969":1,"1099":1,"1792":2,"2077":2,"2652":1}}],["spread",{"2":{"860":1,"869":1,"1302":1}}],["spreadsheetml",{"2":{"772":1,"773":1,"893":1}}],["spreadsheet",{"2":{"161":1,"673":1,"951":1,"1099":1,"1202":1,"1789":1,"1792":1,"2072":1,"2077":1,"2650":1,"2652":1}}],["spinner",{"2":{"1685":1}}],["spinning",{"2":{"994":1,"1442":1}}],["spin",{"2":{"1076":1}}],["spikes",{"2":{"1164":1,"1171":1,"1180":1,"1324":1}}],["spike",{"2":{"948":1}}],["spills",{"2":{"919":1}}],["spawns",{"2":{"2157":1,"2543":1}}],["spas",{"2":{"1792":1}}],["spamming",{"2":{"1393":1}}],["spa",{"2":{"868":1,"1447":1,"1449":1,"2224":1,"2225":1,"2419":1,"2425":1,"2429":1,"2436":1,"2474":1}}],["spans",{"2":{"865":1}}],["span",{"2":{"864":1,"1429":1}}],["spanning",{"2":{"849":1,"872":1}}],["spanner",{"2":{"848":1}}],["sparc",{"2":{"848":1}}],["spatialite",{"2":{"834":1}}],["spaces",{"2":{"133":1,"277":1,"2212":1}}],["space",{"0":{"273":1},"2":{"14":1,"268":2,"687":1,"768":1,"786":2,"891":1,"1169":1,"2200":2,"2540":1,"2845":1}}],["sp",{"2":{"833":1,"836":3}}],["spell",{"2":{"1404":2}}],["speedup",{"2":{"874":1}}],["speed",{"2":{"872":1,"1353":1,"1938":1}}],["spend",{"2":{"2398":1}}],["spending",{"2":{"1328":1,"1403":1}}],["spends",{"2":{"831":1,"1079":1}}],["spent",{"2":{"851":1,"872":1,"1281":1,"1398":1,"1440":1}}],["speaker",{"2":{"1037":1,"1381":1,"1382":1}}],["speakers",{"2":{"851":1}}],["speaking",{"2":{"920":1,"1401":1}}],["speaks",{"2":{"848":2}}],["speak",{"2":{"840":1,"1179":1,"1958":1}}],["spec",{"2":{"347":1,"1039":1,"1385":1,"1386":1,"1422":1,"1773":2,"1792":1,"1824":1,"1908":1,"1911":1,"2393":1,"2419":1,"2432":1,"2481":2,"2762":1}}],["specifykind",{"2":{"1856":1,"2451":2,"2452":1,"2455":1}}],["specifying",{"2":{"397":1,"980":1,"1174":1,"1697":1,"2200":1}}],["specify",{"2":{"68":1,"144":1,"419":1,"420":1,"444":1,"526":1,"654":1,"751":1,"1052":1,"1067":1,"1142":1,"1173":1,"1217":1,"1382":1,"1394":1,"1631":1,"1632":1,"1640":2,"1642":1,"1643":1,"1707":1,"1708":1,"1717":1,"1792":3,"2047":1,"2256":1,"2259":1,"2305":1,"2322":1,"2634":1,"2635":1,"2684":2}}],["specifies",{"2":{"886":1,"934":1,"1917":1,"2814":1}}],["specified",{"0":{"654":1},"2":{"21":1,"22":1,"25":1,"46":1,"63":2,"73":1,"81":1,"113":1,"120":1,"169":1,"245":2,"518":1,"643":1,"644":1,"656":1,"669":1,"745":1,"809":1,"818":1,"934":1,"1531":1,"1532":1,"1588":1,"1608":1,"1613":1,"1654":1,"1731":1,"1764":1,"1792":6,"1858":1,"1983":1,"2047":1,"2124":1,"2140":1,"2197":2,"2251":1,"2254":1,"2264":1,"2266":1,"2272":1,"2575":2,"2634":1,"2635":1}}],["specifically",{"2":{"335":1,"841":1,"951":1}}],["specifications",{"2":{"2772":1}}],["specification",{"2":{"317":1,"1211":1,"1584":1,"1792":4,"1813":1,"1896":1,"1900":1,"2254":3,"2555":1}}],["specific",{"0":{"18":1,"289":1,"899":1,"1970":1,"2833":1},"2":{"52":1,"184":1,"186":1,"213":1,"220":1,"223":2,"286":2,"291":1,"313":1,"390":1,"641":1,"643":1,"646":2,"683":2,"748":1,"753":8,"757":11,"768":1,"776":2,"784":1,"788":1,"852":1,"868":3,"869":1,"873":1,"884":1,"892":1,"914":1,"967":2,"1048":1,"1068":1,"1075":1,"1079":1,"1100":1,"1104":1,"1105":1,"1111":1,"1141":1,"1179":1,"1185":1,"1192":1,"1230":1,"1231":1,"1313":2,"1358":2,"1445":1,"1448":1,"1530":1,"1540":1,"1544":1,"1573":1,"1599":1,"1612":1,"1613":1,"1632":1,"1644":1,"1646":1,"1740":1,"1764":1,"1771":1,"1792":12,"1801":1,"1839":1,"1856":1,"1880":1,"1881":1,"1932":1,"1958":1,"1970":1,"1992":1,"1993":1,"2020":1,"2035":1,"2036":1,"2047":2,"2063":1,"2186":1,"2193":1,"2199":1,"2201":1,"2205":1,"2207":1,"2256":1,"2257":2,"2279":1,"2288":1,"2292":1,"2293":1,"2314":1,"2412":1,"2424":1,"2437":2,"2466":1,"2468":1,"2550":1,"2581":2,"2608":1,"2635":2,"2655":1,"2722":1,"2750":1,"2776":1,"2789":1,"2790":1,"2791":1,"2792":1,"2798":1,"2827":1,"2828":1,"2833":2}}],["specialized",{"2":{"849":1}}],["specially",{"2":{"297":1,"1792":1,"2264":2}}],["special",{"0":{"33":1,"81":1,"300":1,"468":1,"950":1},"1":{"301":1,"302":1,"303":1,"951":1,"952":1,"953":1,"954":1},"2":{"32":1,"33":1,"35":1,"202":1,"297":2,"298":4,"299":1,"304":1,"315":1,"460":1,"462":1,"930":2,"956":1,"1374":1,"1386":1,"1401":2,"1480":1,"1686":2,"1688":2,"1792":3,"1854":1,"2176":1,"2180":1,"2181":1,"2189":1,"2191":1,"2255":1,"2589":5,"2595":1,"2807":1}}],["spliced",{"2":{"699":1,"2010":1,"2531":1,"2869":1}}],["splitting",{"0":{"2834":1},"2":{"928":1,"2528":1,"2827":1,"2863":1}}],["splits",{"2":{"841":1,"2391":1}}],["split",{"0":{"1431":1},"2":{"663":1,"836":1,"872":1,"874":1,"1026":3,"1414":1,"1417":1,"1437":1,"1438":1,"1792":1,"2226":1,"2228":1,"2318":1,"2369":1,"2372":1,"2482":1,"2805":1,"2815":1,"2840":1}}],["se",{"2":{"1394":1}}],["seven",{"2":{"1382":1,"2399":1}}],["severity",{"2":{"1792":2,"2108":1,"2392":2,"2536":1,"2802":1,"2880":1}}],["severe",{"2":{"1324":1}}],["severely",{"2":{"919":1}}],["several",{"2":{"267":1,"386":1,"696":1,"847":1,"849":1,"868":2,"872":1,"1011":1,"1073":1,"1254":1,"1256":1,"1266":1,"1526":1,"1746":1,"1792":1,"2098":1,"2172":1,"2178":1,"2210":1,"2347":1,"2397":1,"2533":1,"2534":1,"2614":1,"2766":1,"2767":1,"2866":1,"2871":1,"2873":1}}],["seamless",{"2":{"2266":1}}],["sea",{"2":{"913":1}}],["searching",{"0":{"2695":1}}],["searches",{"2":{"2678":1}}],["searched",{"2":{"933":1}}],["searchvalues",{"2":{"2270":1}}],["searchproductstypes",{"2":{"1571":3}}],["searchproducts",{"2":{"1043":1,"1571":3}}],["search",{"0":{"106":1,"933":1,"1070":1,"2678":1},"2":{"250":4,"324":3,"468":5,"520":4,"933":5,"934":2,"935":1,"936":1,"946":1,"1033":3,"1037":1,"1038":3,"1043":1,"1044":1,"1055":1,"1056":2,"1057":1,"1058":1,"1060":1,"1065":1,"1066":1,"1070":6,"1096":3,"1102":4,"1121":1,"1127":1,"1163":1,"1185":3,"1188":2,"1192":1,"1436":1,"1437":1,"1442":1,"1618":3,"1792":5,"1852":2,"2204":1,"2231":1,"2256":5,"2267":1,"2383":2,"2494":1,"2558":1,"2695":1,"2700":1}}],["semantics",{"0":{"690":1,"706":1},"2":{"1067":1,"1078":1,"1111":1,"1135":1,"1521":1,"1533":1,"1792":2,"2002":1,"2107":1,"2110":1,"2221":1,"2371":1,"2451":1,"2522":1,"2530":1,"2531":1,"2537":1,"2539":1,"2869":1}}],["semantically",{"2":{"666":1}}],["semantic",{"2":{"663":1,"845":1,"2453":1}}],["semicolons",{"2":{"2117":1,"2118":1,"2702":1,"2703":1}}],["semicolon",{"0":{"563":1},"2":{"560":1,"563":1,"619":1,"767":1,"786":1,"2320":1,"2340":1,"2528":1,"2863":1}}],["sequentially",{"2":{"829":1,"1394":1}}],["sequential",{"2":{"529":1,"772":1,"860":1,"1029":1,"2050":1,"2284":1,"2621":1}}],["sequence",{"0":{"1590":1},"2":{"389":1,"695":1,"1792":3,"1909":1,"2167":1,"2431":1,"2528":1,"2545":1,"2546":1,"2863":1,"2873":2,"2881":1}}],["sequences",{"2":{"340":1,"599":1,"860":1,"1079":1,"1101":1,"2270":1,"2533":1,"2867":1,"2873":1}}],["session=abc123",{"2":{"541":2,"2202":1}}],["session",{"0":{"1068":2,"1174":1,"1628":1},"2":{"453":1,"624":1,"728":1,"737":1,"805":1,"835":1,"1064":1,"1066":1,"1068":6,"1070":2,"1079":1,"1098":4,"1150":1,"1175":1,"1176":2,"1232":1,"1308":1,"1320":1,"1445":1,"1446":1,"1449":1,"1458":6,"1459":2,"1519":1,"1540":1,"1628":2,"1792":11,"1850":1,"1851":2,"1882":1,"2052":1,"2099":1,"2153":1,"2171":2,"2172":1,"2184":1,"2266":4,"2342":1,"2375":8,"2381":1,"2382":3,"2410":4,"2413":1,"2425":1,"2427":1,"2438":1,"2445":1,"2527":1,"2532":1,"2534":1,"2537":2,"2572":1,"2862":1}}],["sessionstorage",{"2":{"1684":2,"1792":2}}],["sessions",{"2":{"288":2,"623":1,"641":2,"832":1,"966":1,"1037":1,"1066":1,"1121":1,"1127":1,"1303":1,"1324":1,"1447":1,"1458":1,"1792":3,"2052":1,"2059":1,"2064":1,"2375":1,"2635":3}}],["segmented",{"2":{"944":1,"946":1}}],["segmentation",{"2":{"930":1}}],["segmentsperwindow",{"2":{"478":1,"1159":1,"1177":1,"1792":1,"1952":2,"1960":1,"2257":1,"2443":1}}],["segments",{"2":{"395":1,"928":1,"929":2,"930":3,"1159":3,"1952":2,"2286":1}}],["segment",{"2":{"387":1,"395":2,"408":1,"409":1,"652":1,"653":2,"654":1,"662":2,"927":2,"928":5,"929":8,"2372":2,"2481":1,"2665":1}}],["selfbaseurl",{"2":{"2346":2,"2372":1}}],["self",{"0":{"421":1,"445":1,"1119":1,"1398":1,"1744":1,"1929":1,"2250":1,"2345":1,"2346":1,"2347":1,"2767":1},"1":{"1399":1,"1745":1,"1746":1,"1747":1,"1930":1,"2346":1,"2347":1,"2348":1},"2":{"261":1,"266":2,"422":1,"423":2,"446":4,"480":2,"832":2,"1084":3,"1086":1,"1088":2,"1094":2,"1100":1,"1107":1,"1119":1,"1121":1,"1127":3,"1343":1,"1399":1,"1746":1,"1747":1,"1792":4,"1929":1,"1961":2,"2020":3,"2021":2,"2029":6,"2049":1,"2156":1,"2250":1,"2329":1,"2344":1,"2347":1,"2372":2,"2534":1,"2542":1,"2577":1,"2607":1,"2632":4,"2709":1,"2711":1,"2759":1,"2767":1,"2792":1,"2803":1,"2811":2}}],["selectors",{"2":{"2437":1}}],["selector",{"2":{"2423":1}}],["selects",{"2":{"693":1,"834":1,"856":1,"876":1,"1410":1,"1458":2,"1511":1,"1792":1,"2375":1,"2380":1,"2412":1}}],["selection",{"0":{"679":1},"2":{"852":1,"1044":1,"1096":1,"1101":1,"2261":1,"2445":1}}],["selective",{"2":{"286":1,"1519":1}}],["selecting",{"2":{"167":1,"1792":1,"2094":1,"2095":1,"2322":1,"2537":1,"2597":1}}],["selected",{"2":{"101":1,"2153":1}}],["select",{"2":{"7":2,"16":2,"19":1,"20":1,"30":1,"34":1,"35":3,"37":5,"38":3,"39":3,"40":2,"48":2,"50":2,"60":1,"61":2,"62":1,"71":1,"101":1,"104":2,"115":2,"116":1,"119":1,"123":1,"128":2,"136":2,"157":1,"167":1,"168":2,"175":1,"186":1,"206":2,"215":1,"230":1,"247":2,"249":1,"250":1,"254":1,"255":1,"256":1,"257":1,"263":1,"264":1,"265":1,"289":1,"290":1,"291":1,"298":2,"302":1,"304":2,"308":2,"309":1,"312":2,"313":3,"322":1,"325":1,"332":1,"333":1,"334":1,"335":1,"366":1,"372":1,"373":1,"374":1,"376":1,"380":1,"383":2,"386":1,"401":1,"408":2,"415":3,"417":1,"418":1,"419":1,"420":1,"421":1,"426":2,"427":1,"428":1,"436":1,"438":3,"441":1,"442":1,"443":1,"444":1,"445":1,"451":2,"452":1,"453":1,"466":2,"467":1,"468":1,"469":1,"487":2,"488":1,"489":1,"490":1,"493":1,"503":1,"510":1,"520":2,"527":2,"531":1,"532":2,"539":2,"540":1,"541":1,"542":1,"545":1,"562":2,"563":2,"565":2,"566":3,"584":5,"585":2,"586":2,"611":1,"612":1,"613":1,"614":2,"621":1,"622":2,"623":1,"625":1,"665":1,"677":2,"679":1,"689":1,"691":2,"695":1,"700":4,"705":1,"710":1,"711":1,"715":1,"722":2,"723":1,"733":2,"734":1,"735":1,"736":1,"750":1,"764":2,"767":1,"774":2,"775":1,"787":1,"789":1,"797":2,"798":1,"799":1,"811":2,"826":2,"827":1,"834":3,"835":3,"848":4,"854":1,"886":2,"899":1,"900":1,"902":1,"903":2,"904":2,"914":2,"916":3,"918":2,"934":1,"935":1,"936":1,"956":1,"965":1,"967":1,"979":2,"980":2,"982":1,"986":1,"988":2,"989":1,"990":4,"991":2,"994":1,"1033":1,"1038":1,"1042":1,"1054":2,"1055":1,"1057":1,"1058":1,"1059":1,"1060":2,"1062":1,"1068":1,"1070":1,"1073":2,"1074":3,"1076":4,"1077":1,"1078":2,"1098":1,"1102":1,"1105":3,"1107":1,"1113":1,"1114":1,"1135":2,"1138":2,"1139":1,"1141":2,"1142":2,"1149":1,"1150":1,"1154":1,"1161":1,"1176":1,"1179":4,"1188":1,"1192":1,"1193":2,"1197":2,"1214":1,"1215":1,"1216":1,"1217":5,"1232":3,"1234":4,"1236":2,"1239":1,"1308":1,"1310":1,"1331":1,"1332":1,"1337":1,"1338":1,"1339":2,"1345":2,"1347":1,"1357":2,"1362":1,"1368":2,"1369":1,"1370":2,"1371":3,"1372":3,"1373":1,"1374":1,"1375":1,"1376":7,"1378":1,"1385":1,"1386":7,"1387":2,"1390":1,"1391":2,"1393":3,"1394":1,"1395":5,"1396":5,"1398":4,"1405":1,"1408":2,"1410":2,"1412":2,"1413":1,"1414":2,"1419":1,"1427":2,"1429":3,"1437":1,"1440":1,"1442":2,"1458":4,"1503":1,"1504":4,"1505":1,"1533":1,"1535":1,"1543":5,"1547":2,"1567":2,"1632":2,"1650":1,"1651":1,"1655":2,"1663":1,"1664":1,"1683":1,"1684":1,"1689":4,"1698":1,"1727":1,"1738":1,"1742":1,"1792":12,"1852":2,"1893":8,"1920":2,"1973":1,"1974":1,"2006":1,"2009":1,"2010":2,"2012":1,"2049":1,"2076":2,"2078":1,"2079":1,"2102":1,"2167":1,"2171":1,"2176":2,"2177":2,"2178":1,"2180":1,"2183":1,"2184":1,"2187":3,"2220":1,"2221":1,"2227":1,"2277":4,"2283":3,"2285":2,"2290":1,"2293":1,"2297":1,"2303":1,"2319":3,"2320":2,"2321":1,"2322":2,"2323":1,"2324":1,"2326":1,"2328":1,"2333":1,"2336":1,"2337":7,"2338":2,"2339":3,"2340":3,"2342":1,"2343":1,"2344":1,"2348":2,"2375":3,"2383":2,"2389":1,"2498":1,"2526":2,"2528":1,"2531":1,"2535":2,"2540":2,"2549":1,"2551":2,"2586":1,"2587":1,"2588":1,"2589":1,"2607":1,"2635":1,"2649":1,"2664":1,"2723":1,"2726":1,"2729":1,"2731":1,"2733":1,"2734":1,"2739":1,"2762":1,"2764":1,"2767":1,"2768":1,"2774":3,"2775":1,"2809":1,"2813":4,"2815":1,"2821":1,"2834":1,"2836":1,"2840":1,"2842":2,"2843":1,"2845":2,"2846":1,"2847":1,"2850":2,"2851":1,"2852":1,"2854":1,"2855":2,"2860":2,"2861":3,"2864":1,"2866":2,"2868":1,"2869":2,"2873":1,"2876":1,"2881":1}}],["serif",{"2":{"1792":1,"2073":1,"2075":1,"2080":1}}],["serial",{"2":{"1213":1,"1336":1}}],["serialiser",{"2":{"872":1}}],["serializable",{"2":{"864":1}}],["serialization",{"0":{"1284":1,"1286":1,"1296":1,"1592":1},"1":{"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1297":1},"2":{"576":1,"874":1,"1007":2,"1074":1,"1152":1,"1153":1,"1155":1,"1181":1,"1255":2,"1258":2,"1271":1,"1276":2,"1281":1,"1285":1,"1399":2,"1592":1,"1624":2,"1746":1,"1792":3,"1974":1,"2265":1,"2270":1,"2347":1,"2481":1,"2527":1,"2585":1,"2586":1,"2588":1,"2600":2,"2603":1,"2607":1,"2621":2,"2641":1,"2739":1,"2860":1}}],["serializing",{"2":{"851":1,"919":1,"1378":1,"1967":1}}],["serializer",{"2":{"1974":1,"2607":1}}],["serializeauthendpointsresponse",{"2":{"1469":1,"1470":1,"1792":1}}],["serializestring",{"2":{"2372":1}}],["serializes",{"2":{"1309":1,"1324":1,"1325":1,"2217":1,"2463":1,"2869":1}}],["serialized",{"2":{"330":1,"334":1,"335":2,"336":1,"337":2,"739":1,"802":1,"851":1,"861":1,"919":1,"1402":1,"1407":1,"1475":1,"1477":1,"1540":1,"1544":1,"1792":5,"1824":1,"1967":1,"1974":1,"2000":1,"2010":2,"2258":1,"2330":1,"2464":1,"2481":1,"2586":3,"2588":2,"2589":1,"2607":1}}],["serialize",{"2":{"227":1,"328":1,"851":1,"948":1,"2463":1,"2466":1,"2587":1}}],["serilog",{"2":{"1110":1,"1605":1,"1792":5,"1799":1,"1801":1,"1809":2,"2497":1,"2498":1,"2535":1,"2544":2,"2688":1,"2794":2,"2880":1}}],["seriously",{"2":{"859":1,"1385":1}}],["serious",{"2":{"852":1,"1401":1}}],["series",{"2":{"841":1,"866":1,"869":1,"1134":1,"1255":1,"1403":1}}],["serving",{"2":{"834":2,"868":1,"1086":1,"1094":3,"1138":1,"1208":1,"1354":2,"1363":1,"1365":1,"1386":1,"1406":1,"1419":1,"1420":1,"1422":1,"1754":1,"1791":1,"1798":1,"1856":1,"2032":1,"2034":1,"2135":1,"2157":1,"2223":1,"2254":1,"2539":1,"2543":1,"2546":1,"2627":1,"2857":1}}],["serviceprovidermode",{"2":{"2267":1}}],["serviceprovider",{"2":{"2267":1}}],["services",{"0":{"1328":1},"1":{"1329":1,"1330":1,"1331":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1341":1,"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1},"2":{"837":1,"844":1,"873":1,"947":1,"1010":1,"1013":1,"1015":1,"1026":2,"1035":4,"1036":1,"1037":1,"1066":1,"1084":1,"1088":3,"1094":1,"1098":1,"1099":1,"1104":1,"1105":1,"1108":1,"1118":1,"1127":2,"1181":1,"1209":1,"1248":1,"1255":1,"1302":1,"1322":1,"1328":1,"1329":1,"1350":1,"1351":1,"1382":1,"1423":1,"1789":1,"2175":1,"2529":1,"2580":2,"2865":1}}],["service",{"0":{"1104":1,"1334":1,"1335":1,"1431":1,"1713":1},"1":{"1105":1,"1106":1,"1107":1,"1108":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1},"2":{"412":1,"414":2,"415":3,"418":2,"420":2,"426":2,"427":2,"428":2,"429":1,"433":1,"435":1,"451":4,"453":1,"833":1,"835":1,"840":1,"855":1,"860":2,"869":1,"871":2,"873":1,"876":1,"948":1,"958":1,"968":1,"1006":1,"1008":1,"1011":2,"1027":1,"1036":1,"1037":1,"1068":1,"1084":1,"1088":1,"1099":1,"1100":1,"1101":1,"1104":1,"1105":3,"1106":1,"1107":3,"1108":2,"1115":1,"1127":1,"1181":1,"1259":1,"1277":2,"1303":1,"1328":3,"1331":1,"1332":1,"1333":2,"1334":1,"1335":5,"1338":1,"1339":1,"1342":3,"1343":1,"1345":4,"1348":1,"1349":1,"1350":1,"1382":1,"1396":2,"1401":1,"1405":2,"1431":2,"1433":2,"1457":1,"1701":1,"1713":1,"1766":1,"1767":2,"1770":1,"1782":1,"1792":8,"1800":3,"1807":3,"1808":3,"1915":1,"1917":1,"2164":4,"2165":2,"2171":1,"2300":2,"2302":1,"2303":2,"2304":1,"2306":1,"2310":1,"2313":1,"2419":1,"2549":1,"2550":1,"2554":1,"2580":1,"2633":2,"2634":3,"2717":1,"2791":1,"2804":2,"2806":1,"2809":6,"2813":4,"2815":3,"2816":2}}],["serves",{"2":{"831":1,"957":1,"959":1,"1045":1,"1073":1,"1086":1,"1127":1,"1363":1,"1822":1,"1833":1,"1911":1,"2543":1}}],["serve",{"0":{"1362":1},"1":{"1363":1},"2":{"666":1,"835":1,"1037":2,"1073":1,"1094":1,"1101":1,"1107":2,"1137":1,"1335":1,"1364":1,"1911":1,"2042":1,"2056":1,"2419":1,"2434":1,"2438":1,"2494":1,"2502":1,"2815":1}}],["served",{"2":{"214":1,"1363":1,"1385":1,"1404":1,"1412":1,"1722":1,"1743":1,"1792":6,"1828":1,"1831":1,"2040":1,"2224":1,"2474":1,"2477":1,"2481":1,"2502":1,"2626":1,"2634":1,"2635":1,"2835":1,"2868":1}}],["server2",{"2":{"2266":1}}],["serverversion",{"0":{"1819":1},"2":{"1792":1,"1814":1,"2481":1}}],["servername",{"0":{"1818":1},"2":{"1792":1,"1814":1,"2481":1}}],["serverinfo",{"2":{"1792":2,"1818":1,"1819":1,"1824":1,"2481":1}}],["serverless",{"2":{"1104":1,"1107":1}}],["serversenteventsresponseheaders",{"2":{"1792":1,"1836":1,"1857":1,"1859":1,"2249":1,"2701":1,"2835":2}}],["servers",{"0":{"1900":1},"2":{"841":1,"947":1,"948":1,"1014":1,"1049":1,"1151":1,"1174":2,"1175":1,"1176":2,"1180":1,"1621":1,"1792":6,"1833":1,"1897":1,"1898":3,"1900":1,"1907":1,"1911":1,"2254":3,"2434":1}}],["server",{"0":{"162":1,"233":1,"1045":1,"1140":1,"1141":1,"1183":1,"1302":1,"1304":1,"1420":1,"1714":1,"1825":1,"1857":1,"1978":1,"2157":1,"2166":1,"2248":1,"2481":1,"2520":1,"2543":1,"2768":1,"2827":1},"1":{"1141":1,"1142":1,"1143":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1,"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1308":1,"1309":1,"1310":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"1858":1,"1859":1,"1860":1,"1861":1,"1979":1,"1980":1,"1981":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1,"1995":1,"1996":1,"1997":1,"2249":1,"2250":1,"2251":1,"2252":1,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1},"2":{"112":1,"121":1,"184":1,"212":1,"215":3,"233":1,"301":1,"307":1,"317":1,"327":2,"356":1,"390":8,"395":1,"396":1,"415":1,"421":1,"436":2,"445":1,"527":3,"529":1,"534":2,"548":1,"627":1,"634":1,"635":1,"636":1,"647":1,"648":1,"649":1,"670":1,"726":1,"746":1,"754":1,"834":1,"835":1,"837":1,"848":4,"868":2,"871":1,"907":2,"918":1,"919":2,"920":1,"961":1,"970":1,"971":2,"1014":1,"1015":1,"1032":1,"1033":3,"1037":2,"1039":2,"1044":1,"1045":2,"1047":2,"1049":6,"1067":1,"1068":1,"1075":1,"1078":1,"1079":1,"1080":1,"1086":1,"1094":3,"1096":1,"1098":2,"1100":1,"1101":1,"1103":2,"1104":1,"1105":1,"1106":2,"1107":1,"1108":2,"1109":1,"1111":1,"1121":2,"1126":1,"1135":1,"1136":1,"1137":3,"1139":1,"1140":1,"1149":1,"1152":1,"1172":1,"1174":3,"1176":1,"1180":2,"1181":1,"1210":2,"1229":1,"1232":1,"1234":1,"1237":1,"1251":1,"1269":1,"1302":2,"1303":1,"1304":2,"1316":1,"1320":4,"1322":1,"1323":2,"1328":1,"1333":3,"1335":4,"1354":1,"1363":1,"1368":1,"1372":1,"1379":1,"1385":1,"1386":1,"1388":1,"1396":2,"1398":2,"1401":1,"1405":4,"1406":1,"1407":1,"1409":1,"1414":1,"1418":1,"1419":2,"1431":3,"1432":1,"1459":1,"1466":2,"1493":1,"1513":1,"1516":1,"1534":1,"1559":1,"1569":3,"1606":1,"1611":1,"1616":2,"1618":1,"1624":3,"1628":3,"1635":2,"1648":2,"1666":2,"1718":2,"1738":4,"1739":1,"1744":1,"1753":1,"1759":1,"1769":1,"1771":1,"1787":2,"1789":2,"1792":47,"1794":2,"1812":2,"1813":2,"1816":1,"1820":1,"1823":4,"1825":6,"1827":1,"1828":1,"1833":1,"1857":1,"1862":1,"1864":1,"1868":1,"1879":1,"1882":1,"1884":1,"1898":3,"1900":3,"1907":1,"1912":1,"1917":1,"1923":2,"1925":1,"1929":1,"1940":1,"1941":1,"1946":2,"1961":1,"1963":2,"1978":2,"1983":1,"1984":1,"1990":1,"1994":1,"2040":3,"2056":1,"2091":2,"2092":1,"2106":1,"2115":1,"2117":1,"2121":1,"2127":1,"2153":2,"2155":1,"2156":1,"2157":3,"2159":1,"2162":1,"2164":3,"2166":2,"2168":1,"2177":1,"2221":1,"2222":3,"2223":1,"2230":1,"2240":1,"2242":1,"2254":4,"2265":1,"2266":2,"2271":1,"2282":2,"2283":2,"2284":1,"2287":1,"2292":1,"2303":1,"2329":1,"2346":4,"2362":1,"2372":1,"2375":1,"2384":2,"2394":1,"2434":1,"2452":1,"2477":2,"2481":4,"2483":2,"2496":1,"2508":1,"2509":2,"2515":1,"2517":1,"2519":1,"2520":2,"2521":1,"2525":1,"2527":2,"2534":1,"2541":3,"2542":3,"2543":6,"2545":1,"2634":1,"2635":1,"2701":2,"2702":2,"2706":2,"2742":1,"2749":1,"2755":1,"2759":1,"2762":1,"2768":2,"2771":1,"2772":1,"2776":2,"2797":1,"2802":1,"2805":1,"2823":1,"2824":1,"2827":1,"2840":1,"2857":1,"2860":1,"2862":1,"2878":3}}],["separating",{"2":{"2063":1}}],["separation",{"2":{"848":1,"1015":1,"1385":1}}],["separators",{"2":{"2265":1}}],["separator",{"0":{"344":1,"598":1,"601":1,"602":1,"603":1,"604":1,"1968":1,"2365":1},"1":{"599":1,"600":1,"601":1,"602":1,"603":1,"604":1,"605":1,"606":1},"2":{"128":2,"129":1,"131":1,"159":3,"229":3,"339":1,"342":1,"343":1,"346":1,"489":1,"490":1,"491":1,"493":1,"494":1,"496":1,"537":1,"598":2,"599":1,"601":1,"602":1,"603":1,"604":1,"915":1,"1189":2,"1196":1,"1373":2,"1792":2,"1967":1,"1968":2,"2206":1,"2265":1,"2323":1,"2329":2,"2365":5,"2495":1,"2648":1,"2726":2}}],["separately",{"2":{"214":1,"856":1,"926":1,"927":1,"928":1,"1386":2,"1743":1,"1792":1,"1825":2,"2107":1,"2481":1,"2537":1,"2765":1,"2832":1}}],["separate",{"0":{"24":1,"562":1,"1107":1,"2628":1},"2":{"116":1,"328":1,"330":1,"378":1,"531":1,"560":1,"619":1,"656":1,"809":1,"832":1,"833":1,"845":1,"852":2,"868":1,"873":1,"874":1,"879":1,"904":1,"908":1,"946":1,"947":1,"948":1,"968":1,"971":1,"993":1,"1038":1,"1039":1,"1049":1,"1067":1,"1068":1,"1088":1,"1099":1,"1106":2,"1107":1,"1108":4,"1115":1,"1126":1,"1142":1,"1174":1,"1176":1,"1178":1,"1203":1,"1303":2,"1304":1,"1354":1,"1378":1,"1386":1,"1400":1,"1414":1,"1440":1,"1458":2,"1554":1,"1559":2,"1571":1,"1632":1,"1696":1,"1781":1,"1792":6,"2095":1,"2110":1,"2117":1,"2171":1,"2192":1,"2217":1,"2235":1,"2254":1,"2333":1,"2340":1,"2375":2,"2380":1,"2381":1,"2419":1,"2429":1,"2434":1,"2437":1,"2438":1,"2453":1,"2484":2,"2504":1,"2530":1,"2537":1,"2538":1,"2545":1,"2575":1,"2587":1,"2590":1,"2628":1,"2692":1,"2702":1,"2714":1,"2815":1,"2834":1,"2872":1}}],["separated",{"0":{"490":1},"2":{"14":1,"113":1,"490":1,"559":1,"637":1,"687":1,"704":1,"709":1,"714":1,"781":2,"809":1,"902":1,"1258":1,"1358":1,"1420":1,"1627":1,"1792":3,"2097":1,"2118":1,"2125":1,"2200":4,"2266":1,"2320":1,"2533":1,"2537":1,"2575":1,"2703":1,"2850":1,"2870":1}}],["sense",{"2":{"831":1,"843":1,"876":1,"913":1,"918":2,"961":1,"1133":1}}],["sensibility",{"2":{"913":1,"918":2}}],["sensible",{"2":{"308":1,"868":1,"1690":1,"1696":3,"2177":1,"2803":1}}],["sensitivity",{"2":{"544":1,"2493":1}}],["sensitive",{"0":{"589":1,"1068":1,"2216":1},"1":{"590":1,"591":1,"592":1,"593":1,"594":1,"595":1,"596":1,"597":1},"2":{"190":1,"199":1,"236":1,"298":3,"309":1,"312":2,"313":1,"316":1,"365":1,"366":1,"368":1,"589":2,"590":1,"592":2,"593":1,"594":1,"595":1,"868":2,"924":1,"1033":1,"1037":1,"1066":1,"1098":2,"1110":1,"1121":1,"1185":1,"1210":1,"1228":1,"1458":2,"1607":1,"1664":1,"1792":5,"1811":2,"1878":1,"2052":1,"2059":1,"2176":3,"2187":1,"2216":2,"2282":1,"2291":1,"2375":2,"2395":1,"2427":1,"2558":1,"2635":2,"2750":2,"2798":2,"2805":1}}],["sensitively",{"2":{"74":1,"2493":1,"2518":1}}],["sender",{"2":{"1326":1,"1372":2}}],["sendchatmessage",{"2":{"1318":1}}],["sendmessage",{"2":{"1317":1,"1318":2,"1320":1,"1321":2,"1326":1,"2830":1,"2836":3}}],["sends",{"2":{"383":1,"414":2,"419":1,"529":1,"936":1,"1067":1,"1255":1,"1431":1,"1792":1,"1983":1,"2174":1,"2284":1,"2305":1,"2320":1,"2348":1,"2451":1,"2830":1,"2834":1,"2836":1,"2851":1}}],["send",{"0":{"1309":1,"2813":1},"2":{"376":1,"414":1,"423":1,"427":1,"428":4,"852":1,"894":1,"948":1,"1097":1,"1106":1,"1107":1,"1305":2,"1309":3,"1317":2,"1318":1,"1321":3,"1366":1,"1410":1,"1492":1,"1757":1,"1792":6,"1848":1,"1849":2,"1856":1,"2011":2,"2019":8,"2183":1,"2302":1,"2354":2,"2452":1,"2455":1,"2632":1,"2733":1,"2768":1,"2806":1,"2828":3,"2829":3,"2830":4,"2836":3}}],["sending",{"0":{"428":1},"2":{"78":1,"84":1,"88":1,"237":1,"414":1,"621":1,"1104":1,"1304":1,"1396":1,"1489":1,"1792":1,"1848":1,"2185":1,"2247":1,"2300":1,"2453":1,"2829":1}}],["sentiment",{"2":{"1335":3,"1336":3,"1339":24,"2815":16}}],["sentence",{"2":{"841":1,"863":1}}],["sent",{"0":{"162":1,"233":1,"1302":1,"1857":1,"2248":1,"2827":1},"1":{"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1308":1,"1309":1,"1310":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1,"1858":1,"1859":1,"1860":1,"1861":1,"2249":1,"2250":1,"2251":1,"2252":1,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1},"2":{"182":1,"184":1,"233":1,"383":1,"384":1,"386":1,"390":1,"454":1,"582":1,"587":2,"627":1,"634":1,"635":1,"636":1,"641":1,"643":1,"647":1,"648":1,"649":1,"656":10,"670":1,"726":1,"835":1,"868":1,"1037":1,"1063":1,"1100":1,"1103":2,"1302":1,"1304":1,"1323":2,"1372":1,"1664":1,"1684":1,"1792":13,"1807":1,"1820":1,"1857":1,"1858":1,"1862":1,"1864":1,"2164":1,"2240":1,"2291":1,"2292":1,"2337":2,"2348":1,"2362":1,"2363":1,"2395":1,"2425":1,"2450":1,"2451":1,"2454":1,"2483":1,"2580":1,"2701":1,"2712":1,"2805":1,"2813":1,"2827":1}}],["secondary",{"2":{"1511":1,"1515":1,"1792":1,"2274":1}}],["second",{"0":{"1090":1},"2":{"269":1,"308":1,"565":1,"614":1,"691":2,"737":1,"841":1,"855":1,"859":1,"860":2,"864":1,"865":1,"1007":1,"1029":1,"1079":1,"1080":1,"1107":2,"1152":2,"1158":1,"1160":1,"1169":1,"1283":1,"1285":1,"1370":2,"1390":1,"1395":1,"1406":1,"1409":1,"1433":1,"1543":1,"1590":2,"1740":3,"1778":1,"1792":3,"2102":1,"2106":1,"2157":1,"2184":1,"2211":1,"2212":1,"2288":3,"2339":1,"2528":1,"2532":1,"2537":1,"2543":1,"2744":1,"2850":2,"2864":1}}],["seconds",{"0":{"94":1,"138":1,"275":1},"2":{"92":1,"101":1,"133":2,"134":1,"211":2,"214":1,"268":1,"269":2,"271":1,"272":1,"273":1,"274":1,"275":4,"430":1,"455":1,"575":1,"844":1,"874":1,"967":1,"1034":1,"1071":1,"1080":1,"1138":2,"1143":1,"1152":3,"1159":1,"1160":2,"1165":1,"1254":1,"1255":2,"1259":1,"1329":1,"1337":1,"1407":1,"1418":1,"1454":1,"1464":1,"1511":1,"1520":1,"1523":1,"1589":1,"1590":4,"1616":3,"1623":1,"1639":1,"1722":1,"1731":5,"1743":1,"1763":1,"1764":1,"1769":2,"1779":1,"1780":1,"1792":18,"1837":1,"1863":1,"1951":1,"1952":1,"1991":1,"2046":1,"2047":1,"2060":2,"2067":1,"2068":1,"2094":1,"2101":1,"2156":2,"2211":2,"2212":2,"2253":4,"2308":1,"2376":1,"2380":2,"2502":1,"2537":1,"2542":2,"2549":1,"2634":2,"2635":2,"2742":1}}],["sec",{"2":{"269":1,"1090":1,"1091":1,"2211":1}}],["section",{"0":{"1603":1,"2537":1,"2705":1},"1":{"1604":1,"1605":1,"1606":1,"1607":1,"1608":1,"1609":1,"1610":1,"1611":1},"2":{"182":1,"220":1,"223":1,"347":1,"352":2,"851":1,"859":1,"996":1,"1068":1,"1105":1,"1223":1,"1400":1,"1458":1,"1459":2,"1460":1,"1566":1,"1603":1,"1609":1,"1613":1,"1617":1,"1620":1,"1622":1,"1630":1,"1676":1,"1677":1,"1787":1,"1792":12,"1794":1,"1813":1,"1825":1,"1837":1,"1898":5,"1979":1,"1981":1,"1984":1,"2092":2,"2106":2,"2120":1,"2154":1,"2160":1,"2172":1,"2253":1,"2254":6,"2255":2,"2272":1,"2279":1,"2291":1,"2350":1,"2352":1,"2358":1,"2375":4,"2378":1,"2427":1,"2432":1,"2481":1,"2533":2,"2537":1,"2541":1,"2542":1,"2551":1,"2558":2,"2661":1,"2678":5,"2695":5,"2701":1,"2705":2,"2719":1,"2724":1,"2750":1,"2802":1}}],["sections",{"0":{"1786":1},"1":{"1787":1,"1788":1,"1789":1,"1790":1,"1791":1},"2":{"158":1,"353":1,"1254":1,"2440":1,"2447":1}}],["securing",{"0":{"1194":1},"1":{"1195":1,"1196":1,"1197":1},"2":{"2838":1}}],["securityschemes",{"2":{"1792":1,"1897":1,"1898":1,"1902":1,"1903":1,"1904":1,"1905":1,"1907":1,"1911":1,"2254":1,"2434":1}}],["securityheaders",{"2":{"868":1,"1792":4,"2015":1,"2017":1,"2018":1,"2019":1,"2020":1,"2021":2,"2023":1,"2024":1,"2025":1,"2027":1,"2028":1,"2029":1,"2632":1}}],["security",{"0":{"236":1,"589":1,"921":1,"932":1,"943":1,"1100":1,"1242":1,"1441":1,"1448":1,"1564":1,"1717":1,"1788":1,"1795":1,"1901":1,"1906":1,"1983":1,"2014":1,"2020":1,"2027":1,"2057":1,"2477":1,"2490":1,"2632":1},"1":{"590":1,"591":1,"592":1,"593":1,"594":1,"595":1,"596":1,"597":1,"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"1243":1,"1244":1,"1245":1,"1902":1,"1903":1,"1904":1,"1905":1,"1906":1,"2015":1,"2016":1,"2017":1,"2018":1,"2019":1,"2020":1,"2021":1,"2022":1,"2023":1,"2024":1,"2025":1,"2026":1,"2027":1,"2028":1,"2029":1,"2030":1,"2031":1,"2058":1,"2059":1},"2":{"3":1,"190":1,"199":1,"215":1,"236":1,"298":5,"307":1,"309":1,"312":2,"313":1,"316":1,"351":1,"356":1,"368":1,"390":1,"589":2,"594":1,"638":1,"641":1,"645":1,"835":1,"868":4,"869":1,"921":3,"922":3,"932":5,"933":5,"934":2,"935":1,"936":1,"937":3,"940":1,"943":3,"945":2,"946":2,"1037":2,"1048":1,"1049":1,"1064":2,"1065":2,"1068":1,"1071":1,"1096":1,"1098":3,"1100":4,"1114":2,"1122":1,"1127":1,"1179":1,"1181":1,"1184":2,"1185":6,"1188":1,"1192":1,"1214":1,"1215":1,"1216":1,"1228":1,"1308":1,"1314":1,"1371":1,"1382":2,"1441":1,"1442":1,"1443":1,"1457":1,"1458":3,"1493":1,"1567":1,"1655":2,"1659":1,"1688":1,"1704":1,"1706":1,"1716":1,"1719":2,"1788":2,"1792":24,"1811":1,"1862":1,"1878":1,"1898":1,"1906":1,"1907":1,"1942":2,"1969":1,"1979":1,"1980":1,"1983":1,"2014":3,"2016":1,"2019":3,"2020":1,"2030":1,"2052":1,"2164":3,"2165":3,"2176":4,"2177":1,"2183":1,"2186":1,"2187":2,"2188":1,"2223":1,"2234":1,"2254":1,"2375":3,"2385":1,"2395":2,"2428":1,"2483":2,"2486":1,"2498":1,"2632":7,"2633":2,"2634":2,"2635":2,"2701":1,"2750":1,"2798":1,"2805":1,"2828":1,"2831":1}}],["secure=always",{"2":{"2428":1,"2435":1}}],["secured",{"0":{"1188":1,"2067":1},"2":{"1183":1,"1193":1,"1204":1,"1207":1,"2070":1}}],["securely",{"2":{"357":1,"362":1,"1105":1,"1457":1,"1792":3,"2632":1}}],["securezone",{"2":{"50":2}}],["secure",{"0":{"921":1,"939":1,"1352":1,"2216":1},"1":{"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":2,"941":2,"942":2,"943":2,"944":2,"945":1,"946":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1},"2":{"50":2,"215":1,"307":1,"363":1,"453":3,"527":2,"791":1,"903":1,"928":1,"944":1,"946":2,"1037":3,"1048":1,"1064":1,"1065":1,"1185":1,"1207":1,"1302":1,"1307":1,"1348":3,"1385":1,"1447":2,"1500":1,"1704":1,"1708":1,"1738":2,"1792":9,"1982":1,"2030":1,"2134":1,"2164":2,"2165":1,"2177":1,"2283":3,"2425":2,"2428":1,"2436":1,"2632":1,"2633":2,"2768":2,"2812":3}}],["secret123",{"2":{"361":3,"1195":1,"1502":1,"1733":2,"2264":2}}],["secret=",{"2":{"209":1}}],["secrets",{"0":{"942":1,"2768":1},"2":{"184":1,"186":1,"390":1,"396":1,"926":1,"1033":1,"1100":1,"1104":1,"1108":1,"1115":1,"1661":1,"1664":2,"1792":1,"1862":1,"2040":1,"2282":1,"2292":1,"2293":1,"2483":1,"2759":1,"2764":1}}],["secret",{"2":{"48":2,"186":2,"187":6,"209":2,"215":1,"390":1,"527":1,"533":1,"534":1,"700":1,"1053":1,"1059":1,"1062":2,"1098":2,"1108":1,"1126":1,"1209":1,"1453":1,"1454":1,"1457":1,"1458":3,"1460":1,"1463":1,"1464":1,"1664":6,"1690":1,"1696":1,"1697":1,"1698":2,"1738":1,"1792":10,"1862":1,"2038":1,"2040":1,"2175":2,"2230":1,"2283":2,"2286":1,"2293":2,"2294":6,"2375":4,"2477":1,"2483":1,"2554":1,"2737":1}}],["setapplicationnameinconnection",{"2":{"1617":1,"1618":1,"1619":1,"1633":1,"1792":2}}],["setfilepath",{"2":{"1366":1}}],["setfilesize",{"2":{"1366":1}}],["setfilename",{"2":{"1366":1}}],["setcontenttype",{"2":{"1366":1}}],["setuserid",{"2":{"1366":1}}],["setups",{"0":{"2876":1},"2":{"844":2,"1178":1,"1217":1,"1224":1,"1811":1,"1874":1,"2409":1}}],["setup",{"0":{"703":1,"913":1,"1199":1,"1307":1,"1581":1,"1736":1,"2112":1,"2429":1,"2532":1,"2533":1,"2715":1,"2871":1},"1":{"704":1,"705":1,"706":1,"707":1,"2716":1,"2717":1,"2718":1,"2719":1},"2":{"239":1,"694":1,"695":1,"697":1,"704":3,"705":2,"706":1,"711":1,"712":1,"715":1,"716":2,"717":1,"992":1,"1026":1,"1074":1,"1079":1,"1102":1,"1119":1,"1177":1,"1181":1,"1183":1,"1207":1,"1254":2,"1350":1,"1376":1,"1417":1,"1579":1,"1629":1,"1655":1,"1789":1,"1792":8,"1802":1,"1852":1,"2093":1,"2094":3,"2098":2,"2111":3,"2112":3,"2113":1,"2114":1,"2159":1,"2167":2,"2187":1,"2221":2,"2383":1,"2421":1,"2531":2,"2532":6,"2533":11,"2534":8,"2535":1,"2536":1,"2537":7,"2545":2,"2628":1,"2693":1,"2740":2,"2741":1,"2795":1,"2836":1,"2861":1,"2869":1,"2870":1,"2871":3,"2872":2,"2873":2,"2875":2,"2876":2,"2880":2,"2882":1}}],["settable",{"2":{"1569":2,"1792":3,"1912":1,"2520":1}}],["settimeout",{"2":{"1416":2,"2247":2}}],["settings",{"0":{"1224":1,"1225":1,"1227":1,"1447":1,"1451":1,"1454":1,"1470":1,"1475":1,"1477":1,"1489":1,"1499":1,"1511":1,"1554":1,"1588":1,"1589":1,"1604":1,"1612":1,"1617":1,"1618":1,"1623":1,"1631":1,"1639":1,"1651":1,"1670":1,"1684":1,"1696":1,"1703":1,"1722":1,"1753":1,"1764":1,"1787":1,"1794":1,"1837":1,"1873":1,"1874":1,"1875":1,"1877":1,"1898":1,"1906":1,"1917":1,"1937":1,"1949":1,"1967":1,"1978":1,"1980":1,"1992":1,"1993":1,"2000":1,"2016":1,"2034":1,"2038":1,"2047":1,"2074":1,"2086":1,"2094":1,"2115":1,"2116":1,"2117":1,"2124":1,"2125":1,"2139":1,"2695":1,"2702":1},"1":{"1228":1,"1229":1,"1230":1,"1476":1,"1478":1,"1590":1,"1613":1,"1614":1,"1615":1,"1616":1,"1617":1,"1618":2,"1619":2,"1620":2,"1621":2,"1622":1,"1623":1,"1624":1,"1625":1,"1626":1,"1627":1,"1628":1,"1629":1,"1630":1,"1631":1,"1632":1,"1633":1,"1634":1,"1635":1,"1636":1,"1685":1,"1697":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":2,"1879":2,"1880":2,"1979":1,"1980":1,"1981":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1,"1995":1,"1996":1,"1997":1,"2116":1,"2117":2,"2118":2,"2119":2,"2120":1,"2121":1,"2703":1,"2704":1},"2":{"100":1,"115":5,"124":1,"150":1,"153":1,"170":1,"189":1,"191":1,"217":1,"219":1,"240":1,"432":1,"457":1,"672":1,"790":1,"793":1,"937":1,"1058":2,"1102":1,"1135":6,"1141":5,"1166":1,"1182":1,"1217":1,"1232":1,"1329":1,"1380":1,"1394":1,"1395":2,"1416":1,"1444":1,"1466":1,"1468":1,"1472":1,"1475":1,"1477":1,"1482":1,"1485":1,"1496":1,"1529":1,"1536":2,"1584":1,"1589":1,"1601":1,"1604":1,"1608":1,"1611":1,"1612":1,"1630":1,"1649":1,"1680":1,"1690":2,"1693":1,"1697":1,"1700":1,"1743":1,"1749":2,"1761":1,"1783":1,"1785":1,"1787":3,"1788":2,"1790":2,"1792":18,"1794":3,"1795":2,"1797":2,"1812":1,"1825":1,"1842":1,"1855":1,"1865":1,"1914":1,"1918":1,"1922":1,"1933":1,"1934":1,"1935":1,"1978":1,"1997":1,"2013":1,"2071":1,"2082":1,"2084":1,"2088":1,"2091":1,"2115":1,"2120":1,"2121":1,"2125":1,"2135":1,"2205":1,"2256":2,"2257":1,"2377":1,"2409":1,"2542":1,"2591":2,"2645":1,"2678":1,"2689":1,"2691":1,"2693":1,"2700":1,"2701":1,"2702":1,"2706":1,"2718":1,"2750":1,"2769":1,"2841":1}}],["setting",{"0":{"624":1,"1058":1,"1138":1,"2341":1,"2354":1},"1":{"2342":1,"2343":1},"2":{"4":1,"10":1,"11":1,"143":1,"244":1,"306":2,"336":1,"446":1,"502":1,"504":2,"567":1,"584":2,"586":1,"616":1,"624":1,"655":1,"720":1,"728":1,"733":6,"734":1,"735":1,"736":3,"737":2,"745":1,"752":2,"757":2,"766":2,"803":1,"826":2,"915":1,"1057":1,"1058":6,"1098":1,"1102":2,"1132":1,"1199":1,"1224":1,"1225":1,"1226":1,"1227":1,"1372":4,"1395":2,"1447":1,"1448":1,"1449":1,"1451":1,"1454":1,"1459":1,"1464":1,"1470":1,"1471":1,"1472":1,"1474":1,"1475":2,"1477":1,"1479":1,"1489":1,"1499":1,"1511":1,"1513":1,"1540":1,"1543":7,"1544":1,"1554":1,"1555":1,"1556":1,"1558":1,"1559":1,"1560":1,"1561":1,"1562":1,"1563":1,"1564":1,"1565":1,"1566":1,"1567":1,"1588":1,"1589":1,"1604":1,"1606":1,"1609":1,"1618":1,"1623":1,"1631":1,"1639":1,"1645":1,"1651":1,"1658":1,"1670":1,"1672":1,"1684":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1703":1,"1706":1,"1722":1,"1753":1,"1764":1,"1792":12,"1802":1,"1803":1,"1804":1,"1805":1,"1807":1,"1808":2,"1809":1,"1837":1,"1838":1,"1840":1,"1841":1,"1843":1,"1844":1,"1846":1,"1848":1,"1850":1,"1853":1,"1856":1,"1857":1,"1858":1,"1861":1,"1862":1,"1874":1,"1875":1,"1876":1,"1877":1,"1898":1,"1906":1,"1917":1,"1918":1,"1929":1,"1937":1,"1949":1,"1951":1,"1952":1,"1953":1,"1954":1,"1967":1,"1973":2,"1980":1,"1991":1,"1994":1,"2000":1,"2010":2,"2011":1,"2016":1,"2018":1,"2034":1,"2038":1,"2047":1,"2074":1,"2075":1,"2077":1,"2086":1,"2089":1,"2094":2,"2106":1,"2109":1,"2117":1,"2118":1,"2124":1,"2125":1,"2126":1,"2127":1,"2128":1,"2130":1,"2139":1,"2154":2,"2184":8,"2201":1,"2209":1,"2252":1,"2255":1,"2256":1,"2257":1,"2267":1,"2320":1,"2323":1,"2325":1,"2330":1,"2335":1,"2337":2,"2338":3,"2350":1,"2351":1,"2353":1,"2354":2,"2375":1,"2392":1,"2406":1,"2428":1,"2455":1,"2530":1,"2537":1,"2541":1,"2572":1,"2626":1,"2648":1,"2655":1,"2659":1,"2674":1,"2677":2,"2682":1,"2689":1,"2694":1,"2695":1,"2697":1,"2702":1,"2703":1,"2719":1,"2769":1,"2771":1,"2795":1,"2814":1,"2817":1,"2829":2,"2835":1,"2841":1,"2852":1,"2855":2,"2878":1}}],["settles",{"2":{"860":1}}],["setof",{"2":{"249":1,"250":1,"520":1,"673":2,"835":1,"916":1,"979":2,"982":1,"983":1,"988":1,"1054":1,"1097":1,"1113":1,"1133":1,"1188":1,"1193":1,"1357":1,"1390":1,"1393":1,"1655":1,"1792":2,"2009":1,"2072":1,"2075":1,"2077":1,"2156":1,"2187":1,"2330":1,"2542":1,"2546":1,"2822":1,"2836":1}}],["setselfclient",{"2":{"2346":1,"2372":1}}],["sets",{"0":{"916":1,"1391":1,"1396":1},"2":{"51":2,"119":1,"277":1,"278":1,"302":1,"448":1,"453":1,"470":1,"556":1,"675":3,"720":1,"737":1,"845":1,"852":2,"857":1,"916":1,"1086":1,"1095":1,"1133":3,"1149":1,"1326":2,"1362":1,"1378":2,"1391":2,"1394":2,"1396":2,"1412":1,"1511":1,"1618":2,"1792":14,"2018":1,"2030":1,"2162":1,"2177":1,"2228":1,"2247":1,"2255":1,"2265":3,"2283":1,"2463":1,"2466":2,"2487":1,"2595":1,"2596":1,"2632":1,"2765":1,"2775":1,"2865":1}}],["set",{"0":{"48":1,"119":1,"539":1,"856":1,"1149":1,"1517":1,"1688":1,"2737":1,"2747":1},"2":{"29":1,"32":1,"35":3,"43":2,"44":1,"51":1,"54":1,"66":2,"78":1,"90":1,"91":1,"108":1,"119":2,"120":2,"123":1,"131":2,"132":1,"134":1,"141":1,"152":1,"154":1,"184":2,"218":1,"223":1,"225":2,"227":1,"230":1,"237":1,"239":1,"260":1,"281":2,"297":1,"309":1,"310":3,"327":1,"337":1,"339":1,"346":1,"378":1,"397":1,"411":1,"436":2,"463":1,"464":1,"470":1,"494":1,"496":3,"499":2,"506":1,"507":1,"514":1,"529":1,"534":1,"536":1,"541":6,"546":2,"556":1,"565":1,"579":1,"583":1,"584":2,"586":1,"592":1,"598":1,"606":1,"614":1,"622":2,"624":2,"627":1,"635":1,"646":1,"648":1,"656":1,"671":2,"673":1,"720":1,"747":4,"762":1,"766":1,"768":1,"772":1,"786":2,"812":1,"815":1,"826":3,"827":1,"841":3,"848":1,"849":1,"851":3,"852":4,"857":1,"871":1,"872":1,"876":1,"891":1,"898":1,"904":1,"917":1,"918":3,"919":1,"933":1,"934":1,"935":1,"936":1,"948":1,"949":2,"964":1,"967":1,"990":1,"992":1,"1041":2,"1045":2,"1054":1,"1055":1,"1056":3,"1057":1,"1058":1,"1060":2,"1063":1,"1067":2,"1070":7,"1076":1,"1079":1,"1084":1,"1102":6,"1108":1,"1129":2,"1130":1,"1133":1,"1138":1,"1139":1,"1150":1,"1166":1,"1169":1,"1185":1,"1188":1,"1189":1,"1192":1,"1213":1,"1216":1,"1220":1,"1222":1,"1224":1,"1226":1,"1239":1,"1252":1,"1326":1,"1338":1,"1339":2,"1372":4,"1378":1,"1385":3,"1386":1,"1390":5,"1391":1,"1394":2,"1395":2,"1396":1,"1399":1,"1402":1,"1415":1,"1416":1,"1435":1,"1447":2,"1451":1,"1454":4,"1459":1,"1475":2,"1477":2,"1493":1,"1506":2,"1508":2,"1511":7,"1517":3,"1521":1,"1522":1,"1532":1,"1535":1,"1537":1,"1540":1,"1568":1,"1571":1,"1605":3,"1608":1,"1618":2,"1620":1,"1635":1,"1644":1,"1651":2,"1655":2,"1664":1,"1671":1,"1679":1,"1686":2,"1689":1,"1690":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1703":1,"1711":3,"1712":1,"1764":1,"1769":1,"1792":157,"1802":1,"1822":1,"1824":4,"1825":1,"1830":1,"1833":1,"1848":1,"1849":2,"1850":3,"1851":2,"1852":2,"1858":1,"1864":2,"1874":1,"1875":1,"1876":1,"1895":1,"1898":1,"1922":1,"1923":1,"1925":1,"1958":2,"1959":1,"1967":1,"1981":1,"1997":1,"2016":3,"2038":1,"2047":1,"2049":2,"2060":1,"2072":1,"2075":2,"2094":1,"2107":1,"2108":1,"2110":1,"2117":1,"2125":1,"2129":1,"2131":1,"2157":1,"2175":2,"2184":1,"2187":1,"2202":3,"2205":1,"2208":1,"2251":3,"2252":5,"2253":1,"2254":4,"2255":10,"2256":6,"2257":7,"2258":2,"2265":12,"2266":1,"2267":1,"2272":1,"2284":1,"2292":1,"2297":1,"2320":2,"2333":1,"2336":1,"2337":3,"2338":3,"2339":1,"2342":3,"2346":1,"2350":1,"2351":1,"2353":1,"2360":1,"2366":3,"2372":3,"2375":1,"2381":1,"2382":4,"2383":4,"2392":1,"2406":1,"2411":2,"2413":1,"2416":1,"2436":1,"2445":2,"2446":1,"2450":1,"2456":1,"2465":2,"2466":1,"2470":2,"2471":1,"2481":3,"2486":1,"2494":1,"2497":2,"2498":2,"2509":1,"2517":1,"2530":1,"2531":1,"2537":3,"2539":2,"2543":1,"2551":1,"2558":1,"2565":1,"2572":4,"2577":2,"2586":1,"2632":8,"2633":1,"2634":2,"2635":4,"2649":1,"2656":1,"2682":1,"2688":3,"2689":1,"2699":1,"2702":1,"2706":1,"2718":1,"2721":1,"2724":1,"2725":1,"2734":1,"2741":1,"2749":1,"2751":1,"2763":1,"2774":1,"2794":1,"2795":2,"2797":1,"2810":1,"2820":1,"2824":2,"2825":1,"2830":1,"2831":2,"2832":2,"2838":2,"2840":1,"2841":2,"2847":1,"2851":1,"2852":1,"2855":2,"2858":1,"2866":1,"2868":2}}],["seeing",{"2":{"1799":1}}],["seem",{"2":{"1403":1}}],["seems",{"2":{"841":1,"2452":1,"2797":1}}],["seeded",{"2":{"2528":1,"2864":1,"2869":1}}],["seed",{"2":{"1047":1,"2531":1}}],["seeding",{"2":{"994":1}}],["seeddata",{"2":{"704":2}}],["seen",{"2":{"841":1,"947":1,"1385":1,"1388":1,"1392":1,"2438":1}}],["sees",{"2":{"182":1,"298":1,"636":1,"864":1,"942":1,"1043":1,"1070":2,"1078":1,"1100":1,"1384":1,"1409":1,"1664":1,"1704":3,"1792":1,"1823":1,"2283":1,"2291":1,"2527":2,"2540":1,"2633":1,"2836":1,"2845":1,"2862":2}}],["see",{"0":{"28":1,"67":1,"100":1,"111":1,"124":1,"143":1,"153":1,"191":1,"200":1,"219":1,"295":1,"432":1,"457":1,"483":1,"580":1,"672":1,"682":1,"727":1,"742":1,"793":1,"806":1,"822":1,"1467":1,"1486":1,"1508":1,"1537":1,"1551":1,"1585":1,"1602":1,"1636":1,"1667":1,"1681":1,"1750":1,"1934":1,"1964":1,"2083":1,"2136":1,"2152":1,"2188":1,"2749":1,"2751":1,"2770":1,"2797":1,"2798":1,"2816":1,"2837":1},"2":{"35":1,"75":1,"140":1,"150":1,"156":1,"182":1,"215":1,"220":1,"296":1,"298":1,"302":1,"306":1,"310":1,"319":1,"324":1,"334":1,"349":1,"387":1,"393":1,"394":1,"436":2,"480":1,"527":1,"529":1,"544":1,"650":3,"669":1,"761":1,"771":1,"779":1,"841":1,"845":1,"847":1,"848":1,"856":1,"864":1,"903":1,"911":1,"914":2,"916":2,"917":1,"918":3,"919":2,"920":4,"933":1,"946":1,"971":1,"1032":1,"1033":1,"1036":1,"1054":1,"1055":1,"1060":1,"1065":1,"1067":1,"1068":1,"1069":2,"1070":1,"1071":2,"1077":1,"1080":1,"1084":1,"1097":1,"1098":1,"1102":1,"1103":1,"1130":1,"1135":1,"1150":1,"1190":1,"1203":1,"1208":1,"1209":1,"1211":1,"1217":1,"1227":3,"1252":1,"1254":1,"1284":1,"1305":1,"1326":1,"1327":1,"1351":1,"1358":1,"1367":1,"1368":1,"1381":1,"1382":1,"1384":1,"1386":5,"1390":1,"1393":1,"1394":3,"1395":1,"1396":2,"1398":1,"1399":2,"1403":2,"1404":1,"1409":1,"1412":1,"1415":1,"1416":1,"1437":1,"1442":1,"1445":2,"1471":1,"1472":2,"1475":1,"1477":1,"1482":1,"1511":2,"1521":1,"1528":1,"1533":1,"1540":1,"1544":1,"1558":1,"1559":1,"1573":1,"1588":1,"1589":1,"1596":1,"1604":3,"1616":1,"1618":2,"1620":1,"1623":1,"1628":1,"1664":1,"1670":2,"1674":1,"1684":1,"1686":1,"1688":1,"1694":1,"1695":1,"1738":1,"1743":1,"1753":1,"1785":2,"1792":38,"1799":1,"1801":1,"1802":1,"1807":1,"1809":1,"1824":1,"1861":1,"1868":1,"1877":3,"1898":1,"1908":1,"1917":2,"1922":1,"1925":1,"1929":1,"1937":1,"1951":2,"1952":2,"1953":2,"1954":2,"1980":3,"1984":1,"2034":1,"2038":1,"2092":1,"2094":1,"2097":1,"2099":1,"2109":1,"2117":1,"2139":1,"2162":1,"2170":1,"2172":1,"2175":1,"2177":1,"2179":1,"2190":1,"2208":1,"2210":1,"2217":1,"2247":1,"2255":5,"2257":4,"2266":1,"2270":2,"2377":1,"2392":2,"2395":1,"2398":1,"2426":1,"2450":1,"2454":1,"2479":1,"2531":1,"2533":2,"2535":1,"2537":1,"2586":1,"2632":1,"2682":2,"2694":1,"2705":1,"2713":1,"2716":1,"2721":1,"2731":1,"2736":1,"2739":1,"2740":1,"2741":1,"2742":1,"2744":1,"2750":1,"2751":1,"2759":1,"2764":1,"2785":1,"2786":1,"2788":1,"2792":1,"2795":2,"2799":1,"2800":1,"2803":1,"2806":1,"2808":1,"2821":1,"2824":1,"2827":1,"2829":2,"2831":1,"2832":1,"2836":1,"2841":1,"2857":1,"2858":1,"2866":1,"2867":1,"2870":1,"2878":2}}],["stdout",{"2":{"2679":1,"2804":1}}],["stderr",{"2":{"2415":2,"2416":1,"2679":1,"2696":1}}],["std",{"2":{"1107":1}}],["steer",{"2":{"1044":1}}],["step2",{"2":{"1220":2,"1221":2,"1222":2}}],["step1",{"2":{"1220":2,"1221":2,"1222":2}}],["stepname",{"2":{"704":2,"714":2,"1792":4}}],["steps",{"0":{"1199":1,"1466":1,"1485":1,"1496":1,"1507":1,"1536":1,"1550":1,"1584":1,"1601":1,"1611":1,"1635":1,"1648":1,"1666":1,"1680":1,"1700":1,"1719":1,"1749":1,"1761":1,"1784":1,"1812":1,"1865":1,"1895":1,"1914":1,"1933":1,"1946":1,"1963":1,"1977":1,"1997":1,"2031":1,"2044":1,"2071":1,"2082":1,"2091":1,"2111":1,"2121":1,"2135":1,"2151":1,"2169":1,"2219":1,"2532":1,"2706":1,"2793":1,"2826":1,"2871":1},"2":{"239":2,"703":2,"704":3,"705":1,"707":1,"713":2,"714":2,"716":2,"834":1,"1070":1,"1079":1,"1424":1,"1792":4,"1852":1,"2093":1,"2094":4,"2111":4,"2112":2,"2167":1,"2221":1,"2383":1,"2531":1,"2532":8,"2533":6,"2534":2,"2536":2,"2537":2,"2545":2,"2740":1,"2762":1,"2870":3,"2871":4,"2872":1,"2873":1,"2874":2,"2876":1}}],["step",{"0":{"956":1,"957":1,"958":1,"1019":1,"1020":1,"1021":1,"1022":1,"1306":2,"1307":1,"1308":1,"1309":1,"1310":1,"1355":1,"1356":1,"1357":1,"1358":1,"1361":1,"1362":1,"1725":1,"1726":1,"1727":1,"2172":1,"2176":1,"2820":1,"2823":1,"2824":1,"2825":1},"1":{"1307":2,"1308":2,"1309":2,"1310":2,"1363":1,"2173":1,"2174":1,"2175":1,"2177":1,"2178":1,"2821":1,"2822":1},"2":{"238":1,"308":1,"581":1,"582":1,"587":2,"694":1,"704":1,"705":1,"706":2,"829":1,"856":1,"857":1,"861":1,"869":1,"1068":3,"1076":1,"1095":1,"1098":1,"1220":2,"1221":2,"1222":2,"1405":1,"1419":1,"1420":1,"1428":1,"1429":1,"1792":6,"2098":3,"2111":5,"2112":2,"2167":1,"2221":2,"2336":1,"2337":2,"2367":1,"2400":1,"2529":1,"2532":7,"2533":6,"2534":1,"2537":2,"2545":4,"2709":1,"2740":1,"2821":1,"2823":1,"2847":1,"2854":1,"2865":1,"2870":4,"2871":7,"2874":1}}],["stupid",{"2":{"1402":2}}],["studio",{"2":{"1086":1,"1088":1,"1094":2,"1119":1,"1123":1,"1751":1,"1757":1}}],["study",{"0":{"866":1,"877":1},"1":{"867":1,"868":1,"869":1,"870":1,"871":1,"872":1,"873":1,"874":1,"875":1,"876":1,"877":1},"2":{"866":1,"869":2,"876":2,"877":1,"1037":1,"1382":2,"1383":1,"1414":1,"1421":1}}],["sturdier",{"2":{"987":1}}],["stuff",{"2":{"927":1,"1385":1,"1394":1,"1402":1,"1435":1}}],["stuck",{"2":{"840":1,"1435":1,"1443":1,"2466":1}}],["sticky",{"2":{"1303":1}}],["sticks",{"2":{"695":1,"1070":1,"2867":1}}],["still",{"0":{"1205":1,"2438":1},"2":{"75":1,"105":1,"109":1,"188":1,"347":3,"362":1,"384":1,"436":1,"453":1,"587":1,"625":1,"696":1,"715":1,"829":1,"841":5,"844":1,"845":5,"848":2,"851":1,"852":1,"857":1,"859":2,"860":1,"869":3,"873":2,"911":1,"920":1,"971":1,"986":1,"1067":1,"1071":1,"1075":1,"1086":1,"1096":1,"1126":1,"1129":1,"1162":1,"1193":1,"1205":1,"1208":1,"1338":1,"1360":1,"1366":1,"1382":2,"1385":1,"1389":1,"1390":3,"1391":1,"1392":1,"1394":1,"1397":1,"1398":1,"1399":4,"1401":1,"1402":2,"1403":1,"1407":1,"1432":1,"1441":1,"1459":1,"1464":1,"1511":2,"1517":1,"1527":1,"1533":1,"1576":1,"1722":2,"1770":1,"1792":6,"1827":1,"1832":1,"1924":1,"1925":1,"1948":1,"1957":1,"1961":1,"2100":1,"2106":1,"2183":1,"2193":1,"2265":1,"2296":1,"2297":1,"2342":1,"2344":1,"2366":1,"2367":1,"2375":1,"2376":1,"2378":1,"2379":3,"2389":2,"2395":1,"2413":1,"2416":1,"2423":1,"2432":1,"2434":1,"2446":1,"2456":1,"2466":1,"2482":1,"2489":1,"2491":1,"2495":1,"2497":1,"2502":1,"2504":1,"2505":1,"2509":1,"2522":1,"2528":1,"2529":1,"2530":1,"2533":2,"2537":2,"2540":1,"2581":1,"2742":1,"2801":1,"2815":1,"2829":1,"2845":1,"2854":1,"2864":1,"2865":1,"2868":1,"2878":1}}],["stylesheets",{"2":{"2020":1}}],["styles",{"0":{"1557":1,"1755":1},"2":{"2188":1}}],["style=",{"2":{"1061":1}}],["style>",{"2":{"965":1,"1792":1,"2073":1,"2075":1,"2080":1}}],["style>table",{"2":{"965":1,"1792":1,"2073":1,"2075":1,"2080":1}}],["styled",{"2":{"959":1,"965":1,"2075":1,"2651":1}}],["style",{"0":{"375":1,"564":1,"1579":1},"2":{"375":1,"452":1,"845":1,"867":1,"874":1,"894":1,"1125":1,"1175":1,"1361":1,"1410":1,"1556":1,"1557":1,"1753":1,"1755":1,"1780":1,"1792":5,"1942":1,"2020":2,"2029":1,"2075":2,"2193":1,"2320":1,"2323":2,"2332":2,"2333":1,"2335":1,"2410":1,"2431":1,"2438":1,"2452":1,"2540":3,"2546":1,"2632":1,"2731":1,"2844":1,"2845":1,"2868":1,"2869":1}}],["st",{"2":{"332":3,"1184":1,"1185":1,"1973":3,"2010":2,"2587":3}}],["stolen",{"2":{"1185":1,"1867":1}}],["stock",{"2":{"865":1,"1011":1,"1038":1,"1042":5,"1044":7,"1045":3,"1439":1}}],["stopdockerpostgres",{"2":{"1792":1,"2111":1,"2532":1}}],["stopping",{"2":{"1435":1}}],["stopped",{"2":{"860":1,"2106":1,"2157":1,"2537":1,"2543":1,"2722":1}}],["stopafterfirstsuccess",{"2":{"1356":1,"1792":1,"2123":1,"2125":1,"2132":1}}],["stopwatch",{"2":{"872":1}}],["stop",{"2":{"747":2,"781":1,"848":1,"868":1,"1081":1,"1358":2,"1360":1,"1405":1,"1653":1,"1792":1,"1801":2,"2094":1,"2100":1,"2106":1,"2111":1,"2113":1,"2125":1,"2157":2,"2378":1,"2532":2,"2537":2,"2543":2,"2871":1,"2878":1}}],["stops",{"2":{"301":2,"378":1,"781":1,"818":1,"855":1,"860":1,"1068":1,"1080":1,"2002":1,"2149":1,"2371":1,"2533":1,"2543":1,"2575":1}}],["storms",{"2":{"2498":1,"2615":1}}],["stories",{"2":{"865":1,"873":1,"876":1}}],["storing",{"2":{"362":1,"364":1,"841":2,"843":1,"847":1,"851":1,"1099":1,"1210":1,"1412":1,"1516":1,"1661":1,"1664":1,"2265":1,"2266":1,"2291":1}}],["storage",{"0":{"846":1,"1353":1,"1652":1,"1653":1,"1654":1,"1655":1},"1":{"847":1,"848":1,"849":1,"1354":1,"1653":1,"1654":1,"1655":1},"2":{"189":1,"779":1,"782":1,"841":2,"847":5,"848":14,"849":4,"851":1,"859":2,"865":1,"868":1,"903":1,"921":1,"1054":3,"1064":1,"1088":2,"1098":1,"1099":3,"1101":1,"1119":1,"1126":1,"1147":1,"1180":1,"1181":1,"1211":1,"1213":1,"1244":1,"1253":1,"1352":1,"1358":2,"1363":1,"1364":1,"1365":1,"1367":2,"1403":2,"1410":1,"1437":1,"1515":1,"1650":1,"1651":3,"1653":4,"1654":1,"1655":1,"1661":1,"1662":1,"1663":4,"1664":2,"1788":1,"1792":3,"1795":1,"2164":1,"2165":1,"2222":1,"2296":1,"2297":6,"2353":2,"2565":2,"2757":2}}],["storeelement",{"2":{"1792":1}}],["storeelementcommand",{"2":{"1054":1,"1650":1,"1651":1,"1655":2,"1663":1,"1792":1,"2297":2,"2551":1}}],["storefront",{"2":{"1043":1,"2166":1}}],["store",{"0":{"902":1,"1044":1,"1988":1},"1":{"903":1},"2":{"184":5,"187":4,"327":1,"357":1,"540":1,"841":1,"847":2,"848":1,"851":7,"863":1,"888":2,"902":1,"903":1,"911":1,"1038":2,"1044":1,"1045":1,"1054":3,"1121":1,"1138":1,"1195":1,"1210":1,"1213":1,"1214":1,"1215":2,"1232":1,"1234":1,"1251":1,"1309":1,"1320":1,"1358":1,"1363":1,"1405":1,"1457":1,"1650":1,"1651":2,"1655":2,"1663":1,"1664":4,"1792":8,"1834":1,"1988":1,"2033":1,"2037":1,"2041":1,"2166":2,"2292":4,"2294":4,"2297":1,"2461":1,"2479":2,"2551":3,"2855":1}}],["stores",{"2":{"182":1,"184":1,"746":2,"749":1,"754":1,"841":2,"848":1,"902":1,"1100":1,"1210":1,"1213":1,"1338":1,"1410":1,"1430":1,"1655":1,"1664":1,"1792":1,"1868":1,"2174":1,"2291":1,"2292":1}}],["stored",{"0":{"531":1,"1210":1},"2":{"155":2,"187":1,"308":1,"309":2,"364":1,"396":1,"527":1,"534":1,"784":1,"841":2,"849":1,"874":1,"926":2,"934":1,"994":1,"1054":1,"1107":1,"1210":1,"1214":1,"1229":1,"1236":1,"1243":1,"1249":1,"1353":1,"1362":1,"1388":1,"1396":1,"1403":1,"1405":1,"1435":2,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1502":1,"1511":1,"1655":1,"1660":1,"1738":2,"1792":4,"1856":2,"1867":1,"1879":1,"1886":2,"2177":1,"2193":2,"2265":2,"2294":1,"2297":1,"2372":2,"2450":1,"2452":1,"2456":1,"2518":1,"2591":2,"2625":1}}],["story",{"2":{"1":1,"852":1,"873":1,"876":1,"1037":2,"1072":1,"1073":1,"1094":1,"1382":2,"1383":1,"1384":1,"1401":1,"1402":1,"1403":1,"1404":1,"1405":1,"2438":1}}],["str",{"2":{"1366":1}}],["struggle",{"0":{"1271":1}}],["structs",{"2":{"951":1}}],["structural",{"2":{"845":1,"851":1,"872":1,"873":1,"1041":1,"1824":1,"2359":1,"2481":1,"2662":1}}],["structurally",{"2":{"696":1,"874":1}}],["structuredcontent",{"2":{"1041":1,"1824":4,"2481":1,"2498":1}}],["structured",{"0":{"1041":1},"2":{"877":1,"903":1,"1037":1,"1110":1,"1428":1,"1432":1,"2668":1,"2829":1}}],["structures",{"0":{"850":1},"1":{"851":1,"852":1,"853":1,"854":1,"855":1,"856":1,"857":1},"2":{"840":1,"841":1,"851":1,"852":1,"864":1,"865":1,"918":1,"1097":3,"1190":1,"1191":1,"1193":1,"2586":2,"2588":1,"2607":1}}],["structure",{"0":{"762":1,"772":1,"887":1,"888":1,"976":1,"2701":1},"2":{"587":1,"851":4,"852":2,"869":1,"878":2,"879":2,"880":2,"888":5,"910":2,"911":3,"916":2,"917":2,"918":1,"976":1,"979":1,"983":1,"986":1,"995":1,"1003":1,"1020":1,"1097":1,"1187":1,"1190":1,"1191":1,"1192":2,"1193":3,"1203":2,"1208":1,"1390":1,"1414":1,"1792":2,"1967":1,"1973":1,"2258":1,"2590":2,"2641":1,"2670":1,"2701":1}}],["strequalstoarray",{"2":{"2365":1}}],["strengths",{"2":{"1094":1,"1127":1}}],["street",{"2":{"332":3,"1973":3,"2010":3,"2587":3,"2590":1}}],["streamable",{"2":{"1039":1,"1047":1,"1792":2,"1813":1,"1817":1,"1823":1,"1824":1,"2223":1,"2481":1}}],["streams",{"2":{"650":1,"833":1,"909":1,"949":1,"1304":1,"1305":1,"1325":1,"1326":1,"1374":1,"1416":1,"1859":1,"2463":1,"2807":1}}],["streaming",{"0":{"947":1,"949":1,"2248":1},"1":{"948":1,"949":1,"950":1,"951":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1,"2249":1,"2250":1,"2251":1,"2252":1},"2":{"649":1,"835":1,"868":3,"869":2,"877":1,"947":1,"949":1,"968":1,"969":1,"1035":1,"1036":1,"1037":1,"1099":2,"1103":2,"1323":2,"1325":2,"1351":1,"1363":1,"1377":1,"1415":1,"1563":1,"1792":2,"1857":1,"1860":1,"1928":2,"2077":1,"2249":2,"2407":1,"2463":1,"2466":1,"2549":2,"2652":1,"2827":1,"2833":1,"2835":1}}],["streamed",{"2":{"436":1,"907":1,"1412":1,"1927":1,"2549":1,"2802":1,"2805":1,"2809":1}}],["stream",{"2":{"83":2,"86":1,"87":2,"88":1,"636":1,"650":2,"663":1,"669":2,"869":1,"913":1,"949":1,"971":1,"1037":1,"1103":1,"1305":1,"1327":1,"1366":2,"1573":1,"2372":1,"2391":1,"2463":1,"2466":1,"2498":1,"2771":1,"2806":1,"2807":1,"2809":1,"2827":2,"2828":1,"2830":2,"2835":1,"2836":1}}],["strongly",{"2":{"1020":1,"2223":1,"2296":1,"2490":1}}],["strong>auth",{"2":{"1061":1}}],["strong>",{"2":{"996":1,"1061":1}}],["strong>$",{"2":{"996":1}}],["strongest",{"2":{"921":1,"975":1}}],["stronger",{"0":{"834":1,"835":1},"2":{"308":1,"872":1,"876":1,"2486":1}}],["strong",{"2":{"307":1,"834":1,"857":1,"859":1,"873":1,"874":1,"1204":1,"1792":1,"2177":1}}],["stripped",{"2":{"2519":1,"2558":1,"2880":1}}],["stripe",{"2":{"2438":1}}],["strips",{"2":{"2365":1}}],["strip",{"2":{"845":1,"860":1,"1340":1,"1428":1,"2451":1}}],["stricter",{"2":{"975":1,"1162":1}}],["strictly",{"2":{"841":1,"869":1,"2528":1,"2863":1}}],["strict",{"0":{"1134":1,"1983":1},"2":{"195":1,"871":1,"1037":1,"1111":2,"1134":1,"1163":1,"1402":1,"1447":1,"1792":6,"1980":1,"1983":1,"2015":1,"2016":1,"2019":3,"2027":1,"2029":1,"2426":1,"2427":1,"2428":1,"2436":1,"2590":1,"2632":5}}],["stringbuilderpool",{"2":{"2614":1}}],["stringbuilders",{"2":{"2403":1}}],["stringbuilder",{"0":{"2403":1},"2":{"2236":1,"2397":1,"2604":1,"2614":4,"2622":1}}],["stringified",{"2":{"952":1}}],["stringify",{"2":{"938":1,"1107":1,"1320":1,"1342":1,"1523":1,"1792":1,"2380":1}}],["stringlength",{"2":{"869":1}}],["string>>",{"2":{"2359":1}}],["string>",{"2":{"340":1,"599":1}}],["strings",{"0":{"1613":1,"1627":1,"2589":1},"1":{"1614":1,"1615":1,"1616":1},"2":{"226":1,"253":1,"458":1,"558":1,"919":2,"948":1,"963":1,"1070":1,"1097":1,"1102":2,"1176":1,"1460":1,"1611":1,"1612":1,"1615":1,"1621":1,"1627":1,"1769":1,"1787":1,"1792":14,"1794":1,"1854":2,"1856":4,"1864":1,"1924":1,"1967":1,"1974":1,"2007":1,"2060":1,"2077":2,"2121":1,"2149":1,"2224":2,"2265":1,"2266":3,"2270":1,"2277":1,"2328":1,"2375":1,"2394":1,"2421":1,"2450":1,"2451":2,"2453":1,"2454":3,"2455":2,"2486":1,"2509":1,"2534":1,"2540":1,"2546":2,"2555":1,"2586":1,"2588":1,"2589":3,"2595":2,"2603":1,"2607":1,"2634":1,"2635":1,"2662":1,"2823":1,"2824":1,"2845":1,"2871":1,"2875":1}}],["string",{"0":{"256":1,"423":1,"458":1,"466":1,"467":1,"520":1,"523":1,"553":1,"1616":1,"1925":1,"2204":1,"2270":1,"2304":1,"2517":1,"2674":1},"1":{"459":1,"460":1,"461":1,"462":1,"463":1,"464":1,"465":1,"466":1,"467":1,"468":1,"469":1,"470":1,"471":1,"472":1},"2":{"75":2,"78":1,"87":1,"150":1,"165":1,"188":1,"212":1,"226":2,"258":1,"306":1,"322":1,"378":1,"379":2,"385":1,"387":1,"388":1,"390":1,"408":3,"409":1,"414":3,"415":1,"423":2,"436":3,"446":1,"448":1,"452":2,"454":1,"458":3,"459":1,"460":3,"462":3,"463":3,"464":3,"466":4,"467":2,"468":3,"469":2,"515":3,"516":1,"517":3,"518":1,"520":2,"523":1,"524":1,"526":1,"528":1,"529":1,"551":3,"553":1,"558":1,"616":1,"696":1,"723":3,"747":6,"748":5,"762":3,"768":2,"772":4,"773":1,"776":5,"788":3,"816":1,"841":2,"845":1,"872":1,"894":8,"920":17,"930":2,"938":10,"952":2,"961":3,"995":13,"996":5,"1021":1,"1023":1,"1024":8,"1026":11,"1067":3,"1070":1,"1086":1,"1102":2,"1173":1,"1176":1,"1181":1,"1193":4,"1220":3,"1221":1,"1222":1,"1241":1,"1255":1,"1258":1,"1279":1,"1317":3,"1321":1,"1326":2,"1342":3,"1366":8,"1376":1,"1386":4,"1395":1,"1408":7,"1413":3,"1416":3,"1417":1,"1427":1,"1431":3,"1447":7,"1451":3,"1454":8,"1470":1,"1471":5,"1472":4,"1474":3,"1475":2,"1477":3,"1479":2,"1481":1,"1489":3,"1499":3,"1511":7,"1514":1,"1516":1,"1521":3,"1523":4,"1526":1,"1540":2,"1544":2,"1553":2,"1554":1,"1555":1,"1556":1,"1558":4,"1559":2,"1560":2,"1561":2,"1564":1,"1567":10,"1569":4,"1570":6,"1571":2,"1573":1,"1574":2,"1575":1,"1581":2,"1582":1,"1588":1,"1604":2,"1605":1,"1616":2,"1618":2,"1623":1,"1631":1,"1651":10,"1670":1,"1671":3,"1684":11,"1696":6,"1722":6,"1753":6,"1759":2,"1764":5,"1792":52,"1802":5,"1803":1,"1804":2,"1805":2,"1807":3,"1809":1,"1817":1,"1818":2,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":1,"1828":1,"1829":1,"1830":1,"1831":1,"1837":2,"1838":4,"1840":1,"1841":1,"1844":1,"1846":2,"1848":5,"1849":1,"1852":2,"1853":3,"1854":3,"1855":4,"1857":1,"1862":1,"1864":2,"1874":3,"1875":3,"1877":3,"1890":1,"1898":9,"1906":7,"1917":4,"1918":6,"1924":4,"1925":5,"1937":1,"1949":2,"1951":2,"1952":2,"1953":2,"1954":2,"1967":1,"1974":2,"1994":1,"2000":6,"2003":1,"2016":8,"2034":3,"2038":3,"2040":2,"2047":10,"2056":2,"2075":3,"2077":4,"2094":8,"2098":2,"2117":4,"2124":3,"2125":4,"2126":1,"2127":2,"2128":3,"2130":6,"2140":1,"2148":1,"2154":1,"2175":1,"2182":1,"2204":2,"2222":4,"2239":1,"2247":4,"2255":4,"2256":6,"2257":2,"2258":4,"2265":5,"2266":2,"2267":1,"2270":3,"2273":4,"2277":2,"2278":1,"2283":1,"2284":1,"2296":1,"2302":2,"2303":1,"2304":1,"2309":1,"2321":1,"2330":2,"2333":2,"2339":1,"2357":2,"2359":5,"2376":1,"2377":1,"2380":2,"2383":2,"2394":1,"2398":1,"2399":1,"2431":4,"2436":4,"2461":1,"2462":1,"2476":2,"2481":1,"2482":2,"2491":1,"2495":1,"2497":1,"2509":1,"2510":1,"2511":3,"2513":1,"2517":2,"2518":1,"2519":2,"2521":1,"2523":1,"2528":1,"2534":1,"2539":1,"2549":1,"2558":1,"2572":1,"2575":2,"2586":1,"2589":2,"2590":6,"2595":4,"2596":4,"2600":1,"2603":1,"2607":3,"2611":7,"2614":4,"2622":7,"2635":1,"2648":3,"2665":3,"2666":1,"2674":1,"2687":1,"2688":1,"2691":1,"2702":4,"2717":1,"2718":1,"2764":1,"2811":1,"2812":2,"2823":4,"2824":1,"2825":2,"2833":1,"2848":1,"2863":1,"2871":1}}],["strap",{"2":{"1435":1,"1436":1}}],["strange",{"2":{"1075":1}}],["strawman",{"2":{"852":1}}],["strategies",{"0":{"1136":1,"1151":1,"1154":1,"1597":1,"1599":1},"1":{"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1152":1,"1153":1,"1154":1,"1155":1},"2":{"575":1,"577":2,"578":1,"580":1,"849":1,"1037":1,"1109":1,"1153":1,"1154":3,"1171":1,"1177":1,"1182":3,"1250":1,"1367":1,"1586":1,"1587":1,"1588":3,"1597":2,"1598":1,"1599":1,"1600":1,"1792":3,"2273":1}}],["strategy",{"0":{"569":1,"572":1,"573":1,"1354":1,"1589":1},"1":{"570":1,"571":1,"572":1,"573":1,"574":1,"575":1,"576":1,"577":1,"578":1,"579":1,"580":1,"1590":1},"2":{"142":1,"231":1,"569":2,"570":8,"572":1,"574":1,"575":3,"1113":1,"1133":2,"1154":4,"1179":1,"1182":1,"1217":1,"1224":1,"1303":1,"1353":1,"1382":1,"1588":3,"1589":1,"1591":1,"1599":3,"1600":1,"1602":2,"1792":1,"1874":1,"2824":1,"2825":1}}],["stray",{"2":{"389":1}}],["straightforward",{"2":{"663":1,"943":1,"1024":1,"1050":1,"1087":1,"1096":1,"1318":1,"1398":1,"1405":1}}],["straight",{"2":{"3":1,"436":1,"837":1,"949":1,"1043":1,"1431":1,"1436":1,"2462":1,"2806":1,"2807":1,"2813":1}}],["stalled",{"2":{"2466":1}}],["stalls",{"2":{"2398":1}}],["staleness",{"0":{"854":1}}],["stale",{"2":{"844":1,"852":1,"872":1}}],["staging",{"2":{"1900":2,"2117":1,"2702":1}}],["stage",{"2":{"1420":1}}],["stakeholders",{"2":{"1382":1}}],["staple",{"2":{"1078":1}}],["starvation",{"2":{"2088":1}}],["starve",{"2":{"1162":1}}],["starving",{"2":{"1156":1}}],["star",{"2":{"920":1}}],["startdockerpostgres",{"2":{"1792":1,"2111":1,"2532":1}}],["starter",{"2":{"1106":1}}],["started",{"0":{"1252":1,"1380":1,"2162":1},"2":{"851":1,"852":1,"1400":2,"1401":2,"1402":2,"1403":2,"1404":1,"1792":1,"2116":1,"2117":1,"2119":1,"2365":1,"2414":1,"2440":1,"2701":1,"2702":1,"2704":1,"2772":1,"2823":1,"2824":2,"2825":1}}],["startswith",{"2":{"2365":1}}],["starts",{"2":{"382":2,"390":1,"989":1,"1107":1,"1164":1,"1171":1,"1175":1,"1233":1,"1419":1,"1422":1,"1433":1,"1792":2,"1847":1,"1883":1,"2208":1,"2334":2,"2505":1,"2543":1,"2760":1,"2868":1,"2875":1}}],["starting",{"0":{"2027":1},"2":{"245":1,"421":1,"422":1,"423":1,"445":1,"446":2,"646":1,"658":1,"659":1,"917":1,"918":1,"975":1,"1086":1,"1101":1,"1152":1,"1169":1,"1209":1,"1252":1,"1398":1,"1405":1,"1608":1,"1624":1,"1792":1,"1868":1,"1929":1,"2062":1,"2197":1,"2272":1,"2527":1,"2529":1,"2577":1,"2635":1,"2749":1,"2797":1,"2819":1,"2824":1,"2825":1,"2862":1}}],["start",{"0":{"1082":1,"2012":1,"2818":1,"2861":1},"1":{"2819":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":1,"2825":1,"2826":1},"2":{"243":1,"409":1,"771":1,"970":1,"997":1,"1047":1,"1166":1,"1179":3,"1207":1,"1272":1,"1377":1,"1378":1,"1384":2,"1385":1,"1386":1,"1393":1,"1401":1,"1402":2,"1405":2,"1406":2,"1443":1,"1621":1,"1775":1,"1792":1,"2020":1,"2110":1,"2111":1,"2160":1,"2162":1,"2168":1,"2191":1,"2192":1,"2413":1,"2529":1,"2530":1,"2532":1,"2534":1,"2741":1,"2789":1,"2793":1,"2823":2,"2825":2,"2871":1}}],["startupmessage",{"2":{"1792":1,"2116":1,"2117":2,"2119":1,"2701":1,"2702":1,"2704":1}}],["startups",{"2":{"1403":1}}],["startup",{"0":{"1460":1,"2119":1,"2394":1,"2704":1,"2751":1,"2754":1},"2":{"102":1,"109":3,"174":1,"214":1,"320":1,"388":1,"390":1,"395":1,"582":1,"583":1,"584":1,"587":3,"696":1,"829":1,"868":5,"1043":1,"1071":1,"1073":1,"1150":2,"1157":1,"1178":1,"1181":1,"1368":1,"1376":1,"1378":1,"1382":1,"1386":3,"1406":1,"1408":2,"1420":1,"1422":1,"1449":2,"1464":1,"1521":1,"1527":2,"1604":1,"1605":2,"1609":2,"1618":1,"1621":1,"1743":1,"1787":1,"1792":12,"1794":1,"1802":1,"1822":1,"1825":1,"1844":1,"1862":1,"1875":1,"1948":1,"1957":1,"1961":1,"1974":4,"2007":3,"2038":1,"2040":1,"2098":1,"2117":1,"2119":2,"2225":2,"2226":1,"2245":1,"2261":1,"2318":1,"2321":1,"2324":1,"2328":2,"2336":1,"2337":4,"2372":1,"2375":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":4,"2389":1,"2394":1,"2399":1,"2409":1,"2410":1,"2412":1,"2414":1,"2415":1,"2416":1,"2428":2,"2441":1,"2442":1,"2476":1,"2481":1,"2483":1,"2486":1,"2492":1,"2497":3,"2502":1,"2534":1,"2537":1,"2607":4,"2659":2,"2688":2,"2702":1,"2704":2,"2705":1,"2719":1,"2722":1,"2754":1,"2758":1,"2776":1,"2795":1,"2840":4,"2841":1,"2845":1,"2854":2,"2871":1,"2881":1}}],["standby",{"2":{"1174":5,"1175":1,"1628":5,"1792":6,"2266":6}}],["stand",{"2":{"876":1,"2531":1}}],["standing",{"2":{"860":1,"863":1,"2450":1}}],["standaloneregistrationoptionspath",{"2":{"1792":1}}],["standalone",{"0":{"2389":1},"2":{"515":1,"851":1,"1084":1,"1096":1,"1220":2,"1224":1,"1385":1,"1792":2,"1840":1,"1870":1,"1874":1,"2226":1,"2335":1,"2388":1,"2389":2,"2431":1,"2711":1,"2714":1,"2716":1,"2772":1}}],["standards",{"2":{"1049":1}}],["standardized",{"2":{"848":1,"2255":1}}],["standard",{"0":{"2788":1},"2":{"168":1,"537":1,"632":1,"835":1,"841":2,"848":2,"857":1,"860":1,"918":1,"927":1,"1015":1,"1037":1,"1054":1,"1075":1,"1098":3,"1103":1,"1111":2,"1113":1,"1126":1,"1139":1,"1177":2,"1247":1,"1323":1,"1325":3,"1394":2,"1399":1,"1405":1,"1435":1,"1445":1,"1453":1,"1457":1,"1458":1,"1599":1,"1778":1,"1792":1,"2002":1,"2094":1,"2102":1,"2155":1,"2157":1,"2190":1,"2193":2,"2207":1,"2245":1,"2319":1,"2357":1,"2371":1,"2375":1,"2529":1,"2543":1,"2554":2,"2581":1,"2607":1,"2686":1,"2693":1,"2710":1,"2763":1,"2792":1,"2842":1,"2865":1}}],["staff",{"2":{"644":2,"1042":1,"1045":1,"2199":1,"2200":3}}],["stackalloc",{"2":{"2604":1}}],["stackexchangeredis",{"2":{"2386":1,"2567":1}}],["stackexchange",{"2":{"1067":1,"1514":1,"1792":2,"2386":1}}],["stacks",{"2":{"873":1,"875":1,"1006":1,"1366":1}}],["stack",{"0":{"1006":1},"1":{"1007":1,"1008":1,"1009":1},"2":{"421":1,"445":1,"831":1,"837":1,"868":1,"869":2,"871":1,"872":8,"873":1,"874":1,"876":3,"945":1,"1005":1,"1006":2,"1009":1,"1065":1,"1078":1,"1084":1,"1086":1,"1094":1,"1169":1,"1382":1,"1398":1,"1409":2,"1416":1,"1423":1,"1746":1,"1792":2,"1845":2,"1929":1,"2242":1,"2347":1,"2384":1,"2385":1,"2394":1,"2604":1,"2663":1,"2767":1}}],["stampedes",{"2":{"1180":1}}],["stampede",{"0":{"2462":1},"2":{"214":1,"1101":2,"1147":3,"1177":1,"1180":1,"1181":1,"1430":1,"1511":1,"1515":4,"1743":1,"1792":4,"2222":1,"2224":1,"2274":3,"2459":2,"2461":1,"2462":1,"2495":1,"2502":1,"2765":1}}],["stable",{"0":{"1129":1},"2":{"175":2,"179":1,"180":1,"663":2,"666":1,"669":1,"684":2,"686":1,"687":2,"836":1,"1037":1,"1079":1,"1128":1,"1129":4,"1385":1,"1792":1,"2098":1,"2534":1,"2607":1,"2710":1,"2795":1,"2858":1,"2871":1}}],["stat",{"2":{"874":1,"966":4,"967":1,"1619":1,"1620":1,"1792":8,"2045":4,"2049":1,"2050":1,"2051":1,"2052":1,"2635":12}}],["statistics",{"0":{"966":1,"2635":1},"1":{"967":1},"2":{"857":1,"860":2,"861":1,"916":1,"966":1,"967":1,"1100":2,"1127":1,"1784":1,"1791":1,"1792":6,"2045":1,"2047":4,"2049":1,"2062":1,"2234":1,"2635":10}}],["static=anonymous",{"2":{"1069":1}}],["staticfiles",{"0":{"2476":1},"2":{"937":1,"998":1,"1792":1,"2033":1,"2035":1,"2037":1,"2040":1,"2042":1,"2224":1,"2371":2,"2476":1,"2483":1,"2551":1,"2627":1,"2701":1}}],["static",{"0":{"677":1,"678":1,"960":1,"972":1,"981":1,"1502":1,"2032":1,"2626":1},"1":{"973":1,"974":1,"975":1,"976":1,"977":1,"978":1,"979":1,"980":1,"981":1,"982":2,"983":2,"984":2,"985":1,"986":1,"987":1,"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1,"995":1,"996":1,"997":1,"998":1,"999":1,"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1005":1,"1006":1,"1007":1,"1008":1,"1009":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2038":1,"2039":1,"2040":1,"2041":1,"2042":1,"2043":1,"2044":1},"2":{"96":1,"212":1,"278":1,"479":1,"532":1,"534":1,"542":2,"834":2,"868":1,"972":1,"974":1,"976":2,"981":1,"996":2,"998":3,"1037":1,"1069":1,"1086":2,"1094":3,"1096":1,"1118":2,"1121":1,"1127":3,"1138":1,"1162":2,"1328":1,"1329":1,"1351":1,"1363":2,"1364":1,"1368":1,"1386":1,"1405":1,"1407":1,"1409":3,"1417":1,"1420":1,"1422":1,"1504":1,"1738":1,"1791":2,"1792":12,"1798":2,"1825":1,"1955":2,"1957":1,"1960":1,"2032":1,"2034":2,"2035":1,"2037":1,"2038":3,"2040":2,"2042":1,"2135":2,"2164":2,"2165":3,"2224":1,"2235":1,"2258":2,"2285":1,"2372":1,"2379":3,"2381":2,"2399":2,"2474":1,"2476":1,"2477":1,"2532":1,"2534":1,"2621":1,"2626":1,"2627":1,"2840":1}}],["state=",{"2":{"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1697":1,"1792":5}}],["stateless",{"2":{"1450":1,"2174":1}}],["stated",{"2":{"857":1,"1134":1}}],["states",{"2":{"847":2,"922":1,"2393":1,"2496":1,"2868":1}}],["state",{"0":{"842":1},"1":{"843":1,"844":1,"845":1},"2":{"841":1,"843":14,"844":14,"845":3,"849":1,"851":3,"852":6,"854":1,"855":3,"865":1,"868":1,"1067":1,"1078":1,"1081":1,"1303":1,"1351":1,"1382":1,"1487":1,"1596":1,"1696":1,"1792":6,"2052":1,"2094":1,"2099":1,"2103":1,"2107":1,"2398":1,"2438":1,"2492":1,"2525":1,"2532":1,"2533":2,"2537":1,"2881":1}}],["statements",{"0":{"586":1,"1389":1},"2":{"384":1,"559":1,"586":1,"587":2,"622":1,"624":2,"646":1,"650":1,"656":2,"668":1,"694":1,"823":1,"826":1,"829":2,"874":1,"1103":1,"1121":1,"1130":1,"1302":1,"1304":1,"1325":1,"1370":1,"1378":1,"1389":2,"1394":1,"1419":1,"1560":1,"1792":1,"1844":1,"1857":1,"1858":2,"2011":2,"2164":1,"2221":1,"2318":1,"2319":1,"2320":2,"2321":3,"2323":1,"2337":2,"2338":2,"2342":1,"2354":1,"2391":1,"2528":1,"2529":1,"2531":2,"2540":1,"2545":1,"2546":1,"2731":1,"2774":1,"2828":1,"2832":1,"2840":2,"2845":1,"2850":1,"2851":1,"2853":1,"2863":1,"2865":1,"2869":1}}],["statement",{"0":{"562":1},"2":{"30":1,"560":3,"562":1,"563":1,"581":2,"582":2,"583":2,"584":1,"586":1,"587":3,"614":1,"615":1,"618":1,"619":3,"625":2,"694":1,"704":1,"706":1,"709":1,"714":1,"826":1,"829":1,"848":1,"849":1,"854":1,"860":1,"982":1,"1080":1,"1309":1,"1378":1,"1394":1,"1674":1,"1792":4,"1802":1,"2005":1,"2006":2,"2011":1,"2099":1,"2104":1,"2111":4,"2318":1,"2319":2,"2320":2,"2321":2,"2323":1,"2324":1,"2330":1,"2337":2,"2338":1,"2339":1,"2340":4,"2343":1,"2354":1,"2372":1,"2527":1,"2528":6,"2531":1,"2532":2,"2533":1,"2535":1,"2536":1,"2545":3,"2546":1,"2795":1,"2800":1,"2827":1,"2840":1,"2841":1,"2842":1,"2850":1,"2852":2,"2853":1,"2854":2,"2858":1,"2862":1,"2863":3,"2864":3,"2870":1,"2871":2,"2874":2,"2880":2}}],["stats=true",{"2":{"374":2}}],["stats",{"0":{"967":1,"2045":1,"2049":2,"2050":2,"2051":2,"2052":1,"2674":1},"1":{"2046":1,"2047":1,"2048":1,"2049":1,"2050":1,"2051":1,"2052":1,"2053":1,"2054":1,"2055":1,"2056":1,"2057":1,"2058":1,"2059":1,"2060":1,"2061":1,"2062":1,"2063":1,"2064":1,"2065":1,"2066":1,"2067":1,"2068":1,"2069":1,"2070":1,"2071":1},"2":{"95":1,"374":3,"646":1,"868":6,"869":1,"966":5,"967":4,"1100":5,"1143":1,"1278":1,"1338":1,"1339":1,"1398":9,"1784":1,"1791":1,"1792":13,"2045":1,"2046":5,"2047":8,"2054":1,"2055":1,"2056":3,"2058":2,"2059":3,"2060":1,"2061":3,"2062":1,"2063":5,"2064":5,"2066":1,"2067":1,"2068":1,"2069":1,"2164":1,"2165":1,"2635":17,"2638":3,"2674":4}}],["statusmessage",{"0":{"2470":1},"2":{"1157":1,"1792":4,"1948":1,"1949":1,"1951":2,"1952":2,"1953":2,"1954":2,"1958":6,"1959":1,"1960":1,"2224":1,"2257":1,"2468":1,"2470":5,"2471":1,"2472":1,"2551":1}}],["statustext",{"2":{"894":2,"1366":2}}],["statuscolumnname",{"2":{"300":1,"1240":1,"1469":1,"1471":1,"1483":1,"1792":5,"1889":1}}],["statuscode",{"0":{"2470":1},"2":{"140":1,"817":1,"1026":4,"1111":3,"1157":1,"1669":5,"1671":1,"1672":1,"1673":4,"1678":7,"1792":14,"1948":1,"1949":1,"1951":2,"1952":2,"1953":2,"1954":2,"1958":5,"1960":1,"2138":1,"2141":1,"2142":4,"2144":3,"2145":2,"2146":8,"2148":1,"2224":1,"2253":1,"2255":13,"2257":1,"2446":1,"2468":1,"2470":4,"2472":1,"2575":6}}],["status=active",{"2":{"521":1}}],["status=",{"2":{"101":1}}],["status",{"0":{"301":1,"313":1,"1958":1},"1":{"1959":1},"2":{"33":3,"35":6,"39":4,"41":1,"197":1,"206":1,"207":1,"208":1,"209":2,"210":3,"213":2,"247":4,"297":5,"299":1,"300":3,"301":2,"313":3,"378":1,"415":1,"424":1,"439":3,"447":3,"449":4,"452":1,"480":1,"540":1,"551":3,"565":3,"614":3,"689":1,"691":2,"700":2,"705":1,"710":1,"719":1,"720":2,"747":1,"748":2,"763":1,"818":1,"819":2,"829":1,"835":2,"843":1,"849":9,"852":1,"860":1,"887":1,"894":12,"903":2,"938":4,"995":11,"996":4,"1016":1,"1019":2,"1021":4,"1024":1,"1026":5,"1031":3,"1044":1,"1074":1,"1078":1,"1104":1,"1105":6,"1111":4,"1193":2,"1197":1,"1214":3,"1215":1,"1220":2,"1221":2,"1222":1,"1232":4,"1234":4,"1236":4,"1237":3,"1240":1,"1255":1,"1317":1,"1332":2,"1335":2,"1338":3,"1339":3,"1341":3,"1342":5,"1355":1,"1357":1,"1359":1,"1360":2,"1361":1,"1366":11,"1386":4,"1398":2,"1399":1,"1408":6,"1409":2,"1410":7,"1415":2,"1416":2,"1426":1,"1427":2,"1431":2,"1469":1,"1471":2,"1480":2,"1483":1,"1504":2,"1526":2,"1553":1,"1558":4,"1567":6,"1569":1,"1575":2,"1670":1,"1671":1,"1674":1,"1676":1,"1677":1,"1684":3,"1686":2,"1688":1,"1689":3,"1721":1,"1722":3,"1725":1,"1732":3,"1736":3,"1740":2,"1741":1,"1742":3,"1743":1,"1764":1,"1766":3,"1782":1,"1792":40,"1824":2,"1855":3,"1882":3,"1884":3,"1886":3,"1887":3,"1889":1,"1916":1,"1918":3,"1921":3,"1922":3,"1924":1,"1926":3,"1949":1,"1951":2,"1952":2,"1953":2,"1954":2,"2093":2,"2109":3,"2110":3,"2128":1,"2141":1,"2149":1,"2176":1,"2180":1,"2247":5,"2255":8,"2264":6,"2271":1,"2273":2,"2278":1,"2283":3,"2288":2,"2289":3,"2290":3,"2303":1,"2307":1,"2320":3,"2333":1,"2339":3,"2357":1,"2359":4,"2360":1,"2380":3,"2384":1,"2468":1,"2470":1,"2472":3,"2526":1,"2530":3,"2537":2,"2549":11,"2562":2,"2575":1,"2580":1,"2596":3,"2618":2,"2634":4,"2732":1,"2733":1,"2739":1,"2762":4,"2763":3,"2764":1,"2765":1,"2766":2,"2769":2,"2774":2,"2809":7,"2810":8,"2813":1,"2814":1,"2815":3,"2848":1,"2860":1,"2861":1,"2866":3,"2876":1}}],["stays",{"0":{"324":1},"2":{"308":1,"351":1,"383":1,"390":1,"834":1,"836":1,"876":1,"946":1,"951":1,"1039":1,"1045":1,"1068":1,"1405":1,"1416":1,"1431":1,"1504":1,"1689":1,"1792":2,"1854":1,"1911":1,"2348":1,"2432":1,"2481":2,"2528":1,"2535":1,"2537":1,"2595":1,"2795":1,"2863":1}}],["stay",{"2":{"3":1,"390":1,"845":1,"952":2,"1008":1,"1015":1,"1143":1,"1402":1,"1459":1,"1792":2,"1854":1,"1924":1,"1925":1,"2040":1,"2107":1,"2224":1,"2375":1,"2380":1,"2456":1,"2520":1,"2535":1,"2595":1,"2869":1}}],["sqlfileparameterformatter",{"2":{"2372":1}}],["sqlfile",{"2":{"1792":3,"2111":2,"2372":1,"2531":1,"2532":4,"2534":1,"2545":1,"2871":1,"2874":1}}],["sqlfilesource",{"0":{"2165":1,"2166":1,"2317":1,"2352":1,"2354":1,"2539":1},"1":{"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1},"2":{"324":1,"336":1,"567":1,"624":1,"1135":2,"1408":1,"1792":4,"1836":2,"1999":1,"2001":1,"2010":1,"2011":1,"2012":1,"2095":2,"2106":2,"2112":1,"2153":1,"2221":1,"2228":1,"2330":1,"2342":1,"2352":2,"2354":1,"2364":1,"2369":2,"2532":1,"2537":3,"2538":1,"2539":1,"2543":2,"2722":1,"2821":1,"2825":1,"2841":1,"2861":1}}],["sqlconnection",{"2":{"1593":2,"1792":2}}],["sqlclient",{"2":{"1593":1,"1792":1}}],["sqlserver",{"2":{"1593":1,"1792":1}}],["sqlstate",{"2":{"1111":2,"2528":2,"2864":2}}],["sqlsqlgrant",{"2":{"2755":1}}],["sqlsqlwith",{"2":{"1429":1}}],["sqlsqlbasic",{"2":{"1195":1}}],["sqlsqlbegin",{"2":{"1079":1,"2531":1,"2739":1,"2855":1,"2868":1,"2869":1}}],["sqlsqluser",{"2":{"992":1}}],["sqlsqlupdate",{"2":{"849":1}}],["sqlsqlalter",{"2":{"967":1,"982":1,"2049":1}}],["sqlsqlset",{"2":{"933":1}}],["sqlsqlselect",{"2":{"834":1,"860":1,"918":2,"1078":1,"2110":1,"2326":1,"2340":1,"2528":1,"2530":1,"2758":1,"2852":1,"2864":1,"2866":1}}],["sqlsqldo",{"2":{"930":1,"986":1,"1419":1,"1442":1,"2528":1,"2864":1}}],["sqlsqlif",{"2":{"896":1}}],["sqlsqlinsert",{"2":{"308":1,"898":1,"903":1,"1051":1}}],["sqlsqlreturn",{"2":{"885":3}}],["sqlsqlcomment",{"2":{"8":1,"22":1,"23":1,"24":1,"49":1,"75":1,"83":1,"84":1,"85":1,"86":1,"94":1,"95":1,"96":1,"97":1,"105":1,"118":1,"129":1,"138":1,"147":1,"148":1,"149":1,"174":1,"180":1,"184":1,"186":1,"195":1,"196":1,"212":1,"214":1,"215":1,"251":1,"252":1,"277":1,"278":1,"314":1,"320":1,"323":1,"324":1,"325":1,"342":1,"343":1,"344":1,"352":1,"353":1,"392":1,"393":1,"394":1,"402":1,"403":1,"476":1,"477":1,"478":1,"479":1,"501":1,"502":1,"527":1,"531":1,"532":1,"553":1,"554":1,"555":1,"572":1,"573":1,"574":1,"601":1,"602":1,"603":1,"604":1,"631":1,"632":1,"633":1,"641":1,"642":1,"643":1,"644":1,"645":1,"660":1,"661":1,"662":2,"678":1,"686":1,"724":1,"732":1,"758":1,"767":1,"775":1,"783":1,"785":1,"787":1,"789":1,"800":1,"817":1,"828":1,"899":1,"900":1,"902":1,"917":1,"949":1,"957":1,"964":1,"965":1,"1017":1,"1030":1,"1033":1,"1067":1,"1068":1,"1111":1,"1138":2,"1142":1,"1143":1,"1158":1,"1161":1,"1176":1,"1189":1,"1196":1,"1312":1,"1314":1,"1315":1,"1430":1,"1531":2,"1532":1,"1533":1,"1726":1,"1730":3,"1738":1,"1747":1,"1855":1,"1929":1,"2079":1,"2181":1,"2185":1,"2194":1,"2201":1,"2202":2,"2207":1,"2214":1,"2215":1,"2216":1,"2217":1,"2218":1,"2255":1,"2285":1,"2292":1,"2293":1,"2305":1,"2306":1,"2483":1,"2502":1,"2575":1,"2587":1,"2596":1,"2649":1,"2651":1,"2652":1,"2653":2,"2655":1,"2656":1,"2664":1,"2765":1,"2768":1,"2824":1}}],["sqlsqlcreate",{"2":{"7":1,"16":1,"18":1,"19":1,"20":1,"21":1,"38":1,"39":1,"40":1,"48":1,"50":1,"60":1,"61":1,"62":1,"71":1,"72":1,"104":1,"115":1,"116":1,"117":1,"119":1,"128":1,"136":1,"137":1,"157":1,"184":1,"186":2,"207":1,"208":1,"209":1,"247":1,"248":1,"249":1,"250":1,"254":1,"255":1,"256":1,"257":1,"288":1,"289":1,"290":1,"291":1,"292":1,"298":1,"308":2,"309":1,"310":1,"312":1,"313":1,"322":1,"332":1,"333":1,"334":1,"335":1,"351":1,"360":1,"361":1,"365":1,"366":1,"374":1,"386":1,"401":1,"405":1,"406":1,"408":2,"415":1,"423":1,"426":1,"427":1,"428":1,"436":1,"438":1,"439":1,"449":1,"452":1,"453":1,"454":1,"466":1,"467":1,"468":1,"469":1,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"503":1,"510":1,"511":1,"520":1,"521":1,"523":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"584":1,"592":1,"593":1,"594":1,"611":1,"646":1,"658":1,"677":1,"679":1,"722":1,"723":1,"733":1,"734":1,"735":1,"736":1,"750":1,"751":1,"752":1,"755":1,"756":1,"760":1,"765":1,"766":1,"770":1,"777":1,"797":1,"798":1,"799":1,"811":1,"812":1,"813":1,"814":1,"815":1,"835":1,"864":1,"883":1,"884":1,"886":1,"904":2,"913":1,"914":1,"915":1,"916":1,"918":1,"956":1,"982":1,"1020":1,"1021":1,"1029":1,"1054":1,"1058":1,"1068":1,"1105":3,"1138":1,"1139":1,"1141":1,"1142":1,"1149":1,"1187":1,"1188":1,"1192":2,"1197":1,"1214":1,"1215":1,"1216":1,"1232":1,"1234":1,"1235":1,"1236":1,"1239":1,"1308":1,"1309":1,"1310":1,"1321":1,"1332":1,"1336":1,"1337":1,"1338":1,"1339":1,"1347":1,"1348":1,"1357":1,"1362":1,"1368":1,"1387":1,"1390":1,"1393":1,"1398":3,"1399":1,"1426":1,"1427":1,"1431":1,"1504":1,"1547":1,"1567":1,"1632":1,"1655":1,"1689":1,"1725":1,"1727":1,"1742":1,"1743":1,"1744":1,"1745":1,"1920":1,"1921":1,"1926":1,"1968":1,"1973":1,"1974":1,"2076":1,"2078":1,"2079":1,"2147":1,"2176":1,"2177":1,"2186":1,"2187":3,"2264":1,"2283":1,"2290":1,"2292":1,"2293":2,"2303":1,"2304":1,"2549":2,"2575":1,"2580":2,"2586":1,"2587":1,"2588":1,"2589":1,"2607":1,"2665":2,"2763":1,"2764":1,"2766":1,"2767":1,"2775":1,"2802":1,"2803":1,"2809":1,"2810":1,"2812":1,"2813":1,"2815":1,"2822":1,"2829":1,"2836":3,"2868":1}}],["sqlsql",{"2":{"7":1,"9":1,"16":1,"17":1,"34":1,"35":1,"37":2,"48":1,"61":1,"71":1,"104":1,"115":1,"128":1,"136":1,"157":1,"167":1,"168":2,"169":2,"175":1,"184":1,"187":1,"206":2,"211":1,"213":1,"214":1,"247":1,"263":1,"264":1,"265":1,"288":1,"298":1,"302":1,"308":1,"312":1,"325":1,"351":1,"360":1,"372":1,"373":1,"375":1,"376":1,"378":2,"380":1,"382":1,"383":2,"401":1,"415":1,"417":1,"418":1,"419":1,"420":1,"421":1,"438":1,"441":1,"442":1,"443":1,"444":1,"445":1,"451":1,"466":1,"487":1,"503":1,"510":1,"520":1,"522":1,"539":1,"562":1,"563":1,"564":1,"565":1,"566":1,"577":1,"584":1,"585":2,"586":1,"592":1,"612":1,"613":1,"614":1,"621":1,"622":1,"623":1,"641":1,"659":1,"664":1,"665":1,"677":1,"689":1,"691":1,"694":1,"695":1,"700":1,"704":1,"705":1,"709":1,"710":1,"711":1,"714":1,"715":1,"722":1,"733":1,"750":1,"764":1,"774":1,"797":1,"811":1,"826":1,"827":1,"834":1,"835":1,"885":1,"888":3,"897":1,"905":1,"914":1,"915":1,"916":2,"924":1,"925":1,"926":1,"928":1,"929":1,"934":1,"935":1,"936":1,"938":1,"941":1,"960":1,"977":1,"979":1,"980":1,"988":1,"989":1,"990":1,"991":1,"992":1,"994":1,"1019":2,"1032":1,"1034":1,"1038":1,"1042":1,"1045":1,"1050":1,"1055":1,"1056":1,"1057":1,"1060":1,"1073":2,"1074":1,"1076":1,"1078":1,"1105":1,"1113":1,"1114":1,"1135":1,"1138":1,"1141":1,"1142":1,"1150":1,"1154":2,"1161":1,"1163":1,"1176":1,"1179":1,"1191":1,"1193":4,"1203":1,"1213":1,"1307":1,"1313":1,"1316":1,"1331":1,"1345":1,"1346":1,"1355":1,"1358":1,"1368":1,"1369":1,"1370":1,"1371":3,"1372":1,"1373":1,"1374":1,"1375":1,"1376":1,"1386":4,"1387":1,"1391":1,"1394":1,"1395":2,"1396":1,"1398":5,"1405":1,"1408":2,"1410":1,"1412":1,"1413":1,"1414":2,"1458":1,"1504":1,"1543":1,"1547":1,"1567":1,"1599":1,"1632":1,"1664":2,"1689":1,"1727":1,"1731":1,"1733":1,"1736":1,"1740":1,"1920":1,"1924":1,"1930":1,"2006":1,"2009":1,"2010":2,"2012":1,"2076":1,"2097":1,"2147":1,"2176":1,"2178":1,"2193":2,"2196":1,"2199":1,"2200":1,"2204":1,"2205":1,"2206":1,"2212":2,"2264":2,"2277":1,"2286":1,"2288":1,"2294":1,"2314":1,"2319":1,"2320":1,"2321":1,"2322":2,"2323":1,"2332":1,"2333":2,"2334":1,"2335":1,"2337":3,"2338":1,"2339":2,"2340":1,"2342":1,"2343":1,"2344":1,"2346":2,"2348":2,"2391":1,"2432":1,"2526":1,"2529":1,"2533":1,"2537":1,"2540":1,"2549":2,"2572":1,"2581":1,"2591":1,"2726":1,"2731":1,"2733":1,"2762":1,"2774":2,"2821":1,"2833":1,"2834":1,"2842":1,"2845":1,"2846":1,"2847":1,"2848":1,"2849":1,"2850":1,"2854":1,"2860":1,"2861":1,"2865":1,"2869":1,"2873":1,"2876":1}}],["sqlapi",{"2":{"1043":1,"1408":1,"1409":2}}],["sqlite",{"2":{"834":1,"837":1,"848":1}}],["sqlpage",{"0":{"831":1,"834":1},"1":{"832":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1},"2":{"831":3,"832":1,"833":2,"834":2,"835":6,"836":2,"837":2,"838":3}}],["sql",{"0":{"238":1,"265":1,"308":1,"372":1,"377":1,"379":1,"383":1,"612":1,"659":1,"665":1,"831":1,"941":1,"981":1,"986":1,"1072":1,"1078":1,"1105":1,"1113":1,"1209":1,"1231":1,"1247":1,"1368":2,"1378":1,"1384":1,"1386":1,"1387":1,"1406":1,"1431":1,"1736":1,"1881":1,"1998":1,"2165":1,"2167":1,"2333":1,"2336":1,"2348":2,"2356":1,"2357":1,"2358":1,"2526":1,"2540":1,"2712":1,"2722":1,"2729":1,"2731":1,"2750":1,"2774":1,"2798":1,"2821":1,"2839":1,"2858":1,"2869":1},"1":{"378":1,"379":1,"380":1,"381":1,"832":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1,"982":1,"983":1,"984":1,"1073":1,"1074":1,"1075":1,"1076":1,"1077":1,"1078":1,"1079":1,"1080":1,"1081":1,"1082":1,"1210":1,"1211":1,"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":2,"1233":2,"1234":2,"1235":2,"1236":2,"1237":2,"1238":2,"1239":2,"1240":1,"1241":1,"1242":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1369":2,"1370":2,"1371":2,"1372":2,"1373":2,"1374":2,"1375":2,"1376":2,"1377":2,"1378":2,"1379":2,"1380":2,"1385":1,"1386":1,"1387":1,"1388":2,"1389":2,"1390":2,"1391":2,"1392":2,"1393":2,"1394":2,"1395":2,"1396":2,"1397":1,"1398":1,"1399":1,"1400":1,"1401":1,"1402":1,"1403":1,"1404":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1999":1,"2000":1,"2001":1,"2002":1,"2003":1,"2004":1,"2005":1,"2006":1,"2007":1,"2008":1,"2009":1,"2010":1,"2011":1,"2012":1,"2013":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2840":1,"2841":1,"2842":1,"2843":1,"2844":1,"2845":1,"2846":1,"2847":1,"2848":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2859":1},"2":{"1":1,"7":4,"16":4,"18":1,"19":1,"20":1,"21":1,"30":4,"37":5,"38":2,"39":2,"40":1,"48":4,"50":1,"60":1,"61":4,"62":1,"71":4,"72":1,"74":1,"104":4,"115":4,"116":1,"117":1,"119":1,"128":4,"136":4,"137":1,"157":4,"165":3,"167":4,"168":6,"170":4,"173":1,"175":1,"179":1,"184":4,"206":5,"212":1,"215":2,"220":4,"238":2,"239":2,"241":1,"247":4,"248":1,"249":1,"250":1,"254":1,"255":1,"256":1,"257":1,"263":1,"264":1,"265":3,"288":4,"289":1,"290":1,"291":1,"296":1,"297":2,"298":5,"307":2,"308":2,"309":1,"312":4,"320":2,"322":1,"324":1,"325":3,"332":1,"333":1,"334":1,"335":1,"338":2,"347":1,"351":4,"360":4,"361":1,"365":1,"366":1,"369":1,"372":3,"374":1,"376":3,"377":2,"378":1,"383":1,"384":2,"385":1,"386":1,"388":1,"395":4,"396":1,"401":4,"405":1,"406":1,"408":3,"415":3,"417":3,"418":3,"419":3,"420":3,"421":3,"436":1,"438":4,"441":3,"442":3,"443":3,"444":3,"445":3,"448":1,"451":2,"453":1,"458":1,"463":1,"464":1,"466":4,"467":1,"468":1,"469":1,"487":4,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"503":4,"510":4,"511":1,"520":4,"521":1,"523":1,"527":3,"528":3,"529":3,"534":1,"539":4,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"559":3,"562":2,"563":2,"565":2,"566":2,"567":1,"568":2,"582":1,"587":3,"588":2,"592":4,"593":1,"594":1,"611":1,"612":2,"613":2,"614":3,"615":1,"618":1,"621":2,"622":2,"623":2,"624":1,"625":1,"626":2,"641":3,"659":1,"665":4,"677":4,"679":1,"684":1,"689":1,"693":1,"694":2,"698":1,"703":2,"704":1,"705":2,"706":1,"708":1,"709":1,"711":2,"713":2,"714":1,"722":4,"723":1,"733":4,"734":1,"735":1,"736":1,"750":3,"764":1,"774":1,"786":1,"788":1,"797":4,"798":1,"799":1,"811":4,"829":2,"831":4,"832":4,"833":6,"834":5,"835":6,"836":1,"837":2,"838":3,"841":2,"848":11,"849":1,"852":2,"856":1,"857":2,"859":6,"860":6,"861":3,"867":3,"868":4,"869":2,"871":6,"872":2,"873":5,"874":3,"875":1,"876":8,"877":1,"878":1,"881":2,"886":1,"891":1,"892":1,"904":1,"910":2,"911":5,"914":2,"915":1,"916":3,"918":5,"920":3,"924":2,"928":1,"929":1,"934":2,"935":2,"936":2,"938":1,"941":1,"945":2,"946":3,"947":1,"956":1,"966":1,"968":2,"971":3,"975":4,"976":4,"977":1,"979":2,"980":2,"982":1,"985":2,"986":3,"988":3,"990":2,"993":1,"994":4,"1003":1,"1006":2,"1009":1,"1010":2,"1012":1,"1013":1,"1016":1,"1021":1,"1027":1,"1033":1,"1036":4,"1037":16,"1038":2,"1043":3,"1044":1,"1046":1,"1047":1,"1049":3,"1050":1,"1052":1,"1054":3,"1055":2,"1056":2,"1057":2,"1058":1,"1060":1,"1064":8,"1065":3,"1067":1,"1068":1,"1070":3,"1073":10,"1074":2,"1075":1,"1076":3,"1077":2,"1078":4,"1079":2,"1080":3,"1082":4,"1084":3,"1086":6,"1094":4,"1095":5,"1096":9,"1098":1,"1100":1,"1101":1,"1102":11,"1104":1,"1105":2,"1106":1,"1108":1,"1109":1,"1111":3,"1113":5,"1121":3,"1125":5,"1126":4,"1127":4,"1135":12,"1138":4,"1139":1,"1141":4,"1142":4,"1149":1,"1150":3,"1154":5,"1161":3,"1176":3,"1179":8,"1182":2,"1188":1,"1192":1,"1208":3,"1209":1,"1211":4,"1217":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1231":1,"1240":1,"1244":1,"1247":2,"1252":2,"1253":1,"1302":1,"1308":1,"1309":1,"1310":1,"1321":1,"1322":1,"1327":3,"1328":1,"1331":1,"1333":1,"1337":1,"1345":2,"1350":2,"1351":4,"1352":1,"1357":1,"1362":1,"1366":4,"1367":3,"1368":7,"1369":1,"1370":4,"1371":6,"1372":2,"1373":1,"1374":3,"1375":1,"1376":3,"1377":4,"1378":9,"1379":3,"1380":4,"1382":4,"1383":1,"1384":1,"1385":8,"1386":20,"1387":2,"1388":2,"1389":2,"1390":4,"1391":2,"1392":2,"1393":2,"1394":8,"1396":4,"1397":1,"1398":17,"1399":2,"1401":6,"1403":10,"1404":2,"1405":15,"1406":4,"1407":3,"1408":11,"1409":3,"1410":4,"1412":3,"1413":3,"1414":4,"1416":1,"1419":2,"1422":1,"1423":1,"1424":1,"1429":1,"1431":1,"1432":1,"1435":1,"1442":1,"1443":1,"1458":6,"1504":4,"1516":1,"1547":4,"1567":5,"1576":1,"1581":2,"1624":2,"1632":4,"1655":3,"1664":5,"1689":4,"1727":4,"1738":1,"1789":4,"1792":50,"1799":1,"1802":2,"1836":1,"1838":4,"1850":2,"1852":4,"1868":2,"1869":1,"1870":1,"1871":1,"1872":1,"1881":1,"1889":1,"1894":1,"1920":4,"1923":1,"1961":1,"1967":1,"1970":1,"1972":2,"1973":3,"1974":1,"1975":1,"1998":1,"2000":4,"2001":1,"2002":1,"2003":10,"2004":5,"2005":2,"2007":5,"2009":2,"2010":8,"2011":8,"2012":6,"2013":2,"2076":4,"2078":1,"2079":1,"2092":2,"2094":1,"2095":7,"2098":1,"2104":1,"2106":2,"2111":8,"2112":1,"2113":1,"2114":1,"2125":1,"2147":3,"2153":3,"2155":1,"2157":2,"2159":2,"2160":1,"2164":4,"2165":27,"2166":2,"2167":5,"2169":1,"2170":1,"2171":3,"2176":5,"2177":4,"2179":1,"2182":1,"2183":1,"2184":3,"2185":1,"2186":1,"2187":4,"2188":1,"2190":4,"2221":5,"2228":3,"2265":1,"2277":4,"2282":1,"2283":1,"2284":2,"2292":1,"2317":3,"2318":4,"2319":4,"2320":2,"2321":1,"2322":6,"2323":4,"2325":1,"2326":1,"2327":3,"2328":4,"2329":1,"2330":4,"2332":1,"2333":4,"2336":1,"2337":2,"2338":2,"2339":3,"2340":1,"2342":1,"2344":2,"2348":5,"2350":1,"2354":8,"2356":1,"2357":2,"2358":4,"2365":1,"2366":8,"2367":2,"2371":14,"2372":2,"2375":3,"2383":5,"2388":1,"2394":3,"2420":1,"2423":1,"2438":2,"2459":1,"2479":1,"2481":2,"2482":2,"2493":1,"2496":1,"2504":1,"2509":1,"2512":1,"2522":1,"2525":5,"2526":4,"2527":1,"2528":2,"2529":3,"2531":7,"2532":11,"2533":2,"2534":6,"2535":5,"2536":1,"2537":5,"2538":5,"2539":5,"2540":4,"2541":4,"2543":4,"2545":2,"2546":1,"2549":1,"2572":1,"2586":1,"2587":1,"2588":1,"2589":1,"2597":2,"2607":1,"2614":2,"2628":1,"2665":1,"2671":1,"2706":1,"2709":2,"2712":5,"2713":1,"2714":1,"2722":1,"2723":1,"2725":1,"2727":1,"2729":2,"2731":1,"2732":1,"2734":1,"2739":3,"2742":1,"2751":1,"2760":1,"2762":2,"2764":1,"2767":1,"2768":1,"2771":2,"2772":4,"2773":2,"2774":8,"2775":1,"2785":1,"2793":1,"2795":4,"2799":1,"2802":1,"2803":1,"2806":1,"2809":3,"2813":4,"2817":1,"2820":2,"2821":7,"2822":2,"2824":1,"2825":4,"2826":6,"2829":2,"2834":4,"2836":2,"2837":1,"2839":3,"2840":7,"2841":4,"2842":3,"2843":1,"2844":1,"2845":4,"2846":2,"2848":2,"2849":2,"2850":4,"2855":1,"2856":3,"2857":2,"2858":4,"2859":4,"2860":6,"2861":8,"2862":1,"2863":1,"2864":1,"2865":1,"2869":4,"2870":1,"2871":5,"2872":3,"2873":5,"2874":2,"2878":4,"2880":2,"2882":1}}],["s",{"0":{"867":1,"927":1,"1049":1,"1256":1,"1274":1,"1275":1,"1276":1,"1406":1,"2390":1,"2438":1,"2733":1},"1":{"928":1,"929":1,"930":1,"1257":1,"1258":1,"1259":1,"1260":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1},"2":{"1":4,"22":1,"45":1,"74":1,"75":1,"101":1,"105":3,"108":4,"109":1,"168":2,"174":1,"206":1,"212":1,"215":1,"245":1,"252":1,"269":1,"273":1,"298":1,"308":1,"309":1,"319":2,"320":1,"322":1,"376":1,"384":1,"390":1,"393":1,"414":1,"415":1,"419":1,"424":1,"428":1,"429":1,"436":1,"439":1,"453":3,"454":2,"458":1,"480":1,"528":1,"582":1,"586":1,"587":1,"650":3,"664":1,"665":1,"666":1,"668":3,"669":4,"683":1,"684":1,"693":2,"694":1,"698":1,"701":1,"704":1,"709":1,"714":2,"747":1,"768":1,"773":1,"831":2,"834":4,"835":2,"836":3,"838":1,"840":2,"841":10,"843":2,"844":1,"845":1,"847":2,"848":5,"849":2,"851":6,"852":6,"855":1,"856":1,"857":1,"859":1,"860":2,"861":1,"863":2,"864":2,"865":1,"866":1,"867":1,"868":1,"869":1,"871":3,"872":3,"873":2,"876":6,"877":1,"878":1,"879":1,"880":1,"885":2,"886":1,"891":1,"905":1,"907":2,"913":1,"918":1,"921":1,"926":2,"927":2,"933":1,"934":1,"936":1,"944":1,"946":1,"948":4,"949":4,"954":1,"958":1,"961":1,"968":1,"972":1,"973":1,"975":1,"981":1,"982":1,"986":1,"987":1,"988":1,"990":1,"994":2,"995":1,"997":1,"1005":1,"1007":1,"1010":1,"1021":1,"1023":1,"1037":3,"1039":1,"1040":2,"1042":2,"1043":1,"1044":5,"1045":4,"1048":2,"1054":1,"1056":1,"1058":1,"1059":1,"1060":2,"1064":1,"1067":2,"1068":1,"1070":3,"1073":3,"1074":4,"1076":1,"1078":3,"1079":2,"1080":1,"1081":1,"1084":2,"1090":4,"1094":1,"1096":1,"1098":5,"1101":1,"1102":3,"1103":1,"1104":1,"1105":5,"1111":2,"1122":1,"1125":1,"1126":2,"1127":1,"1137":1,"1138":1,"1147":1,"1150":2,"1156":1,"1162":1,"1165":1,"1169":1,"1172":1,"1179":1,"1180":1,"1185":1,"1188":1,"1190":1,"1192":1,"1208":1,"1209":2,"1210":2,"1211":2,"1214":1,"1231":1,"1241":1,"1254":1,"1262":2,"1263":1,"1264":6,"1265":5,"1266":1,"1268":5,"1269":21,"1270":13,"1272":7,"1274":1,"1275":2,"1276":2,"1279":2,"1280":2,"1281":2,"1283":1,"1287":15,"1288":15,"1289":15,"1290":15,"1291":15,"1293":15,"1295":15,"1297":15,"1299":15,"1301":15,"1302":1,"1303":1,"1305":2,"1309":3,"1320":1,"1324":1,"1325":2,"1326":2,"1327":2,"1328":1,"1329":1,"1332":1,"1347":1,"1358":1,"1366":1,"1368":1,"1369":1,"1371":1,"1372":1,"1373":1,"1378":1,"1382":4,"1383":1,"1384":3,"1386":5,"1387":1,"1391":1,"1392":1,"1394":3,"1396":1,"1397":2,"1398":2,"1399":2,"1401":1,"1402":1,"1404":2,"1405":1,"1406":2,"1408":2,"1412":1,"1414":1,"1416":1,"1419":1,"1420":1,"1421":1,"1422":1,"1423":2,"1427":1,"1428":1,"1429":1,"1431":2,"1432":2,"1435":3,"1436":1,"1439":2,"1441":1,"1447":3,"1450":1,"1458":1,"1459":1,"1460":4,"1515":1,"1521":1,"1523":3,"1525":1,"1527":2,"1528":1,"1533":1,"1574":3,"1605":1,"1618":1,"1620":1,"1626":1,"1633":1,"1651":1,"1653":1,"1658":1,"1687":2,"1704":2,"1713":1,"1727":1,"1754":1,"1792":43,"1821":1,"1822":2,"1823":1,"1824":5,"1825":9,"1827":2,"1828":1,"1830":1,"1851":1,"1856":3,"1862":1,"1868":1,"1890":1,"1910":1,"1948":1,"1958":1,"1961":8,"1974":1,"1995":1,"2039":1,"2094":2,"2096":1,"2098":1,"2099":1,"2103":1,"2104":1,"2107":1,"2108":1,"2109":2,"2110":3,"2111":1,"2125":1,"2128":1,"2129":1,"2131":1,"2142":3,"2146":3,"2164":1,"2171":2,"2177":1,"2183":1,"2186":2,"2195":2,"2197":1,"2208":1,"2211":1,"2222":1,"2257":1,"2266":1,"2274":1,"2297":1,"2300":1,"2303":1,"2305":1,"2307":1,"2310":1,"2318":1,"2320":1,"2321":1,"2324":1,"2336":1,"2346":1,"2359":1,"2364":1,"2371":1,"2375":6,"2376":1,"2378":1,"2380":6,"2381":1,"2382":1,"2389":1,"2391":1,"2392":1,"2395":3,"2398":11,"2407":1,"2411":2,"2412":1,"2421":2,"2422":2,"2423":1,"2424":1,"2425":1,"2426":1,"2427":2,"2428":1,"2432":1,"2434":1,"2435":1,"2436":1,"2437":1,"2438":4,"2442":2,"2450":2,"2451":4,"2452":2,"2462":1,"2465":2,"2466":3,"2470":2,"2481":7,"2493":1,"2494":1,"2495":1,"2496":1,"2497":1,"2508":1,"2509":1,"2518":1,"2519":1,"2520":1,"2525":1,"2526":2,"2527":3,"2528":2,"2529":2,"2530":6,"2531":8,"2533":4,"2534":2,"2535":5,"2537":3,"2539":1,"2540":1,"2543":2,"2544":1,"2545":2,"2546":2,"2575":3,"2576":1,"2586":2,"2588":1,"2607":1,"2633":2,"2645":1,"2664":1,"2688":1,"2721":1,"2725":1,"2729":1,"2734":1,"2739":2,"2740":1,"2741":1,"2752":1,"2759":1,"2760":3,"2762":2,"2763":1,"2774":1,"2776":1,"2790":1,"2794":1,"2798":1,"2802":1,"2803":1,"2805":1,"2807":1,"2809":2,"2812":1,"2813":6,"2823":1,"2824":3,"2825":2,"2827":1,"2830":1,"2833":4,"2834":3,"2835":1,"2840":1,"2845":1,"2847":1,"2848":1,"2855":1,"2860":3,"2861":1,"2862":3,"2864":2,"2865":1,"2866":2,"2868":1,"2869":2,"2871":1,"2872":1,"2874":1,"2878":1,"2881":1}}],["soon",{"2":{"2393":1}}],["soft",{"0":{"1326":1},"2":{"1326":1}}],["software",{"2":{"1":1,"841":1,"845":1,"847":1,"851":2,"861":1,"1075":1,"1402":1,"1403":3,"1405":1}}],["socket",{"2":{"1320":20,"1322":1}}],["sockets",{"2":{"1254":1}}],["social",{"2":{"1123":1}}],["sophisticated",{"2":{"1147":1}}],["solid",{"2":{"965":1,"1792":1,"2073":1,"2075":1,"2080":1}}],["solution",{"0":{"975":1,"1016":1,"1192":1,"1330":1},"1":{"1331":1,"1332":1},"2":{"851":4,"927":1,"989":1,"1108":1,"1122":1,"1382":1,"2868":1}}],["sole",{"2":{"844":1}}],["solely",{"2":{"168":1,"2481":1,"2482":1}}],["solvable",{"2":{"841":1}}],["solves",{"2":{"844":1,"975":1,"2868":1}}],["solved",{"2":{"841":1,"851":5,"852":1,"859":1}}],["solve",{"2":{"841":1,"851":2,"918":1,"1394":1,"1403":1,"1404":1,"2282":1}}],["sorted",{"2":{"1283":1,"1285":1}}],["sort",{"2":{"188":1,"860":1,"861":1,"874":1,"1133":1,"1391":1,"1400":1,"1401":2,"2296":1}}],["someunknown",{"2":{"2415":1}}],["somefunctionname",{"2":{"876":1}}],["someone",{"2":{"860":1,"861":1,"971":1,"982":1,"1401":1}}],["somebody",{"2":{"852":1}}],["somewhere",{"2":{"848":1,"873":1,"1075":1,"1401":1,"2392":1,"2450":1}}],["somehow",{"2":{"840":1,"2424":1}}],["something",{"2":{"832":1,"835":1,"841":2,"843":1,"848":1,"852":1,"860":1,"863":1,"916":2,"918":2,"932":1,"948":1,"986":1,"1074":1,"1077":1,"1130":1,"1162":1,"1254":1,"1386":3,"1399":2,"1401":2,"1403":3,"1404":1,"1405":1,"1423":2,"1435":1,"1436":1,"2155":1,"2537":1,"2541":1,"2867":1}}],["sometimes",{"2":{"663":1,"841":1,"848":1,"904":1,"1130":1,"1402":1,"1431":1}}],["some",{"0":{"565":1},"2":{"156":1,"844":4,"845":3,"847":1,"852":1,"855":1,"857":1,"861":1,"873":1,"876":1,"912":1,"919":1,"920":1,"953":1,"994":1,"1075":1,"1128":1,"1130":1,"1134":1,"1171":1,"1254":4,"1384":1,"1386":1,"1388":1,"1390":1,"1392":2,"1393":1,"1394":3,"1397":1,"1398":2,"1401":2,"1402":3,"1403":2,"1411":3,"1435":1,"1441":1,"1524":1,"1569":1,"1696":1,"1708":1,"1759":1,"1792":2,"1823":1,"1912":1,"2258":1,"2271":1,"2321":1,"2380":1,"2381":1,"2438":1,"2535":1,"2785":2}}],["so",{"0":{"1443":1,"2452":1},"2":{"74":2,"108":1,"214":2,"302":1,"304":1,"307":2,"308":1,"309":1,"317":1,"319":2,"320":2,"354":1,"388":2,"389":1,"394":1,"436":1,"448":1,"452":1,"453":4,"528":1,"529":1,"531":1,"650":2,"663":2,"664":1,"695":1,"706":1,"708":1,"714":1,"715":1,"831":1,"834":1,"838":1,"840":2,"841":5,"843":3,"844":3,"845":1,"848":3,"851":4,"852":2,"854":1,"856":1,"859":1,"860":2,"861":2,"863":1,"865":2,"868":1,"869":2,"872":2,"873":1,"876":1,"912":2,"917":1,"919":1,"932":2,"947":1,"957":1,"998":1,"1020":1,"1038":2,"1042":1,"1044":1,"1045":2,"1054":1,"1067":2,"1068":2,"1070":2,"1073":1,"1074":1,"1075":1,"1076":1,"1078":1,"1080":2,"1081":1,"1094":1,"1097":1,"1098":1,"1101":2,"1102":2,"1126":1,"1129":1,"1130":1,"1134":1,"1150":1,"1162":1,"1166":1,"1190":1,"1254":1,"1343":1,"1363":1,"1384":1,"1385":2,"1386":3,"1390":1,"1391":1,"1393":2,"1394":1,"1395":1,"1396":1,"1398":2,"1400":2,"1401":4,"1402":3,"1403":2,"1404":2,"1405":1,"1416":2,"1418":1,"1419":1,"1431":1,"1441":1,"1442":1,"1458":1,"1459":2,"1504":1,"1522":1,"1527":1,"1559":1,"1569":2,"1571":1,"1580":1,"1582":1,"1689":1,"1743":2,"1759":1,"1792":10,"1822":1,"1823":2,"1824":2,"1825":1,"1827":1,"1832":1,"1833":1,"1840":1,"1908":1,"1912":1,"1923":1,"1925":1,"1955":1,"1956":1,"1958":2,"1959":1,"2040":1,"2094":2,"2095":1,"2098":2,"2099":1,"2103":1,"2106":1,"2110":1,"2156":2,"2157":1,"2175":1,"2177":1,"2180":1,"2183":1,"2184":1,"2359":1,"2369":1,"2372":1,"2375":3,"2377":1,"2379":3,"2380":2,"2383":1,"2384":1,"2391":1,"2393":1,"2394":2,"2395":1,"2398":1,"2399":1,"2402":1,"2404":1,"2405":1,"2411":1,"2412":1,"2415":1,"2416":1,"2419":2,"2421":1,"2422":3,"2426":1,"2432":1,"2437":1,"2438":1,"2445":1,"2446":1,"2451":1,"2453":1,"2456":1,"2459":1,"2461":2,"2462":1,"2463":2,"2466":4,"2470":1,"2471":1,"2476":2,"2481":6,"2482":3,"2483":1,"2484":1,"2486":1,"2489":1,"2490":1,"2493":1,"2494":1,"2495":1,"2496":1,"2497":1,"2502":2,"2505":1,"2509":1,"2517":1,"2518":2,"2519":1,"2520":3,"2522":1,"2530":3,"2531":1,"2532":2,"2533":5,"2534":2,"2535":1,"2537":5,"2538":2,"2539":1,"2540":3,"2542":2,"2543":3,"2678":1,"2688":1,"2695":1,"2731":1,"2741":1,"2742":1,"2763":1,"2765":1,"2809":1,"2812":1,"2815":1,"2823":1,"2829":1,"2835":2,"2845":1,"2847":1,"2857":1,"2860":1,"2861":1,"2867":1,"2868":1,"2869":2,"2871":1,"2872":1,"2873":1,"2874":1,"2878":1,"2879":1}}],["sourcing",{"2":{"840":1}}],["sourcelink",{"2":{"2386":1}}],["sourced",{"2":{"2277":1}}],["sourcecontext",{"2":{"1792":2,"1800":1,"1809":2,"1810":1,"2094":1,"2108":1,"2795":1}}],["sourcescreated",{"2":{"2369":1}}],["sources",{"0":{"534":1,"2681":1},"2":{"212":1,"265":1,"479":1,"535":1,"615":1,"834":1,"1069":1,"1098":2,"1162":2,"1396":1,"1405":1,"1567":1,"1610":1,"1717":1,"1738":1,"1746":1,"1785":1,"1792":6,"1923":1,"1955":2,"1956":3,"1957":2,"1958":1,"1959":1,"1960":1,"2016":1,"2020":7,"2106":1,"2120":1,"2266":3,"2317":1,"2339":1,"2344":1,"2347":1,"2352":1,"2369":2,"2372":1,"2379":6,"2389":1,"2441":1,"2443":1,"2470":1,"2471":1,"2482":1,"2537":2,"2632":2,"2680":2,"2681":1,"2691":1,"2697":1,"2773":1,"2775":1}}],["source",{"0":{"975":1,"1000":1,"1043":1,"1368":1,"1957":1,"1998":1,"2317":1,"2542":1,"2792":1},"1":{"1369":1,"1370":1,"1371":1,"1372":1,"1373":1,"1374":1,"1375":1,"1376":1,"1377":1,"1378":1,"1379":1,"1380":1,"1999":1,"2000":1,"2001":1,"2002":1,"2003":1,"2004":1,"2005":1,"2006":1,"2007":1,"2008":1,"2009":1,"2010":1,"2011":1,"2012":1,"2013":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1},"2":{"0":1,"1":1,"77":1,"170":1,"175":1,"260":1,"264":1,"309":1,"319":1,"336":2,"338":1,"358":3,"362":1,"363":1,"364":1,"445":2,"472":1,"534":1,"568":2,"588":2,"626":2,"639":1,"832":1,"841":1,"844":4,"845":3,"851":2,"872":1,"873":1,"875":1,"878":1,"888":1,"902":1,"911":1,"913":2,"919":1,"920":2,"921":1,"946":1,"947":2,"966":1,"971":1,"975":1,"976":1,"995":1,"1005":1,"1008":1,"1010":1,"1036":1,"1037":2,"1038":1,"1046":1,"1048":1,"1065":1,"1069":1,"1070":4,"1102":2,"1135":1,"1162":1,"1176":1,"1182":1,"1183":1,"1193":1,"1202":2,"1205":1,"1208":1,"1212":1,"1254":1,"1281":1,"1287":15,"1288":15,"1289":15,"1290":15,"1291":15,"1293":15,"1295":15,"1297":15,"1299":15,"1301":15,"1302":1,"1305":1,"1327":1,"1328":1,"1351":1,"1352":1,"1367":1,"1368":1,"1377":2,"1380":1,"1382":3,"1385":9,"1386":2,"1389":1,"1406":1,"1407":3,"1414":1,"1419":1,"1421":1,"1422":2,"1433":1,"1708":1,"1789":1,"1792":13,"1802":2,"1806":1,"1836":1,"1852":2,"1929":1,"1956":2,"1973":1,"2000":1,"2001":1,"2010":1,"2012":1,"2013":1,"2114":1,"2153":1,"2155":1,"2156":3,"2157":1,"2159":1,"2164":1,"2165":2,"2166":1,"2221":1,"2228":1,"2250":1,"2256":2,"2258":1,"2266":1,"2317":1,"2328":1,"2330":1,"2346":1,"2364":3,"2371":1,"2379":3,"2383":2,"2394":1,"2395":1,"2481":1,"2482":1,"2495":2,"2509":1,"2525":1,"2537":2,"2539":1,"2541":3,"2542":2,"2543":1,"2600":1,"2633":1,"2682":1,"2697":1,"2714":1,"2725":1,"2774":2,"2776":1,"2792":1,"2794":1,"2803":5,"2804":1,"2824":1,"2825":1,"2826":3,"2839":1,"2841":2,"2856":2,"2858":2,"2859":1}}],["sounds",{"2":{"1":1}}],["cgroup",{"2":{"2385":1}}],["cfg",{"2":{"2171":2}}],["cfdj8n",{"2":{"184":1,"2292":1}}],["cwd",{"2":{"1792":2,"2096":1,"2531":1,"2537":1,"2869":1,"2877":1}}],["cmdlog",{"2":{"2614":1}}],["cmd",{"2":{"1775":1}}],["cbc",{"2":{"1656":6,"1792":3}}],["cbor",{"0":{"2492":1},"2":{"1098":1,"1211":3,"1215":1,"1243":1,"1248":1,"1868":3,"2492":1}}],["ccx33",{"2":{"1255":1}}],["cp",{"2":{"1119":1}}],["cpu",{"2":{"307":1,"1049":2,"1107":1,"1141":1,"1165":2,"1167":2,"1169":1,"1170":1,"1259":1,"1277":2,"1278":1,"1324":2,"2087":1,"2177":2,"2270":1,"2397":1,"2398":2,"2614":1}}],["cdns",{"2":{"1137":1,"1138":4,"1139":2,"1140":1,"1363":1}}],["cdn",{"2":{"1101":2,"1136":1,"1137":1,"1353":1,"1354":2,"1362":1,"1365":1,"1706":1}}],["cd",{"2":{"970":2,"1013":1,"1119":1,"1207":1,"1380":2,"2162":1,"2627":1,"2792":1}}],["cve",{"2":{"933":1}}],["cvv",{"2":{"594":1}}],["cz",{"2":{"927":2}}],["css",{"2":{"1792":2,"1936":1,"1943":1,"2075":2}}],["csrf",{"2":{"1487":1,"1494":1,"1788":1,"1792":3,"1795":1,"2030":1,"2044":1}}],["csharpcsharpstring",{"2":{"2622":1}}],["csharpcsharpcmdlog",{"2":{"2622":2}}],["csharpcsharpvaluetask",{"2":{"2461":1}}],["csharpcsharpvar",{"2":{"2148":1,"2575":1}}],["csharpcsharpdatetime",{"2":{"2451":1}}],["csharpcsharppublic",{"2":{"2257":1,"2265":3}}],["csharpcsharp",{"2":{"1366":1,"2255":2,"2256":1,"2257":1,"2266":1}}],["csproj",{"2":{"869":1}}],["csp",{"0":{"2029":1},"2":{"868":1,"869":1,"1788":1,"1792":1,"2020":1,"2632":1}}],["cs",{"2":{"867":1,"868":1,"869":1,"873":1,"2372":3,"2409":2,"2417":2,"2419":1,"2422":1,"2435":4,"2440":1,"2447":1,"2448":2,"2451":1,"2456":1,"2457":4,"2465":1,"2472":2,"2513":1,"2523":2,"2621":4}}],["csvcsv",{"2":{"1189":1,"1192":1}}],["csvuploadhandler",{"2":{"2615":1}}],["csvuploadhasfieldsenclosedinquotes",{"2":{"889":1,"1792":1,"2123":1,"2128":2}}],["csvuploadrowcommand",{"2":{"1792":1,"2123":1,"2128":2,"2132":1}}],["csvuploadcheckfilestatus",{"2":{"1792":1,"2123":1,"2128":2}}],["csvupload",{"2":{"894":3}}],["csvuploadsetwhitespacetonull",{"2":{"889":1,"1792":1,"2123":1,"2128":2}}],["csvuploaddelimiterchars",{"2":{"889":1,"1792":1,"2123":1,"2128":2,"2132":1}}],["csvuploadkey",{"2":{"889":1,"1792":1,"2123":1,"2128":2,"2267":1}}],["csvuploadenabled",{"2":{"889":1,"1792":1,"2123":1,"2128":2,"2132":1}}],["csvhelper",{"2":{"881":1}}],["csv",{"0":{"128":1,"489":1,"493":1,"601":1,"759":1,"768":1,"786":1,"878":1,"883":1,"891":1,"893":1,"904":1,"1183":1,"1186":1,"1189":1,"1373":1,"2128":1,"2129":1,"2726":1},"1":{"760":1,"761":1,"762":1,"763":1,"764":1,"765":1,"766":1,"767":1,"768":1,"787":1,"879":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1,"1184":1,"1185":1,"1186":1,"1187":2,"1188":2,"1189":2,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1,"2129":1},"2":{"128":2,"386":4,"489":3,"492":2,"493":4,"543":2,"544":4,"601":1,"746":3,"747":4,"748":1,"758":1,"759":1,"760":1,"762":5,"763":3,"764":8,"765":2,"766":2,"767":3,"768":2,"777":1,"781":1,"786":16,"787":3,"791":2,"832":1,"848":1,"878":4,"879":3,"880":1,"881":2,"883":2,"884":1,"885":1,"886":6,"887":3,"889":2,"892":1,"893":5,"894":1,"902":5,"903":8,"904":8,"913":1,"1019":2,"1021":4,"1037":3,"1086":1,"1099":4,"1121":1,"1183":4,"1184":1,"1189":3,"1192":1,"1199":2,"1200":3,"1202":2,"1205":1,"1207":1,"1208":2,"1373":4,"1376":9,"1377":1,"1386":1,"1398":6,"1413":1,"1792":5,"2122":1,"2123":2,"2125":3,"2128":7,"2132":2,"2134":2,"2164":5,"2165":6,"2206":2,"2267":1,"2270":1,"2496":1,"2498":1,"2572":1,"2649":3,"2664":3,"2726":1,"2766":4,"2856":1}}],["ctrl+c",{"2":{"2106":2,"2112":1,"2157":1,"2158":1,"2221":1,"2362":1,"2532":3,"2537":1,"2543":1,"2742":1,"2758":1,"2871":1,"2878":2,"2881":1}}],["ctes",{"2":{"857":1,"860":2,"874":1,"876":1,"919":1,"1096":1}}],["ctx",{"2":{"306":2}}],["cqrs",{"2":{"840":1}}],["c1",{"2":{"775":1,"900":1}}],["center",{"2":{"1403":2}}],["centralized",{"2":{"945":1,"974":1}}],["central",{"0":{"1203":1},"2":{"851":1,"1184":1}}],["centrally",{"2":{"545":1}}],["centric",{"2":{"841":2,"1084":1,"1122":1}}],["ceil",{"2":{"928":1,"929":1}}],["ceiling",{"0":{"857":1},"2":{"1077":1,"1325":1}}],["certifications",{"2":{"1792":1}}],["certificatepassword",{"2":{"1650":1,"1651":1,"1661":1,"1792":1,"2565":3}}],["certificatepath",{"2":{"1650":1,"1651":1,"1661":1,"1792":1,"2565":3}}],["certificates",{"2":{"1204":2,"1609":1,"1651":1,"1659":1,"1792":3,"1981":1,"1983":1,"1984":1,"1985":1,"1989":1,"2385":1,"2565":2,"2661":1}}],["certificate",{"0":{"1661":1,"1985":1,"1988":1,"1989":1},"1":{"1986":1,"1987":1,"1988":1,"1989":1},"2":{"1199":3,"1207":1,"1609":1,"1651":4,"1661":4,"1662":1,"1792":11,"1984":2,"1986":2,"1987":2,"1988":1,"1989":2,"1995":1,"2297":1,"2565":6,"2645":1,"2661":1}}],["cert",{"2":{"1661":2,"1792":1,"1984":1,"1986":1,"1989":1,"1995":1,"2565":2}}],["certain",{"0":{"1273":1},"1":{"1274":1,"1275":1,"1276":1},"2":{"1792":1,"2395":1}}],["certainly",{"2":{"918":1,"1401":1}}],["certs",{"2":{"1199":2,"1207":1,"1995":1}}],["ceremonies",{"2":{"869":1}}],["ceremony",{"2":{"849":3,"860":1,"868":2,"1405":1}}],["cells",{"2":{"788":3,"948":1,"951":1,"963":2,"971":1,"1792":2,"2077":2,"2652":2}}],["cell",{"0":{"951":1},"2":{"775":1,"900":1,"947":1,"948":1,"951":2,"969":1}}],["c>",{"2":{"348":1}}],["cidr",{"2":{"1703":1,"1708":1,"1792":1,"2633":1}}],["circuits",{"2":{"1910":1,"2415":1,"2433":1,"2466":1}}],["circuit",{"2":{"1011":1,"2466":1}}],["ci",{"0":{"2880":1},"2":{"869":1,"986":1,"1013":1,"1082":2,"1094":1,"1407":1,"1417":1,"1420":1,"1792":2,"2102":1,"2106":2,"2107":1,"2110":1,"2114":1,"2221":1,"2450":1,"2526":1,"2530":1,"2535":2,"2537":4,"2627":1,"2740":1,"2872":1,"2874":1,"2878":1,"2879":1,"2880":1}}],["citext",{"2":{"2540":2}}],["cited",{"2":{"847":1,"872":1}}],["citizen",{"0":{"1430":1}}],["citus",{"2":{"848":1}}],["city",{"2":{"207":2,"322":6,"332":3,"390":2,"394":1,"448":1,"452":9,"531":3,"1347":6,"1726":1,"1727":2,"1733":4,"1823":2,"1973":3,"2010":3,"2264":8,"2483":1,"2587":3,"2590":1,"2768":1}}],["city=london",{"2":{"452":2,"1733":2,"2264":2}}],["city=",{"2":{"207":1,"390":1,"394":1,"452":1,"531":1,"1726":1,"1733":1,"2264":2,"2483":1,"2768":1}}],["ciphertext",{"2":{"182":1,"184":1,"186":1,"188":1,"1100":1,"1664":1,"2291":1,"2292":1,"2293":1,"2296":1,"2297":1,"2405":2}}],["cycles",{"2":{"1141":1,"2546":1,"2869":1}}],["cycle",{"2":{"174":1,"872":4,"876":1,"1049":1,"1080":1,"1094":1,"1379":1,"1401":1,"2221":1,"2324":1,"2498":1,"2531":1,"2607":1,"2742":1,"2857":1,"2878":1}}],["cl",{"2":{"2807":2}}],["clueless",{"2":{"1403":1}}],["clumsy",{"2":{"1378":1,"1391":1}}],["clusters",{"2":{"848":1,"1172":1}}],["cluster",{"2":{"848":1,"863":1,"864":1,"1177":1,"1420":1}}],["clustered",{"2":{"848":1}}],["clr",{"2":{"1075":1}}],["clock",{"2":{"1454":1,"1792":2,"1852":1,"2383":1,"2451":4,"2456":2,"2554":1}}],["closing",{"2":{"1068":1,"1404":1,"1618":1,"1621":1,"1792":2,"2075":1,"2247":1,"2372":1,"2527":1,"2862":1}}],["close=true",{"2":{"2824":1,"2825":1}}],["closeafterms",{"2":{"1317":1,"1416":2,"2247":3}}],["closest",{"2":{"2729":1}}],["closes",{"2":{"1068":1,"1073":1,"1440":1}}],["closer",{"2":{"871":1}}],["close",{"2":{"857":1,"865":1,"1113":1,"1318":1,"1384":1,"1416":1,"1424":1,"2247":1,"2773":1}}],["closedxml",{"2":{"968":1,"969":1}}],["closed",{"2":{"852":2,"876":1,"1067":1,"1090":1,"1616":1,"2533":1}}],["closely",{"2":{"847":1}}],["cloudfront",{"2":{"1139":1}}],["cloudflare",{"0":{"1714":1},"2":{"1139":1,"1701":1,"1714":2,"1792":1,"2633":2}}],["cloud",{"2":{"848":1,"1013":1,"1084":2,"1086":1,"1088":2,"1094":4,"1100":1,"1101":2,"1115":1,"1121":1,"1123":1,"1127":1,"1255":1,"1691":1,"1708":1,"1792":1}}],["cloned",{"2":{"1227":1,"1877":1,"2531":1,"2546":1}}],["clones",{"2":{"1079":1,"1082":1,"2114":1,"2167":2,"2533":1,"2546":1,"2740":1}}],["clone",{"2":{"695":3,"705":1,"715":1,"970":2,"1119":2,"1207":2,"1380":1,"2162":2,"2533":3,"2534":2,"2537":1,"2545":1,"2546":1,"2792":3,"2873":6,"2881":1}}],["cleared",{"2":{"1518":1,"2265":1}}],["clearer",{"2":{"683":1,"2412":1}}],["clearance",{"2":{"1259":1}}],["clearing",{"2":{"1148":1}}],["clears",{"2":{"1067":1,"1148":1}}],["clear",{"2":{"935":2,"1111":1,"1157":1,"1254":1,"1401":1,"1403":1,"1460":2,"1464":1,"1605":1,"1948":1,"2321":1,"2375":2,"2376":1,"2377":1,"2378":1,"2497":1,"2529":1,"2663":1,"2688":1,"2865":1}}],["cleaned",{"2":{"1427":5}}],["cleaner",{"2":{"369":1}}],["cleansing",{"2":{"1205":1}}],["cleanly",{"2":{"868":1,"965":1,"1094":1,"1410":1,"1440":1,"2362":1,"2391":1,"2413":1,"2520":1,"2521":1}}],["clean",{"2":{"839":1,"840":1,"847":1,"876":1,"916":1,"989":1,"1037":1,"1070":1,"1074":1,"1402":1,"1403":2,"1424":1,"1427":1,"1428":1,"1431":1,"2103":1,"2164":1,"2411":1,"2672":1}}],["cleanup",{"0":{"292":1},"2":{"288":1,"623":1,"994":1,"1074":1,"1076":1,"1309":1,"1393":1,"2615":2}}],["clicommandtests",{"2":{"2417":1}}],["clickjacking",{"2":{"1493":1,"1792":3,"2018":1,"2020":1,"2632":2}}],["clicking",{"2":{"1061":1}}],["click",{"2":{"961":1,"1419":1}}],["clicked",{"2":{"852":1}}],["clicks",{"2":{"844":1,"1232":1,"1882":1}}],["clickhouse",{"2":{"834":1,"837":1}}],["clitests",{"2":{"2417":1}}],["clientanalyticsdata",{"2":{"1684":1,"1792":1}}],["clientanalyticsipkey",{"2":{"1241":1,"1684":1,"1792":2,"1890":1}}],["clientdatajson",{"2":{"1220":1,"1221":1,"1222":1,"1792":3}}],["clientid",{"2":{"1059":1,"1062":1,"1690":2,"1696":1,"1697":1,"1698":2,"1792":5}}],["clientcodegen",{"2":{"718":1,"937":1,"998":1,"1062":1,"1408":1,"1416":1,"1417":2,"1553":1,"1579":1,"1580":1,"1581":1,"1582":1,"1792":1,"1836":2,"2273":1,"2484":1,"2648":1,"2701":1,"2830":1}}],["clientsecret",{"2":{"1059":1,"1062":1,"1690":2,"1696":1,"1697":1,"1698":2,"1792":5}}],["clients",{"2":{"458":1,"463":1,"464":1,"638":3,"641":1,"642":1,"643":1,"645":1,"646":1,"650":3,"666":1,"669":1,"836":1,"837":1,"872":1,"975":1,"1037":2,"1046":1,"1055":1,"1086":1,"1094":1,"1096":2,"1097":1,"1103":2,"1121":1,"1122":1,"1127":1,"1139":1,"1193":1,"1200":1,"1304":1,"1305":2,"1309":2,"1312":1,"1314":1,"1318":1,"1325":1,"1372":1,"1408":1,"1447":1,"1704":1,"1716":1,"1717":2,"1792":3,"1823":1,"1857":1,"1941":1,"1947":1,"2164":1,"2174":1,"2225":1,"2257":1,"2362":1,"2391":1,"2393":1,"2429":1,"2436":1,"2464":1,"2466":1,"2615":2,"2633":1,"2811":1,"2826":1,"2827":1,"2828":1,"2829":2,"2831":3,"2834":1,"2838":1}}],["client",{"0":{"163":1,"264":1,"429":1,"666":1,"735":1,"894":1,"961":1,"995":1,"1024":1,"1063":1,"1218":1,"1317":1,"1342":1,"1361":1,"1720":1,"2287":1,"2346":1,"2389":1,"2489":1,"2519":1,"2582":1,"2627":1,"2628":1,"2761":1},"1":{"1721":1,"1722":1,"1723":1,"1724":1,"1725":1,"1726":1,"1727":1,"1728":1,"1729":1,"1730":1,"1731":1,"1732":1,"1733":1,"1734":1,"1735":1,"1736":1,"1737":1,"1738":1,"1739":1,"1740":1,"1741":1,"1742":1,"1743":1,"1744":1,"1745":1,"1746":1,"1747":1,"1748":1,"1749":1,"1750":1,"2288":1,"2289":1,"2290":1},"2":{"74":1,"163":1,"164":1,"182":2,"184":1,"186":2,"209":6,"210":1,"212":1,"215":2,"217":2,"219":2,"223":1,"237":1,"261":2,"264":1,"266":2,"297":2,"302":1,"320":1,"376":1,"383":2,"390":1,"412":1,"414":3,"415":2,"419":1,"423":1,"424":2,"429":1,"436":3,"438":1,"439":2,"452":1,"453":1,"480":1,"527":3,"529":3,"534":1,"535":2,"615":1,"663":6,"666":1,"679":1,"681":1,"718":2,"720":2,"722":2,"725":1,"727":1,"735":2,"738":1,"792":1,"802":1,"833":2,"834":1,"835":3,"836":1,"867":2,"868":1,"869":3,"871":3,"872":5,"873":3,"875":1,"876":1,"877":1,"878":1,"880":1,"894":1,"901":1,"909":1,"910":1,"911":1,"914":1,"915":1,"936":1,"938":1,"948":1,"957":1,"961":1,"972":1,"973":2,"974":1,"975":1,"978":1,"984":2,"1008":2,"1010":1,"1011":1,"1020":1,"1023":1,"1024":1,"1027":3,"1032":1,"1033":3,"1036":1,"1037":1,"1042":1,"1043":2,"1045":1,"1047":1,"1054":1,"1059":2,"1062":2,"1067":1,"1077":1,"1078":1,"1080":1,"1084":1,"1086":1,"1087":1,"1088":1,"1094":2,"1095":1,"1096":7,"1098":1,"1100":2,"1104":1,"1105":7,"1107":1,"1108":2,"1111":2,"1122":1,"1126":2,"1127":1,"1139":1,"1156":1,"1162":1,"1181":1,"1209":1,"1211":2,"1237":1,"1239":1,"1241":2,"1252":2,"1279":1,"1302":1,"1303":1,"1304":1,"1317":1,"1318":1,"1320":2,"1321":1,"1323":1,"1325":2,"1326":2,"1331":2,"1332":1,"1333":1,"1338":2,"1340":2,"1342":1,"1350":1,"1352":1,"1357":2,"1361":1,"1366":2,"1367":1,"1368":1,"1372":1,"1378":1,"1379":1,"1381":1,"1382":5,"1385":1,"1396":1,"1398":5,"1399":2,"1403":2,"1405":4,"1406":1,"1407":1,"1408":1,"1409":3,"1410":1,"1411":1,"1412":1,"1421":1,"1422":1,"1431":1,"1432":1,"1434":1,"1448":1,"1540":1,"1543":1,"1544":1,"1552":1,"1554":1,"1559":1,"1567":2,"1569":2,"1571":1,"1580":1,"1582":2,"1583":1,"1585":1,"1624":2,"1664":1,"1684":1,"1690":2,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":3,"1697":3,"1698":4,"1701":1,"1704":3,"1705":1,"1718":1,"1722":1,"1738":2,"1739":1,"1744":1,"1745":1,"1747":1,"1751":1,"1757":1,"1759":1,"1789":2,"1792":39,"1796":2,"1802":1,"1827":1,"1840":3,"1851":1,"1862":1,"1868":2,"1887":1,"1888":1,"1890":2,"1912":1,"1915":1,"1917":1,"1920":1,"1923":1,"1928":1,"1933":1,"1937":1,"1940":1,"1957":1,"1959":1,"1961":3,"1974":1,"2040":1,"2081":1,"2092":1,"2157":1,"2164":4,"2165":3,"2169":1,"2171":1,"2174":1,"2178":1,"2183":2,"2184":1,"2185":1,"2193":1,"2195":1,"2221":1,"2222":2,"2223":1,"2226":1,"2230":1,"2235":1,"2247":1,"2253":1,"2254":1,"2255":2,"2256":1,"2257":3,"2259":2,"2264":3,"2267":2,"2273":1,"2282":5,"2283":2,"2284":2,"2286":1,"2287":1,"2291":2,"2292":1,"2293":2,"2300":1,"2302":3,"2303":2,"2304":1,"2305":1,"2307":2,"2310":1,"2313":1,"2329":2,"2339":1,"2344":2,"2346":4,"2347":1,"2348":2,"2356":1,"2357":1,"2358":1,"2359":1,"2372":1,"2379":1,"2382":1,"2384":2,"2386":1,"2388":1,"2389":1,"2391":3,"2393":1,"2407":1,"2429":1,"2431":1,"2455":1,"2463":1,"2466":3,"2471":1,"2477":1,"2481":1,"2482":1,"2483":1,"2484":3,"2489":1,"2515":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2527":2,"2543":1,"2545":2,"2549":2,"2571":1,"2607":1,"2611":1,"2628":1,"2633":3,"2641":2,"2654":1,"2712":1,"2713":1,"2714":1,"2721":1,"2723":1,"2733":1,"2742":1,"2759":2,"2760":1,"2761":1,"2768":2,"2771":1,"2772":1,"2775":1,"2785":1,"2794":1,"2795":3,"2802":1,"2805":1,"2807":3,"2812":2,"2813":2,"2814":1,"2828":4,"2830":4,"2831":1,"2836":2,"2837":2,"2838":1,"2841":1,"2857":1,"2862":2,"2874":1,"2878":1}}],["cli",{"0":{"2414":1,"2663":1,"2667":1,"2679":1},"1":{"2415":1,"2416":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1},"2":{"56":1,"57":1,"58":1,"869":1,"1049":1,"1051":1,"1094":1,"1107":1,"1108":1,"1115":1,"1609":1,"2106":1,"2154":1,"2225":1,"2231":1,"2232":1,"2414":1,"2415":1,"2417":1,"2660":1,"2662":1,"2667":1,"2679":3,"2693":1}}],["clarity",{"2":{"2279":1}}],["clark",{"2":{"913":1}}],["clause",{"2":{"855":1,"861":1,"1378":1,"1442":1,"2267":1,"2732":1,"2848":1}}],["claude",{"2":{"0":1,"327":1,"1038":1,"1044":3,"1047":2,"1384":3,"1400":2,"1401":5,"1402":1,"1404":2,"1834":1,"2166":1,"2479":1}}],["class=",{"2":{"1427":3,"1429":1,"1431":1,"2762":2}}],["classified",{"2":{"2537":1}}],["classification",{"0":{"2364":1},"2":{"1181":1,"2621":1}}],["classic",{"2":{"695":1,"869":2,"871":1,"873":5,"1955":1,"2379":1,"2734":1,"2868":1,"2869":1,"2873":1}}],["classname",{"2":{"996":1,"2535":1}}],["classes",{"0":{"1155":1},"2":{"867":1,"1006":1,"1011":1,"1027":1,"1036":1,"1366":2,"1406":1,"1519":1}}],["class",{"0":{"1593":1,"1594":1,"1595":1,"1596":1},"2":{"841":1,"849":1,"864":1,"868":1,"872":1,"873":2,"986":1,"1026":2,"1066":1,"1101":1,"1155":1,"1366":1,"1429":1,"1432":1,"1624":1,"1792":5,"1856":1,"2255":1,"2265":3,"2372":1,"2401":1,"2438":2,"2450":1,"2453":1,"2455":1,"2486":1,"2621":1}}],["clash",{"2":{"448":1}}],["claimed",{"2":{"2482":1}}],["claiming",{"2":{"852":1}}],["claimtype",{"2":{"834":1,"1094":1,"1792":2,"2039":1}}],["claimtypes",{"2":{"34":3}}],["claim",{"0":{"168":1,"376":1,"689":1,"843":1,"847":1,"851":1,"859":1,"863":1,"1474":1,"2394":1,"2395":1},"1":{"690":1,"691":1,"692":1},"2":{"19":1,"20":1,"22":1,"32":1,"34":3,"41":2,"60":1,"61":1,"62":1,"63":1,"165":1,"168":4,"170":1,"239":1,"297":4,"298":2,"299":1,"304":4,"305":2,"306":9,"310":2,"314":2,"315":1,"376":3,"380":1,"384":2,"454":3,"479":1,"534":1,"689":4,"690":6,"691":4,"702":1,"737":1,"738":1,"801":3,"802":1,"841":1,"843":1,"859":2,"860":2,"861":1,"863":1,"864":1,"1060":1,"1064":1,"1069":1,"1070":5,"1074":2,"1094":1,"1102":4,"1105":1,"1121":1,"1162":2,"1188":1,"1239":1,"1454":4,"1474":3,"1475":2,"1477":3,"1480":2,"1540":3,"1544":3,"1547":1,"1569":1,"1686":2,"1688":2,"1738":1,"1759":1,"1792":29,"1830":1,"1852":5,"1912":1,"1923":1,"1924":1,"1955":2,"1957":3,"1960":1,"2037":1,"2038":2,"2039":1,"2040":5,"2179":1,"2180":3,"2181":3,"2182":1,"2183":7,"2184":2,"2185":2,"2187":2,"2188":1,"2189":1,"2221":2,"2222":1,"2226":2,"2258":1,"2314":1,"2322":2,"2333":1,"2379":5,"2383":5,"2394":6,"2395":5,"2407":1,"2474":1,"2476":5,"2481":1,"2509":1,"2510":1,"2511":1,"2513":1,"2520":1,"2526":1,"2529":9,"2540":2,"2546":1,"2549":1,"2554":4,"2572":1,"2733":3,"2739":1,"2845":2,"2849":1,"2860":1,"2865":5,"2869":2,"2876":1,"2881":1,"2882":1}}],["claimsidentity",{"2":{"1470":1}}],["claimsjsonparametername",{"2":{"1469":1,"1477":1,"1483":1,"1539":1,"1544":1,"1546":1,"1548":1,"1792":2}}],["claimsjsoncontextkey",{"2":{"734":1,"739":1,"1469":1,"1475":1,"1539":1,"1540":1,"1542":1,"1543":1,"1792":2,"2184":1}}],["claims",{"0":{"304":1,"305":1,"306":1,"733":1,"734":1,"765":1,"799":1,"1538":1,"2179":1,"2180":1,"2181":1,"2182":1,"2314":1,"2572":1,"2812":1},"1":{"305":1,"306":1,"1539":1,"1540":1,"1541":1,"1542":1,"1543":1,"1544":1,"1545":1,"1546":1,"1547":1,"1548":1,"1549":1,"1550":1,"1551":1,"2180":1,"2181":1,"2183":1,"2184":1,"2185":1},"2":{"11":1,"26":1,"29":1,"30":1,"34":1,"37":3,"38":2,"39":2,"40":2,"41":1,"43":1,"50":2,"65":1,"66":1,"165":1,"168":1,"215":1,"293":1,"296":2,"297":1,"298":2,"299":1,"300":1,"301":2,"304":2,"305":1,"306":3,"309":1,"315":4,"316":2,"376":2,"380":1,"436":1,"453":1,"454":1,"529":2,"535":1,"690":1,"728":1,"734":5,"737":2,"739":1,"740":1,"741":1,"742":1,"762":4,"765":4,"772":3,"794":1,"799":5,"801":2,"802":2,"804":1,"805":1,"806":1,"821":1,"841":1,"847":1,"851":1,"852":2,"868":1,"880":1,"882":1,"883":3,"884":1,"888":2,"893":2,"904":1,"905":4,"910":1,"934":2,"936":2,"937":2,"1058":2,"1065":1,"1066":1,"1077":1,"1086":1,"1094":1,"1098":7,"1101":1,"1102":6,"1106":1,"1188":1,"1216":2,"1221":1,"1232":6,"1239":2,"1244":1,"1253":1,"1348":2,"1371":1,"1372":1,"1469":1,"1475":4,"1477":6,"1480":1,"1483":1,"1484":1,"1485":2,"1506":1,"1507":2,"1538":1,"1539":1,"1540":3,"1542":2,"1543":3,"1544":3,"1546":2,"1547":5,"1548":1,"1551":2,"1688":1,"1689":1,"1788":1,"1792":28,"1852":1,"1882":2,"1888":1,"1923":1,"1924":3,"1928":2,"2038":2,"2039":2,"2040":1,"2123":1,"2125":4,"2129":2,"2131":2,"2170":3,"2171":7,"2176":2,"2179":1,"2180":2,"2181":1,"2182":1,"2183":2,"2184":1,"2185":2,"2187":3,"2188":2,"2189":3,"2222":1,"2224":1,"2229":1,"2258":2,"2284":1,"2314":2,"2322":1,"2333":1,"2383":1,"2423":1,"2465":1,"2476":2,"2482":1,"2509":1,"2529":1,"2549":6,"2572":6,"2627":1,"2806":1,"2812":3}}],["cult",{"2":{"2867":1}}],["cultureinfo",{"2":{"2451":1}}],["cuts",{"2":{"1401":1}}],["cut",{"2":{"1386":1,"2398":2}}],["cutting",{"2":{"868":1,"869":4,"873":3,"876":1,"2184":1}}],["custodianship",{"2":{"844":1}}],["custodian",{"2":{"843":2,"844":5}}],["customloginhandler",{"2":{"2554":1}}],["customserversenteventsresponseheaders",{"2":{"2249":2}}],["customtype",{"2":{"2504":1}}],["customtypefieldname",{"2":{"1792":1}}],["customtypeparameterseparator",{"2":{"915":1,"1792":2,"1966":1,"1967":1,"1968":1,"1975":1}}],["customrequestheaders",{"2":{"1792":1,"1836":1,"1848":1,"2701":1}}],["customapplicationname",{"2":{"1650":1,"1651":1,"1658":2,"1663":1,"1792":1,"2297":1}}],["customheaders",{"2":{"1553":1,"1564":1,"1582":2,"1792":1}}],["customhost",{"2":{"1553":1,"1555":1,"1792":1,"2648":2}}],["customimports",{"2":{"1553":1,"1560":1,"1582":1,"1792":1}}],["customizable",{"2":{"1385":1}}],["customization",{"0":{"1031":1},"2":{"1113":1,"1558":1,"2169":1,"2273":1}}],["customized",{"2":{"915":1}}],["customize",{"0":{"2727":1},"2":{"244":1,"965":1,"1386":2,"1576":1,"1685":1,"1732":1,"1776":1,"1969":1,"2119":1,"2704":1,"2776":1}}],["customizing",{"2":{"140":1,"2273":1}}],["customername",{"2":{"1193":1}}],["customers",{"2":{"1105":1}}],["customer",{"2":{"427":3,"836":1,"841":6,"856":1,"860":3,"948":1,"1105":2,"1107":1,"1187":1,"1188":1,"1189":1,"1191":3,"1192":2,"1193":9,"1373":1}}],["custom",{"0":{"71":1,"75":1,"154":1,"167":1,"201":1,"240":1,"249":1,"250":1,"344":1,"352":1,"401":1,"418":1,"442":1,"443":1,"449":1,"510":1,"604":1,"654":1,"724":1,"751":1,"756":1,"767":1,"780":1,"817":1,"912":1,"915":1,"1097":1,"1104":1,"1106":1,"1375":1,"1426":1,"1542":1,"1546":1,"1582":1,"1625":1,"1697":1,"1776":1,"1968":1,"2064":1,"2143":1,"2215":1,"2251":1,"2306":1,"2325":1,"2345":1,"2502":1,"2504":1,"2518":1,"2653":1,"2759":1},"1":{"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"781":1,"782":1,"783":1,"784":1,"785":1,"786":1,"787":1,"788":1,"789":1,"913":1,"914":1,"915":1,"916":1,"917":1,"918":1,"919":1,"920":1,"1105":1,"1106":1,"1107":1,"1108":1,"2144":1,"2145":1,"2346":1,"2347":1,"2348":1,"2760":1,"2761":1,"2762":1,"2763":1,"2764":1,"2765":1,"2766":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1},"2":{"41":1,"54":1,"66":1,"74":2,"75":1,"77":1,"79":1,"133":1,"154":1,"155":1,"160":2,"165":1,"170":2,"217":1,"223":2,"227":1,"228":1,"240":2,"243":1,"252":3,"260":1,"309":1,"337":1,"338":1,"344":1,"347":1,"363":1,"383":1,"387":4,"388":2,"390":3,"393":1,"394":1,"395":1,"396":2,"397":1,"402":2,"436":1,"527":2,"528":1,"533":1,"535":2,"536":1,"540":2,"546":1,"570":1,"579":1,"604":1,"637":1,"654":1,"669":1,"680":2,"684":1,"698":1,"718":1,"725":2,"751":3,"753":1,"756":2,"780":1,"790":2,"817":1,"868":2,"873":1,"912":4,"914":3,"915":3,"916":8,"917":2,"918":3,"920":1,"957":2,"1037":3,"1049":3,"1060":1,"1066":1,"1086":1,"1095":1,"1097":1,"1098":3,"1100":1,"1101":1,"1102":1,"1104":2,"1105":1,"1106":4,"1107":1,"1108":1,"1109":1,"1111":4,"1113":1,"1114":1,"1115":1,"1121":1,"1127":2,"1181":1,"1217":1,"1249":1,"1322":1,"1323":1,"1325":1,"1343":1,"1358":1,"1373":1,"1375":1,"1376":2,"1377":1,"1390":1,"1394":1,"1395":3,"1401":1,"1402":1,"1415":1,"1423":1,"1424":1,"1426":1,"1431":2,"1432":1,"1434":2,"1447":1,"1489":1,"1494":1,"1542":1,"1546":1,"1555":1,"1560":1,"1564":1,"1569":2,"1582":1,"1655":1,"1678":1,"1690":2,"1697":1,"1748":1,"1759":1,"1787":1,"1792":23,"1794":1,"1807":1,"1848":1,"1857":1,"1862":3,"1864":1,"1912":1,"1923":2,"1924":1,"1925":2,"1967":1,"1968":3,"2008":2,"2079":1,"2143":1,"2146":1,"2164":7,"2165":3,"2185":2,"2193":4,"2196":2,"2202":3,"2206":1,"2222":5,"2225":2,"2252":1,"2255":4,"2258":1,"2267":1,"2322":3,"2324":2,"2327":1,"2329":1,"2348":1,"2369":1,"2372":1,"2389":1,"2413":2,"2417":1,"2425":1,"2438":3,"2444":1,"2445":1,"2446":2,"2447":1,"2461":1,"2483":3,"2486":1,"2493":3,"2498":1,"2500":2,"2502":1,"2504":1,"2509":2,"2510":2,"2512":1,"2515":1,"2517":1,"2518":1,"2519":1,"2520":2,"2521":1,"2523":2,"2527":1,"2549":2,"2554":3,"2586":1,"2591":6,"2597":1,"2642":1,"2645":1,"2653":1,"2654":1,"2672":1,"2684":1,"2727":1,"2759":3,"2760":1,"2761":1,"2766":1,"2769":1,"2771":1,"2812":1,"2815":1,"2816":1,"2817":1,"2832":1,"2856":2,"2858":1,"2862":1}}],["curated",{"2":{"2419":1,"2430":1,"2438":1}}],["curtain",{"2":{"1437":1}}],["cursors",{"2":{"1130":1}}],["curve",{"2":{"1084":1,"1382":1}}],["currencies",{"2":{"1019":2,"1021":4,"1026":2,"1376":7,"1398":3,"2766":2}}],["currencies=usd",{"2":{"1023":1}}],["currencies=",{"2":{"1019":1,"1398":1,"2766":1}}],["currency",{"2":{"263":3,"1010":1,"1011":1,"1018":1,"1019":2,"1020":1,"1021":12,"1024":2,"1026":4,"1032":1,"1079":1,"1376":13,"1930":1,"2344":2,"2764":2,"2766":2}}],["currentuser",{"2":{"1988":1}}],["currentuser>",{"2":{"1792":1}}],["currently",{"2":{"323":2,"840":1,"1792":3,"2052":2,"2635":1}}],["current",{"0":{"1058":1,"1067":1},"2":{"16":2,"19":1,"20":1,"207":1,"288":2,"292":2,"306":2,"322":2,"390":1,"394":1,"401":1,"452":3,"502":1,"531":2,"584":2,"586":1,"592":1,"733":6,"734":1,"735":1,"736":3,"737":1,"752":1,"766":2,"772":1,"803":1,"826":2,"844":1,"872":2,"893":1,"978":1,"997":1,"1057":1,"1058":6,"1098":1,"1102":2,"1236":1,"1260":1,"1325":1,"1347":1,"1366":1,"1370":3,"1372":8,"1395":2,"1399":1,"1543":6,"1555":1,"1609":1,"1651":1,"1662":1,"1726":1,"1733":2,"1792":12,"1823":2,"1886":1,"1898":1,"2047":1,"2184":7,"2186":1,"2254":1,"2255":4,"2264":3,"2297":1,"2337":2,"2338":3,"2398":2,"2414":1,"2430":1,"2481":1,"2483":1,"2565":1,"2572":1,"2635":2,"2684":2,"2768":1,"2785":1,"2829":2,"2850":3,"2852":1,"2855":2}}],["curly",{"2":{"1398":1}}],["curl",{"2":{"38":1,"40":1,"61":1,"62":2,"1775":1,"2784":1,"2823":1,"2824":1}}],["crm",{"2":{"1792":1,"1823":3}}],["crt",{"0":{"1987":1},"2":{"1792":1}}],["crisis",{"2":{"1405":1}}],["criticized",{"2":{"1404":1}}],["critical",{"2":{"572":1,"577":1,"661":3,"927":1,"996":1,"1078":1,"1104":1,"1121":1,"1141":1,"1154":1,"1164":1,"1179":1,"1324":1,"1354":1,"1599":1,"1701":1,"1792":1,"1801":1,"2007":1,"2328":1,"2527":1,"2633":2,"2862":1}}],["criteria",{"2":{"1127":1}}],["crafting",{"2":{"1435":1}}],["crazy",{"2":{"1403":1}}],["crash",{"2":{"969":1,"971":1,"1595":1,"1605":1,"1792":1,"2157":1,"2223":1,"2367":1,"2394":1,"2497":2,"2534":1,"2543":1,"2546":1,"2688":1}}],["crashing",{"2":{"948":1,"1605":1,"2497":1,"2688":1}}],["crashes",{"2":{"947":1,"2157":1,"2543":1,"2679":1}}],["crucial",{"2":{"992":1}}],["cruds",{"2":{"1385":1}}],["crudsource",{"0":{"2351":1,"2352":1},"2":{"1096":1,"2226":1,"2317":1,"2351":3,"2352":2,"2369":1,"2389":10,"2551":1,"2729":1}}],["crud",{"0":{"2389":1},"2":{"175":1,"877":1,"1096":3,"1106":1,"1125":1,"1281":1,"1385":1,"2332":1,"2338":1,"2339":1,"2344":1,"2351":2,"2388":1,"2389":3,"2498":1,"2729":1}}],["crosses",{"2":{"2002":1,"2371":1,"2841":1}}],["crossoriginresourcepolicy",{"2":{"1792":1,"2015":1,"2016":1,"2025":1,"2029":1,"2632":1}}],["crossoriginembedderpolicy",{"2":{"1792":1,"2015":1,"2016":1,"2024":1,"2029":1,"2632":1}}],["crossoriginopenerpolicy",{"2":{"1792":1,"2015":1,"2016":1,"2023":1,"2024":1,"2029":1,"2632":1}}],["cross",{"0":{"663":1,"1449":1,"2022":1,"2023":1,"2024":1,"2025":1,"2429":1},"1":{"664":1,"665":1,"666":1,"2023":1,"2024":1,"2025":1},"2":{"650":1,"868":1,"869":4,"871":1,"872":3,"873":3,"876":3,"1193":1,"1205":1,"1206":1,"1305":1,"1409":1,"1429":1,"1447":1,"1449":1,"1457":1,"1487":1,"1637":1,"1639":1,"1640":1,"1644":2,"1788":1,"1792":19,"1795":1,"1963":1,"2015":1,"2016":4,"2019":6,"2023":3,"2024":3,"2025":2,"2027":1,"2029":1,"2030":1,"2157":1,"2184":1,"2225":1,"2413":1,"2417":1,"2425":2,"2427":1,"2429":1,"2435":1,"2436":1,"2438":3,"2444":1,"2447":1,"2466":1,"2486":1,"2543":1,"2546":1,"2554":1,"2632":18,"2776":1}}],["cron",{"2":{"531":1}}],["cryptographic",{"2":{"1210":1,"1211":1,"1235":1,"1243":1,"1248":1,"1792":1,"1885":1}}],["cryptography",{"2":{"307":1,"1209":1,"1867":1}}],["cryptoresult",{"2":{"1026":6}}],["cryptoservice",{"2":{"1026":2}}],["cryptosuccess",{"2":{"1023":1,"1024":2,"1026":2}}],["cryptoids",{"2":{"1026":7}}],["cryptoidscsv",{"2":{"1024":2}}],["cryptoidscsv=bitcoin",{"2":{"1023":1}}],["cryptoerror",{"2":{"1023":1,"1024":1,"1026":2}}],["cryptopriceservice",{"2":{"1026":3}}],["cryptoprices",{"2":{"1023":1,"1024":2,"1026":2}}],["crypto",{"2":{"1019":3,"1020":3,"1021":13,"1023":1,"1024":3,"1317":1,"1376":13,"1398":12,"1416":1,"2247":1,"2766":10}}],["cryptocurrency",{"2":{"1010":1,"1011":1,"1018":1,"1019":1,"1020":1}}],["crypt",{"2":{"37":1,"308":5,"592":2,"813":1,"928":1,"929":1,"1197":1,"1307":2,"1308":1,"1458":1,"1504":2,"2147":2,"2177":3,"2540":1,"2575":1}}],["cref=",{"2":{"1792":4}}],["creation",{"2":{"876":1,"975":1,"982":1,"1075":1,"1129":1,"1211":1,"1244":1,"1252":1,"1390":1,"1792":1,"1802":1,"1840":1,"1967":1,"2000":1,"2004":1,"2209":1,"2319":1,"2350":1,"2456":1,"2628":1}}],["creating",{"0":{"1186":1,"1724":1,"2829":1},"1":{"1187":1,"1188":1,"1189":1,"1725":1,"1726":1,"1727":1},"2":{"382":1,"1014":1,"1075":1,"1102":1,"1128":1,"1165":1,"1220":1,"1870":1,"2164":1,"2165":1,"2264":1,"2334":1,"2577":1,"2679":1,"2818":1,"2827":1}}],["createrundb",{"2":{"2873":2}}],["createtemplate",{"2":{"2873":2}}],["createtestsseeventsource",{"2":{"2247":1}}],["createtestdatabase",{"2":{"1792":1,"2111":1,"2532":1}}],["createxeventsource",{"2":{"2391":1}}],["createendpointsources",{"2":{"2352":1}}],["createelement",{"2":{"996":5}}],["createcomputevisualizationeventsource",{"2":{"1416":1,"1573":1}}],["createclient",{"2":{"1107":1,"1320":2}}],["createisolateddb1",{"2":{"2873":2}}],["createisolateddb",{"2":{"695":1,"705":2,"711":1,"715":1,"2533":1}}],["createseparatetypefile",{"0":{"1570":1},"2":{"1416":1,"1417":1,"1553":1,"1559":2,"1570":1,"1571":3,"1581":1,"1792":2,"2360":2,"2484":3}}],["createsendmessageeventsource",{"2":{"1317":2,"1318":2,"1321":2,"1326":3,"2830":3,"2836":3}}],["creates",{"2":{"252":1,"422":1,"446":1,"784":1,"886":1,"925":1,"974":1,"977":1,"986":1,"1005":1,"1011":1,"1073":1,"1079":1,"1094":2,"1164":1,"1204":1,"1215":1,"1220":2,"1221":1,"1308":1,"1324":1,"1374":1,"1388":1,"1511":1,"1792":7,"1870":1,"1929":1,"2098":1,"2176":1,"2265":2,"2317":1,"2482":1,"2533":2,"2615":1,"2709":1,"2773":1,"2774":2,"2775":1,"2839":1,"2849":1,"2872":1}}],["createdatabase",{"2":{"2111":1,"2112":1,"2532":2,"2534":2,"2871":2,"2872":2,"2875":1}}],["createdat",{"2":{"919":5,"995":1,"996":4,"1320":1,"1408":2,"2319":1}}],["createdb",{"2":{"704":2,"2533":1,"2534":1}}],["created",{"0":{"2749":1},"2":{"168":1,"173":1,"238":1,"244":1,"299":1,"372":2,"388":1,"566":2,"583":1,"694":1,"696":1,"701":2,"705":1,"913":1,"932":2,"938":1,"977":2,"980":3,"982":2,"983":1,"990":4,"992":1,"994":1,"995":1,"1073":4,"1098":1,"1213":3,"1249":1,"1253":1,"1307":1,"1309":5,"1310":3,"1321":5,"1336":1,"1372":5,"1400":1,"1403":1,"1408":2,"1689":2,"1792":11,"1844":1,"2109":1,"2167":1,"2187":1,"2265":1,"2291":1,"2318":1,"2319":2,"2337":1,"2364":2,"2482":1,"2529":1,"2530":1,"2532":1,"2546":1,"2629":1,"2731":1,"2749":1,"2762":1,"2795":1,"2797":1,"2822":1,"2823":1,"2824":2,"2825":1,"2829":10,"2836":7,"2840":2,"2845":2,"2846":2,"2854":1,"2865":1,"2872":1}}],["create",{"0":{"1021":1,"1355":1,"1357":1,"1725":1,"2820":1,"2825":1},"1":{"2821":1,"2822":1},"2":{"9":2,"37":2,"38":1,"39":1,"116":1,"187":2,"206":3,"207":1,"208":6,"209":2,"212":1,"248":3,"263":2,"264":3,"304":1,"308":1,"310":1,"332":1,"333":2,"334":2,"335":1,"337":1,"352":1,"357":1,"361":2,"451":2,"583":1,"584":1,"656":1,"664":2,"695":1,"697":1,"705":2,"756":3,"757":4,"764":3,"774":3,"784":2,"785":1,"814":2,"817":1,"845":1,"851":1,"876":1,"878":1,"879":1,"880":1,"888":2,"904":1,"910":1,"911":1,"913":2,"914":2,"915":8,"916":5,"924":4,"925":2,"926":4,"928":1,"929":1,"933":1,"934":1,"935":1,"936":1,"948":1,"975":1,"977":3,"979":1,"980":1,"983":1,"988":1,"990":1,"994":5,"1005":1,"1019":3,"1020":1,"1033":1,"1050":1,"1054":2,"1055":1,"1056":2,"1057":1,"1060":1,"1076":3,"1079":2,"1080":1,"1086":2,"1095":2,"1096":1,"1105":2,"1113":1,"1114":1,"1121":1,"1125":1,"1127":2,"1135":1,"1142":1,"1148":1,"1179":2,"1187":1,"1191":3,"1193":8,"1203":1,"1206":1,"1213":5,"1215":1,"1220":3,"1221":1,"1232":1,"1233":1,"1238":1,"1252":1,"1307":2,"1320":1,"1331":1,"1336":1,"1345":2,"1355":3,"1358":2,"1362":1,"1366":1,"1367":1,"1368":3,"1376":2,"1378":1,"1385":1,"1386":1,"1388":2,"1395":2,"1396":4,"1398":2,"1401":1,"1405":1,"1407":1,"1408":1,"1412":1,"1419":1,"1431":1,"1436":1,"1438":1,"1442":1,"1458":3,"1518":1,"1554":1,"1559":1,"1563":1,"1655":3,"1664":2,"1689":1,"1725":1,"1727":1,"1733":1,"1736":4,"1742":1,"1744":1,"1747":1,"1756":2,"1792":13,"1804":1,"1840":4,"1870":2,"1924":1,"1930":1,"1968":1,"1973":1,"1974":3,"2010":1,"2012":1,"2098":1,"2106":1,"2111":3,"2112":1,"2127":1,"2156":3,"2167":1,"2177":2,"2180":1,"2195":1,"2204":1,"2209":3,"2214":1,"2247":1,"2264":3,"2265":1,"2277":4,"2283":1,"2290":1,"2294":2,"2322":1,"2337":1,"2339":1,"2344":2,"2346":3,"2375":3,"2394":1,"2438":1,"2529":1,"2532":5,"2533":1,"2534":4,"2542":3,"2545":1,"2546":1,"2549":2,"2572":1,"2586":2,"2587":1,"2607":3,"2694":1,"2740":1,"2742":1,"2762":3,"2764":1,"2766":2,"2767":2,"2774":1,"2793":1,"2803":1,"2820":1,"2821":3,"2822":1,"2825":2,"2834":2,"2839":1,"2855":1,"2865":1,"2871":4,"2872":1,"2873":5,"2878":1}}],["credentialless",{"2":{"1792":1,"2024":1,"2632":1}}],["credentialid",{"2":{"1218":1,"1220":2,"1221":2,"1222":1,"1792":3}}],["credential",{"2":{"1037":1,"1098":1,"1210":1,"1211":1,"1213":1,"1215":4,"1216":3,"1218":1,"1229":2,"1232":2,"1234":3,"1235":1,"1236":5,"1237":3,"1239":5,"1244":1,"1792":8,"1879":2,"1882":1,"1884":1,"1885":1,"1886":3,"1887":3,"1888":2}}],["credentials",{"0":{"40":1,"60":1,"61":1,"1644":1,"2486":1},"2":{"29":1,"30":1,"31":2,"35":1,"37":1,"38":2,"40":1,"41":2,"51":3,"60":2,"63":2,"64":1,"297":1,"313":1,"316":1,"545":1,"926":5,"1065":1,"1185":1,"1196":1,"1198":1,"1200":1,"1202":1,"1214":1,"1218":1,"1220":2,"1221":2,"1222":3,"1229":1,"1232":2,"1234":2,"1240":2,"1415":1,"1441":2,"1470":1,"1615":1,"1621":1,"1639":1,"1641":1,"1644":1,"1771":1,"1792":15,"1879":1,"1882":1,"1884":2,"1889":2,"2024":1,"2063":2,"2161":1,"2171":2,"2363":1,"2486":1,"2558":1,"2635":1,"2819":1}}],["credited",{"2":{"2528":1,"2864":1}}],["credit",{"2":{"845":1,"859":1,"869":1,"1664":1,"2291":1}}],["creds",{"2":{"60":2}}],["caveman",{"2":{"1401":3}}],["caveats",{"2":{"1208":1,"1394":1,"2398":1}}],["caveat",{"2":{"873":1,"911":1,"971":1,"1126":1,"1279":2,"2540":1,"2845":1,"2867":1,"2869":1}}],["ca",{"2":{"1204":1,"2385":1}}],["cacm",{"2":{"852":1}}],["caching",{"0":{"115":1,"119":1,"214":1,"230":1,"1067":1,"1136":1,"1140":1,"1149":1,"1336":1,"1338":1,"1346":1,"1517":1,"1645":1,"1743":1,"1779":1,"2060":1,"2205":1,"2265":1,"2380":1,"2502":1,"2580":1,"2745":1,"2765":1},"1":{"1137":1,"1138":1,"1139":1,"1140":1,"1141":2,"1142":2,"1143":2,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"2381":1},"2":{"99":1,"101":1,"112":1,"119":1,"214":3,"230":1,"546":1,"548":1,"835":1,"836":1,"837":1,"852":2,"868":2,"869":2,"873":1,"876":1,"877":1,"1011":1,"1037":3,"1066":2,"1067":1,"1083":1,"1086":1,"1101":10,"1104":1,"1105":2,"1108":1,"1109":1,"1113":1,"1121":2,"1125":1,"1127":3,"1135":1,"1136":4,"1137":3,"1139":1,"1140":2,"1141":1,"1149":2,"1150":1,"1171":1,"1177":1,"1179":2,"1180":2,"1181":3,"1182":2,"1328":3,"1342":1,"1350":1,"1351":2,"1362":1,"1368":1,"1377":1,"1382":1,"1386":1,"1401":1,"1403":1,"1407":1,"1430":1,"1434":1,"1509":1,"1511":3,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1,"1519":1,"1527":1,"1530":1,"1533":1,"1535":1,"1537":1,"1639":1,"1722":2,"1743":2,"1764":1,"1769":1,"1790":1,"1792":13,"1797":1,"2038":1,"2041":1,"2047":1,"2060":1,"2164":1,"2165":1,"2205":2,"2222":2,"2237":1,"2239":1,"2265":6,"2274":2,"2329":1,"2380":4,"2386":2,"2389":1,"2463":1,"2465":1,"2495":1,"2500":1,"2502":3,"2506":2,"2527":1,"2567":1,"2580":4,"2634":1,"2635":1,"2759":1,"2774":1,"2806":1,"2815":1,"2816":1,"2824":1,"2825":1,"2838":1,"2856":1,"2862":1}}],["cachekeystring",{"2":{"2622":1}}],["cachekeys",{"2":{"2614":1,"2622":2}}],["cacheparsedfile",{"2":{"1792":1,"2033":1,"2037":1,"2038":1,"2042":1}}],["cachepruneintervalseconds",{"2":{"214":1,"1721":1,"1722":1,"1743":1,"1792":1,"2222":1,"2502":1,"2769":2}}],["cacheable",{"2":{"1531":1}}],["cacheenabled",{"2":{"214":1,"1721":1,"1722":1,"1743":1,"1792":1,"2222":1,"2502":1,"2765":1,"2769":2}}],["cachestampedetests",{"2":{"2465":1}}],["caches",{"2":{"120":1,"214":2,"1177":1,"1430":1,"1743":2,"2466":1,"2502":1,"2815":2}}],["cacheoptions",{"0":{"2380":1,"2445":1},"1":{"2381":1},"2":{"102":1,"104":1,"106":1,"107":1,"121":2,"279":1,"1067":2,"1141":1,"1145":1,"1146":1,"1147":2,"1148":1,"1149":1,"1150":1,"1177":1,"1510":1,"1513":1,"1514":1,"1515":2,"1516":1,"1517":1,"1518":1,"1520":1,"1529":1,"1534":2,"1792":1,"1948":1,"2225":1,"2265":9,"2274":1,"2279":2,"2378":1,"2380":1,"2440":1,"2442":1,"2495":1,"2532":1,"2551":1,"2701":1}}],["cacheduration",{"2":{"967":2,"1763":1,"1764":1,"1769":2,"1779":1,"1780":1,"1792":2,"2046":1,"2047":1,"2060":1,"2067":1,"2068":1,"2634":1,"2635":1}}],["cached",{"0":{"105":1,"112":1,"1531":1,"2494":1,"2495":1,"2815":1},"1":{"113":1,"114":1,"115":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1},"2":{"91":1,"94":1,"95":1,"96":1,"97":1,"99":1,"101":2,"105":2,"107":3,"108":3,"110":2,"113":3,"115":2,"116":1,"117":1,"118":1,"119":5,"121":1,"180":1,"214":3,"230":1,"263":4,"265":1,"278":3,"548":1,"686":2,"835":1,"868":1,"1066":2,"1067":4,"1101":2,"1108":1,"1113":1,"1129":1,"1135":3,"1137":1,"1138":2,"1140":1,"1141":3,"1142":4,"1143":2,"1145":1,"1147":1,"1148":1,"1149":2,"1179":3,"1180":1,"1181":1,"1182":1,"1329":1,"1332":2,"1338":8,"1339":13,"1342":1,"1346":1,"1349":1,"1511":5,"1517":3,"1518":2,"1519":2,"1521":1,"1523":1,"1529":1,"1531":2,"1532":2,"1533":1,"1535":1,"1537":1,"1722":3,"1743":3,"1769":1,"1792":16,"1930":3,"2006":1,"2193":3,"2205":3,"2207":2,"2223":3,"2224":1,"2265":9,"2323":1,"2329":1,"2344":5,"2380":4,"2459":1,"2465":1,"2466":7,"2494":3,"2495":1,"2500":1,"2502":3,"2506":1,"2527":1,"2580":3,"2581":4,"2622":2,"2634":1,"2635":1,"2745":1,"2769":1,"2774":1,"2795":1,"2806":1,"2815":8,"2835":1,"2838":1,"2856":1,"2862":1}}],["cache",{"0":{"91":1,"94":1,"95":1,"96":1,"97":1,"101":1,"105":1,"116":1,"117":1,"118":1,"121":1,"278":1,"542":1,"686":1,"1066":1,"1137":2,"1138":1,"1139":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1150":1,"1430":1,"1509":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1518":1,"1519":1,"1532":2,"1533":1,"1769":1,"2370":1,"2380":1,"2381":1,"2494":1,"2495":1,"2502":1},"1":{"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1138":2,"1139":2,"1145":1,"1146":1,"1147":1,"1510":1,"1511":1,"1512":1,"1513":2,"1514":2,"1515":2,"1516":1,"1517":1,"1518":1,"1519":1,"1520":2,"1521":2,"1522":2,"1523":2,"1524":2,"1525":2,"1526":2,"1527":2,"1528":2,"1529":2,"1530":1,"1531":1,"1532":1,"1533":1,"1534":1,"1535":1,"1536":1,"1537":1,"2381":1},"2":{"91":2,"92":1,"94":1,"95":1,"96":1,"97":1,"98":2,"100":2,"101":9,"102":1,"104":2,"105":5,"106":5,"107":1,"108":7,"109":4,"110":2,"111":2,"113":1,"116":1,"118":2,"119":2,"120":2,"121":6,"122":2,"123":3,"124":2,"203":3,"214":13,"230":4,"232":1,"278":4,"281":2,"540":1,"542":2,"543":2,"544":2,"546":1,"835":1,"852":2,"868":2,"869":2,"873":1,"967":1,"1037":2,"1066":1,"1067":12,"1101":9,"1113":1,"1135":2,"1137":1,"1138":10,"1139":5,"1141":1,"1142":2,"1143":1,"1144":1,"1145":1,"1146":2,"1147":6,"1148":4,"1149":1,"1150":17,"1179":4,"1180":5,"1181":6,"1182":2,"1332":6,"1333":2,"1334":1,"1336":3,"1338":11,"1339":7,"1342":1,"1346":2,"1362":2,"1363":5,"1406":1,"1430":2,"1434":1,"1511":14,"1513":1,"1515":9,"1516":6,"1518":6,"1519":4,"1520":5,"1521":3,"1522":3,"1523":1,"1524":1,"1527":4,"1529":8,"1531":2,"1532":4,"1533":4,"1534":1,"1535":4,"1537":2,"1645":1,"1722":1,"1743":9,"1764":1,"1769":1,"1778":1,"1790":1,"1792":40,"1797":1,"1974":8,"2033":3,"2037":3,"2038":1,"2041":2,"2047":1,"2060":2,"2202":1,"2205":4,"2207":3,"2210":1,"2212":1,"2222":2,"2223":2,"2224":2,"2228":1,"2265":24,"2274":8,"2329":1,"2370":1,"2380":14,"2381":3,"2445":2,"2459":4,"2461":2,"2463":3,"2464":2,"2465":2,"2466":1,"2494":2,"2495":4,"2498":3,"2502":11,"2505":2,"2506":3,"2551":3,"2580":8,"2607":8,"2614":1,"2622":3,"2634":2,"2635":2,"2745":3,"2765":6,"2769":2,"2775":2,"2806":1,"2809":1,"2810":1,"2815":6,"2817":1,"2835":3}}],["capped",{"2":{"2531":1,"2812":1}}],["capping",{"2":{"1382":1}}],["capacity",{"2":{"1958":1,"2470":1}}],["capabilities",{"0":{"1103":1},"2":{"1039":1,"1096":1,"1105":1,"1626":1,"2266":1,"2438":1,"2776":1}}],["capability",{"0":{"857":1},"2":{"835":1,"1104":1,"1106":1,"1218":1,"1824":1,"2481":1}}],["captcha",{"2":{"1220":1,"1870":1}}],["captures",{"2":{"1078":1,"1304":1,"1305":2,"1309":1,"1325":1,"1792":1,"2529":1,"2860":1}}],["capture",{"2":{"698":1,"2404":1,"2529":1}}],["captured",{"2":{"216":1,"239":1,"692":1,"1441":1,"1792":2,"2104":1,"2109":1,"2110":2,"2221":1,"2309":1,"2530":4,"2535":2,"2536":1,"2679":1,"2739":1,"2802":2,"2865":1,"2866":1,"2880":1}}],["cap",{"2":{"1068":1,"1161":1}}],["caps",{"2":{"1067":1,"1925":1,"2463":1,"2466":1}}],["camera",{"2":{"2021":1}}],["camera=",{"2":{"1792":1,"2021":1,"2029":1,"2632":1}}],["camel",{"2":{"1040":1,"1408":1,"1792":1}}],["camelcasenames",{"2":{"1792":1,"1836":1,"1841":1,"1863":1,"2701":1,"2724":1}}],["camelcased",{"0":{"2724":1},"2":{"1077":1}}],["camelcase",{"2":{"74":2,"258":1,"299":1,"388":1,"407":1,"454":1,"809":1,"814":1,"995":1,"1567":1,"1576":1,"1841":1,"2221":1,"2277":1,"2327":1,"2518":1,"2540":1,"2546":1,"2635":1,"2723":1,"2724":1,"2842":1,"2845":1}}],["came",{"0":{"1379":1},"2":{"650":1,"666":1,"843":1,"918":1,"1401":2,"2421":1,"2540":1}}],["cargo",{"2":{"2867":1}}],["carves",{"2":{"1428":1}}],["car",{"2":{"1077":1}}],["carol",{"2":{"913":1,"919":2,"1051":3,"1061":1}}],["carousels",{"2":{"834":1}}],["cartesian",{"2":{"852":1,"918":1}}],["caret",{"2":{"2328":1}}],["career",{"2":{"1403":2}}],["careful",{"2":{"873":1}}],["carefully",{"2":{"849":1,"1315":1}}],["care",{"2":{"848":1,"849":1,"904":1,"1079":1,"1132":1,"1150":1,"1402":1,"1404":1,"1421":1,"1428":1}}],["cards",{"2":{"834":1}}],["card",{"2":{"594":1,"833":1,"1424":1,"1429":1,"1664":1,"2291":1}}],["carriage",{"2":{"2589":1}}],["carried",{"2":{"1075":1,"2171":1,"2172":1,"2546":1}}],["carries",{"2":{"74":1,"317":1,"320":2,"659":1,"686":1,"976":1,"1040":1,"1070":1,"1824":1,"1924":2,"2171":1,"2424":1,"2481":3,"2482":1,"2509":1,"2512":1,"2545":1,"2795":1,"2833":1}}],["carryover",{"2":{"2099":1,"2527":1,"2862":1}}],["carrying",{"2":{"75":1,"1431":1,"1792":3,"1925":1,"2094":2,"2097":2,"2167":1,"2222":1,"2423":1,"2451":1,"2504":1,"2517":1,"2537":3,"2804":1}}],["carry",{"2":{"0":2,"706":1,"849":1,"1326":1,"1792":1,"1813":1,"1822":1,"1830":1,"1924":1,"1925":1,"1961":1,"2180":1,"2459":1,"2481":2,"2509":1,"2519":1,"2533":1,"2537":1}}],["catching",{"2":{"1409":1,"2164":1,"2165":1}}],["catch",{"2":{"1026":2,"1320":1,"1366":1,"1400":1,"1409":1,"1431":1,"2007":1,"2405":1,"2627":1,"2696":1}}],["catches",{"2":{"864":1,"997":1,"1005":1,"1421":1,"1609":1,"2007":1,"2328":1,"2389":1,"2394":1,"2659":1}}],["catastrophic",{"2":{"1402":1}}],["catastrophically",{"2":{"948":1}}],["catastrophe",{"2":{"860":1}}],["catalogs",{"2":{"933":1,"1432":1}}],["catalog",{"2":{"584":1,"868":1,"933":1,"934":1,"935":1,"936":1,"1038":1,"1055":1,"1056":2,"1057":2,"1058":6,"1060":1,"1138":3,"1179":2,"1185":1,"1188":1,"1192":1,"1406":1,"1419":1,"1422":1,"1824":1,"1839":1,"1974":2,"2164":1,"2324":1,"2337":1,"2350":1,"2537":1,"2541":2,"2590":1,"2607":3,"2710":1,"2740":1,"2751":1,"2792":1,"2795":1,"2799":1,"2854":1}}],["categorically",{"2":{"875":1}}],["categories",{"0":{"222":1},"1":{"223":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"237":1,"238":1,"239":1,"240":1}}],["category",{"0":{"2621":1},"2":{"860":1,"948":1,"1038":3,"1042":1,"1044":1,"1045":1,"1191":1,"1382":1,"1383":1,"1943":1,"2236":1,"2621":4}}],["cascade",{"2":{"924":1,"925":1,"977":1,"1213":1,"1329":1}}],["casttotext",{"2":{"2621":1}}],["casts",{"2":{"2348":1,"2359":1,"2540":1,"2546":1,"2845":1}}],["cast",{"2":{"888":1,"911":1,"1395":1,"2109":1,"2360":3,"2530":1,"2590":1,"2608":1,"2734":1}}],["casting",{"2":{"803":1,"916":2,"1031":1,"1097":1,"1098":1,"1581":1,"2258":1}}],["casing",{"2":{"348":1,"2432":1,"2435":1,"2679":1,"2692":1}}],["cased",{"2":{"1040":1}}],["cases",{"0":{"1344":1},"1":{"1345":1,"1346":1,"1347":1,"1348":1},"2":{"624":1,"848":1,"863":1,"869":1,"874":1,"987":1,"1070":1,"1205":1,"1249":1,"1327":1,"1385":1,"1386":1,"1405":1,"1597":1,"1746":1,"1792":1,"2164":1,"2343":1,"2347":1,"2375":1,"2381":1,"2463":1,"2498":1,"2523":1,"2607":1}}],["case",{"0":{"866":1,"877":1,"2493":1},"1":{"867":1,"868":1,"869":1,"870":1,"871":1,"872":1,"873":1,"874":1,"875":1,"876":1,"877":1},"2":{"74":2,"105":1,"121":1,"212":1,"258":1,"269":1,"379":1,"388":1,"390":1,"395":2,"407":2,"446":1,"448":1,"464":1,"522":1,"528":1,"537":1,"544":1,"663":1,"687":1,"709":1,"809":1,"818":1,"841":1,"844":1,"845":2,"849":4,"851":2,"852":1,"866":1,"869":2,"876":2,"916":1,"934":1,"948":1,"961":1,"995":1,"1037":1,"1042":1,"1130":1,"1133":1,"1134":1,"1228":1,"1229":1,"1230":1,"1382":4,"1383":1,"1385":3,"1386":1,"1394":1,"1395":1,"1398":2,"1399":1,"1402":2,"1403":1,"1408":2,"1414":1,"1421":1,"1429":1,"1457":1,"1459":1,"1460":1,"1523":1,"1567":1,"1571":1,"1576":1,"1727":1,"1792":15,"1825":1,"1841":1,"1854":1,"1862":1,"1878":1,"1879":1,"1880":1,"1922":1,"1955":1,"1959":1,"1967":2,"2036":1,"2097":1,"2102":1,"2192":1,"2222":1,"2223":1,"2255":2,"2277":1,"2322":2,"2328":1,"2333":1,"2375":2,"2379":1,"2380":2,"2394":1,"2395":1,"2422":1,"2425":1,"2435":1,"2438":2,"2459":1,"2463":1,"2464":1,"2471":1,"2483":1,"2493":4,"2518":2,"2520":1,"2523":2,"2528":1,"2537":2,"2544":1,"2546":1,"2554":1,"2595":1,"2614":1,"2678":1,"2679":1,"2692":1,"2694":1,"2695":2,"2700":1,"2724":1,"2734":1,"2764":2,"2766":2,"2864":1,"2877":1,"2880":1}}],["calculation",{"2":{"2421":1}}],["calculate",{"2":{"180":1,"686":1}}],["calibri",{"2":{"1792":1,"2073":1,"2075":1,"2080":1}}],["callback",{"2":{"1063":3,"1410":2,"1416":1,"1792":7,"2247":3,"2369":1,"2487":1,"2554":1,"2830":1}}],["callbacks",{"0":{"310":1,"1056":1},"2":{"305":1,"310":1,"1037":1,"1048":1,"1049":1,"1056":3,"1064":2,"1366":1,"1367":1,"1410":1,"2177":1,"2181":1,"2188":1,"2506":1,"2760":1}}],["caller",{"2":{"320":1,"386":1,"390":2,"394":1,"429":1,"448":1,"453":4,"454":1,"527":1,"529":1,"531":1,"534":1,"679":1,"876":1,"1074":1,"1415":1,"1825":2,"1832":1,"1833":1,"1961":1,"2310":1,"2395":2,"2450":1,"2466":1,"2481":1,"2526":3,"2535":1,"2739":1,"2812":1,"2860":3}}],["callers",{"2":{"298":1,"351":1,"529":1,"872":2,"1408":1,"1792":1,"1856":1,"2176":1,"2187":1,"2313":1,"2453":1,"2454":2,"2455":1,"2461":1}}],["called",{"0":{"1134":1},"2":{"157":1,"174":1,"361":1,"679":2,"841":1,"843":1,"844":1,"848":2,"851":1,"859":1,"918":1,"932":1,"983":1,"1017":1,"1029":1,"1102":1,"1129":2,"1134":1,"1329":1,"1382":1,"1385":1,"1394":1,"1398":1,"1401":1,"1431":1,"1792":8,"1825":1,"2372":1,"2451":1,"2481":1,"2504":1,"2559":2,"2622":1,"2813":1,"2815":1,"2829":1}}],["call",{"0":{"394":1,"531":1,"691":1,"1010":1,"1038":1,"2347":1},"1":{"1011":1,"1012":1,"1013":1,"1014":1,"1015":1,"1016":1,"1017":1,"1018":1,"1019":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1},"2":{"214":5,"215":1,"239":1,"310":2,"317":1,"320":1,"324":1,"327":1,"383":1,"386":1,"387":1,"388":1,"394":1,"422":1,"423":1,"424":1,"436":1,"446":3,"448":1,"453":2,"454":1,"480":1,"528":1,"529":1,"689":2,"701":1,"835":1,"836":1,"848":1,"852":1,"856":1,"872":1,"876":1,"883":1,"885":1,"914":1,"915":2,"918":1,"922":1,"932":2,"933":1,"940":1,"941":1,"945":1,"966":1,"1029":2,"1035":2,"1037":3,"1038":2,"1039":1,"1041":1,"1043":2,"1044":2,"1045":1,"1054":1,"1056":2,"1062":2,"1063":1,"1070":2,"1074":1,"1077":1,"1078":2,"1102":2,"1105":2,"1106":1,"1107":1,"1126":1,"1130":1,"1132":1,"1134":1,"1154":1,"1185":2,"1209":1,"1317":1,"1332":1,"1338":2,"1346":1,"1348":2,"1383":1,"1398":5,"1399":1,"1405":2,"1409":3,"1410":2,"1426":1,"1430":1,"1431":1,"1434":1,"1438":1,"1439":1,"1441":3,"1504":1,"1567":1,"1581":1,"1650":1,"1651":1,"1655":1,"1663":1,"1689":1,"1722":1,"1738":1,"1743":3,"1744":1,"1746":1,"1747":2,"1792":13,"1800":1,"1805":2,"1810":1,"1813":1,"1820":1,"1822":1,"1824":2,"1825":1,"1827":1,"1832":2,"1833":2,"1834":1,"1850":1,"1852":1,"1929":1,"1930":2,"1961":1,"2049":1,"2123":2,"2128":2,"2130":2,"2132":2,"2164":1,"2166":1,"2177":1,"2222":2,"2223":2,"2277":4,"2283":1,"2297":1,"2307":1,"2329":1,"2344":1,"2346":1,"2347":2,"2348":1,"2383":2,"2393":1,"2397":2,"2400":2,"2405":1,"2414":1,"2466":1,"2479":2,"2481":6,"2494":1,"2495":1,"2498":1,"2500":1,"2502":6,"2504":4,"2506":4,"2510":1,"2526":1,"2527":2,"2529":1,"2551":2,"2635":2,"2759":1,"2760":2,"2763":1,"2764":1,"2765":2,"2767":2,"2768":1,"2769":1,"2770":1,"2802":1,"2803":1,"2804":1,"2807":1,"2810":1,"2811":4,"2815":1,"2817":1,"2830":2,"2833":1,"2858":1,"2862":1,"2865":1}}],["calling",{"2":{"214":1,"423":1,"865":1,"876":1,"932":1,"1010":1,"1016":1,"1104":1,"1132":1,"1134":1,"1215":1,"1393":1,"1449":1,"1518":1,"1733":1,"1743":1,"1792":3,"1832":1,"1961":1,"2264":1,"2265":1,"2346":2,"2425":1,"2481":1,"2580":1}}],["calls",{"0":{"209":1,"1029":1,"1376":1,"1744":1,"1929":1,"2345":1,"2346":1,"2766":1,"2767":1},"1":{"1745":1,"1746":1,"1747":1,"1930":1,"2346":1,"2347":1,"2348":1},"2":{"184":1,"186":1,"209":1,"223":1,"261":3,"264":1,"266":2,"285":1,"327":1,"383":1,"390":1,"395":1,"415":1,"421":1,"423":1,"436":1,"445":1,"446":1,"480":2,"527":1,"529":1,"535":1,"826":1,"845":1,"849":1,"871":1,"874":1,"876":1,"881":1,"919":1,"920":1,"933":1,"1004":1,"1010":2,"1011":2,"1014":2,"1015":4,"1016":1,"1023":2,"1029":1,"1033":1,"1037":1,"1039":1,"1043":1,"1060":1,"1070":1,"1102":4,"1104":4,"1106":2,"1107":1,"1108":3,"1126":1,"1129":2,"1132":1,"1133":1,"1193":2,"1211":1,"1215":1,"1231":1,"1328":1,"1331":1,"1338":2,"1340":1,"1346":2,"1351":1,"1376":3,"1398":2,"1399":1,"1403":1,"1405":5,"1409":1,"1419":1,"1428":1,"1434":1,"1440":1,"1441":1,"1517":1,"1745":1,"1746":1,"1747":1,"1789":1,"1792":4,"1796":1,"1824":1,"1834":1,"1850":2,"1862":2,"1868":1,"1881":1,"1929":1,"1933":1,"1961":3,"2164":3,"2165":3,"2183":1,"2184":1,"2185":1,"2222":1,"2239":1,"2265":1,"2283":1,"2284":1,"2292":1,"2293":1,"2297":1,"2303":1,"2338":1,"2344":1,"2346":1,"2347":1,"2348":1,"2372":2,"2382":1,"2383":1,"2438":1,"2463":1,"2483":1,"2500":2,"2504":2,"2506":1,"2527":1,"2529":1,"2532":1,"2533":1,"2540":1,"2550":1,"2580":1,"2614":1,"2622":2,"2656":1,"2759":3,"2765":1,"2766":2,"2767":1,"2770":2,"2791":1,"2810":1,"2834":1,"2836":1,"2845":1,"2865":1,"2870":1}}],["callable",{"2":{"173":1,"263":1,"320":1,"448":1,"1077":1,"1378":1,"1393":1,"1412":1,"2344":1,"2489":1,"2543":1,"2857":1}}],["caution",{"2":{"1511":1,"1792":1,"2265":1}}],["causing",{"2":{"1139":1,"1254":1,"2362":1,"2367":1,"2546":1,"2597":1,"2648":1}}],["caused",{"2":{"1324":1,"2258":1,"2353":1,"2409":1,"2666":1}}],["causes",{"2":{"664":1,"2258":1,"2359":1,"2721":1,"2722":1}}],["cause",{"0":{"2411":1,"2421":1,"2442":1},"2":{"102":1,"948":1,"1641":1,"1774":1,"1792":1,"1983":1,"2088":1,"2365":1,"2380":1,"2445":1,"2495":1,"2504":1,"2529":1,"2542":1,"2685":1,"2865":1}}],["caught",{"2":{"109":1,"864":1,"978":1,"982":1,"997":1,"1005":1,"1409":1,"1527":1,"2007":1,"2328":1,"2413":1,"2444":2,"2445":1,"2840":1}}],["cadence",{"2":{"106":1,"872":1,"1067":1}}],["candidates",{"2":{"2482":1}}],["cancels",{"2":{"2466":3}}],["cancellable",{"2":{"2615":1}}],["cancellation",{"2":{"2466":3,"2615":7}}],["cancellationtoken",{"0":{"2615":1},"2":{"2236":1,"2461":3,"2615":3}}],["cancelled",{"2":{"139":1,"1669":1,"1673":1,"1674":1,"1678":1,"1792":2,"2255":2,"2615":2}}],["canceled",{"2":{"1674":1,"1792":2,"2255":5}}],["cancelcomputeurl",{"2":{"1572":1}}],["cancel",{"2":{"1043":1,"1572":1}}],["canonical",{"2":{"305":1,"864":1,"1792":1,"1830":1,"2181":1,"2451":1,"2481":1}}],["cannot",{"2":{"63":1,"108":1,"188":2,"389":1,"414":1,"529":1,"576":1,"691":1,"816":3,"852":1,"857":3,"864":3,"865":1,"872":1,"873":1,"919":2,"922":1,"932":1,"940":1,"1054":1,"1081":1,"1106":1,"1115":1,"1129":2,"1133":1,"1185":3,"1378":1,"1408":1,"1441":3,"1448":1,"1522":1,"1595":1,"1624":3,"1651":1,"1658":1,"1792":7,"1818":1,"1856":1,"1867":3,"1961":1,"2040":1,"2099":1,"2110":2,"2138":1,"2140":3,"2142":2,"2146":2,"2153":1,"2284":1,"2296":2,"2297":1,"2300":1,"2380":1,"2438":1,"2455":1,"2476":1,"2529":1,"2530":2,"2531":1,"2533":1,"2575":5,"2608":3,"2733":1,"2855":2,"2865":1,"2876":1,"2881":1}}],["can",{"0":{"1038":1,"1396":1,"2483":1,"2714":1,"2719":1,"2729":1,"2740":1},"1":{"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1},"2":{"9":2,"14":1,"18":1,"19":1,"20":1,"41":1,"51":1,"62":1,"77":1,"87":2,"108":1,"119":1,"206":1,"209":1,"211":1,"212":1,"244":1,"253":1,"258":2,"302":1,"306":1,"309":1,"310":1,"312":1,"317":1,"327":1,"336":1,"362":1,"363":1,"366":1,"370":1,"373":1,"377":1,"378":1,"390":2,"404":1,"407":1,"409":2,"411":1,"414":1,"448":1,"453":2,"458":2,"469":1,"470":2,"529":3,"534":1,"542":1,"544":1,"556":2,"560":1,"587":1,"619":1,"646":1,"650":2,"655":1,"664":1,"669":1,"673":1,"687":1,"691":1,"706":1,"708":1,"711":1,"714":1,"737":1,"751":1,"801":1,"809":2,"814":1,"832":1,"834":1,"835":2,"836":1,"841":3,"843":1,"844":1,"845":2,"847":1,"848":8,"851":3,"852":8,"854":1,"856":1,"859":1,"860":1,"861":1,"863":1,"864":5,"868":1,"871":1,"872":2,"873":2,"875":2,"877":1,"884":1,"902":1,"903":1,"904":2,"912":1,"913":2,"914":4,"915":3,"916":4,"917":5,"918":6,"919":3,"920":2,"922":2,"926":1,"932":2,"933":1,"934":1,"941":1,"945":1,"947":1,"960":1,"965":1,"966":1,"974":3,"990":1,"992":2,"993":2,"994":2,"1013":1,"1015":2,"1023":1,"1029":1,"1032":1,"1033":1,"1037":2,"1038":2,"1039":1,"1041":1,"1042":1,"1045":2,"1046":1,"1048":1,"1049":2,"1052":1,"1055":1,"1057":1,"1059":1,"1070":1,"1073":4,"1075":1,"1077":4,"1078":3,"1079":2,"1081":1,"1083":1,"1095":1,"1096":1,"1097":2,"1098":2,"1100":1,"1101":1,"1102":1,"1106":3,"1107":1,"1108":1,"1111":1,"1113":1,"1114":1,"1122":1,"1125":1,"1128":1,"1129":3,"1130":1,"1133":4,"1134":1,"1138":4,"1139":2,"1140":1,"1147":1,"1148":1,"1161":1,"1162":1,"1163":1,"1166":1,"1169":1,"1170":1,"1174":1,"1176":1,"1183":1,"1185":6,"1187":1,"1193":4,"1206":1,"1209":1,"1213":1,"1218":1,"1224":1,"1237":1,"1240":1,"1241":1,"1244":1,"1254":3,"1272":1,"1305":1,"1309":1,"1325":1,"1326":1,"1332":1,"1340":1,"1343":1,"1363":1,"1372":1,"1373":1,"1377":2,"1378":1,"1382":2,"1383":1,"1385":5,"1386":16,"1388":1,"1390":4,"1391":4,"1392":1,"1393":6,"1394":6,"1395":3,"1396":4,"1398":5,"1399":2,"1402":1,"1403":8,"1405":10,"1406":1,"1412":1,"1413":1,"1419":1,"1431":1,"1435":3,"1437":3,"1440":1,"1441":3,"1445":1,"1453":1,"1457":1,"1459":1,"1464":1,"1490":1,"1504":1,"1511":1,"1515":1,"1516":1,"1518":1,"1547":1,"1559":1,"1571":2,"1588":1,"1606":1,"1607":1,"1609":1,"1614":1,"1620":1,"1632":1,"1640":1,"1651":1,"1659":1,"1662":1,"1685":1,"1689":1,"1697":1,"1706":2,"1716":1,"1717":1,"1727":1,"1731":1,"1732":1,"1733":1,"1738":1,"1739":1,"1770":1,"1792":45,"1820":1,"1822":1,"1825":1,"1827":1,"1832":1,"1833":2,"1834":1,"1837":1,"1840":1,"1843":1,"1852":1,"1855":1,"1858":1,"1868":1,"1874":1,"1887":1,"1915":1,"1924":2,"1955":1,"1958":2,"1969":1,"1983":1,"1989":1,"2000":1,"2008":1,"2016":1,"2021":1,"2025":1,"2039":1,"2047":1,"2056":1,"2058":1,"2059":2,"2079":1,"2089":1,"2094":1,"2098":1,"2103":1,"2139":1,"2141":1,"2143":1,"2148":1,"2149":1,"2166":1,"2175":1,"2178":1,"2179":1,"2182":1,"2184":1,"2185":1,"2192":1,"2195":1,"2200":1,"2207":1,"2220":1,"2223":1,"2227":1,"2245":1,"2252":2,"2253":1,"2257":2,"2264":2,"2265":1,"2274":1,"2277":2,"2284":1,"2285":1,"2287":1,"2297":2,"2302":1,"2314":1,"2330":1,"2333":1,"2340":1,"2344":1,"2347":1,"2375":1,"2379":1,"2383":1,"2389":1,"2393":1,"2395":1,"2397":2,"2402":1,"2404":1,"2415":1,"2419":1,"2422":1,"2434":1,"2438":2,"2455":1,"2466":1,"2476":1,"2479":3,"2481":4,"2482":1,"2483":1,"2484":1,"2500":1,"2502":1,"2509":1,"2511":1,"2519":1,"2527":1,"2530":1,"2531":1,"2532":3,"2533":2,"2534":2,"2537":2,"2540":2,"2542":1,"2549":2,"2554":2,"2565":1,"2575":2,"2580":1,"2581":1,"2587":1,"2596":1,"2615":1,"2632":1,"2633":1,"2634":1,"2635":3,"2653":1,"2662":1,"2670":1,"2677":1,"2678":1,"2680":1,"2681":1,"2684":1,"2687":1,"2689":1,"2693":1,"2695":1,"2712":1,"2719":1,"2736":1,"2741":1,"2755":2,"2758":2,"2764":1,"2765":1,"2768":1,"2779":1,"2785":2,"2799":1,"2803":3,"2806":1,"2808":1,"2812":2,"2815":1,"2820":1,"2822":1,"2824":2,"2825":1,"2827":1,"2830":1,"2831":1,"2833":2,"2840":1,"2847":2,"2858":2,"2862":1,"2869":2,"2875":1,"2881":1}}],["chinese",{"2":{"2607":1}}],["chip",{"2":{"2535":2}}],["children",{"2":{"2532":1}}],["child",{"2":{"2157":7,"2543":10}}],["chilling",{"2":{"913":1,"919":2}}],["chmod",{"2":{"1117":1,"2782":1,"2783":1,"2784":1}}],["chf",{"2":{"1024":1}}],["choking",{"2":{"2615":1}}],["chose",{"2":{"2389":1,"2415":1}}],["chosen",{"2":{"860":2,"2155":1,"2442":1}}],["choosing",{"0":{"2178":1},"2":{"857":1,"868":1,"1044":1,"2421":1}}],["chooses",{"2":{"1130":1,"1133":1,"2175":1}}],["choose",{"0":{"837":1,"1120":1,"1121":1,"1122":1,"1123":1},"1":{"1121":1,"1122":1,"1123":1},"2":{"679":1,"848":1,"860":1,"879":1,"1055":1,"1094":2,"1096":2,"1367":1,"1385":1,"2178":1,"2193":1,"2353":1,"2712":1,"2806":1}}],["choices",{"2":{"1403":1}}],["choice",{"2":{"852":1,"876":1,"1127":1,"1272":1,"1280":1,"1405":1,"1412":1,"1792":1,"2466":1,"2829":1}}],["cheaply",{"2":{"2767":1}}],["cheaper",{"2":{"1429":1}}],["cheapest",{"2":{"1044":2}}],["cheap",{"2":{"1075":1,"1382":3,"2482":1,"2809":1}}],["cheating",{"2":{"852":1}}],["chen",{"2":{"913":1}}],["chew",{"2":{"872":1}}],["cheerfully",{"2":{"859":1}}],["checkout",{"2":{"1386":1}}],["checklist",{"0":{"2429":1},"2":{"910":1,"1382":1}}],["checker",{"2":{"871":1,"872":1,"1037":1,"1073":1,"1080":1,"1404":2}}],["checked",{"2":{"1":1,"22":1,"354":1,"992":2,"1061":1,"1075":1,"1076":1,"1382":1,"1420":1,"2184":1,"2433":1,"2741":1,"2868":1,"2872":1}}],["checking",{"0":{"972":1,"981":1,"1004":1},"1":{"973":1,"974":1,"975":1,"976":1,"977":1,"978":1,"979":1,"980":1,"981":1,"982":2,"983":2,"984":2,"985":1,"986":1,"987":1,"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1,"995":1,"996":1,"997":1,"998":1,"999":1,"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1005":1,"1006":1,"1007":1,"1008":1,"1009":1},"2":{"747":1,"879":1,"972":1,"974":1,"975":2,"976":2,"981":1,"985":1,"996":3,"998":3,"1009":1,"1037":1,"1086":1,"1096":1,"1127":1,"1368":1,"1386":1,"1405":1,"1408":1,"1409":3,"1419":1,"1609":1,"1792":2,"2098":1,"2164":3,"2165":2,"2534":1,"2597":1,"2661":1,"2722":1,"2840":1,"2858":1,"2868":1}}],["checks",{"0":{"1762":1},"1":{"1763":1,"1764":1,"1765":1,"1766":1,"1767":1,"1768":1,"1769":1,"1770":1,"1771":1,"1772":1,"1773":1,"1774":1,"1775":1,"1776":1,"1777":1,"1778":1,"1779":1,"1780":1,"1781":1,"1782":1,"1783":1,"1784":1},"2":{"10":1,"37":1,"320":1,"327":1,"638":1,"641":1,"690":1,"696":1,"782":2,"784":2,"807":1,"835":1,"864":1,"869":2,"873":1,"992":2,"1079":2,"1080":1,"1100":1,"1127":1,"1181":1,"1243":1,"1328":2,"1329":1,"1337":1,"1338":1,"1351":1,"1358":1,"1719":1,"1762":1,"1764":2,"1766":1,"1768":1,"1771":2,"1774":1,"1783":1,"1791":1,"1792":6,"1824":1,"1834":1,"1974":1,"2070":1,"2137":1,"2171":1,"2181":2,"2309":1,"2481":1,"2490":2,"2529":1,"2562":1,"2566":1,"2575":1,"2607":1,"2608":1,"2621":1,"2634":7,"2659":1,"2868":2}}],["check",{"0":{"1337":1,"1765":1,"1770":1,"1775":1,"1781":1,"2634":1},"1":{"1766":1,"1767":1,"1768":1,"1771":1},"2":{"8":1,"298":1,"354":1,"747":3,"753":4,"757":4,"768":3,"776":2,"781":1,"782":4,"783":1,"784":4,"785":1,"786":2,"835":1,"844":1,"845":2,"851":1,"852":2,"854":1,"864":5,"865":1,"904":2,"913":1,"914":1,"992":1,"1041":1,"1045":1,"1079":1,"1080":1,"1100":3,"1129":1,"1213":1,"1254":1,"1332":1,"1335":1,"1338":1,"1339":1,"1342":1,"1349":3,"1358":6,"1360":2,"1386":2,"1405":1,"1410":2,"1439":1,"1504":1,"1609":1,"1719":1,"1762":1,"1764":3,"1765":1,"1767":1,"1769":1,"1776":1,"1778":1,"1782":1,"1783":1,"1791":1,"1792":9,"1825":1,"2070":1,"2106":1,"2128":1,"2176":1,"2234":1,"2266":1,"2267":1,"2314":1,"2389":1,"2394":1,"2481":2,"2493":1,"2537":1,"2621":2,"2634":10,"2638":1,"2664":2,"2669":1,"2721":2,"2723":1,"2785":2,"2786":1,"2788":1,"2868":2,"2878":1,"2881":1}}],["chunked",{"2":{"1255":1,"1258":1,"2824":1}}],["chunk",{"2":{"849":1}}],["chunks",{"2":{"845":1,"851":1}}],["churn",{"2":{"427":4,"1382":1}}],["challenging",{"2":{"1385":1}}],["challenged",{"2":{"1792":1}}],["challengecolumnname",{"2":{"1240":1,"1792":1,"1889":1}}],["challengecommand",{"0":{"1197":1},"2":{"1197":2,"1204":1,"1469":1,"1482":1,"1498":1,"1499":1,"1503":1,"1504":1,"1505":1,"1792":1}}],["challengetimeoutminutes",{"2":{"1227":1,"1792":1,"1877":1,"1893":1}}],["challengeaddexistingusercommand",{"0":{"1232":1,"1882":1},"2":{"1221":1,"1233":1,"1237":1,"1792":3,"1871":1,"1883":1,"1893":1}}],["challengeauthenticationcommand",{"0":{"1234":1,"1884":1},"2":{"1217":1,"1222":1,"1792":1,"1872":1,"1893":1}}],["challengeidcolumnname",{"2":{"1240":1,"1792":1,"1889":1}}],["challengeid",{"2":{"1220":2,"1221":2,"1222":2,"1792":3}}],["challengeregistrationcommand",{"0":{"1233":1,"1883":1},"2":{"1217":1,"1220":1,"1792":1,"1870":1,"1893":1}}],["challenges",{"2":{"1213":2,"1214":2,"1227":1,"1232":1,"1234":1,"1235":1,"1252":1,"1792":1,"1877":1,"2481":1}}],["challenge",{"0":{"37":1,"38":1,"39":1,"40":1,"50":1,"60":1,"1214":1,"1501":1,"1504":1},"2":{"29":1,"30":1,"31":1,"32":1,"37":6,"38":5,"39":3,"40":7,"41":4,"42":1,"50":2,"51":1,"60":2,"63":1,"868":1,"1045":1,"1139":1,"1197":1,"1210":1,"1211":1,"1213":2,"1214":16,"1217":2,"1220":7,"1221":7,"1222":7,"1226":1,"1232":13,"1234":14,"1235":12,"1236":1,"1240":2,"1243":1,"1244":1,"1252":1,"1253":1,"1482":1,"1499":1,"1503":1,"1504":2,"1506":1,"1508":1,"1792":19,"1825":1,"1827":1,"1876":1,"1882":2,"1884":3,"1885":4,"1887":1,"1889":2,"1893":4,"2363":1,"2437":1,"2559":2}}],["chased",{"2":{"1382":1}}],["champion",{"2":{"1266":2}}],["chatter",{"2":{"1439":1}}],["chatty",{"2":{"861":1}}],["chat",{"0":{"1302":1,"1306":1,"1320":1,"1372":1,"2836":1},"1":{"1303":1,"1304":1,"1305":1,"1306":1,"1307":2,"1308":2,"1309":2,"1310":2,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1},"2":{"1037":1,"1103":1,"1105":1,"1302":4,"1303":1,"1307":1,"1312":1,"1320":7,"1323":2,"1327":1,"1372":2,"2164":3,"2165":3,"2827":1,"2829":1,"2834":1,"2836":1,"2837":4}}],["chapter",{"0":{"1404":1},"2":{"843":2,"847":1,"851":1,"852":1,"854":1,"861":2,"863":1}}],["charge",{"2":{"2438":1}}],["charger",{"2":{"1044":2}}],["charges",{"2":{"876":1}}],["charlie",{"2":{"977":2,"979":2,"980":1,"986":2,"988":2,"990":5,"2009":2}}],["charset=",{"2":{"1685":1,"1792":1}}],["chars>",{"2":{"956":1,"1374":1}}],["chars",{"2":{"930":2,"1460":1,"1792":3,"2177":1,"2375":1,"2402":1,"2604":1}}],["char",{"2":{"928":1,"1792":4,"1909":1,"2270":1,"2394":2,"2402":2,"2431":1,"2435":1,"2604":1}}],["charts",{"2":{"834":1,"837":1,"860":1,"866":1,"971":1,"1206":1}}],["chart",{"2":{"833":1,"834":2}}],["characters",{"2":{"675":1,"747":1,"767":1,"782":1,"784":1,"786":2,"817":1,"928":1,"930":4,"1053":1,"1062":1,"1453":1,"1454":1,"1511":3,"1618":1,"1620":1,"1792":10,"1917":1,"2002":2,"2125":1,"2140":2,"2141":2,"2144":1,"2145":2,"2146":2,"2148":1,"2175":1,"2265":3,"2270":1,"2371":2,"2554":2,"2575":2,"2589":7,"2603":1,"2607":1,"2662":1,"2737":1}}],["character",{"2":{"308":1,"382":1,"768":1,"891":1,"1516":1,"2002":1,"2128":1,"2265":2,"2334":1,"2534":1,"2540":1,"2575":2,"2841":1}}],["chains",{"2":{"1717":1}}],["chain",{"2":{"871":1,"1230":1,"1706":2,"1792":2,"1880":1,"2533":1,"2621":1,"2633":1}}],["chaining",{"0":{"885":1},"2":{"760":1,"761":1,"771":1,"882":1,"883":1,"1193":1,"2490":1}}],["chained",{"2":{"209":1}}],["chances",{"2":{"2400":1}}],["chance",{"2":{"1409":1}}],["changing",{"2":{"390":1,"852":1,"1350":1,"1368":1,"1487":1,"1792":2,"2056":1,"2438":1,"2476":1}}],["changelog",{"0":{"2220":1,"2241":1,"2243":1,"2260":1,"2262":1,"2268":1,"2275":1,"2280":1,"2298":1,"2311":1,"2315":1,"2373":1,"2387":1,"2408":1,"2418":1,"2439":1,"2449":1,"2458":1,"2467":1,"2473":1,"2478":1,"2499":1,"2507":1,"2514":1,"2524":1,"2547":1,"2552":1,"2556":1,"2560":1,"2563":1,"2568":1,"2570":1,"2573":1,"2578":1,"2583":1,"2592":1,"2598":1,"2601":1,"2605":1,"2609":1,"2612":1,"2616":1,"2619":1,"2623":1,"2630":1,"2636":1,"2639":1,"2643":1,"2646":1,"2657":1,"2675":1},"1":{"2221":1,"2222":1,"2223":1,"2224":1,"2225":1,"2226":1,"2227":1,"2228":1,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2240":1,"2242":1,"2244":1,"2245":1,"2246":1,"2247":1,"2248":1,"2249":1,"2250":1,"2251":1,"2252":1,"2253":1,"2254":1,"2255":1,"2256":1,"2257":1,"2258":1,"2259":1,"2261":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2269":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1,"2276":1,"2277":1,"2278":1,"2279":1,"2281":1,"2282":1,"2283":1,"2284":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1,"2299":1,"2300":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2312":1,"2313":1,"2314":1,"2316":1,"2317":1,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1,"2368":1,"2369":1,"2370":1,"2371":1,"2372":1,"2374":1,"2375":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2398":1,"2399":1,"2400":1,"2401":1,"2402":1,"2403":1,"2404":1,"2405":1,"2406":1,"2407":1,"2409":1,"2410":1,"2411":1,"2412":1,"2413":1,"2414":1,"2415":1,"2416":1,"2417":1,"2419":1,"2420":1,"2421":1,"2422":1,"2423":1,"2424":1,"2425":1,"2426":1,"2427":1,"2428":1,"2429":1,"2430":1,"2431":1,"2432":1,"2433":1,"2434":1,"2435":1,"2436":1,"2437":1,"2438":1,"2440":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":1,"2446":1,"2447":1,"2448":1,"2450":1,"2451":1,"2452":1,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1,"2459":1,"2460":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2474":1,"2475":1,"2476":1,"2477":1,"2479":1,"2480":1,"2481":1,"2482":1,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2489":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":1,"2497":1,"2498":1,"2500":1,"2501":1,"2502":1,"2503":1,"2504":1,"2505":1,"2506":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2545":1,"2546":1,"2548":1,"2549":1,"2550":1,"2551":1,"2553":1,"2554":1,"2555":1,"2557":1,"2558":1,"2559":1,"2561":1,"2562":1,"2564":1,"2565":1,"2566":1,"2567":1,"2569":1,"2571":1,"2572":1,"2574":1,"2575":1,"2576":1,"2577":1,"2579":1,"2580":1,"2581":1,"2582":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2591":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2599":1,"2600":1,"2602":1,"2603":1,"2604":1,"2606":1,"2607":1,"2608":1,"2610":1,"2611":1,"2613":1,"2614":1,"2615":1,"2617":1,"2618":1,"2620":1,"2621":1,"2622":1,"2624":1,"2625":1,"2626":1,"2627":1,"2628":1,"2629":1,"2631":1,"2632":1,"2633":1,"2634":1,"2635":1,"2637":1,"2638":1,"2640":1,"2641":1,"2642":1,"2644":1,"2645":1,"2647":1,"2648":1,"2649":1,"2650":1,"2651":1,"2652":1,"2653":1,"2654":1,"2655":1,"2656":1,"2658":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1,"2665":1,"2666":1,"2667":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1,"2674":1,"2676":1,"2677":1,"2678":1,"2679":1},"2":{"1066":1,"1069":1,"1071":1,"1082":1,"1380":1,"2013":1,"2220":3,"2242":1,"2244":1,"2261":1,"2263":1,"2269":1,"2276":1,"2281":1,"2299":1,"2312":1,"2316":1,"2374":1,"2388":1,"2409":1,"2419":1,"2440":1,"2450":1,"2459":1,"2468":1,"2474":1,"2479":1,"2500":1,"2508":1,"2515":1,"2525":1,"2548":1,"2553":1,"2557":1,"2561":1,"2564":1,"2569":1,"2571":1,"2574":1,"2579":1,"2584":1,"2593":1,"2599":1,"2602":1,"2606":1,"2610":1,"2613":1,"2617":1,"2620":1,"2624":1,"2631":1,"2637":1,"2640":1,"2644":1,"2647":1,"2658":1,"2676":1,"2859":1,"2882":1}}],["changed",{"0":{"1266":1,"2249":1,"2412":1,"2415":1,"2422":1,"2443":1,"2460":1,"2469":1,"2475":1,"2509":1,"2516":1},"1":{"2461":1,"2462":1,"2463":1,"2470":1,"2471":1,"2476":1,"2477":1,"2510":1,"2511":1,"2512":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1},"2":{"655":1,"686":1,"843":1,"851":1,"872":1,"1073":1,"1080":1,"1257":1,"1382":2,"1403":1,"1419":1,"1639":1,"1644":1,"1792":9,"2106":3,"2153":1,"2156":2,"2158":1,"2247":1,"2252":1,"2259":1,"2370":1,"2486":1,"2522":1,"2537":3,"2541":1,"2542":2,"2562":1,"2614":1,"2742":2,"2822":1,"2878":3}}],["change",{"0":{"592":1,"1419":1,"2454":1,"2511":1},"2":{"305":1,"308":1,"423":1,"436":1,"592":3,"834":1,"848":1,"849":1,"852":1,"854":2,"871":2,"872":6,"874":1,"878":1,"879":1,"880":1,"910":1,"911":1,"924":1,"972":1,"973":1,"975":1,"984":1,"997":2,"1046":1,"1067":1,"1068":1,"1069":1,"1129":3,"1130":1,"1139":1,"1157":1,"1183":2,"1193":4,"1203":1,"1374":1,"1382":3,"1403":1,"1406":1,"1407":1,"1409":1,"1418":1,"1422":1,"1430":1,"1436":2,"1464":1,"1792":3,"1908":1,"1948":1,"2040":1,"2106":2,"2153":2,"2156":3,"2157":4,"2181":1,"2216":1,"2242":1,"2258":1,"2357":1,"2389":1,"2395":1,"2398":1,"2426":1,"2434":1,"2450":1,"2454":1,"2479":1,"2487":1,"2537":1,"2539":1,"2541":2,"2542":3,"2543":6,"2546":3,"2699":1,"2857":1,"2878":3}}],["changes",{"0":{"984":1,"1071":1,"1259":1,"2248":1,"2252":1,"2258":1,"2259":1,"2267":1,"2349":1,"2368":1,"2372":1,"2485":1,"2642":1},"1":{"2249":1,"2250":1,"2251":1,"2252":1,"2259":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2369":1,"2370":1,"2371":1,"2372":1,"2486":1,"2487":1},"2":{"106":1,"180":1,"587":1,"686":1,"777":1,"848":2,"849":1,"863":1,"872":4,"875":1,"879":2,"880":1,"888":2,"902":1,"910":1,"911":1,"974":1,"982":1,"983":1,"988":1,"996":2,"1001":1,"1005":1,"1046":1,"1094":1,"1101":1,"1139":3,"1170":1,"1179":1,"1203":1,"1205":1,"1206":1,"1208":1,"1247":1,"1254":2,"1357":1,"1363":1,"1367":1,"1377":1,"1379":1,"1386":1,"1388":1,"1409":1,"1460":1,"1559":1,"1645":1,"1690":1,"1789":1,"1792":4,"2106":1,"2154":1,"2156":5,"2157":1,"2158":1,"2164":1,"2165":1,"2168":1,"2221":2,"2270":1,"2289":1,"2375":1,"2378":1,"2385":1,"2393":1,"2396":1,"2409":1,"2419":2,"2423":1,"2437":1,"2448":2,"2450":1,"2457":2,"2525":1,"2537":3,"2540":1,"2542":5,"2543":1,"2546":2,"2597":1,"2615":1,"2621":1,"2742":2,"2878":2}}],["channels",{"0":{"1326":1},"2":{"1799":1,"1811":1,"2362":2,"2481":1,"2752":1,"2794":1,"2804":1}}],["channelname",{"2":{"1318":3,"1321":2}}],["channel",{"0":{"2795":1,"2801":1},"2":{"3":1,"1305":1,"1318":2,"1320":1,"1326":1,"1792":3,"1801":1,"1802":2,"2094":1,"2104":1,"2108":1,"2114":1,"2343":1,"2536":1,"2537":1,"2750":1,"2752":1,"2794":3,"2795":6,"2798":1,"2801":1,"2802":1,"2803":1,"2804":1,"2805":1,"2828":1,"2880":2}}],["c",{"0":{"2487":1},"2":{"1":1,"297":2,"491":1,"650":1,"845":1,"847":1,"852":2,"856":1,"860":1,"865":1,"866":1,"867":1,"868":1,"869":3,"873":2,"881":1,"1026":2,"1037":1,"1086":2,"1087":1,"1088":1,"1105":4,"1211":1,"1333":1,"1366":1,"1792":2,"1840":1,"1868":1,"1967":1,"1969":1,"1971":1,"1972":2,"2171":3,"2223":1,"2265":1,"2371":1,"2479":1,"2483":1,"2588":2,"2760":2,"2792":3,"2828":2}}],["coherent",{"2":{"2498":1}}],["coherently",{"2":{"2379":1}}],["coalescing",{"2":{"1430":1,"2461":1,"2465":2,"2466":5,"2502":1}}],["coalesced",{"2":{"2463":1,"2466":1}}],["coalesce",{"2":{"452":1,"528":1,"764":1,"765":1,"766":1,"774":2,"883":2,"884":2,"885":3,"888":1,"904":2,"929":1,"1021":2,"1214":1,"1232":1,"1234":1,"1338":1,"1339":1,"1347":1,"1427":1,"2461":1,"2462":1,"2466":1,"2762":1,"2765":1,"2810":1,"2815":1}}],["coalesces",{"2":{"214":1,"1743":1,"2463":1,"2466":1,"2502":1}}],["cose",{"2":{"1236":1,"1237":2,"1792":2,"1886":1,"1887":2}}],["costs",{"2":{"872":2,"1181":1,"1403":1,"2537":1,"2868":1}}],["costumes",{"2":{"853":1}}],["cost",{"0":{"845":1,"849":1,"853":1,"861":1,"865":1,"1131":1,"1132":1,"1206":1},"1":{"854":1,"855":1,"856":1,"857":1,"1132":1,"1133":1},"2":{"308":1,"845":1,"849":1,"857":1,"860":1,"861":1,"865":1,"869":4,"871":1,"872":1,"873":1,"874":1,"1037":1,"1132":3,"1281":1,"1974":1,"2324":1,"2607":1,"2858":1}}],["coffee",{"2":{"1081":1}}],["coincidentally",{"2":{"2452":1}}],["coincidence",{"2":{"851":1}}],["coingecko",{"2":{"1018":2,"1019":2,"1023":2,"1026":1,"1398":1,"2766":1}}],["co",{"0":{"988":1},"2":{"1005":1,"1006":1,"1009":1,"1107":1,"1382":1,"1400":1,"1792":2,"2095":2,"2167":1,"2538":1,"2539":1,"2545":1,"2861":1}}],["cockroachdb",{"2":{"848":2}}],["coding",{"2":{"876":1,"1081":1,"1370":2,"1402":2,"2822":1,"2824":1,"2850":2}}],["codified",{"2":{"848":1,"863":1}}],["codd",{"2":{"848":2,"852":3}}],["codenpgsqlrest",{"2":{"2526":1,"2537":2,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2677":1,"2678":1}}],["codewarn",{"2":{"2392":1}}],["codewww",{"2":{"48":1}}],["codepass",{"2":{"2535":1}}],["codepghost=localhost",{"2":{"2272":1}}],["codepostgresql",{"2":{"975":1,"1005":1}}],["codetype",{"2":{"2446":1}}],["codetimeout",{"2":{"2264":1}}],["codetarget",{"2":{"414":1,"436":1,"2811":1}}],["coderate",{"2":{"2257":1}}],["codeunhealthy",{"2":{"1782":1}}],["codehealthy",{"2":{"1782":1}}],["codehost=replica1",{"2":{"1175":1}}],["codehttp",{"2":{"243":1}}],["codefinalize",{"2":{"1130":1}}],["codefor",{"2":{"685":1}}],["codemethod",{"2":{"1017":1,"1728":1,"2264":1}}],["codedatabase",{"2":{"1008":2}}],["codedecrypt",{"2":{"186":1}}],["code2",{"2":{"976":1}}],["codeenabled",{"2":{"2445":1}}],["codeendpoint",{"2":{"2394":1,"2395":1,"2879":1}}],["codeencrypt",{"2":{"184":1}}],["codeerror",{"2":{"919":1,"982":1,"2255":1}}],["codebases",{"2":{"859":1,"947":1}}],["codebase",{"2":{"849":1,"869":1,"871":1,"872":1,"968":1,"1011":1,"1135":1,"1179":1,"1402":4,"1441":1}}],["codegen",{"0":{"1417":2,"1420":1},"1":{"1418":2,"1419":2,"1420":2,"1421":2},"2":{"835":2,"868":1,"1416":1,"1417":2,"1418":1,"1419":1,"1420":3}}],["codeget",{"2":{"462":2,"463":1,"464":1,"959":2,"1017":1,"1023":1,"1139":1,"1148":1,"1518":1,"1737":1,"1823":1,"2056":1,"2265":1,"2321":1,"2674":1,"2762":1}}],["codecolumn",{"2":{"2405":1}}],["codecontent",{"2":{"493":1,"544":1}}],["codecache",{"2":{"2041":1}}],["codeclient",{"2":{"414":1,"1015":1,"2302":1}}],["codevalue1|value2|value3",{"2":{"491":1}}],["code5",{"2":{"280":1}}],["code19",{"2":{"2107":1,"2537":1}}],["code1",{"2":{"274":1}}],["code30",{"2":{"273":1,"275":1}}],["code30seconds",{"2":{"272":1}}],["code30s",{"2":{"271":1}}],["codesystem",{"2":{"2394":1}}],["codesqlfilesource",{"2":{"2328":1,"2840":1}}],["codesse",{"2":{"2252":3}}],["codes",{"0":{"1591":1,"1624":1,"2113":1},"1":{"1592":1,"1593":1,"1594":1,"1595":1,"1596":1},"2":{"197":1,"210":1,"213":1,"447":1,"575":3,"576":1,"963":1,"1031":1,"1068":3,"1098":1,"1104":1,"1105":1,"1111":2,"1152":1,"1155":3,"1220":1,"1341":1,"1589":1,"1591":1,"1596":1,"1623":1,"1624":1,"1670":1,"1673":1,"1674":1,"1686":1,"1722":1,"1732":1,"1740":1,"1741":1,"1782":1,"1792":10,"1922":1,"2077":2,"2255":10,"2264":1,"2265":1,"2267":1,"2288":1,"2289":1,"2381":1,"2535":1,"2549":1,"2662":1,"2765":1,"2880":1}}],["codeid",{"2":{"128":1,"489":1,"493":1}}],["code",{"0":{"192":1,"313":1,"866":1,"873":1,"942":1,"996":1,"1008":1,"1104":1,"1106":1,"1155":1,"1200":1,"1281":1,"1318":1,"1319":1,"1350":1,"1406":1,"1552":1,"1673":1,"1674":1,"1958":1,"2247":1},"1":{"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"867":1,"868":1,"869":1,"870":1,"871":1,"872":1,"873":1,"874":1,"875":1,"876":1,"877":1,"1105":1,"1106":1,"1107":1,"1108":1,"1320":1,"1321":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1,"1553":1,"1554":1,"1555":1,"1556":1,"1557":1,"1558":1,"1559":1,"1560":1,"1561":1,"1562":1,"1563":1,"1564":1,"1565":1,"1566":1,"1567":1,"1568":1,"1569":1,"1570":1,"1571":1,"1572":1,"1573":1,"1574":1,"1575":1,"1576":1,"1577":1,"1578":1,"1579":1,"1580":1,"1581":1,"1582":1,"1583":1,"1584":1,"1585":1,"1674":1,"1959":1},"2":{"1":4,"5":1,"14":1,"30":1,"33":1,"35":2,"45":1,"56":1,"69":1,"74":1,"79":2,"92":1,"102":1,"113":1,"126":1,"133":2,"145":1,"155":1,"163":1,"164":1,"166":1,"173":1,"175":1,"179":1,"192":2,"193":3,"195":1,"196":1,"198":1,"200":1,"203":1,"206":1,"207":1,"208":1,"209":2,"210":2,"213":2,"235":1,"262":1,"268":1,"283":1,"296":1,"301":1,"309":1,"318":1,"329":1,"332":1,"340":1,"348":1,"358":1,"363":1,"370":1,"399":1,"413":1,"415":1,"434":1,"439":2,"447":2,"452":1,"459":1,"474":1,"480":1,"485":1,"498":1,"508":1,"516":1,"528":1,"533":1,"537":1,"550":1,"551":3,"560":1,"570":2,"579":2,"582":1,"590":1,"599":1,"608":1,"619":1,"628":1,"637":2,"651":1,"663":1,"674":1,"718":2,"719":2,"720":3,"725":1,"727":1,"730":1,"745":1,"795":1,"809":1,"818":1,"819":1,"824":1,"831":1,"834":1,"835":1,"845":1,"849":3,"857":1,"859":3,"860":2,"867":3,"868":4,"871":3,"872":1,"873":3,"875":1,"877":1,"878":2,"879":3,"880":1,"894":1,"901":1,"911":3,"912":1,"913":2,"914":1,"915":1,"919":1,"920":3,"921":1,"927":1,"945":2,"947":3,"948":1,"954":1,"956":1,"968":2,"972":1,"973":3,"974":1,"975":1,"976":2,"978":1,"982":1,"983":1,"984":2,"995":1,"996":1,"1002":1,"1005":1,"1006":1,"1009":2,"1010":1,"1019":2,"1021":2,"1024":1,"1026":1,"1027":2,"1031":2,"1036":1,"1037":4,"1043":1,"1044":1,"1048":1,"1064":2,"1065":1,"1066":2,"1068":6,"1086":3,"1094":3,"1098":1,"1101":1,"1104":1,"1105":5,"1106":1,"1107":1,"1108":2,"1109":2,"1111":7,"1121":1,"1127":2,"1139":1,"1152":1,"1167":2,"1181":2,"1183":2,"1184":1,"1193":1,"1214":1,"1232":1,"1234":1,"1236":1,"1237":1,"1247":1,"1252":2,"1254":1,"1280":1,"1281":7,"1302":2,"1322":3,"1328":1,"1332":2,"1338":3,"1339":3,"1341":1,"1352":1,"1357":1,"1360":1,"1361":1,"1366":4,"1367":1,"1368":1,"1382":7,"1383":1,"1384":3,"1385":2,"1386":1,"1394":2,"1398":3,"1399":1,"1400":2,"1401":6,"1402":4,"1404":1,"1405":2,"1406":4,"1407":1,"1409":3,"1414":1,"1415":1,"1416":1,"1421":1,"1422":1,"1423":1,"1426":1,"1427":1,"1431":2,"1471":1,"1480":1,"1552":1,"1554":1,"1557":1,"1558":2,"1592":1,"1593":1,"1594":1,"1595":1,"1596":1,"1608":1,"1609":1,"1624":1,"1670":3,"1671":2,"1674":1,"1679":1,"1681":1,"1684":1,"1721":1,"1722":2,"1725":1,"1732":2,"1736":2,"1741":1,"1742":3,"1743":1,"1755":1,"1757":1,"1759":1,"1761":2,"1789":2,"1792":32,"1796":2,"1825":1,"1836":1,"1855":3,"1865":2,"1882":1,"1884":1,"1886":1,"1887":1,"1912":1,"1916":1,"1918":2,"1921":2,"1922":2,"1924":1,"1926":2,"1949":1,"1951":2,"1952":2,"1953":2,"1954":2,"1973":1,"1974":1,"2011":1,"2016":1,"2020":1,"2040":1,"2077":2,"2081":2,"2095":1,"2101":1,"2107":1,"2109":1,"2113":1,"2141":1,"2149":1,"2157":1,"2164":1,"2169":2,"2193":2,"2221":1,"2222":1,"2242":1,"2255":12,"2264":5,"2273":2,"2278":1,"2283":3,"2289":3,"2290":3,"2301":1,"2303":1,"2320":1,"2329":1,"2354":1,"2360":1,"2366":2,"2389":1,"2410":1,"2414":1,"2437":1,"2452":1,"2455":2,"2468":1,"2470":1,"2472":3,"2486":5,"2487":1,"2518":1,"2527":2,"2530":1,"2532":1,"2535":1,"2537":3,"2543":2,"2549":8,"2551":1,"2566":2,"2569":1,"2575":1,"2580":1,"2581":1,"2587":1,"2588":1,"2596":3,"2607":1,"2632":1,"2652":2,"2654":1,"2659":1,"2669":1,"2679":1,"2696":1,"2709":1,"2742":1,"2762":3,"2763":2,"2764":1,"2766":2,"2769":2,"2772":2,"2785":1,"2802":1,"2809":1,"2810":5,"2814":1,"2815":3,"2823":1,"2824":2,"2825":1,"2826":1,"2827":1,"2831":1,"2832":1,"2839":1,"2857":1,"2862":2,"2879":1}}],["copilot",{"2":{"1384":2}}],["copied",{"2":{"852":1,"1157":1}}],["copies",{"2":{"844":3,"845":1,"1178":1,"1420":1}}],["copyto",{"2":{"2400":1}}],["copytoasync",{"2":{"1366":1}}],["copy",{"0":{"854":1,"907":1},"2":{"832":1,"844":1,"852":5,"854":2,"857":3,"861":1,"864":1,"907":1,"911":1,"920":1,"948":2,"959":1,"965":1,"966":1,"1065":2,"1094":1,"1138":1,"1366":1,"1420":3,"1440":1,"1792":2,"2047":1,"2054":1,"2075":1,"2111":1,"2532":1,"2533":1,"2635":2,"2651":1,"2678":1,"2695":1,"2871":1,"2873":2}}],["courage",{"2":{"872":1}}],["course",{"2":{"840":1,"844":3,"914":1,"1396":1}}],["couldn",{"2":{"934":1,"2336":1,"2380":1,"2421":1,"2608":1,"2734":1}}],["could",{"0":{"2734":1},"2":{"851":2,"852":2,"868":1,"919":1,"927":1,"933":1,"934":1,"1037":1,"1060":1,"1069":1,"1165":1,"1185":1,"1302":1,"1335":1,"1338":1,"1394":1,"1399":1,"1403":1,"1405":2,"1441":1,"1792":1,"1832":1,"1851":1,"2336":1,"2382":1,"2459":2,"2483":1,"2484":1,"2589":2,"2641":1}}],["couples",{"2":{"840":1,"1111":1}}],["couple",{"2":{"834":1,"1385":2,"1403":1,"1428":1}}],["counted",{"2":{"1792":1,"2107":1,"2421":1,"2528":1,"2531":1,"2535":1,"2537":1,"2864":1}}],["counterpart",{"2":{"1126":1,"2804":1,"2839":1,"2856":1}}],["counters",{"2":{"1056":1,"1243":1,"2531":1}}],["counterexample",{"2":{"857":1}}],["counter",{"2":{"310":1,"772":1,"896":1,"1210":1,"1227":1,"1236":1,"1239":1,"1792":1,"1877":1,"1886":1,"1888":1,"2648":1}}],["country",{"2":{"1037":1,"1079":1,"1405":1,"2868":1}}],["countless",{"2":{"849":1}}],["counting",{"2":{"761":1,"771":1,"885":1,"1056":1}}],["counts",{"2":{"622":1,"771":1,"829":1,"872":1,"966":4,"1049":1,"1170":1,"1792":4,"2049":1,"2050":2,"2051":1,"2465":1,"2506":1,"2530":1,"2635":8}}],["count",{"2":{"231":1,"427":1,"565":1,"566":4,"567":1,"575":1,"585":2,"586":1,"614":1,"624":1,"699":1,"706":1,"711":1,"715":1,"852":1,"854":1,"861":1,"868":1,"869":1,"871":1,"873":1,"883":1,"914":1,"916":5,"929":4,"979":1,"980":1,"986":1,"988":1,"989":1,"990":6,"991":7,"1076":1,"1169":1,"1181":1,"1213":1,"1215":3,"1216":4,"1222":1,"1236":3,"1239":5,"1240":1,"1336":1,"1338":3,"1339":7,"1366":1,"1375":1,"1386":3,"1398":1,"1442":2,"1792":9,"1886":1,"1888":1,"1889":1,"2011":1,"2094":1,"2097":1,"2099":1,"2320":2,"2337":3,"2339":1,"2342":1,"2354":1,"2357":1,"2364":1,"2398":1,"2435":1,"2506":1,"2527":1,"2528":1,"2531":1,"2537":1,"2597":1,"2614":1,"2774":1,"2851":1,"2862":1,"2864":1,"2869":1}}],["count>",{"2":{"79":4}}],["coerces",{"2":{"2183":1}}],["coercion",{"2":{"801":1,"1477":1}}],["coep",{"2":{"1100":1}}],["coexist",{"2":{"369":1,"2332":1}}],["cover",{"2":{"1083":1,"1152":1,"1385":1,"1419":1,"1624":1,"1792":1,"1825":1,"1909":1,"2417":1,"2506":2}}],["coveragethreshold=100",{"2":{"2094":1}}],["coveragethreshold",{"0":{"2107":1},"2":{"1792":2,"2093":1,"2094":1,"2107":1,"2537":2,"2879":1}}],["coverage",{"0":{"2107":1,"2465":1,"2472":1,"2879":1},"2":{"874":2,"876":1,"986":1,"1074":1,"1082":1,"1094":1,"1402":1,"1789":1,"1792":3,"2093":1,"2094":3,"2107":4,"2113":1,"2167":1,"2221":1,"2278":1,"2435":1,"2447":1,"2465":1,"2537":9,"2546":1,"2860":1,"2879":3,"2880":1}}],["covering",{"2":{"868":1,"1067":1,"1822":1,"2111":1,"2380":1,"2447":1,"2457":1,"2498":1,"2532":1}}],["covers",{"2":{"624":1,"911":1,"1067":1,"1079":1,"1080":1,"1094":1,"1327":1,"1328":1,"1406":1,"1411":1,"1444":1,"1569":1,"1609":1,"1612":1,"1759":1,"1792":3,"1825":1,"1912":1,"1943":1,"1978":1,"2110":1,"2112":1,"2438":1,"2445":1,"2456":1,"2466":1,"2493":1,"2513":1,"2520":1,"2523":1,"2530":1,"2532":1,"2534":1,"2542":1,"2661":1,"2759":1,"2806":1,"2827":1,"2860":1,"2868":1}}],["covered",{"2":{"1":1,"306":1,"874":1,"1174":1,"1402":1,"1414":1,"2107":1,"2343":1,"2472":1,"2490":1,"2523":2,"2537":1,"2546":1,"2879":1}}],["cooiename",{"2":{"2413":1}}],["cool",{"2":{"1397":1}}],["coop",{"2":{"1100":1,"1792":1,"2632":1}}],["cooperating",{"2":{"1070":1,"1102":1}}],["coordination",{"2":{"1325":1}}],["coordinated",{"2":{"865":1}}],["coords",{"2":{"333":2}}],["cookieenabled",{"2":{"1792":1}}],["cookiehttponly",{"2":{"1446":1,"1447":1,"1448":1,"1449":1,"1459":1,"1462":1,"1464":1,"1792":1,"2375":1,"2410":2,"2412":1,"2427":1,"2429":1}}],["cookiedomain",{"2":{"1446":1,"1447":1,"1448":1,"1449":1,"1459":1,"1792":1,"2375":1,"2412":1,"2427":1,"2429":1}}],["cookiepath",{"2":{"1446":1,"1447":1,"1459":1,"1792":1,"2375":1,"2412":1,"2427":1}}],["cookiemultisessions",{"2":{"1068":1,"1446":1,"1447":1,"1458":2,"1459":2,"1462":1,"1792":2,"2375":4,"2412":1,"2427":1}}],["cookievalid",{"2":{"1068":3,"1071":1,"1446":1,"1447":1,"1458":3,"1459":1,"1462":1,"1464":2,"1698":1,"1792":2,"2375":5,"2376":1,"2377":1,"2412":1,"2427":2}}],["cookievaliddays",{"2":{"937":1,"1053":1,"1062":1,"1071":1,"1464":1,"2173":1,"2187":1,"2376":1}}],["cookiename",{"2":{"937":1,"1053":1,"1446":1,"1447":1,"1459":1,"1460":1,"1488":1,"1489":1,"1792":2,"2173":1,"2187":1,"2375":2,"2410":2,"2412":1,"2422":1}}],["cookieauthenticationoptions",{"2":{"2435":1}}],["cookieauthenticationdefaults",{"2":{"1447":1}}],["cookieauthscheme",{"2":{"937":1,"1053":1,"1062":1,"1446":1,"1447":1,"1460":1,"1792":2,"2173":1,"2175":1,"2187":1,"2375":1}}],["cookieauth",{"2":{"937":2,"1053":1,"1062":1,"1068":1,"1445":1,"1446":1,"1447":1,"1449":1,"1458":1,"1462":1,"1464":1,"1698":1,"1792":3,"1892":1,"1893":1,"1904":1,"1907":1,"2173":1,"2187":1,"2254":2,"2375":1,"2377":1,"2420":1,"2426":1,"2427":1,"2429":1,"2690":2}}],["cookieschemesinorder",{"2":{"2422":1,"2435":1}}],["cookiesenabled",{"2":{"1792":1}}],["cookiesecurepolicy",{"2":{"2435":1}}],["cookiesecure=always",{"2":{"1449":1}}],["cookiesecure",{"0":{"2425":1},"1":{"2426":1,"2427":1,"2428":1,"2429":1},"2":{"1446":1,"1447":1,"1449":3,"1459":1,"1792":2,"2225":1,"2412":1,"2419":1,"2426":1,"2427":2,"2429":1,"2436":1}}],["cookiesamesite=",{"2":{"1792":1}}],["cookiesamesite=none",{"2":{"1449":1}}],["cookiesamesite",{"0":{"2425":1},"1":{"2426":1,"2427":1,"2428":1,"2429":1},"2":{"1446":1,"1447":2,"1449":3,"1459":1,"1792":1,"2225":1,"2412":1,"2419":1,"2426":1,"2427":2,"2428":1,"2429":1,"2436":1}}],["cookies",{"0":{"1449":1},"2":{"289":2,"290":2,"291":1,"298":2,"302":1,"312":2,"541":2,"546":1,"868":1,"934":2,"935":1,"937":2,"1037":1,"1048":1,"1053":2,"1054":3,"1055":1,"1060":2,"1061":3,"1062":1,"1063":1,"1064":2,"1068":1,"1098":3,"1216":2,"1239":2,"1249":1,"1308":1,"1322":1,"1323":1,"1371":2,"1446":1,"1447":2,"1458":7,"1459":1,"1460":2,"1639":1,"1644":1,"1649":1,"1653":1,"1704":1,"1792":9,"1904":1,"1907":1,"2173":1,"2176":2,"2178":1,"2187":2,"2202":1,"2227":1,"2254":2,"2353":1,"2375":9,"2376":1,"2410":2,"2412":1,"2413":1,"2421":2,"2423":3,"2427":3,"2428":1,"2436":1,"2438":1,"2486":1}}],["cookie",{"0":{"1446":1,"1447":1,"1448":1,"1462":1,"1904":1,"2173":1,"2420":1,"2424":1,"2426":1},"1":{"1447":1,"1448":1,"1449":1,"2421":1,"2422":1,"2423":1,"2424":1},"2":{"25":1,"286":1,"289":3,"297":3,"302":1,"303":1,"312":1,"313":1,"315":1,"541":4,"546":1,"835":1,"869":1,"934":2,"935":1,"936":1,"937":2,"1037":1,"1053":1,"1054":2,"1063":1,"1068":3,"1086":1,"1098":5,"1126":1,"1216":1,"1222":1,"1239":1,"1304":1,"1308":1,"1323":1,"1327":1,"1371":1,"1444":1,"1445":1,"1446":1,"1447":8,"1448":1,"1449":3,"1458":2,"1459":1,"1460":1,"1485":1,"1489":1,"1507":1,"1550":1,"1651":1,"1699":1,"1700":1,"1704":1,"1788":1,"1792":23,"1795":1,"1852":1,"1894":1,"1901":1,"1904":2,"1906":2,"1907":2,"1911":1,"2164":2,"2165":1,"2170":1,"2171":3,"2173":1,"2187":2,"2188":2,"2189":1,"2202":2,"2225":2,"2254":5,"2353":1,"2375":4,"2377":1,"2383":1,"2419":5,"2420":3,"2421":7,"2422":13,"2423":3,"2424":3,"2425":3,"2427":3,"2429":3,"2434":1,"2435":5,"2436":2,"2438":4,"2554":1,"2736":1,"2836":1}}],["coroutine",{"2":{"1274":1}}],["corbado",{"2":{"1098":1}}],["corner",{"2":{"861":1}}],["corroborates",{"2":{"872":1}}],["corrupted",{"2":{"865":1}}],["corrupt",{"2":{"843":1,"1081":1}}],["correlate",{"2":{"1792":2,"2255":1}}],["correlating",{"2":{"1670":1}}],["correlation",{"0":{"639":1,"1326":1},"2":{"650":1,"668":1,"1111":2,"1326":1,"1677":1,"1848":1,"2833":1}}],["corrected",{"2":{"2450":1}}],["correctness",{"2":{"874":2,"1122":1,"1592":1,"1792":1,"2265":1}}],["correctly",{"2":{"373":1,"852":1,"857":1,"930":5,"1042":1,"1092":1,"1401":1,"1421":1,"1518":1,"1762":1,"1792":1,"2265":1,"2274":1,"2297":1,"2347":1,"2356":1,"2360":1,"2365":1,"2420":1,"2441":1,"2490":1,"2492":1,"2496":1,"2558":1,"2572":1,"2589":1,"2603":1,"2607":1,"2611":1,"2627":1,"2634":1,"2641":1,"2648":1,"2666":1,"2679":1,"2692":1}}],["correct",{"2":{"298":1,"845":1,"930":1,"986":1,"990":1,"1077":1,"1078":1,"1135":1,"1280":1,"1621":1,"1701":1,"1718":1,"1792":1,"2176":1,"2358":1,"2416":1,"2437":1,"2454":1,"2465":1,"2470":1,"2495":1,"2590":1,"2611":2,"2633":1,"2835":1}}],["corresponds",{"2":{"2320":1}}],["correspondingly",{"2":{"1119":1}}],["corresponding",{"2":{"408":1,"845":1,"872":1,"1017":1,"1414":1,"1422":1,"1518":1,"1782":1,"2259":2,"2265":1,"2665":1}}],["correspond",{"2":{"165":1,"168":1}}],["cors",{"0":{"545":1,"1637":1,"2486":1},"1":{"1638":1,"1639":1,"1640":1,"1641":1,"1642":1,"1643":1,"1644":1,"1645":1,"1646":1,"1647":1,"1648":1},"2":{"545":4,"547":2,"868":1,"869":1,"1109":1,"1320":1,"1386":1,"1449":1,"1637":1,"1638":1,"1639":5,"1640":2,"1641":2,"1642":1,"1643":1,"1645":1,"1646":2,"1788":1,"1792":6,"1795":1,"1963":1,"2024":1,"2030":1,"2223":1,"2429":3,"2486":2,"2551":1,"2627":2,"2678":1,"2695":1,"2700":1,"2701":1,"2809":1}}],["corporate",{"2":{"1204":2,"1230":1,"1792":1,"1880":1}}],["corp",{"2":{"333":2,"1100":1,"1189":1,"1192":1,"1792":1,"2024":4,"2029":1,"2632":1}}],["cores",{"2":{"1165":2,"1170":1}}],["core",{"0":{"869":1,"1095":1,"1787":1,"1794":1,"2332":1,"2344":1,"2487":1,"2628":1,"2714":1},"2":{"304":1,"408":1,"831":1,"843":1,"848":2,"860":1,"868":1,"869":5,"871":3,"873":2,"876":1,"1039":1,"1054":1,"1084":1,"1098":1,"1156":1,"1193":1,"1255":1,"1257":1,"1265":1,"1279":1,"1366":1,"1382":1,"1409":1,"1421":1,"1445":1,"1450":2,"1457":1,"1458":1,"1718":1,"1783":1,"1787":1,"1792":13,"1794":1,"1802":1,"1825":1,"2013":1,"2235":1,"2257":5,"2258":2,"2375":1,"2389":1,"2465":1,"2470":1,"2481":2,"2482":4,"2487":1,"2518":1,"2520":1,"2534":1,"2545":1,"2554":1,"2555":1,"2571":1,"2628":2,"2633":1,"2634":1,"2645":1,"2665":1,"2701":1,"2795":2,"2874":1}}],["cols",{"2":{"2171":3,"2398":2}}],["colors",{"2":{"2535":2,"2662":1,"2678":1,"2880":1}}],["colordepth",{"2":{"1792":2}}],["color",{"2":{"1427":2,"1431":1,"1792":1,"2073":1,"2075":1,"2080":1,"2535":2,"2662":1,"2762":2}}],["colons",{"2":{"2692":1}}],["colon",{"2":{"537":1,"2540":1}}],["cold",{"2":{"1107":1,"1166":1,"1272":1,"1437":1,"2224":1,"2459":1,"2461":1,"2464":1,"2465":2,"2789":1}}],["col3",{"2":{"490":1}}],["col2",{"2":{"490":1}}],["col1",{"2":{"490":1}}],["collaborative",{"2":{"1323":1}}],["collapsing",{"2":{"1037":1}}],["collapses",{"2":{"1430":1,"1569":1,"1759":1,"2224":1,"2462":1,"2520":1,"2540":1,"2845":1}}],["collapsed",{"2":{"1041":1,"2400":1,"2481":1}}],["collapse",{"2":{"965":2,"1324":1,"1382":1,"1405":1,"1792":2,"2073":2,"2075":2,"2080":2}}],["collision",{"2":{"1460":1,"2040":1,"2375":1,"2395":1,"2410":1,"2476":1}}],["collisions",{"2":{"915":1,"1554":1,"1792":2,"2265":2}}],["colliding",{"2":{"701":1,"2422":1}}],["collide",{"2":{"108":1,"1460":1,"1522":1,"1792":1,"2375":1,"2380":1,"2534":1,"2872":1}}],["colleague",{"2":{"836":1}}],["collectors",{"2":{"2495":1}}],["collector",{"2":{"1792":1,"1807":1,"2794":1,"2804":2}}],["collections",{"2":{"851":1,"852":1,"856":1,"949":1}}],["collection",{"2":{"841":1,"851":9,"852":6,"1241":1,"1254":1,"1792":7,"1890":1}}],["collect",{"2":{"439":1,"1241":1,"1890":1,"2347":1,"2804":1}}],["col",{"2":{"306":2,"1792":2,"2330":2}}],["column2",{"2":{"2326":1}}],["column1",{"2":{"2326":1}}],["columnar",{"2":{"848":3}}],["column",{"0":{"125":1,"301":1,"302":1,"303":1,"308":1,"309":1,"613":1,"1240":1,"1664":1,"1889":1,"2405":1,"2724":1},"1":{"126":1,"127":1,"128":1,"129":1,"130":1,"131":1},"2":{"33":2,"34":1,"35":1,"39":2,"41":1,"125":1,"129":1,"131":1,"159":2,"182":2,"186":2,"188":1,"229":3,"237":1,"297":6,"298":4,"299":3,"300":2,"301":2,"304":4,"305":3,"306":2,"309":4,"312":1,"313":1,"330":1,"346":2,"364":1,"496":2,"528":1,"582":2,"585":2,"587":2,"598":1,"606":1,"613":1,"615":2,"702":1,"841":1,"845":1,"854":2,"868":1,"871":1,"872":1,"875":1,"878":1,"879":2,"880":1,"885":2,"888":2,"934":1,"965":1,"973":2,"982":3,"984":1,"995":1,"997":3,"1055":1,"1068":1,"1080":1,"1096":1,"1098":1,"1100":3,"1127":1,"1189":2,"1192":2,"1203":2,"1216":1,"1232":1,"1234":1,"1235":1,"1236":1,"1237":1,"1239":1,"1240":1,"1284":1,"1370":1,"1378":1,"1382":1,"1386":4,"1390":3,"1408":2,"1412":1,"1429":1,"1436":2,"1458":2,"1471":6,"1480":2,"1649":1,"1651":1,"1655":1,"1664":2,"1667":1,"1686":1,"1688":2,"1792":23,"1882":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1889":1,"2000":1,"2007":1,"2009":1,"2010":1,"2102":1,"2109":2,"2156":1,"2175":1,"2176":1,"2177":1,"2178":1,"2180":3,"2181":1,"2182":1,"2206":1,"2226":1,"2227":1,"2259":1,"2291":2,"2293":1,"2296":1,"2324":1,"2326":2,"2328":4,"2329":1,"2330":2,"2337":3,"2339":2,"2357":2,"2372":2,"2375":1,"2397":1,"2405":1,"2451":2,"2453":1,"2528":2,"2530":3,"2537":2,"2542":1,"2586":1,"2587":1,"2725":1,"2726":1,"2840":2,"2841":1,"2842":1,"2851":1,"2854":1,"2864":2,"2869":3,"2881":1}}],["columnstore",{"2":{"848":1}}],["columns",{"0":{"33":1,"185":1,"300":1,"304":1,"333":1,"488":1,"1471":1,"2180":1,"2293":1,"2326":1,"2587":1},"1":{"186":1,"301":1,"302":1,"303":1,"305":1,"306":1},"2":{"32":1,"34":1,"35":1,"125":1,"126":1,"128":2,"159":1,"186":3,"188":3,"227":1,"238":1,"297":2,"304":1,"315":1,"328":2,"330":2,"335":1,"336":1,"337":1,"489":1,"493":1,"494":1,"581":1,"582":2,"583":1,"584":1,"585":1,"587":1,"700":1,"848":1,"916":2,"934":1,"956":2,"969":1,"980":1,"983":2,"995":1,"1040":1,"1060":1,"1079":1,"1100":1,"1189":2,"1190":2,"1192":1,"1196":1,"1203":1,"1214":1,"1232":1,"1233":1,"1234":1,"1236":1,"1237":1,"1238":1,"1239":4,"1355":1,"1367":1,"1368":1,"1373":2,"1375":1,"1378":1,"1399":3,"1460":1,"1470":1,"1480":2,"1581":1,"1686":2,"1688":3,"1792":11,"1824":2,"1882":1,"1883":1,"1884":1,"1886":1,"1887":1,"1888":2,"1967":1,"2000":1,"2010":1,"2093":1,"2094":1,"2109":5,"2170":1,"2171":4,"2176":1,"2180":2,"2181":2,"2189":1,"2206":2,"2217":2,"2293":3,"2296":3,"2318":1,"2324":1,"2325":1,"2330":1,"2337":4,"2356":1,"2375":1,"2397":1,"2398":1,"2481":1,"2530":1,"2537":1,"2586":1,"2587":3,"2590":2,"2600":1,"2641":1,"2672":1,"2774":1,"2840":1,"2854":4,"2866":1,"2869":5}}],["comibine",{"2":{"916":1}}],["comfortable",{"2":{"876":1}}],["come",{"2":{"534":1,"841":1,"859":1,"910":1,"1041":1,"1096":1,"1106":1,"1274":1,"1276":1,"1279":1,"1352":1,"1416":1,"1421":1,"1422":1,"1574":1,"1576":2,"2388":1,"2533":1,"2688":1}}],["comes",{"2":{"390":1,"429":1,"534":1,"699":1,"832":1,"851":1,"864":1,"869":1,"880":1,"1040":1,"1078":1,"1081":1,"1281":1,"1385":1,"1394":1,"1396":1,"1402":1,"1421":1,"2310":1,"2313":1,"2733":1,"2811":1,"2839":1}}],["combines",{"2":{"1011":1,"1048":1,"1328":1,"1398":1,"1576":1,"1792":1,"2140":1,"2575":1,"2634":2}}],["combine",{"2":{"902":1,"1009":1,"1035":1,"1105":2,"1138":1,"1347":2,"1366":1,"1398":1,"1401":1,"1747":1,"1792":2,"1930":1,"2110":1,"2164":1,"2347":1,"2530":1,"2691":1,"2725":1}}],["combined",{"0":{"105":1,"420":1,"444":1,"478":1,"543":1,"574":1,"736":1,"800":1,"903":1,"1464":1},"2":{"213":1,"214":1,"258":1,"378":1,"409":1,"469":1,"541":1,"587":1,"705":1,"868":2,"872":1,"904":6,"946":1,"951":1,"1065":1,"1069":1,"1099":1,"1139":1,"1162":1,"1171":1,"1335":1,"1353":1,"1354":1,"1358":2,"1365":1,"1376":1,"1378":1,"1407":1,"1577":1,"1740":1,"1745":2,"2207":1,"2277":1,"2278":1,"2288":1,"2333":1,"2346":2,"2459":1,"2506":1,"2549":1,"2589":1,"2621":1,"2662":1,"2767":2}}],["combining",{"0":{"902":1,"1163":1,"2207":1},"1":{"903":1},"2":{"1010":1,"1192":1,"1351":1,"1766":1,"2429":1,"2515":1}}],["combinations",{"2":{"2435":1,"2871":1}}],["combination",{"2":{"40":1,"877":1,"1067":1,"1114":1,"2407":1,"2413":1}}],["com",{"2":{"75":1,"128":2,"206":1,"207":1,"208":1,"209":2,"211":2,"212":1,"213":3,"214":5,"215":1,"297":2,"333":2,"390":1,"394":1,"423":4,"430":1,"436":3,"442":2,"444":2,"446":9,"449":1,"452":2,"455":1,"488":1,"489":2,"493":2,"531":1,"533":1,"611":1,"612":1,"695":1,"700":1,"845":1,"851":1,"878":1,"913":1,"921":1,"938":2,"947":1,"970":1,"976":1,"977":3,"979":3,"986":3,"988":3,"989":1,"994":1,"1010":1,"1017":2,"1018":2,"1019":2,"1023":2,"1026":2,"1030":1,"1032":1,"1033":1,"1034":3,"1048":1,"1051":3,"1074":2,"1078":2,"1105":3,"1117":1,"1118":1,"1119":1,"1173":3,"1176":3,"1177":5,"1183":1,"1207":1,"1225":2,"1233":1,"1302":1,"1328":1,"1347":1,"1348":1,"1352":1,"1369":1,"1380":1,"1386":4,"1391":1,"1393":1,"1398":1,"1423":1,"1426":1,"1430":1,"1431":1,"1449":4,"1614":3,"1616":1,"1627":3,"1629":6,"1640":2,"1646":2,"1691":3,"1692":4,"1693":3,"1694":3,"1695":3,"1697":3,"1709":3,"1711":2,"1714":1,"1726":1,"1730":3,"1731":2,"1733":2,"1736":1,"1738":1,"1740":3,"1742":1,"1743":1,"1792":48,"1833":1,"1875":2,"1900":2,"1907":1,"1911":1,"1920":2,"1921":1,"1924":1,"1926":1,"1931":1,"2162":1,"2180":1,"2254":1,"2257":4,"2264":3,"2266":3,"2283":1,"2286":1,"2288":3,"2290":1,"2308":1,"2425":2,"2429":2,"2434":1,"2450":1,"2483":1,"2502":1,"2526":2,"2529":1,"2530":1,"2549":3,"2580":1,"2633":3,"2634":1,"2739":1,"2760":1,"2762":3,"2764":2,"2765":1,"2766":2,"2768":2,"2781":1,"2782":1,"2783":1,"2784":1,"2792":2,"2810":1,"2811":6,"2842":1,"2860":2,"2865":1,"2869":2,"2873":1}}],["compilation",{"2":{"1005":1,"1026":1,"2245":3,"2600":1,"2776":1,"2789":1,"2792":2}}],["compiled",{"2":{"982":1,"1013":1,"1417":1,"1420":1,"2576":1,"2711":1,"2744":1,"2776":1,"2790":1,"2792":2}}],["compile",{"0":{"1001":1},"2":{"856":1,"872":1,"875":1,"978":1,"1004":1,"1009":1,"1037":1,"1406":1,"1409":1,"1422":1,"2168":1}}],["compiles",{"2":{"852":1,"1406":2,"1420":1,"1422":1,"2461":1}}],["compilers",{"2":{"1005":1}}],["compiler",{"2":{"843":1,"852":1,"872":1,"975":1,"2328":1}}],["comprehensive",{"0":{"2615":1},"2":{"1255":1,"2255":1,"2257":1,"2278":1}}],["compressing",{"2":{"2626":2}}],["compressible",{"2":{"1943":1,"2626":1}}],["compressionlevel",{"2":{"1792":1,"1936":1,"1937":1,"1944":2}}],["compression",{"0":{"1935":1,"1938":1,"1939":1,"1942":1,"2626":1,"2746":1},"1":{"1936":1,"1937":1,"1938":1,"1939":1,"1940":2,"1941":2,"1942":1,"1943":1,"1944":1,"1945":1,"1946":1},"2":{"848":1,"868":1,"869":1,"873":1,"953":1,"1101":2,"1790":2,"1792":8,"1797":2,"1935":1,"1937":7,"1938":5,"1940":2,"1941":1,"1942":1,"1944":2,"1994":1,"2235":1,"2626":1,"2627":1,"2746":1}}],["compress",{"2":{"873":1}}],["compresses",{"2":{"869":1}}],["compressed",{"2":{"848":1,"953":1}}],["compromised",{"2":{"946":1,"1185":2}}],["compromise",{"2":{"945":1}}],["compromises",{"2":{"940":1}}],["complicates",{"2":{"1393":1}}],["complicated",{"2":{"919":1}}],["compliant",{"2":{"1064":1}}],["compliance",{"2":{"902":1,"1792":1}}],["completing",{"2":{"2169":1,"2393":1}}],["completion",{"0":{"1167":1,"1215":1,"2087":1},"2":{"1167":2,"1214":1,"1215":1,"1216":1,"1232":1,"1233":1,"1241":1,"1252":1,"1792":5,"1882":1,"1890":1,"2086":2,"2087":1}}],["completions",{"2":{"1105":1}}],["completed",{"2":{"1385":1,"1792":4,"2362":2,"2766":1,"2802":1}}],["completeaddexistingusercommand",{"0":{"1237":1,"1887":1},"2":{"1221":1,"1238":2,"1792":5,"1871":1,"1893":1}}],["completeauthenticatecommand",{"0":{"1239":1,"1888":1},"2":{"1217":1,"1222":1,"1236":1,"1792":2,"1872":1,"1886":1,"1893":1}}],["completeregistrationcommand",{"0":{"1238":1,"1887":1},"2":{"1217":1,"1220":1,"1792":1,"1870":1,"1893":1}}],["completely",{"0":{"2752":1,"2801":1},"2":{"845":1,"848":2,"852":2,"863":1,"864":1,"1105":1,"1139":1,"1385":1,"1386":1,"1399":2,"1802":1,"2092":1,"2157":1,"2337":1,"2405":1,"2543":1,"2544":1}}],["completes",{"2":{"285":1,"1060":1,"1416":1,"1684":1,"2559":1}}],["complete",{"0":{"364":1,"997":1,"1083":1,"1207":1,"1212":1,"1223":1,"1249":1,"1339":1,"1461":1,"1483":1,"1505":1,"1529":1,"1548":1,"1633":1,"1663":1,"1698":1,"1734":1,"1810":1,"1863":1,"1891":1,"1907":1,"1931":1,"1960":1,"1975":1,"1995":1,"2080":1,"2132":1,"2146":1,"2187":1,"2815":1,"2836":1},"1":{"365":1,"366":1,"1084":1,"1085":1,"1086":1,"1087":1,"1088":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1094":1,"1095":1,"1096":1,"1097":1,"1098":1,"1099":1,"1100":1,"1101":1,"1102":1,"1103":1,"1104":1,"1105":1,"1106":1,"1107":1,"1108":1,"1109":1,"1110":1,"1111":1,"1112":1,"1113":1,"1114":1,"1115":1,"1116":1,"1117":1,"1118":1,"1119":1,"1120":1,"1121":1,"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1462":1,"1463":1,"1464":1,"1735":1,"1736":1,"1737":1,"1892":1,"1893":1},"2":{"35":1,"73":1,"98":1,"121":1,"141":1,"220":1,"251":1,"327":1,"364":1,"430":1,"455":1,"577":1,"646":1,"658":1,"659":1,"684":1,"791":1,"834":1,"860":1,"919":1,"921":1,"947":1,"972":1,"976":1,"988":1,"1037":5,"1047":1,"1048":1,"1062":1,"1064":1,"1065":1,"1071":1,"1081":1,"1082":1,"1084":2,"1086":1,"1094":1,"1127":1,"1177":1,"1182":1,"1183":1,"1206":1,"1211":1,"1215":1,"1216":1,"1217":3,"1218":1,"1220":3,"1221":2,"1222":2,"1226":3,"1239":1,"1252":1,"1317":1,"1339":1,"1366":1,"1369":1,"1371":1,"1381":1,"1382":1,"1386":1,"1399":1,"1596":1,"1616":1,"1629":1,"1633":1,"1674":1,"1678":1,"1785":2,"1792":6,"1834":1,"1868":1,"1876":3,"1893":3,"1894":2,"1984":1,"2040":1,"2134":1,"2170":1,"2187":1,"2210":1,"2219":1,"2372":1,"2476":1,"2527":1,"2531":1,"2537":1,"2577":1,"2701":1,"2705":1,"2706":2,"2729":1,"2737":1,"2754":1,"2774":1,"2793":2,"2806":1,"2826":3,"2827":1,"2841":1,"2860":2,"2873":1,"2882":1}}],["complementary",{"0":{"836":1},"2":{"1136":1}}],["complexity",{"2":{"845":1,"1013":1,"1084":1,"1108":1,"1121":1,"1206":1,"1281":1,"1385":1}}],["complex",{"0":{"900":1,"1303":1,"1394":1},"1":{"1395":1,"1396":1},"2":{"137":1,"841":2,"843":1,"845":1,"908":1,"920":3,"1064":1,"1084":2,"1086":1,"1094":1,"1097":1,"1121":1,"1127":1,"1205":1,"1247":1,"1351":1,"1378":1,"1394":1,"1396":2,"1398":1,"1399":1,"1401":1,"1405":1,"1792":1,"2164":1,"2270":1,"2586":1,"2588":1}}],["compelling",{"2":{"1404":1}}],["compensate",{"2":{"865":1}}],["compensating",{"2":{"865":1}}],["competitive",{"2":{"1091":1}}],["competitors",{"2":{"831":1,"1262":1}}],["competent",{"2":{"876":1}}],["compete",{"2":{"831":1,"1078":1,"1205":1}}],["computation",{"2":{"852":3,"866":1}}],["computevisualizationurl",{"2":{"1416":1,"1572":1}}],["computevisualization",{"2":{"1416":1}}],["computeurl",{"2":{"1416":1,"1581":1}}],["computes",{"2":{"859":1,"1738":1}}],["computer",{"0":{"839":1},"1":{"840":1,"841":1,"842":1,"843":1,"844":1,"845":1,"846":1,"847":1,"848":1,"849":1,"850":1,"851":1,"852":1,"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"859":1,"860":1,"861":1,"862":1,"863":1,"864":1,"865":1},"2":{"840":1}}],["computed",{"2":{"212":1,"215":1,"362":1,"395":1,"527":1,"534":1,"1255":1,"1738":1,"2621":3,"2622":1}}],["compute",{"2":{"106":1,"396":1,"852":1,"860":2,"861":2,"868":3,"869":1,"1067":5,"1094":1,"1150":2,"1424":1,"1529":3,"1572":2,"1573":1,"2463":1,"2762":1,"2768":1,"2771":1}}],["compounded",{"2":{"2402":1}}],["compound",{"2":{"873":1,"2398":1}}],["compounding",{"2":{"872":1}}],["compounds",{"2":{"871":1,"2398":1}}],["component",{"2":{"833":1,"834":3,"835":2,"871":1,"946":1,"1027":1,"1064":1,"1322":1,"1350":1,"1366":1,"1409":1,"1414":1,"1419":1,"1436":1}}],["components",{"2":{"833":2,"834":2,"837":1,"867":1,"2785":1,"2788":1}}],["composed",{"2":{"1088":1,"1961":1}}],["compose",{"0":{"1775":1},"2":{"1078":1,"1096":2,"1119":2,"1127":1,"1192":1,"1193":1,"1398":1,"1399":1,"2433":1,"2532":1,"2537":1,"2717":1,"2767":1,"2804":1}}],["composes",{"0":{"349":1},"2":{"1792":1,"2097":1,"2344":1,"2346":1,"2868":1,"2869":1,"2877":1}}],["composition",{"0":{"1190":1,"1745":1,"2433":1},"1":{"1191":1,"1192":1,"1193":1},"2":{"1037":1,"1122":1,"1125":1,"1187":1,"1207":1,"1398":2,"2164":1,"2329":1,"2346":1,"2347":1,"2435":1}}],["compositefieldbuffer",{"2":{"2614":1}}],["compositefielddescriptors",{"2":{"2611":1}}],["compositefieldnames",{"2":{"2611":1}}],["compositecolumninfo",{"2":{"2370":1}}],["compositetypecache",{"2":{"2370":1}}],["composites",{"0":{"2397":1},"1":{"2398":1},"2":{"334":2,"337":2,"919":1,"1792":1,"1967":1,"1974":7,"2010":1,"2226":1,"2356":1,"2398":1,"2586":1,"2588":1,"2603":1,"2607":9,"2611":2}}],["composite",{"0":{"333":1,"334":1,"335":1,"383":1,"1192":1,"1725":1,"1973":1,"1974":1,"2217":1,"2325":1,"2348":1,"2356":1,"2370":1,"2504":1,"2585":1,"2586":1,"2587":1,"2590":1,"2607":1,"2611":1,"2618":1},"1":{"2586":1,"2587":1},"2":{"74":2,"75":1,"201":1,"202":1,"203":1,"206":1,"210":1,"223":1,"227":1,"238":1,"266":1,"328":2,"330":3,"334":2,"335":2,"336":1,"337":4,"383":8,"581":1,"582":2,"583":1,"584":1,"587":1,"869":2,"871":1,"912":1,"914":2,"916":1,"919":1,"1016":1,"1019":1,"1031":1,"1092":1,"1097":14,"1104":1,"1105":2,"1187":1,"1190":2,"1192":2,"1193":2,"1375":1,"1376":1,"1377":1,"1398":1,"1426":1,"1720":1,"1722":1,"1723":1,"1725":1,"1727":1,"1728":1,"1732":1,"1792":8,"1824":2,"1967":2,"1973":1,"1974":10,"2000":2,"2010":3,"2156":1,"2164":1,"2165":1,"2217":1,"2222":1,"2228":1,"2236":2,"2258":1,"2264":6,"2267":1,"2270":1,"2324":1,"2325":2,"2329":2,"2330":2,"2337":5,"2348":9,"2356":1,"2369":1,"2370":2,"2372":1,"2388":1,"2397":3,"2398":2,"2435":1,"2481":1,"2484":1,"2498":1,"2504":1,"2512":1,"2518":2,"2522":1,"2542":1,"2585":1,"2586":11,"2587":5,"2588":1,"2589":3,"2590":7,"2597":1,"2600":1,"2603":2,"2607":11,"2608":1,"2611":4,"2614":1,"2618":1,"2641":2,"2725":1,"2759":1,"2760":1,"2762":1,"2769":1,"2854":2,"2856":1}}],["composing",{"0":{"2767":1},"2":{"264":1,"1746":1,"2347":1,"2759":1}}],["compact",{"2":{"1386":1}}],["company",{"2":{"1079":1,"2394":5,"2868":1}}],["companion",{"2":{"1067":1,"1434":1}}],["companies",{"2":{"876":1}}],["compat",{"2":{"918":1,"1792":1}}],["compatibility",{"0":{"1066":1,"1102":1,"1850":1,"2382":1},"1":{"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1851":1,"1852":1},"2":{"330":1,"917":1,"1013":1,"1037":1,"1066":1,"1070":1,"1101":1,"1102":2,"1181":1,"1792":3,"1850":1,"1856":1,"1974":1,"2002":1,"2359":1,"2423":1,"2455":1,"2481":1,"2587":1,"2600":1,"2607":2}}],["compatible",{"0":{"954":1},"2":{"309":1,"696":1,"1522":1,"1751":1,"1792":2,"1958":1,"2047":1,"2054":1,"2077":1,"2371":1,"2380":1,"2394":2,"2461":1,"2470":1,"2477":1,"2496":1,"2635":2,"2652":1}}],["comparing",{"0":{"1260":1}}],["comparisons",{"2":{"831":1}}],["comparison",{"0":{"869":1,"906":1,"945":1,"969":1,"1083":1,"1085":1,"1093":1,"1108":1,"1116":1,"1206":1,"1281":1,"1319":1,"1350":1,"1366":1},"1":{"907":1,"908":1,"909":1,"1084":1,"1085":1,"1086":2,"1087":2,"1088":2,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1094":2,"1095":2,"1096":2,"1097":2,"1098":2,"1099":2,"1100":2,"1101":2,"1102":2,"1103":2,"1104":2,"1105":2,"1106":2,"1107":2,"1108":2,"1109":2,"1110":2,"1111":1,"1112":1,"1113":1,"1114":1,"1115":1,"1116":1,"1117":2,"1118":2,"1119":2,"1120":1,"1121":1,"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1320":1,"1321":1},"2":{"831":1,"1037":3,"1049":1,"1083":2,"1181":1,"1260":1,"1366":2,"1368":1,"1383":1,"1894":1,"2177":1,"2245":1,"2372":1,"2713":1}}],["compares",{"0":{"534":1},"2":{"1738":1}}],["compare",{"0":{"2713":1},"2":{"308":1,"994":1,"1006":1,"1057":1,"1064":1,"1133":1,"1254":1,"1387":1}}],["compared",{"0":{"1254":1},"1":{"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"1263":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":1,"1275":1,"1276":1,"1277":1,"1278":1,"1279":1,"1280":1,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1301":1},"2":{"74":1,"1004":1,"1266":1,"1382":1,"2245":1,"2518":1,"2621":1}}],["communicates",{"2":{"1211":1,"1868":1}}],["communication",{"2":{"1007":1,"1015":1,"1035":1,"1685":1}}],["community",{"2":{"863":1,"876":1,"1127":1,"1385":2}}],["commas",{"2":{"2400":1,"2533":1}}],["comma",{"0":{"601":1},"2":{"687":1,"704":1,"709":1,"714":1,"767":1,"781":2,"786":1,"809":1,"902":1,"1189":1,"1358":1,"1627":1,"1792":3,"2097":1,"2125":1,"2200":2,"2266":1,"2537":1,"2575":1,"2648":1,"2870":1}}],["commandlineconfigurationprovider",{"2":{"2824":1,"2825":1}}],["commandtext",{"2":{"2614":1}}],["commandtextbuilder",{"2":{"2614":1}}],["commandtimeout=30",{"2":{"2694":1,"2695":1,"2700":1}}],["commandtimeout",{"2":{"134":1,"139":1,"141":1,"279":1,"1672":1,"1792":2,"1836":1,"1837":1,"1863":1,"2253":2,"2255":1,"2687":1,"2701":1}}],["commandcallbackasync",{"2":{"2466":2}}],["commandbehavior",{"2":{"2324":1}}],["commandretrystrategy",{"2":{"1217":1,"1224":1,"1792":1,"1874":1}}],["commandretryoptions",{"2":{"570":1,"575":1,"577":1,"1153":1,"1154":1,"1177":1,"1587":1,"1597":1,"1598":1,"1792":2,"2551":1,"2701":1}}],["commands",{"0":{"1231":1,"1881":1,"2168":1,"2414":1,"2582":1,"2667":1,"2785":1},"1":{"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"2415":1,"2416":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1},"2":{"238":1,"310":1,"347":2,"565":1,"567":2,"568":1,"614":1,"624":3,"625":2,"830":1,"845":1,"868":2,"869":2,"901":1,"1102":3,"1217":1,"1223":1,"1382":1,"1386":2,"1391":1,"1394":4,"1399":1,"1655":1,"1792":4,"1850":2,"2225":1,"2232":1,"2258":1,"2319":1,"2320":3,"2339":1,"2340":1,"2342":4,"2357":3,"2383":1,"2432":1,"2496":4,"2531":1,"2534":1,"2614":1,"2667":2,"2679":1,"2750":1,"2772":1,"2774":1,"2785":1,"2798":1,"2875":1}}],["command>",{"2":{"30":2}}],["command",{"0":{"29":1,"31":1,"37":1,"38":1,"39":1,"40":1,"50":1,"60":1,"132":1,"277":1,"614":1,"760":1,"761":1,"765":1,"770":1,"771":1,"826":1,"827":1,"907":1,"1153":1,"1370":1,"1473":1,"1480":1,"1481":1,"1501":1,"1586":1,"1686":1,"1689":1,"1806":1,"2129":1,"2131":1,"2319":1,"2320":1,"2340":1,"2357":1,"2403":1,"2496":1,"2577":1,"2691":1,"2692":1,"2699":1,"2780":1,"2785":1,"2798":1,"2842":1,"2850":1},"1":{"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"133":1,"134":1,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"1154":1,"1587":1,"1588":1,"1589":1,"1590":1,"1591":1,"1592":1,"1593":1,"1594":1,"1595":1,"1596":1,"1597":1,"1598":1,"1599":1,"1600":1,"1601":1,"1602":1,"1687":1,"1688":1,"1689":1,"2692":1,"2781":1,"2782":1,"2783":1,"2784":1,"2843":1,"2851":1,"2852":1,"2853":1},"2":{"29":3,"30":3,"31":1,"32":1,"37":6,"38":5,"39":3,"40":7,"41":4,"42":1,"50":2,"51":1,"54":1,"56":1,"60":2,"63":1,"66":1,"90":1,"133":2,"138":1,"140":2,"152":1,"165":1,"170":1,"218":2,"225":1,"231":1,"238":2,"281":1,"310":1,"384":1,"559":2,"565":3,"567":1,"568":2,"577":1,"578":1,"579":1,"580":1,"586":2,"587":2,"588":1,"596":1,"614":3,"615":1,"616":2,"617":1,"618":2,"625":2,"626":2,"746":2,"759":1,"760":2,"761":3,"762":1,"763":1,"764":2,"767":1,"768":3,"769":1,"770":2,"771":3,"772":1,"773":1,"774":2,"775":1,"776":3,"786":3,"787":1,"788":3,"789":1,"827":1,"829":1,"830":1,"868":1,"886":1,"891":2,"892":2,"899":1,"900":1,"902":2,"903":1,"904":2,"907":1,"1037":1,"1060":1,"1086":1,"1095":2,"1101":1,"1111":1,"1125":1,"1151":1,"1153":1,"1177":1,"1180":1,"1181":2,"1182":2,"1217":1,"1219":1,"1220":1,"1221":1,"1222":1,"1231":1,"1232":1,"1233":1,"1238":1,"1250":1,"1385":1,"1386":9,"1391":1,"1398":2,"1419":1,"1435":1,"1472":2,"1480":1,"1482":1,"1499":1,"1504":2,"1506":2,"1508":2,"1586":1,"1588":1,"1651":2,"1669":1,"1670":1,"1672":4,"1679":1,"1680":1,"1684":2,"1686":1,"1688":1,"1689":1,"1785":1,"1790":2,"1792":51,"1797":2,"1805":1,"1837":2,"1844":2,"1864":1,"1869":1,"1870":1,"1871":1,"1872":1,"1882":1,"1887":1,"2000":1,"2007":1,"2008":1,"2009":2,"2011":3,"2013":1,"2094":1,"2111":7,"2128":2,"2129":1,"2130":2,"2131":1,"2153":1,"2155":1,"2168":1,"2208":1,"2223":1,"2228":2,"2253":1,"2255":4,"2258":2,"2289":1,"2319":1,"2320":4,"2321":1,"2322":1,"2323":1,"2328":1,"2330":3,"2337":2,"2338":2,"2339":5,"2340":1,"2342":1,"2354":3,"2357":4,"2372":4,"2403":1,"2414":1,"2498":1,"2532":6,"2534":2,"2537":1,"2540":1,"2541":1,"2545":2,"2546":1,"2558":1,"2572":3,"2577":1,"2597":3,"2614":3,"2649":1,"2663":1,"2664":1,"2673":1,"2679":2,"2680":1,"2681":3,"2682":1,"2684":1,"2687":2,"2691":2,"2693":1,"2696":1,"2697":1,"2719":1,"2756":2,"2772":1,"2774":1,"2794":1,"2795":2,"2803":2,"2823":2,"2824":1,"2825":2,"2841":1,"2845":1,"2855":1,"2859":1,"2871":3,"2872":1,"2873":1,"2874":6,"2875":3}}],["commitasync",{"2":{"2615":1}}],["committed",{"2":{"2533":1,"2881":1}}],["commits",{"2":{"864":1,"1079":2,"1324":1,"1325":1,"1382":1,"2741":1,"2868":1}}],["commit",{"2":{"584":1,"622":2,"624":1,"860":1,"865":1,"874":1,"879":1,"1070":3,"1076":1,"1078":1,"1079":2,"1102":1,"1324":1,"1325":1,"1366":1,"1376":2,"1395":1,"1396":2,"1400":1,"1792":2,"1850":1,"1851":1,"1852":1,"2337":1,"2342":2,"2382":2,"2383":1,"2527":1,"2533":1,"2545":1,"2741":1,"2841":1,"2851":1,"2855":1,"2862":1,"2868":3}}],["commons",{"2":{"879":1}}],["commonly",{"2":{"357":1,"726":1,"1859":1}}],["common",{"0":{"546":1,"576":1,"994":1,"1972":1,"2125":1,"2213":1,"2699":1},"1":{"2214":1,"2215":1,"2216":1,"2217":1,"2218":1},"2":{"75":1,"92":1,"133":1,"215":1,"414":1,"624":1,"650":1,"663":1,"748":1,"836":1,"914":1,"916":1,"993":1,"1067":1,"1152":1,"1162":1,"1176":1,"1193":1,"1210":1,"1324":1,"1366":1,"1459":1,"1524":1,"1616":1,"1624":1,"1694":2,"1708":1,"1792":6,"1925":1,"1943":1,"1959":1,"2014":1,"2020":1,"2095":1,"2300":1,"2375":1,"2381":1,"2438":1,"2471":1,"2529":1,"2540":1,"2632":2,"2680":1,"2721":1,"2804":1,"2865":1}}],["commentlineresult",{"2":{"2482":1}}],["commentparsers",{"2":{"2419":1}}],["commentparamretyped",{"2":{"2372":1}}],["commentparamrenamed",{"2":{"2372":1}}],["commentparamnotexistscantrename",{"2":{"2372":1}}],["commenting",{"2":{"2406":1}}],["commented",{"0":{"2677":1},"2":{"1792":1,"2231":1,"2682":1,"2700":1}}],["commentheaderincludecomments",{"2":{"1553":1,"1556":1,"1581":1,"1752":1,"1753":1,"1758":1,"1792":2}}],["commentheader",{"2":{"1553":1,"1556":1,"1581":1,"1752":1,"1753":2,"1758":2,"1792":4}}],["comment",{"0":{"323":1,"1389":1,"1556":1,"1557":1,"1726":1,"1755":1,"2190":1,"2252":1,"2339":1,"2358":1,"2366":1,"2432":1,"2581":1},"1":{"1557":1,"2191":1,"2192":1,"2193":1,"2194":1,"2195":1,"2196":1,"2197":1,"2198":1,"2199":1,"2200":1,"2201":1,"2202":1,"2203":1,"2204":1,"2205":1,"2206":1,"2207":1,"2208":1,"2209":1,"2210":1,"2211":1,"2212":1,"2213":1,"2214":1,"2215":1,"2216":1,"2217":1,"2218":1,"2219":1},"2":{"7":1,"9":2,"11":1,"16":1,"17":3,"18":1,"19":1,"20":1,"21":1,"26":1,"37":1,"38":1,"39":1,"40":1,"42":1,"48":1,"50":1,"53":1,"60":1,"61":1,"62":1,"65":1,"71":1,"72":1,"76":1,"89":1,"98":1,"104":1,"115":1,"116":1,"117":1,"119":1,"122":1,"128":1,"130":1,"136":1,"137":1,"141":1,"151":1,"157":1,"164":1,"175":1,"184":1,"186":2,"187":2,"189":1,"198":1,"202":1,"203":1,"206":1,"207":1,"208":1,"209":2,"211":2,"213":3,"214":4,"215":1,"217":1,"220":3,"244":1,"247":1,"248":1,"249":1,"250":1,"254":1,"255":1,"256":1,"257":1,"259":1,"263":2,"264":2,"277":2,"278":2,"281":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"298":1,"309":1,"312":1,"313":1,"317":1,"318":1,"319":9,"320":3,"322":1,"326":2,"327":1,"332":1,"333":1,"334":1,"335":1,"338":1,"345":1,"351":1,"352":1,"354":1,"356":1,"360":1,"361":1,"365":1,"366":1,"367":1,"374":1,"385":1,"386":2,"396":1,"401":1,"405":1,"406":1,"408":2,"410":1,"415":1,"417":1,"418":1,"419":1,"420":1,"421":1,"423":1,"426":1,"427":1,"428":1,"436":1,"438":1,"439":1,"441":1,"442":1,"443":1,"444":1,"445":1,"449":1,"451":2,"452":1,"453":1,"454":1,"466":1,"467":1,"468":1,"469":1,"470":1,"471":1,"481":1,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"495":1,"503":1,"505":1,"510":1,"511":1,"513":1,"520":1,"521":1,"522":2,"523":1,"525":1,"527":1,"531":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"547":1,"556":1,"557":1,"568":1,"577":2,"578":1,"588":1,"592":1,"593":1,"594":1,"596":1,"605":1,"611":1,"617":1,"626":1,"634":1,"646":1,"647":1,"658":1,"659":2,"664":2,"670":1,"677":1,"679":1,"680":1,"683":1,"685":1,"686":1,"687":1,"706":1,"722":1,"723":1,"724":1,"725":1,"733":1,"734":1,"735":1,"736":1,"740":1,"750":1,"751":1,"752":1,"755":1,"756":1,"764":1,"774":1,"777":1,"790":1,"797":1,"798":1,"799":1,"804":1,"811":1,"812":1,"813":1,"814":1,"815":1,"820":1,"830":1,"835":2,"876":1,"886":1,"904":1,"914":2,"915":2,"916":3,"917":1,"918":1,"934":1,"935":1,"936":1,"957":1,"960":2,"979":2,"980":1,"988":1,"990":1,"1010":2,"1016":1,"1017":1,"1019":3,"1021":1,"1032":1,"1033":1,"1034":3,"1036":1,"1040":3,"1055":1,"1057":1,"1073":1,"1078":1,"1086":2,"1095":1,"1098":1,"1105":7,"1113":1,"1127":1,"1135":3,"1138":2,"1139":1,"1141":1,"1142":1,"1149":1,"1150":3,"1154":2,"1163":3,"1176":1,"1179":2,"1189":1,"1308":1,"1309":1,"1310":1,"1313":2,"1321":1,"1331":1,"1332":1,"1337":1,"1338":1,"1339":1,"1345":2,"1347":1,"1348":1,"1358":4,"1362":1,"1368":1,"1378":3,"1386":4,"1387":1,"1389":3,"1390":1,"1393":1,"1396":1,"1398":7,"1399":1,"1401":2,"1405":1,"1406":1,"1407":1,"1408":1,"1422":1,"1423":1,"1426":2,"1427":1,"1431":2,"1434":1,"1443":1,"1465":1,"1484":1,"1495":1,"1506":1,"1529":4,"1530":1,"1535":1,"1547":1,"1549":1,"1556":1,"1557":2,"1567":1,"1583":1,"1599":3,"1600":1,"1610":1,"1632":1,"1634":1,"1647":1,"1664":2,"1665":1,"1679":1,"1699":1,"1723":2,"1726":1,"1728":1,"1731":2,"1733":1,"1736":2,"1738":1,"1740":3,"1742":1,"1743":1,"1744":2,"1748":2,"1750":1,"1753":1,"1755":2,"1760":1,"1792":33,"1811":1,"1824":1,"1834":1,"1840":4,"1843":1,"1844":1,"1855":1,"1862":1,"1864":1,"1908":1,"1913":1,"1920":1,"1921":1,"1924":1,"1926":1,"1930":2,"1932":1,"1945":1,"1962":1,"1976":1,"1996":1,"2000":1,"2004":1,"2005":1,"2043":1,"2076":1,"2078":1,"2079":1,"2081":1,"2090":1,"2106":1,"2120":1,"2133":1,"2139":1,"2147":1,"2150":1,"2156":1,"2169":1,"2176":1,"2183":1,"2184":1,"2186":1,"2187":3,"2190":3,"2191":1,"2192":1,"2193":5,"2194":1,"2196":5,"2199":3,"2200":3,"2202":1,"2204":2,"2205":3,"2206":2,"2214":1,"2215":1,"2237":1,"2247":2,"2249":1,"2251":1,"2252":2,"2253":1,"2255":3,"2257":3,"2258":1,"2264":8,"2277":4,"2282":1,"2283":3,"2287":1,"2288":3,"2290":1,"2291":1,"2292":1,"2293":2,"2294":2,"2303":1,"2304":1,"2314":5,"2323":2,"2332":1,"2338":1,"2339":2,"2344":2,"2346":4,"2358":2,"2365":3,"2366":4,"2380":1,"2389":2,"2391":2,"2393":1,"2419":1,"2430":1,"2432":2,"2437":1,"2438":1,"2452":1,"2471":1,"2481":6,"2482":5,"2487":3,"2498":1,"2502":1,"2529":5,"2533":2,"2542":1,"2546":1,"2549":10,"2558":1,"2575":2,"2580":2,"2581":4,"2587":2,"2591":3,"2596":1,"2629":1,"2641":1,"2665":2,"2671":1,"2678":1,"2695":1,"2706":1,"2721":2,"2727":1,"2759":1,"2760":1,"2762":6,"2764":2,"2766":3,"2767":3,"2768":1,"2773":1,"2775":2,"2785":1,"2793":1,"2797":1,"2809":1,"2810":1,"2812":1,"2813":1,"2815":1,"2822":2,"2824":3,"2825":1,"2826":1,"2829":1,"2834":2,"2836":2,"2839":1,"2841":1,"2865":3,"2878":1}}],["commentscope",{"0":{"2005":1},"1":{"2006":1},"2":{"324":1,"1792":1,"1999":1,"2000":1,"2006":2,"2323":1,"2330":2,"2841":1}}],["commentsmode",{"0":{"244":1,"2004":1},"2":{"244":1,"659":1,"1792":2,"1836":1,"1840":2,"1863":2,"1999":1,"2000":1,"2195":1,"2209":1,"2223":1,"2330":2,"2367":1,"2369":1,"2482":1,"2701":1,"2721":2,"2722":1,"2841":2}}],["comments",{"0":{"1113":1,"1840":1,"2209":1,"2323":1},"2":{"3":1,"220":2,"239":1,"244":1,"324":1,"378":1,"694":1,"703":1,"704":1,"706":1,"709":1,"711":1,"713":1,"714":1,"837":1,"845":1,"868":1,"995":1,"1002":1,"1037":1,"1073":1,"1078":1,"1084":1,"1086":2,"1108":1,"1109":1,"1113":2,"1125":1,"1127":1,"1135":1,"1378":1,"1386":6,"1392":1,"1556":1,"1608":1,"1632":1,"1753":1,"1792":6,"1840":1,"2000":1,"2004":2,"2005":2,"2006":2,"2147":1,"2164":1,"2190":3,"2191":2,"2247":1,"2272":1,"2318":1,"2323":6,"2330":1,"2358":1,"2359":1,"2365":1,"2528":1,"2529":1,"2531":1,"2533":1,"2540":1,"2677":1,"2678":1,"2686":1,"2694":1,"2695":1,"2706":1,"2772":1,"2793":1,"2826":1,"2840":1,"2841":1,"2845":1,"2863":1,"2869":1,"2870":1}}],["congratulations",{"2":{"2823":1}}],["conjunctively",{"2":{"2433":1}}],["conjunctive",{"2":{"1909":1}}],["conn",{"2":{"1333":1}}],["connecteventsource",{"2":{"1318":1}}],["connected",{"2":{"636":1,"638":1,"645":1,"650":2,"1044":1,"1103":1,"1183":1,"1303":1,"1304":1,"1305":2,"1309":2,"1318":2,"1320":1,"1372":1,"1386":1,"1704":1,"1792":1,"1857":1,"2362":1,"2391":1,"2393":1,"2490":2,"2818":1,"2823":1,"2827":1,"2828":2,"2829":1,"2831":2,"2836":1}}],["connecting",{"0":{"1202":1},"2":{"1441":1,"2828":1}}],["connectivity",{"2":{"1100":1,"1609":1,"1764":1,"1767":1,"1770":1,"1792":4,"2634":5,"2785":1}}],["connectiontest",{"2":{"2415":1}}],["connectionname",{"0":{"2098":1},"2":{"693":1,"697":1,"705":2,"967":1,"1217":1,"1224":1,"1630":1,"1631":1,"1633":1,"1763":1,"1764":1,"1771":1,"1792":8,"1836":1,"1837":1,"1863":1,"1874":1,"2046":1,"2047":1,"2063":1,"2093":1,"2094":1,"2098":1,"2111":5,"2112":1,"2532":5,"2534":4,"2537":1,"2635":1,"2701":1,"2740":1,"2871":3,"2872":4,"2873":5,"2876":1}}],["connection|",{"2":{"663":1}}],["connectionstring",{"2":{"1792":4,"2254":1,"2714":1}}],["connectionstrings",{"2":{"150":1,"693":1,"695":1,"937":1,"1173":1,"1176":1,"1177":1,"1606":2,"1607":1,"1613":2,"1614":1,"1615":1,"1627":1,"1629":1,"1631":1,"1633":1,"1771":1,"1792":9,"1837":2,"2063":1,"2094":1,"2098":2,"2111":1,"2256":3,"2266":2,"2532":2,"2533":1,"2534":2,"2537":1,"2686":1,"2687":1,"2689":1,"2690":2,"2691":1,"2699":1,"2701":1,"2718":1,"2823":2,"2824":2,"2825":1,"2871":1,"2872":1,"2873":1}}],["connectionsettings",{"2":{"1152":2,"1174":1,"1176":1,"1177":1,"1617":2,"1622":1,"1625":1,"1628":1,"1629":1,"1633":1,"1792":1,"1848":1,"2256":2,"2266":1,"2486":1,"2701":1}}],["connections",{"0":{"1173":1,"1331":1,"1614":1,"1632":1,"2362":1},"2":{"151":2,"153":1,"576":1,"669":1,"818":1,"845":1,"986":1,"1014":1,"1015":1,"1037":1,"1101":1,"1151":1,"1152":1,"1155":1,"1169":2,"1174":2,"1176":2,"1178":2,"1180":2,"1250":1,"1303":1,"1305":1,"1323":1,"1325":3,"1329":1,"1349":3,"1466":1,"1536":1,"1594":1,"1601":1,"1613":1,"1614":1,"1616":2,"1619":1,"1621":1,"1624":1,"1626":1,"1627":1,"1630":1,"1631":1,"1700":1,"1749":1,"1792":5,"1812":1,"1837":1,"1865":1,"1991":3,"1997":1,"2091":1,"2111":1,"2149":1,"2221":2,"2266":3,"2362":1,"2407":1,"2533":1,"2615":1,"2701":1,"2706":1,"2876":1}}],["connection",{"0":{"144":1,"147":1,"693":1,"1102":1,"1152":1,"1329":1,"1528":1,"1593":1,"1612":1,"1613":1,"1616":1,"1617":1,"1619":1,"1621":1,"1626":1,"1627":1,"1630":1,"1631":1,"1771":1,"1837":1,"1850":1,"1990":1,"2063":1,"2266":1,"2382":1,"2393":1,"2486":1,"2533":1},"1":{"145":1,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"694":1,"695":1,"696":1,"697":1,"1613":1,"1614":2,"1615":2,"1616":2,"1617":1,"1618":2,"1619":2,"1620":2,"1621":2,"1622":1,"1623":1,"1624":1,"1625":1,"1626":1,"1627":2,"1628":2,"1629":2,"1630":1,"1631":2,"1632":2,"1633":1,"1634":1,"1635":1,"1636":1,"1851":1,"1852":1,"1991":1},"2":{"144":2,"145":4,"147":1,"148":1,"149":1,"150":2,"151":1,"153":1,"159":3,"236":2,"239":2,"424":2,"436":1,"438":1,"447":1,"529":1,"576":2,"650":2,"666":1,"668":1,"669":4,"693":4,"694":2,"695":1,"696":4,"705":2,"706":1,"707":2,"711":1,"714":2,"715":1,"716":2,"717":2,"807":1,"876":1,"922":1,"926":1,"937":1,"948":1,"967":1,"1014":2,"1037":1,"1067":2,"1070":3,"1076":2,"1078":3,"1079":1,"1086":1,"1101":4,"1102":2,"1104":1,"1105":2,"1107":1,"1117":3,"1137":1,"1141":2,"1150":1,"1151":1,"1152":6,"1153":1,"1155":1,"1169":1,"1172":1,"1173":1,"1174":2,"1175":1,"1176":11,"1177":1,"1179":3,"1180":1,"1181":5,"1182":4,"1217":1,"1224":1,"1250":1,"1276":1,"1281":1,"1303":2,"1305":1,"1309":2,"1317":1,"1320":2,"1325":4,"1326":2,"1328":4,"1329":3,"1331":1,"1337":2,"1342":1,"1349":1,"1363":2,"1385":1,"1394":1,"1398":2,"1441":2,"1466":1,"1500":2,"1511":1,"1514":1,"1522":2,"1528":1,"1536":1,"1593":3,"1601":2,"1608":1,"1611":2,"1612":4,"1613":2,"1615":1,"1616":9,"1617":1,"1618":5,"1619":1,"1620":2,"1621":2,"1622":1,"1623":1,"1624":10,"1627":1,"1628":2,"1630":1,"1631":1,"1632":4,"1633":1,"1634":2,"1636":2,"1700":1,"1746":1,"1749":1,"1753":1,"1764":2,"1771":2,"1783":2,"1787":2,"1792":57,"1794":2,"1812":1,"1818":1,"1837":1,"1844":1,"1850":1,"1851":2,"1865":1,"1874":1,"1920":1,"1925":1,"1928":1,"1957":1,"1982":1,"1984":1,"1990":1,"1997":1,"2047":2,"2071":2,"2091":1,"2094":1,"2098":4,"2099":1,"2109":1,"2110":2,"2111":2,"2114":1,"2121":2,"2137":1,"2156":1,"2167":2,"2221":1,"2226":1,"2239":1,"2247":3,"2256":10,"2266":10,"2284":1,"2307":2,"2347":1,"2364":1,"2379":1,"2380":1,"2382":2,"2393":1,"2459":4,"2463":1,"2466":2,"2486":1,"2517":1,"2526":1,"2527":4,"2530":3,"2531":2,"2532":2,"2533":6,"2534":3,"2537":2,"2542":1,"2545":1,"2549":1,"2559":1,"2575":1,"2591":1,"2635":2,"2669":1,"2686":1,"2691":1,"2699":1,"2701":1,"2706":1,"2717":1,"2718":2,"2721":1,"2739":1,"2763":1,"2802":1,"2807":2,"2809":1,"2810":1,"2813":1,"2819":1,"2823":5,"2824":2,"2825":3,"2828":1,"2830":1,"2834":1,"2862":4,"2866":1,"2869":2,"2870":2,"2871":3,"2872":1,"2873":1,"2874":2,"2875":1,"2876":1,"2882":1}}],["connectretry=3",{"2":{"1067":1,"1510":1,"1514":1,"1792":1}}],["connecttimeout=10000",{"2":{"1067":1,"1510":1,"1514":1,"1792":1}}],["connects",{"2":{"832":1,"937":1,"1086":1,"1173":1,"1177":1,"1203":2,"2672":1,"2709":1,"2828":1,"2876":1}}],["connect",{"0":{"2718":1},"2":{"576":1,"650":1,"664":1,"1107":1,"1184":1,"1202":1,"1207":1,"1318":1,"1320":2,"1373":1,"1406":1,"1595":1,"1624":2,"1792":2,"2020":1,"2029":1,"2834":1}}],["concat",{"2":{"2614":1,"2622":2}}],["concatenate",{"2":{"2265":1}}],["concatenated",{"2":{"488":1,"494":2,"528":1,"2712":1}}],["concatenation",{"2":{"528":1}}],["concludes",{"2":{"1134":1}}],["concluded",{"2":{"1075":1}}],["conclusion",{"0":{"838":1,"910":1,"920":1,"946":1,"971":1,"1005":1,"1036":1,"1064":1,"1127":1,"1208":1,"1253":1,"1280":1,"1327":1},"1":{"911":1,"1065":1,"1281":1},"2":{"847":1,"1075":1,"1254":1,"1405":1}}],["concrete",{"2":{"873":1,"926":1}}],["concentrated",{"2":{"2419":1}}],["concentrates",{"2":{"874":1}}],["concession",{"2":{"859":1,"861":1}}],["conceded",{"2":{"856":1,"864":1}}],["concedes",{"2":{"855":1,"864":1}}],["concern",{"2":{"868":1,"869":2,"1303":1,"1420":1}}],["concerned",{"2":{"849":1}}],["concerns",{"2":{"837":1,"869":1,"873":1,"874":1,"876":1,"1015":1,"1385":1,"1420":1}}],["concepts",{"2":{"843":1,"1084":1,"2160":1,"2482":1}}],["concept",{"2":{"841":3,"848":1,"864":1,"918":1}}],["conceptual",{"2":{"841":1,"2170":1,"2759":1,"2806":1,"2827":1}}],["concurrency",{"0":{"862":1,"1161":1,"1263":1,"1954":1},"1":{"863":1,"864":1,"865":1},"2":{"480":1,"841":1,"844":1,"854":1,"855":1,"864":1,"865":1,"868":2,"1101":1,"1161":4,"1163":2,"1169":2,"1170":1,"1179":2,"1254":1,"1255":1,"1258":1,"1266":1,"1267":1,"1280":1,"1285":1,"1324":1,"1792":4,"1950":1,"1954":4,"1960":2,"2088":1,"2089":1,"2257":4,"2258":1,"2398":1,"2442":1,"2443":1,"2498":1,"2551":2,"2789":1}}],["concurrentdictionary",{"2":{"2462":1}}],["concurrently",{"2":{"351":3,"993":1,"1105":1,"1161":1,"1792":1,"2094":1,"2099":1,"2546":1,"2766":1}}],["concurrent",{"0":{"1090":1},"2":{"214":1,"844":1,"864":2,"919":1,"1007":1,"1090":1,"1147":2,"1164":1,"1165":1,"1167":1,"1168":2,"1169":2,"1171":1,"1263":1,"1430":1,"1447":1,"1515":1,"1743":1,"1792":3,"1950":1,"1954":2,"2274":1,"2459":1,"2461":1,"2462":1,"2463":2,"2464":1,"2465":2,"2466":3,"2498":2,"2502":1,"2534":1,"2537":1,"2765":1}}],["conveyance",{"2":{"1792":1}}],["convenient",{"2":{"1382":1}}],["convenience",{"2":{"975":1,"1382":1,"2779":1}}],["conventionally",{"2":{"2461":1}}],["conventional",{"2":{"871":1,"872":3,"874":1,"875":1,"876":1,"1409":1,"2481":1}}],["convention",{"0":{"1480":1,"1481":1},"2":{"448":1,"976":1,"1792":2,"2193":2,"2438":1,"2451":1,"2537":1,"2689":1}}],["conventions",{"0":{"379":1,"1688":1},"2":{"245":1,"259":1,"374":1,"410":1,"1060":1,"1480":1,"1686":2,"1787":1,"1794":1,"2197":1,"2333":1,"2438":1,"2538":1,"2581":1,"2848":1}}],["converse",{"2":{"1792":1}}],["conversions",{"2":{"968":1}}],["conversion",{"0":{"2397":1},"1":{"2398":1},"2":{"370":1,"379":1,"2226":1,"2270":2,"2333":1,"2397":1,"2452":1}}],["converter",{"2":{"2327":1,"2540":1,"2546":1,"2723":1,"2845":1}}],["convertedname",{"2":{"1523":1,"2372":1}}],["converted",{"0":{"814":1},"2":{"74":2,"75":1,"258":1,"299":1,"384":1,"388":1,"407":1,"528":1,"529":1,"809":1,"814":1,"818":1,"995":1,"1481":1,"1567":1,"1792":2,"1856":2,"2221":1,"2222":1,"2224":1,"2277":1,"2284":1,"2454":1,"2455":1,"2518":3,"2519":1,"2523":1,"2575":1,"2588":1,"2723":1,"2842":1}}],["converts",{"2":{"786":1,"2451":2,"2724":1}}],["convert",{"2":{"263":3,"768":1,"891":1,"952":1,"1792":2,"1841":2,"1930":1,"2128":1,"2344":2,"2451":1}}],["conditions",{"0":{"1440":1},"2":{"639":1,"1089":1,"1180":1,"1181":1,"1440":1,"1441":1,"1442":1,"1519":1,"1792":1,"2380":1,"2576":1}}],["condition",{"0":{"1524":1},"2":{"230":1,"1101":1,"1121":1,"1386":1,"1402":1,"1523":1,"2363":1,"2380":2,"2597":1}}],["conditionals",{"2":{"2621":1}}],["conditionally",{"2":{"176":1,"181":1}}],["conditional",{"0":{"175":1,"291":1,"1067":1},"2":{"101":1,"104":1,"123":1,"177":1,"868":1,"971":1,"1037":1,"1101":3,"1121":1,"1127":1,"1150":1,"1385":1,"1394":1,"1521":1,"1792":1,"2380":1}}],["confusing",{"2":{"2242":1}}],["confused",{"0":{"395":1},"2":{"387":1}}],["conformance",{"2":{"2492":1}}],["conform",{"2":{"1824":1,"2481":1}}],["conf",{"2":{"967":1,"1118":1,"1792":3,"2049":2,"2635":3}}],["confession",{"2":{"854":1}}],["conference",{"2":{"851":1}}],["confidence",{"2":{"1336":1,"1339":7}}],["confidently",{"2":{"947":1}}],["confirmation",{"2":{"1220":1,"1870":1}}],["confirmed",{"2":{"852":1,"1386":1}}],["confirms",{"2":{"841":1}}],["confirm",{"2":{"565":3,"2320":2,"2357":1,"2774":1}}],["config=",{"2":{"2872":1}}],["config=timeout",{"2":{"2678":1,"2695":1,"2700":1}}],["configtests",{"2":{"2417":1,"2447":1,"2448":1,"2472":1}}],["configvalidationtests",{"2":{"2417":1,"2447":1,"2448":1,"2472":1}}],["configvalid",{"2":{"2415":3}}],["configdefaults",{"2":{"2409":1,"2440":1,"2448":1,"2666":2}}],["config`",{"2":{"1792":2}}],["configs",{"2":{"1157":1,"1792":1,"1840":1,"1908":1,"1911":1,"1958":1,"2426":1,"2470":1,"2477":1,"2482":1}}],["config",{"0":{"349":1,"354":1,"1603":1,"2414":1,"2425":1,"2431":1,"2434":1,"2577":1,"2662":1,"2670":1,"2673":1,"2677":1,"2678":1,"2705":1},"1":{"1604":1,"1605":1,"1606":1,"1607":1,"1608":1,"1609":1,"1610":1,"1611":1,"2415":1,"2416":1,"2426":1,"2427":1,"2428":1,"2429":1},"2":{"67":1,"96":1,"115":2,"118":1,"219":1,"278":1,"300":1,"304":1,"305":2,"306":1,"349":2,"356":1,"395":2,"432":1,"457":1,"499":1,"542":4,"583":1,"584":2,"586":1,"682":1,"695":1,"705":1,"710":3,"739":1,"822":1,"826":3,"827":1,"849":1,"867":1,"868":4,"869":10,"889":1,"958":1,"976":1,"1044":1,"1049":1,"1059":1,"1070":4,"1071":1,"1074":1,"1079":1,"1080":2,"1086":1,"1101":1,"1102":7,"1125":1,"1135":3,"1138":1,"1141":2,"1181":7,"1197":1,"1199":1,"1207":2,"1281":2,"1343":2,"1350":1,"1356":1,"1367":1,"1372":4,"1378":1,"1379":1,"1382":1,"1394":1,"1395":2,"1417":2,"1418":5,"1420":2,"1449":1,"1464":1,"1532":2,"1582":1,"1603":2,"1604":1,"1605":1,"1608":1,"1609":2,"1787":1,"1788":1,"1792":4,"1794":1,"1813":1,"1849":1,"1850":2,"1851":1,"1852":3,"1908":1,"1911":1,"1948":1,"1961":1,"2040":1,"2092":4,"2096":1,"2097":1,"2110":1,"2111":1,"2120":1,"2155":4,"2156":1,"2181":2,"2205":1,"2223":1,"2224":1,"2225":2,"2231":2,"2272":2,"2336":1,"2337":3,"2338":3,"2352":1,"2364":1,"2376":1,"2378":1,"2382":2,"2383":4,"2389":3,"2409":1,"2412":1,"2414":3,"2415":3,"2416":3,"2417":1,"2419":2,"2425":1,"2428":2,"2429":1,"2430":2,"2434":2,"2440":1,"2441":1,"2448":1,"2457":1,"2468":1,"2472":1,"2476":1,"2477":1,"2481":2,"2484":1,"2486":1,"2497":2,"2498":1,"2522":2,"2526":1,"2534":1,"2537":7,"2539":1,"2542":1,"2543":1,"2545":1,"2546":2,"2558":3,"2577":1,"2611":1,"2659":2,"2660":2,"2662":3,"2666":1,"2670":2,"2673":2,"2677":2,"2678":3,"2679":8,"2682":3,"2688":1,"2689":1,"2693":2,"2694":5,"2695":5,"2696":1,"2700":3,"2701":1,"2705":2,"2719":1,"2734":1,"2736":1,"2739":1,"2747":1,"2754":1,"2757":1,"2785":1,"2847":1,"2852":1,"2855":2,"2857":1,"2858":1,"2861":1,"2872":2,"2877":2,"2878":2,"2880":3}}],["configuring",{"0":{"1166":1},"2":{"296":1,"1825":1}}],["configurability",{"2":{"1111":1}}],["configurable",{"0":{"2273":1},"2":{"33":1,"210":1,"213":1,"300":1,"309":1,"448":1,"480":1,"567":1,"700":1,"739":1,"1097":1,"1098":2,"1100":1,"1101":4,"1105":2,"1106":1,"1109":1,"1111":5,"1127":1,"1250":1,"1255":2,"1341":1,"1386":2,"1739":1,"1802":1,"1926":1,"1928":2,"2014":1,"2264":1,"2265":1,"2266":1,"2287":1,"2320":1,"2372":1,"2392":1,"2424":1,"2438":1,"2500":1,"2530":1,"2536":1,"2549":3,"2632":3,"2763":1,"2795":1,"2810":1,"2842":1,"2866":1}}],["configurations",{"0":{"1578":1,"1710":1,"1777":1,"2026":1,"2065":1},"1":{"1579":1,"1580":1,"1581":1,"1582":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1778":1,"1779":1,"1780":1,"1781":1,"2027":1,"2028":1,"2029":1,"2066":1,"2067":1,"2068":1,"2069":1},"2":{"1588":1,"2413":1,"2420":1,"2423":1}}],["configuration",{"0":{"121":1,"226":1,"227":1,"279":1,"336":1,"430":1,"455":1,"470":1,"556":1,"577":1,"889":1,"937":1,"962":1,"967":1,"998":1,"1022":1,"1034":1,"1062":1,"1112":1,"1114":1,"1168":1,"1177":1,"1196":1,"1198":1,"1217":1,"1223":1,"1240":1,"1340":1,"1416":1,"1494":1,"1497":1,"1534":1,"1555":1,"1560":1,"1598":1,"1609":1,"1625":1,"1646":1,"1678":1,"1735":1,"1758":1,"1773":1,"1778":1,"1785":1,"1792":1,"1859":1,"1889":1,"1892":1,"1893":1,"1944":1,"1979":1,"1984":1,"1985":1,"2042":1,"2089":1,"2118":1,"2148":1,"2203":1,"2272":1,"2279":1,"2308":1,"2330":1,"2349":1,"2350":1,"2406":1,"2436":1,"2486":1,"2537":1,"2551":1,"2594":1,"2659":1,"2661":1,"2677":1,"2678":1,"2680":1,"2681":1,"2683":1,"2684":1,"2685":1,"2686":1,"2693":1,"2694":1,"2696":1,"2697":1,"2700":1,"2701":1,"2703":1,"2719":1,"2754":1,"2769":1,"2814":1,"2825":1,"2835":1,"2841":1},"1":{"963":1,"964":1,"1063":1,"1113":1,"1114":1,"1115":1,"1199":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1786":1,"1787":1,"1788":1,"1789":1,"1790":1,"1791":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1980":1,"1981":1,"1982":1,"1983":1,"1985":1,"1986":2,"1987":2,"1988":2,"1989":2,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1,"2204":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2595":1,"2596":1,"2681":1,"2682":1,"2683":1,"2684":2,"2685":2,"2686":2,"2687":1,"2688":1,"2689":1,"2690":1,"2691":1,"2692":1,"2693":1,"2694":2,"2695":2,"2696":2,"2697":1,"2698":1,"2699":1,"2700":1,"2701":1,"2702":1,"2703":1,"2704":1,"2705":1,"2706":1},"2":{"1":1,"11":4,"26":4,"42":3,"52":1,"53":3,"64":1,"65":3,"76":3,"89":3,"98":3,"101":1,"110":1,"111":1,"121":3,"122":3,"130":2,"134":1,"139":1,"140":1,"141":4,"150":2,"151":4,"154":1,"164":4,"170":1,"182":1,"189":1,"197":1,"198":3,"216":1,"217":2,"244":1,"259":3,"279":1,"293":4,"306":1,"307":1,"315":1,"327":1,"336":1,"345":2,"356":1,"367":3,"410":3,"417":1,"419":1,"430":2,"431":1,"436":1,"441":1,"443":1,"455":2,"456":1,"471":3,"473":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":3,"495":2,"505":3,"513":3,"525":3,"545":1,"547":3,"557":3,"567":1,"568":1,"570":1,"575":1,"577":2,"578":3,"588":1,"596":3,"605":2,"624":1,"626":1,"634":3,"647":3,"655":1,"670":3,"672":1,"673":2,"680":3,"697":1,"702":2,"704":1,"707":1,"712":1,"717":1,"718":2,"725":3,"740":3,"779":1,"790":3,"801":1,"804":3,"809":1,"816":1,"817":1,"820":3,"837":1,"867":1,"868":2,"873":1,"877":1,"902":1,"908":1,"914":1,"937":2,"976":1,"998":1,"1010":1,"1022":1,"1026":2,"1027":1,"1047":1,"1054":1,"1062":1,"1064":2,"1065":1,"1066":1,"1080":1,"1082":1,"1086":1,"1094":1,"1098":1,"1100":2,"1102":1,"1105":1,"1109":2,"1111":2,"1113":2,"1114":1,"1115":1,"1125":1,"1127":1,"1135":1,"1141":1,"1168":1,"1171":1,"1177":1,"1181":4,"1182":3,"1196":2,"1197":1,"1207":1,"1217":4,"1223":1,"1252":3,"1255":1,"1280":1,"1281":1,"1320":2,"1329":1,"1340":1,"1351":1,"1356":1,"1361":1,"1380":1,"1385":4,"1386":1,"1396":1,"1408":1,"1416":2,"1417":1,"1421":1,"1465":2,"1468":1,"1482":2,"1483":1,"1484":3,"1485":1,"1487":1,"1495":2,"1499":1,"1502":1,"1504":1,"1505":1,"1506":3,"1509":1,"1514":1,"1534":2,"1535":2,"1548":1,"1549":4,"1550":1,"1552":1,"1581":1,"1583":2,"1594":1,"1598":1,"1600":2,"1603":1,"1604":2,"1606":1,"1607":2,"1608":1,"1609":5,"1610":2,"1611":1,"1612":1,"1615":1,"1618":1,"1620":1,"1629":1,"1633":1,"1634":2,"1637":1,"1646":2,"1647":2,"1661":1,"1663":2,"1665":2,"1668":1,"1678":2,"1679":2,"1689":1,"1690":1,"1696":1,"1698":1,"1699":2,"1711":1,"1718":2,"1720":1,"1732":1,"1748":2,"1751":1,"1760":2,"1785":5,"1787":2,"1788":3,"1789":1,"1790":2,"1791":3,"1792":24,"1794":2,"1795":2,"1797":2,"1798":3,"1799":1,"1801":1,"1802":2,"1810":1,"1811":2,"1813":1,"1835":1,"1836":8,"1863":2,"1864":2,"1867":1,"1894":1,"1896":1,"1907":1,"1913":2,"1915":1,"1931":1,"1932":2,"1944":1,"1945":2,"1947":1,"1960":1,"1962":2,"1973":1,"1976":2,"1977":1,"1978":1,"1980":1,"1984":1,"1995":1,"1996":2,"1998":1,"2030":1,"2032":1,"2034":1,"2043":2,"2049":1,"2056":1,"2080":1,"2081":2,"2084":1,"2089":1,"2090":2,"2092":2,"2094":1,"2106":1,"2111":2,"2113":1,"2115":1,"2120":3,"2121":1,"2122":1,"2132":1,"2133":2,"2137":1,"2146":1,"2150":2,"2153":2,"2157":2,"2158":1,"2159":1,"2169":2,"2170":1,"2172":1,"2177":1,"2187":1,"2189":1,"2197":1,"2209":1,"2218":1,"2221":1,"2223":1,"2231":2,"2232":1,"2249":1,"2251":2,"2253":2,"2254":2,"2255":4,"2256":2,"2257":2,"2259":2,"2264":2,"2265":3,"2266":1,"2267":2,"2270":1,"2272":1,"2273":1,"2274":1,"2279":1,"2291":1,"2297":2,"2308":1,"2329":1,"2342":1,"2351":1,"2354":1,"2369":1,"2389":3,"2396":1,"2410":3,"2414":1,"2441":2,"2479":1,"2481":1,"2486":2,"2502":1,"2525":1,"2532":2,"2535":1,"2537":1,"2541":2,"2542":1,"2543":3,"2545":1,"2546":2,"2549":2,"2551":3,"2554":2,"2558":1,"2565":1,"2572":1,"2575":2,"2577":5,"2587":1,"2588":1,"2594":1,"2627":2,"2628":1,"2632":1,"2633":1,"2634":1,"2635":1,"2641":1,"2645":2,"2648":1,"2655":1,"2659":2,"2660":1,"2661":1,"2669":1,"2670":1,"2677":1,"2679":1,"2680":2,"2681":5,"2682":3,"2684":4,"2685":1,"2686":1,"2687":4,"2689":2,"2691":2,"2693":2,"2694":2,"2696":1,"2697":2,"2700":2,"2701":3,"2705":3,"2706":2,"2719":1,"2742":2,"2754":1,"2756":1,"2759":2,"2771":1,"2772":2,"2773":1,"2774":1,"2779":2,"2785":3,"2788":1,"2793":2,"2794":1,"2795":2,"2805":1,"2806":2,"2817":1,"2822":1,"2824":1,"2825":3,"2826":3,"2827":1,"2832":1,"2841":1,"2857":1,"2859":2,"2860":2,"2871":1,"2872":1,"2878":2,"2882":1}}],["configures",{"2":{"305":1,"868":1,"886":1,"1053":1,"1622":1,"1984":1,"2171":1}}],["configured",{"0":{"739":1},"2":{"25":1,"31":1,"41":1,"60":1,"63":3,"108":1,"134":1,"139":1,"214":1,"245":1,"299":1,"302":2,"305":1,"317":1,"347":1,"436":1,"447":1,"473":1,"480":1,"504":1,"524":2,"639":1,"656":1,"659":1,"662":1,"668":1,"734":1,"737":2,"745":1,"747":2,"762":1,"765":1,"772":1,"801":1,"818":1,"819":1,"835":1,"868":2,"905":1,"934":2,"1044":1,"1105":1,"1113":2,"1123":1,"1217":1,"1219":1,"1224":1,"1305":1,"1331":1,"1386":5,"1398":1,"1406":1,"1422":1,"1452":1,"1454":2,"1456":1,"1518":1,"1543":1,"1618":1,"1619":1,"1620":1,"1621":1,"1690":2,"1696":3,"1741":1,"1792":9,"1825":1,"1833":1,"1858":1,"1869":1,"1874":1,"1921":1,"1957":1,"1983":1,"2007":1,"2016":1,"2020":1,"2056":1,"2147":1,"2149":1,"2156":1,"2178":1,"2181":1,"2191":1,"2218":1,"2222":1,"2257":1,"2265":1,"2289":1,"2317":1,"2318":1,"2328":1,"2372":1,"2376":1,"2379":1,"2384":1,"2392":1,"2394":1,"2422":1,"2432":1,"2476":1,"2481":4,"2531":1,"2542":1,"2543":1,"2554":1,"2632":1,"2664":1,"2674":1,"2680":1,"2745":1,"2802":1,"2815":1,"2823":1,"2840":1,"2857":1}}],["configure",{"0":{"958":1,"1356":1,"2088":1,"2172":1},"1":{"2173":1,"2174":1,"2175":1},"2":{"11":2,"26":2,"28":2,"42":1,"53":1,"65":1,"67":1,"76":1,"89":1,"98":1,"100":1,"122":1,"124":1,"141":1,"151":1,"153":1,"164":4,"170":2,"191":1,"198":1,"200":1,"217":1,"219":1,"237":1,"259":1,"293":2,"295":2,"315":1,"367":1,"410":1,"432":1,"449":1,"457":1,"471":1,"481":1,"483":1,"505":1,"513":1,"525":1,"535":1,"545":1,"547":1,"557":1,"568":1,"580":1,"596":1,"634":1,"647":1,"670":1,"682":1,"727":1,"740":1,"742":1,"790":1,"793":1,"804":1,"806":1,"820":1,"822":1,"868":2,"879":1,"911":1,"958":1,"1031":1,"1052":1,"1056":1,"1086":1,"1123":1,"1155":1,"1176":1,"1199":1,"1240":1,"1252":1,"1281":1,"1385":2,"1386":2,"1434":1,"1465":2,"1466":5,"1484":2,"1485":4,"1496":2,"1502":1,"1506":1,"1507":3,"1536":2,"1538":1,"1549":1,"1550":3,"1584":3,"1601":2,"1628":1,"1635":1,"1648":2,"1656":1,"1657":1,"1666":2,"1672":1,"1680":2,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1700":3,"1718":1,"1719":1,"1749":2,"1761":2,"1784":1,"1792":12,"1802":1,"1812":2,"1825":1,"1830":1,"1857":1,"1865":4,"1895":2,"1899":1,"1914":2,"1918":1,"1927":1,"1933":2,"1934":1,"1946":2,"1963":2,"1981":1,"1985":1,"1990":1,"1992":1,"1993":1,"1997":1,"2013":1,"2031":2,"2044":2,"2070":2,"2071":1,"2082":2,"2091":2,"2115":1,"2135":2,"2148":1,"2151":2,"2170":1,"2171":1,"2180":1,"2190":1,"2219":3,"2254":1,"2257":1,"2549":1,"2628":1,"2632":1,"2702":1,"2706":3,"2757":1,"2773":1,"2793":1,"2826":2,"2869":1,"2870":1}}],["conflicting",{"2":{"2321":1}}],["conflicts",{"2":{"384":1,"576":1,"784":1,"1014":1,"2007":1,"2328":1,"2359":1}}],["conflict",{"2":{"184":2,"898":1,"1054":1,"1111":2,"1153":1,"1339":1,"1624":1,"1655":1,"1664":1,"1678":1,"1689":1,"2292":1,"2389":1,"2815":1}}],["consolidation",{"2":{"1205":1}}],["consoleminimumlevel",{"2":{"1792":1,"1800":1,"1803":2,"1810":1,"2804":2}}],["consoleconsolesqlfilesource",{"2":{"1386":1}}],["consoleconsole$",{"2":{"1080":2}}],["console",{"0":{"1803":1},"2":{"894":1,"1024":2,"1110":1,"1218":2,"1254":1,"1320":2,"1342":3,"1361":1,"1409":2,"1410":2,"1691":1,"1792":5,"1799":1,"1803":2,"2094":1,"2102":1,"2104":1,"2526":1,"2535":2,"2537":1,"2794":1,"2800":1,"2804":2,"2824":1,"2825":1,"2830":1,"2880":2}}],["consciousness",{"2":{"913":1}}],["consequence",{"2":{"2590":1}}],["consent",{"2":{"1825":1,"2869":1}}],["consensus",{"2":{"844":1}}],["conservative",{"2":{"872":1,"1181":1}}],["conservatively",{"2":{"869":1,"872":2}}],["consulting",{"2":{"1443":1,"2677":1,"2693":1,"2792":1}}],["consulted",{"2":{"480":1,"1961":1,"2438":1}}],["consumption",{"2":{"918":1,"1516":1,"2265":1,"2615":1,"2667":1}}],["consume",{"2":{"535":1,"559":1,"618":1,"625":1,"833":1,"916":1,"1183":1,"1328":1,"1413":1,"1792":1,"2102":1,"2342":1,"2389":1,"2817":1}}],["consumes",{"2":{"378":1,"1169":1,"1208":1,"1329":1,"1727":1,"1974":1,"2438":1,"2607":1,"2827":1}}],["consumed",{"2":{"300":1,"679":1,"720":1,"723":1,"1413":1,"2656":1}}],["consumers",{"2":{"1043":1,"1127":1,"1190":1,"1193":1,"2371":1,"2385":1,"2415":1}}],["consumer",{"2":{"182":1,"837":1,"872":1,"875":1,"916":1,"1100":1,"1203":1,"1228":1,"1409":1,"1410":1,"1415":1,"1664":1,"1792":1,"1878":1,"2291":1,"2393":1}}],["consuming",{"2":{"206":1,"917":1,"1014":1,"1183":1,"2771":1}}],["consts",{"2":{"2399":1}}],["constrained",{"2":{"1944":1,"1974":1,"2607":1}}],["constraint",{"2":{"845":1,"864":2,"992":2,"1041":1,"2167":1,"2545":1,"2868":1}}],["constraints",{"0":{"992":1,"1594":1,"2868":1},"2":{"845":2,"852":2,"865":3,"876":1,"986":1,"992":5,"1005":2,"1075":2,"1079":3,"1082":1,"1107":1,"1155":1,"1792":1,"2670":1,"2741":2,"2868":4,"2869":1}}],["constructs",{"2":{"1394":4}}],["constructor",{"2":{"916":1,"1026":2,"1573":1}}],["construct",{"2":{"849":1,"1572":1,"2586":1,"2712":1}}],["constructed",{"2":{"652":1,"1792":2,"2677":1}}],["construction",{"0":{"652":1},"1":{"653":1,"654":1},"2":{"696":1,"864":1,"873":1,"875":1,"1410":1,"2476":1,"2621":2,"2712":1}}],["const",{"2":{"429":1,"723":1,"894":3,"938":1,"961":4,"995":3,"996":10,"1024":2,"1026":16,"1063":3,"1107":4,"1218":3,"1317":2,"1318":3,"1320":10,"1321":1,"1326":3,"1335":9,"1342":3,"1361":2,"1366":1,"1386":1,"1408":2,"1409":2,"1410":3,"1413":1,"1416":2,"1431":3,"1567":1,"1568":1,"1569":1,"1571":1,"1572":2,"1573":1,"1574":3,"1575":1,"2247":2,"2310":1,"2313":1,"2648":1,"2655":1,"2830":2,"2836":2}}],["constants",{"0":{"1572":1,"2399":1},"2":{"1416":1,"1563":1,"1581":2,"1792":1}}],["constant",{"0":{"953":1},"2":{"214":1,"720":2,"872":1,"928":1,"929":1,"947":1,"957":1,"961":1,"968":1,"971":1,"1037":1,"1099":1,"1255":1,"1415":1,"1560":1,"1574":1,"1792":1,"2182":1,"2502":1,"2655":1,"2656":2}}],["constantly",{"2":{"106":1}}],["considered",{"2":{"2540":1}}],["considers",{"2":{"1823":1}}],["consideriation",{"2":{"919":1}}],["considerable",{"2":{"849":1,"1403":1}}],["consideration",{"2":{"307":1,"1792":4,"1942":1,"2177":1,"2634":2,"2635":2}}],["considerations",{"0":{"88":1,"1124":1,"1204":1,"1242":1,"1717":1},"1":{"1125":1,"1126":1,"1243":1,"1244":1,"1245":1},"2":{"1169":1,"1974":1,"2607":1}}],["consider",{"2":{"747":1,"845":1,"918":1,"982":1,"1035":1,"1181":1,"1204":1,"1205":1,"1206":2,"1448":1,"1792":1,"2088":1,"2588":1,"2697":1}}],["consistent",{"0":{"2271":1},"2":{"388":1,"863":2,"974":1,"995":1,"1190":1,"1193":4,"1407":1,"1410":1,"1567":1,"2271":1,"2314":1,"2332":1,"2493":1,"2520":1,"2638":1}}],["consistently",{"2":{"74":1,"974":1,"1923":1,"2222":1,"2271":1,"2508":1,"2513":1}}],["consistency",{"2":{"375":1,"844":1,"863":2,"864":1,"865":1,"871":2,"1193":2,"2267":1,"2279":1,"2440":1,"2486":1,"2558":1,"2581":1}}],["continuously",{"2":{"1080":1}}],["continue",{"0":{"1271":1},"2":{"851":1,"1150":1,"1386":1,"1520":1,"1792":3,"2007":1,"2297":1,"2330":1,"2380":1,"2384":1,"2389":1,"2435":1,"2444":1,"2513":1,"2615":1,"2840":1}}],["continues",{"2":{"301":2,"706":1,"973":1,"994":1,"1254":1,"1280":1,"1609":1,"2193":1,"2328":1,"2375":1,"2414":1,"2423":1,"2437":1,"2581":1,"2615":1,"2659":1,"2841":1}}],["contiguous",{"2":{"845":1}}],["contact",{"2":{"333":5}}],["containerport",{"2":{"1773":1}}],["container",{"2":{"1076":1,"1108":1,"1343":2,"1438":1,"1654":1,"1715":1,"1762":1,"1768":1,"1774":1,"1792":2,"2450":1,"2452":1,"2550":1,"2634":3,"2717":2,"2791":1,"2875":2}}],["containers",{"2":{"994":1,"1075":2,"1119":1,"1255":1,"1773":1,"2804":1}}],["contained",{"2":{"832":2,"1086":1,"1343":1,"2608":1,"2709":1,"2711":1,"2792":1,"2881":1}}],["contain",{"2":{"334":1,"395":1,"458":1,"528":1,"979":1,"980":1,"986":1,"988":1,"990":1,"1232":1,"1233":1,"1238":1,"1733":1,"1792":6,"1974":1,"2052":1,"2187":1,"2264":1,"2445":1,"2589":1,"2603":2,"2607":1,"2635":1}}],["containskey",{"2":{"2614":1}}],["contains",{"0":{"2495":1},"2":{"309":1,"314":1,"319":1,"388":1,"706":1,"762":1,"772":1,"782":1,"784":1,"786":1,"903":2,"924":1,"932":1,"1105":1,"1236":1,"1429":1,"1630":1,"1792":8,"1847":1,"1974":1,"2181":1,"2187":1,"2194":1,"2223":1,"2256":3,"2264":1,"2442":1,"2495":1,"2537":1,"2607":1,"2611":1,"2721":1,"2760":1,"2822":1,"2869":1}}],["containing",{"2":{"245":1,"880":1,"1052":1,"1235":1,"1394":1,"1406":1,"1472":1,"1489":1,"1651":1,"1655":1,"1661":1,"1792":4,"2004":1,"2197":1,"2397":1,"2586":1,"2611":2,"2772":1,"2774":1,"2841":1}}],["contends",{"2":{"2869":1}}],["contention",{"2":{"1155":1,"1324":1,"1325":1}}],["contentsecuritypolicy",{"2":{"1792":1,"2015":1,"2016":1,"2020":1,"2028":1,"2029":1,"2632":1}}],["contents",{"2":{"1054":1,"1202":1,"1366":4}}],["contenttype",{"2":{"748":1,"762":2,"763":1,"772":2,"773":2,"883":1,"887":1,"893":2,"894":1,"903":2,"1357":2,"1359":1,"1360":1,"1364":1,"1366":3,"1410":1,"1792":1,"2093":1,"2109":1,"2537":1}}],["content",{"0":{"539":1,"2017":1,"2020":1,"2037":1,"2038":1,"2495":1},"1":{"2038":1,"2039":1,"2040":1,"2041":1},"2":{"21":2,"73":2,"128":2,"188":1,"207":1,"208":1,"209":1,"210":3,"214":1,"227":1,"308":1,"386":4,"387":1,"392":2,"396":1,"415":1,"428":1,"439":1,"447":3,"489":1,"490":1,"492":2,"493":4,"494":2,"496":1,"521":1,"539":3,"540":1,"543":2,"544":3,"545":1,"546":2,"551":3,"554":1,"586":1,"587":1,"616":2,"691":2,"695":1,"700":2,"705":1,"747":1,"782":4,"784":5,"786":2,"823":1,"826":1,"829":1,"880":1,"915":1,"977":2,"980":3,"982":2,"985":4,"990":5,"992":1,"995":6,"996":5,"1030":1,"1031":3,"1078":1,"1079":1,"1100":2,"1105":6,"1107":1,"1189":4,"1340":1,"1341":3,"1355":2,"1357":1,"1362":3,"1363":1,"1366":2,"1373":4,"1384":1,"1386":3,"1408":4,"1410":2,"1412":2,"1416":2,"1432":1,"1452":1,"1456":1,"1471":1,"1493":1,"1567":1,"1643":1,"1646":1,"1655":1,"1674":1,"1721":1,"1722":3,"1725":1,"1730":1,"1732":3,"1736":1,"1743":1,"1754":1,"1792":25,"1824":2,"1855":2,"1916":3,"1917":2,"1918":3,"1921":1,"1922":3,"1924":1,"1931":2,"1940":1,"1943":1,"2016":2,"2017":1,"2020":2,"2021":1,"2032":1,"2034":1,"2038":3,"2040":2,"2041":1,"2042":1,"2075":2,"2093":1,"2109":2,"2110":1,"2125":1,"2126":2,"2127":2,"2193":1,"2202":1,"2207":2,"2223":1,"2224":1,"2247":1,"2255":4,"2264":6,"2296":1,"2303":1,"2337":1,"2338":1,"2339":1,"2360":1,"2381":1,"2474":1,"2476":1,"2477":1,"2481":1,"2493":1,"2495":2,"2502":1,"2506":1,"2512":1,"2529":2,"2530":4,"2531":1,"2537":1,"2549":7,"2566":1,"2580":1,"2589":1,"2596":2,"2626":1,"2627":1,"2632":8,"2726":2,"2763":2,"2769":2,"2810":2,"2814":3,"2823":1,"2824":1,"2853":1,"2859":1,"2865":2,"2866":2,"2868":3,"2869":1,"2873":1}}],["contemplated",{"2":{"1403":1}}],["contexts",{"2":{"2190":1,"2794":1}}],["contextkeyclaimsmapping",{"0":{"1476":1},"2":{"306":2,"453":1,"737":1,"1058":1,"1062":1,"1469":1,"1475":1,"1483":1,"1539":1,"1540":1,"1541":1,"1542":1,"1548":1,"1792":2,"1926":1,"2184":2,"2549":1,"2812":1}}],["context",{"0":{"236":1,"453":1,"502":1,"728":1,"732":1,"738":1,"739":1,"752":1,"766":1,"800":1,"803":1,"1058":1,"1348":1,"1475":1,"1540":2,"1541":1,"1542":1,"1926":1,"2184":1,"2481":1,"2572":1},"1":{"729":1,"730":1,"731":1,"732":1,"733":1,"734":1,"735":1,"736":1,"737":1,"738":1,"739":1,"740":1,"741":1,"742":1,"1476":1,"1541":2,"1542":2,"1543":2},"2":{"223":1,"236":2,"306":5,"315":1,"316":2,"317":1,"453":4,"456":2,"499":2,"502":2,"504":1,"638":1,"641":1,"645":1,"728":1,"729":2,"730":1,"732":1,"733":5,"734":1,"735":1,"736":4,"737":3,"738":1,"739":1,"740":1,"741":2,"742":1,"752":3,"766":2,"800":1,"803":1,"805":2,"841":1,"863":1,"871":1,"907":1,"1037":1,"1038":1,"1039":1,"1058":1,"1064":1,"1070":1,"1098":2,"1102":2,"1105":1,"1169":1,"1170":1,"1181":1,"1192":1,"1193":1,"1214":2,"1215":5,"1216":2,"1220":1,"1221":1,"1222":1,"1232":2,"1233":1,"1236":2,"1237":1,"1238":1,"1239":3,"1240":1,"1314":1,"1348":2,"1366":2,"1475":8,"1483":1,"1484":1,"1485":1,"1506":1,"1507":1,"1528":1,"1538":1,"1540":8,"1542":1,"1548":1,"1549":2,"1551":2,"1788":1,"1789":1,"1792":32,"1802":2,"1806":1,"1813":2,"1823":1,"1848":2,"1849":3,"1850":2,"1882":1,"1886":1,"1887":1,"1888":1,"1926":5,"1928":2,"1932":2,"2089":1,"2124":2,"2166":1,"2170":1,"2184":4,"2185":2,"2188":1,"2189":2,"2258":1,"2336":1,"2383":2,"2421":1,"2423":2,"2479":1,"2481":1,"2527":1,"2549":8,"2572":2,"2591":1,"2614":1,"2734":1,"2803":1,"2806":1,"2812":1,"2817":1,"2828":1,"2831":1,"2847":1}}],["contribute",{"2":{"2531":1,"2776":1}}],["controllable",{"2":{"2425":1}}],["controlling",{"2":{"1637":1}}],["controller",{"2":{"869":1,"871":2,"873":2,"876":1,"1006":2,"1008":1,"1027":1,"1037":1,"1181":1,"1382":1,"1405":6,"1406":1}}],["controllers",{"2":{"867":1,"869":1,"873":1,"1026":1,"1401":1,"1409":1,"1435":1}}],["controlled",{"2":{"64":1,"334":1,"837":1,"843":3,"877":1,"1086":1,"1113":1,"1127":1,"1160":1,"1185":1,"1253":1,"1405":1,"1743":1,"2040":1,"2072":1,"2389":1,"2544":1,"2650":1,"2659":1,"2688":1}}],["controls",{"2":{"33":1,"39":1,"87":1,"197":1,"300":1,"301":1,"320":2,"324":1,"335":1,"337":1,"458":1,"957":1,"1037":1,"1108":1,"1185":1,"1199":1,"1228":1,"1229":1,"1230":1,"1311":1,"1358":1,"1513":1,"1603":1,"1617":1,"1645":1,"1792":8,"1878":1,"1879":1,"1880":1,"2004":1,"2005":1,"2007":1,"2010":1,"2011":1,"2016":4,"2018":1,"2019":1,"2021":1,"2023":1,"2209":1,"2323":1,"2354":1,"2406":1,"2430":1,"2481":2,"2535":1,"2628":2,"2632":9,"2705":1,"2802":1}}],["control",{"0":{"542":1,"622":1,"1048":1,"1057":1,"1203":1,"1244":1,"1249":1,"1411":1,"2654":1},"1":{"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":1,"1055":1,"1056":1,"1057":1,"1058":2,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1,"1412":1,"1413":1,"1414":1,"1415":1,"2655":1,"2656":1},"2":{"33":1,"41":1,"77":1,"142":1,"160":1,"161":1,"163":1,"167":1,"226":1,"260":1,"297":2,"300":1,"307":1,"308":1,"385":1,"472":1,"497":1,"515":1,"540":1,"542":1,"543":1,"544":1,"545":3,"546":1,"549":1,"617":1,"624":1,"625":1,"636":1,"673":1,"681":1,"718":1,"726":1,"756":1,"780":1,"792":1,"876":1,"907":1,"911":1,"933":1,"963":2,"994":1,"1037":1,"1048":2,"1064":2,"1088":1,"1094":1,"1096":1,"1098":2,"1107":1,"1108":1,"1137":1,"1138":5,"1139":2,"1140":1,"1143":1,"1174":1,"1176":1,"1184":1,"1203":1,"1211":1,"1244":1,"1247":1,"1304":1,"1323":1,"1327":1,"1354":1,"1362":2,"1363":1,"1385":1,"1404":1,"1406":1,"1583":1,"1585":1,"1630":1,"1649":1,"1688":1,"1792":3,"1840":1,"1860":1,"1864":1,"1868":2,"1908":1,"1947":1,"1973":1,"2033":1,"2037":1,"2041":1,"2164":1,"2177":1,"2191":1,"2198":1,"2202":1,"2203":1,"2207":2,"2225":1,"2233":1,"2322":1,"2342":1,"2359":1,"2490":1,"2505":1,"2527":1,"2551":1,"2628":1,"2629":1,"2654":1,"2726":1,"2775":2,"2841":1,"2851":1,"2862":1,"2867":1}}],["contracts",{"2":{"1005":1,"1193":1,"1382":1,"1405":2,"1435":1,"1443":1}}],["contract",{"0":{"978":1,"983":1},"1":{"979":1,"980":1},"2":{"1":1,"304":1,"835":2,"836":1,"854":1,"873":1,"974":1,"975":1,"978":1,"983":4,"1000":1,"1020":1,"1039":1,"1096":1,"1382":1,"1405":1,"1435":3,"1437":1,"2498":1,"2504":1,"2533":1}}],["p99",{"2":{"2398":2}}],["p2`",{"2":{"1792":1}}],["p2",{"2":{"1521":1,"2380":2,"2494":1}}],["p1",{"2":{"1521":1,"1792":1,"2380":2,"2494":1}}],["pfx",{"0":{"1986":1},"2":{"1199":2,"1207":1,"1651":1,"1661":2,"1792":3,"1984":1,"1986":1,"1989":1,"1995":1,"2297":1,"2565":2}}],["pformat=pdf",{"2":{"423":2,"2304":2}}],["pt404",{"2":{"1111":1}}],["pt",{"2":{"1111":1,"1333":2}}],["p0004",{"2":{"1071":1,"1669":1,"1673":1,"1674":1,"1678":1,"1792":1,"2255":4,"2384":1,"2528":1,"2864":1}}],["p0001",{"2":{"1071":1,"1669":1,"1673":1,"1674":1,"1678":1,"1792":1,"2255":5,"2384":1}}],["p>your",{"2":{"2039":1}}],["p>welcome",{"2":{"2039":1}}],["p>`",{"2":{"996":2,"1409":1}}],["p>error",{"2":{"996":2,"1409":1}}],["p>",{"2":{"996":1,"2039":2}}],["p>$",{"2":{"996":1}}],["pw",{"2":{"949":2}}],["psql",{"2":{"907":1,"1080":1,"1407":1,"1442":1,"1792":1,"2156":1,"2528":1,"2531":4,"2542":1,"2545":1,"2546":1,"2742":1,"2863":1,"2869":1,"2874":2,"2878":1}}],["pytest",{"2":{"876":1,"1076":1}}],["pythonpython",{"2":{"1366":1}}],["python",{"0":{"909":1,"1271":1},"2":{"866":1,"867":1,"869":3,"873":1,"876":1,"1037":1,"1106":1,"1255":2,"1335":1,"1366":1,"1423":1,"1972":1,"2874":1}}],["py",{"2":{"869":1,"2874":1}}],["pydantic",{"2":{"869":1}}],["pp",{"2":{"852":1}}],["pem",{"0":{"1987":1},"2":{"1792":1,"1987":1}}],["peak",{"2":{"969":1,"1277":1,"1278":2,"2466":1}}],["penalty",{"2":{"1166":1}}],["pentaho",{"0":{"908":1}}],["pending",{"2":{"844":1,"849":4,"860":1,"2168":1}}],["peek",{"2":{"844":1}}],["people",{"2":{"843":1,"844":1,"849":2,"860":1,"861":1,"877":1,"1075":1,"1076":1,"1393":1,"1401":1,"1402":2,"1403":2,"1404":1}}],["perl",{"2":{"1972":1}}],["pertesttimeout",{"0":{"2101":1},"2":{"1792":1,"2093":1,"2094":1,"2537":1}}],["perceived",{"2":{"1704":1}}],["percentage",{"2":{"2094":1}}],["percent",{"2":{"894":2,"1401":2,"1410":2,"1925":2,"2397":1,"2517":2}}],["permanent",{"2":{"1792":1,"2109":1,"2110":1,"2530":1,"2537":1,"2866":1}}],["permanently",{"2":{"1664":1,"2297":1}}],["permission",{"0":{"2755":1},"2":{"1792":1,"2016":1,"2024":1,"2608":2,"2632":1}}],["permissionspolicy",{"2":{"1792":1,"2015":1,"2016":1,"2021":2,"2029":1,"2632":1}}],["permissions",{"0":{"2021":1},"2":{"868":1,"926":1,"941":1,"943":1,"945":1,"1100":1,"1674":1,"1771":1,"1792":2,"2021":1,"2258":1,"2632":3,"2876":1}}],["permissive",{"2":{"1428":1,"1824":1}}],["permitlimt",{"2":{"2444":1}}],["permitlimit",{"2":{"476":1,"478":1,"479":1,"1069":2,"1158":1,"1159":1,"1161":1,"1162":2,"1177":1,"1245":1,"1792":5,"1893":1,"1951":2,"1952":2,"1954":2,"1955":2,"1958":1,"1959":1,"1960":4,"2061":1,"2257":3,"2378":2,"2379":2,"2441":1,"2443":3,"2470":1,"2471":1,"2551":1}}],["permits",{"2":{"1951":1,"1952":1}}],["permitted",{"2":{"1225":1,"1464":1,"1642":1,"1643":1,"1792":2,"1875":1,"2376":1}}],["peripherals",{"2":{"1044":4}}],["periodic",{"2":{"2532":1}}],["periodically",{"2":{"531":1,"2438":1}}],["periodseconds",{"2":{"1773":2}}],["periods",{"2":{"845":1,"863":1,"864":4,"1171":1}}],["period",{"2":{"843":1,"851":1,"864":1,"926":1,"1179":1,"1259":1,"1403":1,"1775":1,"1953":1,"1983":1,"2385":1}}],["perhaps",{"2":{"847":1,"851":1,"974":1,"1140":1}}],["person",{"2":{"1401":1,"1792":1}}],["personal",{"2":{"1210":2,"1251":2,"1384":1,"2052":1,"2798":1}}],["personally",{"2":{"845":1,"859":1,"912":1,"1073":1,"1384":1}}],["personalized",{"2":{"732":1,"1094":1}}],["persists",{"2":{"989":1}}],["persistent",{"2":{"848":1,"1303":1,"1458":1,"2296":1,"2375":1,"2757":1}}],["persistence",{"2":{"840":1,"845":2,"849":4,"851":1,"1146":1,"1303":1,"1325":1,"1664":1}}],["persisted",{"2":{"844":1,"851":1,"1792":1,"2297":2}}],["persist",{"2":{"841":1,"849":1,"921":1,"985":1,"1054":1,"1653":1,"1654":1,"1792":1}}],["perf",{"2":{"1255":12,"1284":1,"1285":5,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"2398":1}}],["perfectly",{"2":{"843":1,"860":1,"1385":1,"1394":1,"1400":1,"1402":1}}],["perfect",{"2":{"694":1,"913":1,"959":1,"1079":1,"1082":1,"1312":1,"1399":1,"2156":1,"2167":1,"2542":1,"2740":1}}],["performer",{"2":{"1266":1}}],["performers",{"0":{"1264":1}}],["performed",{"2":{"807":1,"1423":1,"1609":1,"2137":1,"2575":1}}],["performant",{"2":{"1065":1}}],["performance",{"0":{"88":1,"231":1,"874":1,"1007":1,"1014":1,"1089":1,"1101":1,"1135":1,"1265":1,"1270":1,"1363":1,"1439":1,"1790":1,"1797":1,"2270":1,"2309":1,"2396":1,"2559":1,"2604":1,"2614":1,"2743":1},"1":{"1090":1,"1091":1,"1092":1,"1136":1,"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1151":1,"1152":1,"1153":1,"1154":1,"1155":1,"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1164":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"1172":1,"1173":1,"1174":1,"1175":1,"1176":1,"1177":1,"1178":1,"1179":1,"1180":1,"1181":1,"1182":1,"2397":1,"2398":1,"2399":1,"2400":1,"2744":1,"2745":1,"2746":1,"2747":1},"2":{"87":1,"88":2,"258":1,"803":1,"856":1,"859":2,"868":1,"872":2,"874":2,"919":1,"920":1,"946":1,"947":1,"966":1,"974":1,"1011":1,"1037":4,"1083":1,"1084":2,"1091":1,"1096":1,"1100":1,"1101":1,"1121":1,"1127":1,"1130":1,"1132":1,"1135":1,"1164":1,"1170":1,"1182":1,"1254":4,"1255":1,"1258":1,"1264":1,"1265":1,"1266":2,"1268":1,"1272":1,"1275":1,"1278":1,"1280":3,"1281":2,"1283":1,"1382":2,"1398":1,"1399":2,"1439":1,"1440":1,"1441":1,"1442":1,"1511":1,"1516":1,"1746":1,"1792":17,"1974":1,"2084":1,"2236":1,"2257":4,"2265":2,"2270":1,"2277":1,"2347":1,"2576":1,"2607":1,"2635":3,"2701":1,"2776":2,"2789":1,"2790":1}}],["performs",{"2":{"414":1,"851":1,"981":1,"1243":1,"1266":1,"1271":1,"1792":1,"2300":1,"2759":1,"2760":1,"2807":1}}],["perform",{"2":{"288":1,"387":1,"621":1,"664":1,"851":1,"922":1,"994":1,"1106":1,"1130":1,"1272":1,"2343":1,"2834":3}}],["per",{"0":{"479":1,"1066":1,"1069":1,"1090":1,"1162":1,"1411":1,"1415":1,"1459":1,"1577":1,"1955":1,"1958":1,"2056":1,"2079":1,"2379":1,"2427":1,"2432":1,"2462":1,"2470":1,"2504":1,"2533":1,"2653":1,"2654":1,"2870":1,"2872":1,"2873":1},"1":{"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1412":1,"1413":1,"1414":1,"1415":1,"1956":1,"1957":1,"1959":1,"2655":1,"2656":1},"2":{"88":1,"101":2,"106":1,"110":1,"160":1,"161":1,"163":1,"175":1,"214":5,"215":1,"347":1,"388":1,"390":2,"436":1,"453":1,"470":1,"479":3,"480":4,"531":1,"534":2,"556":1,"614":1,"616":1,"636":1,"650":1,"663":1,"666":1,"669":1,"694":1,"696":1,"715":1,"716":2,"763":1,"773":1,"778":1,"780":1,"819":1,"835":6,"837":1,"857":2,"860":3,"861":3,"863":1,"865":1,"866":1,"868":4,"869":5,"871":1,"872":2,"873":3,"874":2,"887":2,"903":1,"905":1,"907":1,"911":1,"916":1,"917":2,"919":4,"947":1,"951":1,"964":1,"969":1,"1007":1,"1037":4,"1043":1,"1066":1,"1068":2,"1069":7,"1070":1,"1075":1,"1079":1,"1082":2,"1098":1,"1101":9,"1102":3,"1104":1,"1105":3,"1107":1,"1109":6,"1111":2,"1113":1,"1121":1,"1127":4,"1129":1,"1150":2,"1154":1,"1158":1,"1160":2,"1162":6,"1169":1,"1177":1,"1181":2,"1182":4,"1255":1,"1259":1,"1277":1,"1283":1,"1285":1,"1305":2,"1309":1,"1316":1,"1326":2,"1340":1,"1349":1,"1359":1,"1385":1,"1394":1,"1406":3,"1407":2,"1414":3,"1416":1,"1429":1,"1430":1,"1458":2,"1459":1,"1460":2,"1486":1,"1506":3,"1508":3,"1519":2,"1521":1,"1529":1,"1535":1,"1540":1,"1544":1,"1549":2,"1554":1,"1579":1,"1581":1,"1583":1,"1585":1,"1602":1,"1608":1,"1618":1,"1620":1,"1634":1,"1636":1,"1672":1,"1679":1,"1681":1,"1722":1,"1738":2,"1743":2,"1746":1,"1756":1,"1758":1,"1788":1,"1792":27,"1795":1,"1802":1,"1822":1,"1824":2,"1825":1,"1827":1,"1837":1,"1843":1,"1855":1,"1858":1,"1860":2,"1861":1,"1908":1,"1910":1,"1911":2,"1913":1,"1928":1,"1951":5,"1952":5,"1953":5,"1954":4,"1955":2,"1959":2,"1960":1,"1973":1,"1974":2,"1977":1,"2000":1,"2008":1,"2009":1,"2010":1,"2040":3,"2047":1,"2056":1,"2079":1,"2081":1,"2094":3,"2101":1,"2109":1,"2151":1,"2166":1,"2167":4,"2192":1,"2221":3,"2222":2,"2223":2,"2224":2,"2225":2,"2233":1,"2252":1,"2255":1,"2266":2,"2270":1,"2272":1,"2306":1,"2320":1,"2330":2,"2339":2,"2347":1,"2357":1,"2359":1,"2364":2,"2366":5,"2372":4,"2375":5,"2379":2,"2380":1,"2389":2,"2392":1,"2393":1,"2397":4,"2410":1,"2413":2,"2417":1,"2419":1,"2421":2,"2422":1,"2426":1,"2430":1,"2433":1,"2434":1,"2435":3,"2438":6,"2442":1,"2443":1,"2463":2,"2465":2,"2466":3,"2468":1,"2471":2,"2472":1,"2474":2,"2476":1,"2477":1,"2481":3,"2482":1,"2483":1,"2490":3,"2496":1,"2498":2,"2502":5,"2504":6,"2512":1,"2522":1,"2526":1,"2528":1,"2529":1,"2532":1,"2533":2,"2534":2,"2535":3,"2536":2,"2537":3,"2540":1,"2545":4,"2546":1,"2549":1,"2587":1,"2596":1,"2604":1,"2607":2,"2622":3,"2653":1,"2654":1,"2674":1,"2728":1,"2729":1,"2731":1,"2740":1,"2744":1,"2745":2,"2747":1,"2756":1,"2762":1,"2765":2,"2767":1,"2768":1,"2804":1,"2808":1,"2812":1,"2814":1,"2828":3,"2833":1,"2835":1,"2844":1,"2850":1,"2858":1,"2864":1,"2865":1,"2866":1,"2867":1,"2869":1,"2873":1,"2880":2,"2881":1}}],["phantom",{"2":{"2391":1}}],["phase",{"2":{"1259":1,"1324":1,"1802":1,"2007":1,"2751":1,"2795":1,"2799":1}}],["phished",{"2":{"1867":1}}],["phishing",{"2":{"1792":1,"1866":1,"2625":1}}],["phish",{"2":{"1209":1}}],["philosophies",{"2":{"849":1,"1075":1}}],["philosophy",{"0":{"1403":1},"2":{"832":1,"838":1,"859":1,"1037":1,"1383":1,"1385":1,"1402":1,"1403":3,"2388":1}}],["php",{"0":{"1262":1,"1274":1},"2":{"1007":1,"1090":1,"1091":2,"1255":1,"1257":2,"1262":1,"1264":2,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1277":1,"1278":1,"1279":2,"1280":1,"1281":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1}}],["phrase",{"2":{"872":1}}],["physical",{"2":{"841":5,"845":1,"848":3,"1079":1,"1403":1,"2099":1,"2527":2,"2862":2}}],["physically",{"2":{"841":1,"848":1}}],["phone",{"2":{"333":2,"817":4,"888":3,"1193":1,"1232":1,"1792":3,"1882":1,"2144":2,"2146":2,"2148":2,"2446":1,"2575":2}}],["photographed",{"2":{"852":1}}],["photograph",{"2":{"852":1}}],["photo",{"2":{"157":2,"1359":2}}],["png",{"2":{"747":1,"1099":1,"1412":1,"1792":1,"2123":1,"2125":1}}],["pgdev",{"2":{"2667":1}}],["pgdatabase=example",{"2":{"1608":1,"2272":1}}],["pgdatabase",{"2":{"937":1,"1607":1,"1615":1,"1633":2,"1792":1}}],["pgtupletojsonobject",{"2":{"2397":2}}],["pgtap",{"2":{"860":1,"867":1,"1094":1,"2535":1}}],["pgcompositearraytojsonarray",{"2":{"2397":2,"2402":1,"2604":1}}],["pgconverters",{"2":{"2372":1,"2621":1}}],["pgcrypto",{"2":{"182":1,"308":2,"924":2,"1048":1,"1049":3,"1098":2,"1100":1,"2177":2,"2291":1}}],["pgunknowntojsonarray",{"2":{"2270":1,"2397":1}}],["pguser=postgres",{"2":{"1608":1,"2272":1}}],["pguser",{"2":{"1607":1,"1615":1,"1633":2,"1792":1}}],["pgarraytojsonarray",{"2":{"2270":1,"2397":3}}],["pgpassword=postgres",{"2":{"1608":1,"2272":1}}],["pgpassword",{"2":{"1607":1,"1615":1,"1633":2,"1792":1}}],["pgport=5432",{"2":{"1608":1,"2272":1}}],["pgport",{"2":{"937":1,"1607":1,"1615":1,"1633":2}}],["pgx",{"2":{"1255":1}}],["pgbouncer",{"0":{"1066":1,"1070":1},"1":{"1067":1,"1068":1,"1069":1,"1070":1,"1071":1},"2":{"1037":2,"1066":1,"1070":1,"1101":1,"1102":2,"1121":1,"1528":1,"1792":1,"1851":1,"2382":1}}],["pghost=localhost",{"2":{"1608":1}}],["pghost",{"2":{"937":1,"1607":1,"1615":1,"1633":2,"1792":1,"2534":3}}],["pgmigrations",{"2":{"926":1}}],["pgsql",{"2":{"868":1,"874":1,"876":4,"1012":1,"1096":1,"1106":1,"1378":1,"1394":4,"1972":1,"2255":2,"2802":1}}],["pg",{"2":{"531":1,"584":1,"621":1,"874":1,"876":1,"907":1,"933":2,"934":2,"935":2,"936":2,"949":2,"966":4,"967":2,"1055":2,"1056":4,"1057":3,"1058":7,"1060":1,"1104":3,"1105":2,"1106":1,"1107":2,"1108":5,"1126":1,"1174":1,"1176":2,"1184":2,"1185":2,"1188":2,"1192":2,"1281":1,"1325":1,"1333":1,"1353":1,"1365":1,"1527":1,"1619":1,"1620":1,"1792":14,"1839":1,"1974":2,"2045":4,"2049":2,"2050":1,"2051":1,"2052":1,"2111":3,"2324":2,"2337":1,"2343":1,"2532":2,"2534":1,"2607":3,"2635":13,"2710":1,"2751":1,"2758":1,"2795":1,"2799":1,"2803":1,"2854":1,"2875":4}}],["pdfs",{"2":{"1104":1}}],["pdf",{"0":{"426":1},"2":{"392":1,"414":1,"415":1,"426":6,"1105":2,"1107":5,"1360":2,"1396":1,"2132":1,"2300":1,"2303":1}}],["pbkdf2",{"2":{"307":1,"309":1,"363":1,"366":1,"1049":3,"1098":2,"2177":1}}],["pi",{"2":{"2576":1,"2779":1,"2783":1,"2790":1}}],["pixelratio",{"2":{"1792":1}}],["pissed",{"2":{"1403":1}}],["pii",{"2":{"1100":1,"1664":1,"2291":1}}],["pinning",{"2":{"2437":1}}],["pinned",{"2":{"214":1,"946":1,"1743":1,"2502":1}}],["pings",{"2":{"1337":1}}],["ping",{"2":{"1320":1,"1399":1,"1569":2,"1824":1,"2481":1}}],["pin",{"2":{"1209":1,"1210":1,"1217":1,"1220":1,"1221":1,"1222":1,"1228":2,"1792":4,"1867":1,"1878":2,"2459":1}}],["pins",{"2":{"1098":1,"1792":1,"1866":1,"2625":1}}],["pile",{"2":{"849":1,"1324":1}}],["pitch",{"2":{"848":1,"876":1,"1037":1,"1381":1}}],["pitfall",{"2":{"650":1}}],["pieces",{"2":{"861":1,"1048":1,"2170":1,"2419":1,"2836":1,"2871":1}}],["piece",{"2":{"831":1,"852":2,"916":1,"1133":1}}],["piped",{"2":{"2535":1,"2667":1,"2673":1,"2678":1,"2679":1,"2694":1,"2785":1,"2880":1}}],["pipewriter",{"0":{"2400":1},"2":{"949":1,"2372":1}}],["pipe",{"0":{"491":1,"603":1},"2":{"603":1}}],["pipelines",{"2":{"1013":1,"1108":1,"1203":1,"1208":1}}],["pipeline",{"0":{"426":1,"1407":1},"2":{"696":1,"867":1,"868":2,"869":1,"872":1,"878":1,"1009":1,"1041":1,"1044":1,"1045":1,"1078":1,"1094":1,"1105":1,"1126":1,"1398":1,"1422":1,"1460":1,"1703":1,"1792":1,"1824":1,"2092":1,"2157":1,"2375":1,"2481":1,"2527":1,"2543":1,"2545":1,"2576":1,"2615":1,"2627":1,"2633":1,"2739":1,"2860":1}}],["picked",{"0":{"2799":1},"2":{"1401":1,"2476":1,"2529":1}}],["picker",{"2":{"1229":1,"1792":1,"1879":1}}],["picks",{"2":{"1183":1,"1352":1,"1418":1,"1792":1,"2178":1,"2385":1,"2421":1,"2443":1}}],["pick",{"2":{"307":1,"534":1,"833":1,"1135":1,"1385":1,"2533":1,"2537":1,"2833":1}}],["picture",{"0":{"2171":1},"2":{"296":1,"854":1,"863":1,"864":1,"865":1,"872":1,"2170":1,"2750":1}}],["pid=1",{"2":{"2555":1}}],["pid=123",{"2":{"423":2,"2304":2}}],["pid",{"2":{"258":1,"1575":2,"2277":2,"2543":1,"2555":1}}],["popups",{"2":{"1792":2,"2016":1,"2023":3,"2632":3}}],["popular",{"2":{"1147":1,"1682":1}}],["population",{"2":{"1399":1,"2435":1}}],["populating",{"2":{"992":1,"2868":1}}],["populate",{"2":{"851":1,"1733":1,"2264":1}}],["populated",{"2":{"210":1,"454":1,"1015":1,"1016":1,"1023":1,"1105":1,"1188":1,"1359":1,"1398":1,"1723":1,"1732":1,"1827":1,"2264":1,"2760":2}}],["populates",{"2":{"202":1,"452":1,"1016":1,"1023":1,"1355":1,"1723":1,"2264":1,"2463":1}}],["pong",{"2":{"1320":1,"1399":1}}],["poison",{"2":{"1067":1,"2402":1}}],["pointer",{"2":{"2399":1}}],["pointed",{"2":{"868":1,"1443":1}}],["point",{"0":{"2027":1},"2":{"650":1,"663":1,"669":1,"694":1,"836":1,"844":1,"847":1,"848":1,"849":1,"851":1,"856":1,"861":1,"867":1,"876":1,"956":1,"976":1,"1008":1,"1047":1,"1074":1,"1172":1,"1205":1,"1208":1,"1209":1,"1252":2,"1303":1,"1305":1,"1381":1,"1382":1,"1385":1,"1396":1,"1398":2,"1399":1,"1403":2,"1429":1,"1431":1,"1439":1,"1574":1,"1792":2,"1825":1,"1868":1,"2098":1,"2450":1,"2577":1,"2717":1,"2760":1,"2828":1,"2861":1}}],["points",{"0":{"2482":1},"2":{"280":1,"937":1,"996":1,"1055":1,"1169":1,"1231":1,"1654":1,"1670":1,"1792":1,"1881":1,"2223":1,"2255":1,"2479":1,"2481":1,"2533":1,"2534":1,"2740":1,"2828":1}}],["pointing",{"2":{"264":1,"1176":1,"1205":1,"1676":1,"2328":1}}],["potentially",{"2":{"1147":1,"2615":1}}],["potential",{"2":{"1008":1,"1281":1,"1401":1,"1825":1,"2265":1,"2576":1}}],["poolers",{"2":{"1102":1,"1792":1,"1851":1,"2382":1}}],["pooler",{"0":{"1070":1,"1102":1,"1528":1,"1850":1,"2382":1},"1":{"1851":1,"1852":1},"2":{"1066":1,"1070":4,"1101":1,"1102":3,"1121":2,"1398":1,"1528":2,"1792":2,"1850":1,"1851":2,"2382":2}}],["pooled",{"2":{"694":1,"716":1,"1079":1,"1792":4,"2099":1,"2156":1,"2221":1,"2380":1,"2527":1,"2542":1,"2862":1}}],["pooling=true",{"2":{"1177":2,"1633":2}}],["pooling",{"0":{"1522":1},"2":{"1007":1,"1014":1,"1067":1,"1101":1,"1102":1,"1150":1,"1276":2,"1616":2,"2236":1,"2614":1}}],["pool",{"0":{"1164":1,"1170":1,"1329":1,"2084":1},"1":{"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"2085":1,"2086":1,"2087":1,"2088":1,"2089":1,"2090":1,"2091":1},"2":{"948":1,"1037":1,"1067":1,"1070":2,"1102":2,"1137":1,"1141":1,"1164":2,"1165":3,"1166":2,"1167":1,"1169":1,"1177":2,"1180":1,"1181":1,"1182":2,"1281":1,"1328":2,"1329":2,"1337":1,"1349":1,"1363":2,"1398":1,"1616":4,"1633":2,"1790":2,"1792":5,"1797":2,"1851":2,"2084":1,"2086":2,"2088":3,"2089":1,"2382":2,"2397":1,"2402":2,"2459":2,"2614":1}}],["poetic",{"2":{"913":1}}],["powershell",{"2":{"2781":1}}],["powershellpowershell",{"2":{"2781":1}}],["powers",{"2":{"1664":1}}],["powerquerypowerquerylet",{"2":{"1202":1}}],["powered",{"2":{"1099":1,"1100":1}}],["power",{"0":{"885":1,"1201":1,"1203":1,"1405":1},"1":{"1202":1,"1203":1,"1204":1,"1205":1},"2":{"871":1,"1037":2,"1183":1,"1184":2,"1202":1,"1207":1,"1247":1,"1385":1,"1405":2}}],["powerful",{"2":{"859":1,"913":1,"916":1,"1076":1,"1385":1}}],["poller",{"2":{"2546":1}}],["polled",{"2":{"1080":1}}],["polls",{"2":{"2156":1,"2542":1,"2878":1}}],["poll",{"2":{"1792":2,"2154":1,"2156":1,"2542":1}}],["polly",{"2":{"1181":1,"2289":1}}],["polling",{"0":{"2542":1},"2":{"868":1,"1035":1,"1036":1,"1082":1,"2106":1,"2154":1,"2155":1,"2156":2,"2157":4,"2541":1,"2542":1,"2543":3,"2546":1}}],["polp",{"0":{"922":1,"2876":1},"2":{"922":1,"926":1,"932":1,"941":1,"1185":2}}],["polish",{"2":{"2438":1}}],["political",{"2":{"913":1,"919":2}}],["policies",{"0":{"235":1,"1163":1,"1673":1,"2022":1,"2378":1,"2441":1},"1":{"1674":1,"2023":1,"2024":1,"2025":1,"2442":1,"2443":1,"2444":1},"2":{"198":1,"200":1,"476":1,"477":1,"478":1,"479":1,"480":2,"481":1,"483":1,"835":1,"1069":3,"1084":1,"1098":2,"1109":3,"1111":6,"1114":1,"1127":1,"1150":1,"1157":2,"1158":1,"1159":1,"1160":1,"1161":1,"1162":2,"1163":1,"1177":1,"1181":1,"1182":1,"1230":1,"1245":1,"1519":1,"1670":1,"1673":1,"1790":1,"1792":5,"1797":1,"1880":1,"1893":1,"1947":1,"1948":2,"1949":2,"1951":1,"1952":1,"1953":1,"1954":1,"1955":2,"1957":1,"1958":1,"1960":2,"1961":1,"1962":1,"2047":1,"2061":1,"2070":1,"2225":1,"2255":1,"2257":3,"2378":3,"2379":3,"2380":1,"2440":1,"2441":2,"2442":1,"2443":1,"2444":1,"2447":1,"2470":3,"2634":1,"2635":1,"2747":1}}],["policyscheme",{"2":{"2422":1}}],["policy",{"0":{"192":1,"195":1,"473":1,"476":1,"477":1,"1950":1,"1951":1,"1952":1,"1953":1,"1954":1,"1958":1,"1959":1,"2019":1,"2020":1,"2021":1,"2023":1,"2024":1,"2025":1,"2379":1,"2470":1,"2471":1},"1":{"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"482":1,"483":1,"1959":1},"2":{"192":2,"193":3,"195":1,"196":1,"197":1,"235":4,"473":4,"474":3,"476":1,"479":1,"480":6,"579":1,"835":3,"868":4,"869":1,"873":1,"1067":1,"1069":2,"1100":3,"1101":3,"1111":4,"1113":2,"1114":1,"1156":1,"1157":1,"1158":1,"1161":2,"1162":1,"1163":3,"1179":2,"1181":1,"1182":1,"1217":1,"1224":1,"1244":1,"1402":1,"1493":1,"1645":1,"1670":3,"1679":2,"1681":2,"1792":35,"1822":4,"1824":1,"1874":1,"1947":1,"1948":2,"1949":4,"1950":1,"1951":6,"1952":4,"1953":4,"1954":4,"1955":1,"1957":2,"1958":5,"1959":2,"1961":4,"1962":1,"1964":1,"2020":2,"2021":1,"2047":2,"2061":1,"2218":2,"2224":2,"2225":2,"2253":1,"2255":10,"2257":10,"2378":2,"2379":3,"2421":1,"2422":2,"2423":1,"2425":1,"2435":2,"2442":1,"2443":1,"2444":3,"2468":3,"2470":5,"2471":1,"2472":4,"2481":1,"2632":13,"2634":3,"2635":2,"2747":1}}],["portion",{"2":{"2453":1}}],["porting",{"2":{"852":1}}],["ports",{"2":{"1773":1}}],["portal",{"2":{"1694":1,"1792":1}}],["portability",{"2":{"860":1}}],["portable",{"2":{"859":2,"860":1,"876":1}}],["port=54329",{"2":{"2875":1}}],["port=5432",{"2":{"1613":1,"1792":1,"2718":1,"2823":2,"2824":3,"2825":2}}],["port=",{"2":{"937":1,"1607":1,"1615":1,"1633":2}}],["ported",{"2":{"852":1}}],["port",{"0":{"1167":1,"2087":1},"2":{"852":3,"1167":2,"1335":3,"1616":2,"1773":2,"1792":4,"2019":1,"2086":2,"2087":1,"2157":2,"2161":1,"2543":2,"2788":1}}],["poke",{"2":{"843":1}}],["pods",{"2":{"1774":1}}],["pod",{"2":{"390":2,"1427":1,"1767":1,"1768":1,"1792":2,"2040":2,"2224":1,"2450":1,"2474":1,"2476":1,"2483":1,"2634":2}}],["possession",{"2":{"1228":1,"1792":2,"1878":1}}],["possibly",{"2":{"1133":1}}],["possible",{"2":{"984":1,"1071":1,"1102":1,"1254":2,"1396":1,"1400":1,"1401":1,"1792":7,"2112":1,"2438":1,"2833":1}}],["position",{"0":{"1390":1},"2":{"310":1,"448":1,"772":1,"859":1,"1101":1,"1175":1,"1378":1,"1390":3,"1792":1,"1922":1,"2005":1,"2006":1,"2284":1,"2323":1,"2328":1,"2505":1,"2530":1,"2537":1}}],["positionally",{"2":{"2340":1,"2734":1}}],["positional",{"0":{"372":1,"614":1,"2337":1,"2340":1,"2731":1,"2846":1,"2852":1},"2":{"165":1,"310":1,"369":1,"372":1,"376":2,"377":1,"382":1,"384":1,"385":1,"529":1,"560":2,"581":1,"587":1,"614":1,"615":1,"619":2,"1142":1,"1378":1,"1379":1,"1386":2,"1392":1,"1396":1,"1792":5,"2284":1,"2320":1,"2321":1,"2323":3,"2332":1,"2333":1,"2334":1,"2337":1,"2339":1,"2340":1,"2343":1,"2540":5,"2731":1,"2733":1,"2803":1,"2844":1,"2845":1,"2846":2,"2848":1,"2852":1,"2854":1}}],["posting",{"2":{"1792":1}}],["posture",{"2":{"1382":1,"2427":1,"2438":1,"2486":1}}],["postmapping",{"2":{"1366":1}}],["postgraphile",{"2":{"2744":1}}],["postgrrest",{"2":{"1385":8}}],["postgresnoticelevels",{"2":{"2251":2}}],["postgresminimumlevel",{"2":{"1792":1,"1800":1,"1805":2,"1810":1,"2803":2,"2804":2}}],["postgrescommand",{"2":{"1792":1,"1800":1,"1805":2,"1806":1,"1810":1,"2803":1,"2804":1}}],["postgres",{"2":{"848":1,"851":1,"918":1,"1071":1,"1255":1,"1370":1,"1382":1,"1464":1,"1792":6,"2111":2,"2161":2,"2376":1,"2377":1,"2451":1,"2452":1,"2459":1,"2465":1,"2532":2,"2534":1,"2850":1,"2875":3}}],["postgrest",{"0":{"1083":1,"1087":1,"1106":1,"1114":1,"1118":1,"1122":1,"1125":1,"2713":1},"1":{"1084":1,"1085":1,"1086":1,"1087":1,"1088":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1094":1,"1095":1,"1096":1,"1097":1,"1098":1,"1099":1,"1100":1,"1101":1,"1102":1,"1103":1,"1104":1,"1105":1,"1106":1,"1107":1,"1108":1,"1109":1,"1110":1,"1111":1,"1112":1,"1113":1,"1114":1,"1115":1,"1116":1,"1117":1,"1118":1,"1119":1,"1120":1,"1121":1,"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1},"2":{"831":1,"1037":2,"1083":2,"1084":2,"1087":1,"1088":2,"1090":3,"1091":2,"1092":1,"1094":3,"1095":2,"1096":3,"1097":4,"1098":6,"1099":3,"1100":6,"1101":4,"1102":5,"1103":1,"1104":2,"1106":6,"1107":1,"1108":2,"1109":1,"1110":1,"1111":5,"1113":1,"1114":1,"1118":8,"1119":1,"1121":1,"1122":3,"1125":1,"1126":1,"1127":6,"1255":1,"1257":1,"1265":1,"1266":1,"1267":1,"1269":2,"1270":1,"1279":1,"1281":2,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1382":1,"1383":1,"1894":1,"2713":1,"2744":1}}],["postgresqlerrorcodetohttpstatuscodemapping",{"2":{"2255":2}}],["postgresql",{"0":{"611":1,"878":1,"912":1,"921":1,"947":1,"972":1,"974":1,"982":1,"987":1,"1010":1,"1012":1,"1038":1,"1092":1,"1128":1,"1155":1,"1183":1,"1254":1,"1302":1,"1304":1,"1324":1,"1328":1,"1336":1,"1352":1,"1423":1,"1435":1,"1540":1,"1543":1,"1805":1,"1806":1,"1972":1,"2045":1,"2184":1,"2635":1,"2710":1,"2775":1,"2802":1,"2803":1,"2822":1},"1":{"879":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1,"913":1,"914":1,"915":1,"916":1,"917":1,"918":1,"919":1,"920":1,"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"948":1,"949":1,"950":1,"951":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1,"973":1,"974":1,"975":1,"976":1,"977":1,"978":1,"979":1,"980":1,"981":1,"982":1,"983":1,"984":1,"985":1,"986":1,"987":1,"988":2,"989":2,"990":2,"991":2,"992":2,"993":2,"994":2,"995":1,"996":1,"997":1,"998":1,"999":1,"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1005":1,"1006":1,"1007":1,"1008":1,"1009":1,"1011":1,"1012":1,"1013":2,"1014":2,"1015":2,"1016":1,"1017":1,"1018":1,"1019":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1,"1129":1,"1130":1,"1131":1,"1132":1,"1133":1,"1134":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1,"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"1263":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":1,"1275":1,"1276":1,"1277":1,"1278":1,"1279":1,"1280":1,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1301":1,"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1308":1,"1309":1,"1310":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":2,"1326":1,"1327":1,"1329":1,"1330":1,"1331":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1341":1,"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1,"1424":1,"1425":1,"1426":1,"1427":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"1434":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1,"1541":1,"1542":1,"1543":1,"1806":1,"2046":1,"2047":1,"2048":1,"2049":1,"2050":1,"2051":1,"2052":1,"2053":1,"2054":1,"2055":1,"2056":1,"2057":1,"2058":1,"2059":1,"2060":1,"2061":1,"2062":1,"2063":1,"2064":1,"2065":1,"2066":1,"2067":1,"2068":1,"2069":1,"2070":1,"2071":1},"2":{"1":1,"29":1,"108":1,"165":1,"166":1,"175":2,"182":1,"184":1,"187":1,"188":1,"197":1,"201":1,"202":1,"216":1,"218":1,"220":1,"237":1,"241":1,"258":1,"299":1,"307":1,"308":1,"316":1,"327":1,"370":1,"372":1,"377":1,"382":1,"383":2,"384":1,"388":2,"407":1,"408":3,"409":1,"412":1,"414":3,"415":1,"426":1,"428":1,"429":1,"435":1,"439":2,"447":1,"453":1,"458":1,"497":1,"499":1,"528":1,"575":2,"576":1,"581":1,"582":3,"585":1,"587":2,"627":1,"629":1,"646":1,"668":1,"684":2,"728":1,"737":2,"746":3,"748":1,"749":1,"752":1,"759":1,"768":1,"769":1,"776":1,"782":1,"801":1,"803":1,"805":1,"809":1,"818":1,"831":1,"834":1,"836":2,"837":2,"838":1,"839":1,"845":1,"848":6,"866":1,"868":1,"869":1,"871":1,"874":2,"875":2,"876":3,"878":1,"902":1,"903":2,"907":1,"909":1,"912":2,"916":1,"918":3,"919":6,"920":2,"921":2,"933":1,"942":1,"945":1,"947":2,"949":2,"952":2,"956":2,"966":1,"967":1,"971":1,"972":1,"973":1,"974":2,"975":4,"977":1,"980":1,"981":1,"982":2,"983":1,"984":1,"990":1,"993":1,"994":2,"995":3,"996":1,"997":1,"1000":1,"1002":1,"1005":5,"1006":1,"1007":2,"1009":1,"1010":2,"1012":1,"1013":2,"1014":1,"1015":4,"1016":2,"1023":1,"1036":1,"1037":22,"1038":3,"1044":1,"1048":1,"1058":1,"1067":1,"1072":1,"1074":1,"1075":3,"1078":1,"1079":3,"1080":1,"1082":1,"1083":1,"1084":1,"1086":3,"1087":1,"1088":1,"1089":1,"1092":1,"1096":2,"1097":1,"1098":7,"1099":3,"1100":6,"1101":1,"1103":3,"1104":2,"1105":7,"1106":4,"1107":3,"1108":1,"1110":2,"1111":1,"1114":1,"1119":1,"1121":1,"1123":1,"1125":2,"1126":2,"1127":2,"1128":2,"1129":2,"1132":1,"1134":1,"1135":1,"1150":1,"1155":1,"1169":1,"1172":1,"1183":2,"1184":2,"1185":1,"1197":1,"1203":1,"1205":1,"1206":3,"1208":2,"1209":1,"1211":2,"1219":1,"1247":1,"1255":2,"1274":1,"1276":2,"1279":2,"1280":1,"1302":2,"1304":2,"1305":2,"1322":1,"1324":2,"1327":1,"1328":3,"1331":1,"1332":1,"1333":1,"1334":1,"1337":1,"1342":1,"1346":1,"1352":2,"1353":1,"1368":2,"1378":1,"1381":1,"1382":1,"1383":1,"1384":1,"1385":3,"1386":5,"1390":1,"1391":1,"1394":6,"1401":1,"1403":2,"1404":1,"1405":3,"1406":1,"1407":1,"1408":1,"1410":1,"1412":1,"1414":3,"1416":1,"1419":1,"1422":1,"1423":2,"1428":1,"1431":1,"1432":1,"1434":1,"1435":2,"1447":1,"1451":1,"1454":3,"1475":1,"1477":1,"1499":1,"1503":1,"1509":1,"1511":2,"1521":1,"1523":1,"1538":1,"1540":2,"1554":1,"1567":1,"1576":1,"1581":1,"1589":1,"1591":1,"1596":1,"1616":1,"1619":1,"1620":1,"1623":1,"1626":1,"1632":2,"1655":1,"1664":1,"1668":1,"1670":1,"1671":2,"1673":1,"1674":2,"1684":1,"1686":1,"1720":1,"1723":2,"1733":1,"1741":1,"1764":2,"1769":1,"1770":1,"1784":1,"1787":1,"1789":1,"1791":1,"1792":54,"1794":1,"1796":1,"1799":2,"1805":3,"1810":1,"1811":1,"1813":1,"1834":1,"1838":1,"1841":2,"1844":1,"1848":2,"1851":1,"1857":2,"1858":1,"1868":3,"1869":1,"1898":2,"1907":1,"1909":1,"1915":1,"1920":1,"1921":1,"1922":1,"1928":1,"1933":1,"1965":1,"1967":2,"1972":1,"1974":2,"2007":2,"2009":1,"2045":2,"2047":3,"2049":3,"2060":1,"2062":1,"2072":1,"2075":1,"2077":1,"2111":1,"2122":1,"2126":1,"2128":2,"2130":2,"2147":1,"2160":1,"2161":1,"2164":8,"2165":2,"2166":1,"2177":2,"2183":1,"2184":1,"2190":1,"2205":1,"2223":1,"2234":1,"2239":1,"2242":1,"2251":1,"2253":2,"2255":11,"2256":1,"2261":1,"2264":3,"2266":1,"2267":2,"2270":2,"2277":1,"2282":1,"2287":1,"2289":2,"2291":1,"2292":1,"2294":1,"2296":1,"2297":1,"2300":3,"2302":1,"2303":1,"2310":1,"2317":2,"2318":1,"2319":1,"2321":1,"2322":1,"2323":1,"2324":1,"2328":2,"2333":1,"2334":1,"2336":2,"2337":3,"2339":2,"2348":1,"2350":2,"2351":1,"2367":1,"2380":2,"2382":1,"2388":1,"2389":2,"2397":1,"2398":2,"2402":1,"2431":1,"2450":1,"2479":2,"2481":2,"2493":1,"2496":2,"2498":1,"2531":2,"2532":1,"2540":3,"2546":1,"2549":4,"2575":1,"2585":1,"2586":3,"2588":3,"2589":1,"2590":2,"2597":1,"2603":2,"2607":5,"2611":1,"2634":5,"2635":8,"2650":1,"2665":3,"2709":1,"2710":2,"2712":1,"2724":1,"2734":1,"2741":1,"2759":1,"2762":1,"2770":2,"2772":3,"2774":2,"2775":1,"2792":1,"2794":1,"2795":2,"2802":1,"2803":1,"2804":1,"2806":1,"2816":1,"2818":1,"2819":1,"2820":1,"2822":1,"2824":1,"2825":2,"2827":2,"2832":1,"2835":1,"2840":1,"2844":1,"2845":2,"2847":2,"2854":1,"2855":3,"2868":1,"2869":1,"2871":1,"2874":1,"2875":1}}],["postgis",{"2":{"834":1}}],["post",{"0":{"208":1,"523":1,"1030":1,"1065":1,"1270":1,"1294":1,"1379":1,"2300":1},"1":{"1295":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1},"2":{"9":1,"21":1,"71":2,"72":1,"75":1,"138":1,"157":1,"184":4,"187":1,"195":1,"204":1,"208":1,"209":1,"243":1,"245":1,"248":2,"252":1,"257":2,"258":2,"288":2,"289":1,"290":1,"291":3,"292":1,"297":1,"298":2,"309":1,"312":2,"313":1,"324":1,"338":1,"351":3,"352":1,"360":1,"361":1,"365":1,"366":1,"414":1,"415":2,"418":2,"420":2,"421":2,"423":3,"426":1,"427":1,"428":2,"443":2,"444":2,"445":2,"446":3,"456":1,"477":1,"503":2,"510":2,"511":1,"523":3,"545":1,"565":1,"572":1,"574":1,"577":1,"586":1,"592":2,"593":1,"594":1,"614":1,"621":1,"622":1,"623":1,"631":1,"632":1,"633":1,"641":2,"642":1,"643":1,"644":1,"645":1,"646":1,"658":1,"659":1,"660":1,"661":1,"662":2,"664":1,"665":1,"691":2,"695":1,"700":1,"705":1,"750":1,"764":1,"774":1,"783":1,"785":1,"787":1,"789":1,"813":1,"814":1,"817":1,"826":1,"827":1,"828":1,"835":1,"847":1,"866":1,"868":1,"871":1,"874":1,"881":1,"886":2,"894":1,"899":1,"900":1,"902":1,"904":1,"910":1,"911":1,"912":1,"915":3,"920":1,"921":1,"934":1,"935":1,"938":1,"946":1,"971":1,"972":1,"975":1,"977":2,"980":1,"990":5,"992":2,"996":12,"1030":2,"1036":1,"1038":1,"1045":2,"1048":2,"1049":1,"1055":1,"1065":1,"1078":1,"1079":3,"1081":1,"1104":2,"1105":5,"1107":3,"1111":1,"1135":1,"1154":2,"1157":1,"1161":2,"1163":1,"1179":1,"1182":1,"1183":1,"1208":1,"1220":4,"1221":4,"1222":4,"1226":1,"1232":1,"1233":1,"1234":1,"1236":1,"1237":1,"1238":1,"1239":1,"1253":1,"1254":1,"1255":4,"1258":1,"1264":1,"1285":4,"1295":1,"1308":1,"1309":1,"1321":1,"1326":1,"1327":1,"1332":2,"1335":3,"1338":4,"1339":2,"1342":1,"1351":1,"1358":3,"1366":2,"1367":1,"1368":2,"1371":2,"1372":1,"1384":3,"1394":1,"1399":1,"1400":1,"1401":1,"1404":3,"1406":1,"1409":1,"1410":2,"1423":1,"1431":5,"1434":1,"1452":1,"1456":1,"1458":1,"1487":1,"1491":1,"1492":1,"1504":1,"1599":2,"1642":1,"1646":1,"1664":2,"1729":1,"1730":1,"1792":20,"1817":1,"1824":1,"1846":1,"1847":1,"1870":2,"1871":2,"1872":2,"1876":1,"1894":1,"1924":1,"1925":1,"1929":1,"2011":1,"2106":1,"2147":2,"2164":1,"2166":1,"2176":2,"2185":1,"2186":1,"2187":2,"2196":1,"2197":1,"2204":1,"2214":1,"2216":1,"2218":1,"2229":1,"2264":1,"2277":5,"2292":3,"2294":1,"2302":1,"2303":1,"2304":1,"2306":1,"2319":4,"2320":1,"2321":2,"2338":1,"2339":1,"2342":1,"2346":2,"2347":1,"2354":1,"2391":2,"2394":1,"2395":1,"2398":1,"2429":1,"2432":1,"2438":1,"2479":1,"2481":2,"2506":1,"2511":1,"2513":2,"2517":1,"2523":1,"2529":2,"2537":1,"2540":1,"2549":3,"2554":1,"2575":2,"2625":1,"2655":1,"2713":1,"2723":1,"2737":1,"2744":1,"2762":1,"2774":1,"2811":3,"2813":2,"2815":2,"2828":1,"2829":2,"2830":1,"2834":2,"2836":1,"2843":4,"2865":2,"2868":4,"2873":1,"2876":1,"2879":1}}],["postssection",{"2":{"996":4}}],["posts",{"0":{"791":1,"980":1,"1037":1,"2134":1},"2":{"0":1,"212":2,"297":1,"415":1,"423":1,"836":1,"866":1,"976":2,"977":3,"980":7,"982":2,"985":1,"990":14,"991":3,"992":2,"995":2,"996":5,"1076":4,"1079":1,"1403":1,"1404":1,"1408":4,"1564":1,"1792":1,"2171":1,"2303":1,"2304":1,"2328":1,"2358":1,"2813":1,"2840":1,"2868":3}}],["p",{"2":{"186":5,"254":3,"255":3,"256":3,"257":3,"258":1,"306":2,"408":6,"423":3,"469":5,"835":3,"851":2,"930":2,"980":3,"982":3,"990":3,"1046":1,"1113":3,"1117":1,"1118":1,"1138":4,"1139":2,"1179":2,"1236":6,"1243":2,"1305":2,"1343":1,"1408":3,"1427":4,"1429":11,"1531":2,"1575":1,"1792":3,"1968":3,"2111":1,"2277":13,"2293":5,"2304":3,"2481":1,"2532":1,"2555":3,"2622":1,"2665":4,"2717":1,"2723":1,"2762":6,"2788":1,"2789":1,"2790":1,"2791":1,"2875":1}}],["pltcl",{"2":{"1972":1}}],["plpython",{"2":{"2759":1}}],["plpython3u",{"2":{"1971":1,"1972":1}}],["plperl",{"2":{"1972":1}}],["plpgsql",{"2":{"184":1,"186":1,"207":1,"208":1,"209":1,"263":1,"264":1,"292":1,"310":2,"313":1,"415":1,"423":1,"426":1,"427":1,"428":1,"439":1,"449":1,"452":1,"454":1,"646":1,"658":1,"664":2,"750":1,"751":1,"752":1,"755":1,"756":1,"764":1,"765":1,"766":1,"774":1,"777":1,"812":1,"813":1,"814":1,"815":1,"883":1,"884":1,"888":1,"904":1,"928":1,"929":1,"1021":1,"1029":1,"1056":2,"1060":1,"1105":3,"1179":2,"1197":1,"1214":1,"1215":1,"1216":1,"1232":1,"1234":1,"1235":1,"1236":1,"1239":1,"1309":1,"1321":1,"1332":1,"1338":1,"1339":1,"1347":1,"1348":1,"1427":1,"1431":1,"1504":1,"1689":1,"1727":1,"1736":1,"1742":1,"1745":1,"1921":1,"1924":1,"1926":1,"1970":1,"1972":1,"1975":1,"2147":1,"2264":1,"2283":1,"2290":1,"2292":1,"2293":1,"2303":1,"2304":1,"2344":1,"2346":1,"2549":3,"2572":1,"2575":1,"2580":2,"2762":1,"2766":1,"2802":1,"2809":1,"2810":1,"2812":1,"2815":1,"2829":1,"2834":2,"2836":1}}],["plv8",{"2":{"1394":1}}],["please",{"2":{"1157":1,"1404":1,"1792":3,"1948":1,"1949":1,"1958":2,"1959":1,"1960":1,"2257":1,"2470":2,"2471":1}}],["pleases",{"2":{"1132":1}}],["pl",{"2":{"868":1,"874":1,"876":3,"1096":1,"1378":1,"1394":4,"1792":1,"1972":4,"2255":2,"2635":1,"2802":1}}],["plug",{"2":{"1049":1}}],["pluggable",{"0":{"2650":1},"1":{"2651":1,"2652":1,"2653":1},"2":{"848":1,"1048":1,"1049":2,"2072":1,"2233":1,"2650":1}}],["plugins",{"0":{"2555":1},"2":{"876":1,"1385":3,"1401":1,"2370":1,"2389":1,"2419":1,"2489":1,"2555":1,"2714":1,"2795":1}}],["plugin",{"0":{"2317":1,"2481":1,"2482":1,"2562":1,"2566":1,"2590":1},"1":{"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":1,"2329":1,"2330":1},"2":{"317":2,"347":1,"1039":1,"1096":2,"1135":1,"1386":2,"1401":2,"1792":1,"1813":1,"1840":3,"2165":1,"2195":1,"2223":3,"2226":1,"2228":1,"2254":2,"2318":1,"2370":1,"2389":3,"2430":1,"2432":1,"2435":2,"2438":1,"2479":1,"2481":3,"2482":8,"2487":2,"2555":2,"2590":1,"2721":1,"2729":1,"2841":1}}],["plumbing",{"2":{"834":1,"845":1,"849":1,"869":3,"872":1,"873":2,"1302":1,"1382":1,"2438":1}}],["plus",{"2":{"304":1,"388":1,"753":1,"757":1,"768":1,"776":1,"834":1,"860":3,"867":3,"868":2,"869":2,"871":1,"872":2,"873":1,"876":1,"920":1,"921":1,"1036":2,"1080":1,"1098":1,"1102":1,"1350":1,"1382":3,"1407":1,"1423":2,"1432":1,"1433":1,"1792":1,"1822":1,"1824":1,"2107":1,"2389":1,"2394":1,"2419":1,"2422":1,"2430":1,"2435":1,"2440":1,"2498":1,"2515":1,"2543":1,"2546":3,"2726":1,"2751":1,"2794":1,"2812":1,"2834":1,"2874":1,"2878":1}}],["play",{"2":{"1382":1}}],["playing",{"0":{"1268":1}}],["plays",{"2":{"857":1}}],["planning",{"2":{"2324":1}}],["planned",{"2":{"1130":1}}],["planner",{"2":{"857":1,"860":1,"861":1,"1130":5,"1132":3,"1133":4}}],["plans",{"2":{"1401":1}}],["plan",{"2":{"860":2,"861":1,"1133":1,"1254":1}}],["platforms",{"2":{"1088":1,"1102":1,"1127":1,"1662":1,"2776":1}}],["platform",{"0":{"1094":1},"2":{"428":1,"835":1,"866":1,"977":1,"980":1,"990":1,"1083":1,"1084":4,"1086":1,"1088":1,"1094":3,"1121":1,"1127":2,"1582":1,"1653":1,"1694":1,"1792":4,"2438":1,"2668":1,"2776":1,"2804":1}}],["placeorder",{"2":{"1043":1}}],["place",{"2":{"562":1,"563":1,"706":1,"836":1,"843":1,"859":1,"861":1,"864":1,"865":1,"873":1,"921":1,"988":1,"1043":1,"1044":1,"1184":1,"1203":1,"1385":1,"1416":1,"1431":1,"1439":1,"1440":1,"1792":1,"1942":1,"2317":1,"2426":1,"2431":1,"2532":1,"2774":1,"2869":2}}],["placed",{"2":{"560":1,"619":1,"659":1,"689":1,"694":1,"704":1,"709":1,"714":1,"1044":1,"1703":1,"1792":1,"1924":1,"1925":1,"2191":1,"2222":1,"2320":1,"2340":1,"2444":1,"2505":1,"2529":1,"2533":1,"2633":1}}],["places",{"2":{"395":1,"973":1,"1008":1,"2190":1}}],["placement",{"0":{"623":1,"1924":1},"2":{"214":1,"448":1,"560":1,"619":1,"712":1,"1135":2,"2222":1,"2340":1,"2509":2,"2511":1,"2513":1}}],["placements",{"2":{"203":1,"2222":1,"2505":1}}],["placeholder$",{"2":{"1792":3}}],["placeholder=",{"2":{"938":2,"1061":2}}],["placeholder",{"0":{"212":1,"388":1,"1605":1,"1733":1},"1":{"389":1},"2":{"167":2,"215":1,"216":1,"386":1,"388":3,"448":1,"527":1,"529":2,"533":1,"534":1,"957":1,"961":1,"998":1,"1019":1,"1067":1,"1104":1,"1105":2,"1379":1,"1577":1,"1605":1,"1733":2,"1738":3,"1792":2,"1862":1,"2119":1,"2185":1,"2221":2,"2264":3,"2282":1,"2284":1,"2286":1,"2322":1,"2493":2,"2497":1,"2540":4,"2546":2,"2645":1,"2731":1,"2795":1,"2845":2,"2849":1}}],["placeholders",{"0":{"167":1,"207":1,"2119":1,"2185":1,"2493":1,"2497":1,"2688":1,"2764":1},"2":{"165":2,"170":1,"212":2,"214":2,"388":2,"390":1,"393":1,"394":1,"395":1,"396":1,"404":1,"452":1,"528":1,"529":1,"674":1,"679":1,"784":2,"834":1,"926":1,"1016":1,"1017":1,"1023":1,"1086":1,"1094":1,"1105":1,"1374":1,"1398":1,"1604":1,"1615":1,"1685":1,"1696":1,"1723":1,"1733":3,"1743":1,"1792":3,"1808":1,"2079":1,"2117":1,"2119":1,"2141":1,"2170":1,"2223":2,"2264":4,"2284":3,"2322":2,"2483":1,"2493":2,"2502":2,"2534":1,"2540":1,"2575":1,"2645":1,"2653":1,"2688":1,"2702":1,"2704":2,"2719":1,"2759":1,"2764":1,"2765":1,"2771":1,"2849":1}}],["plaintext",{"2":{"182":1,"184":1,"1100":1,"1664":1,"2052":1,"2291":1,"2292":1}}],["plain",{"0":{"1368":1,"2726":1,"2774":1},"1":{"1369":1,"1370":1,"1371":1,"1372":1,"1373":1,"1374":1,"1375":1,"1376":1,"1377":1,"1378":1,"1379":1,"1380":1},"2":{"31":1,"361":1,"362":1,"487":4,"494":1,"549":1,"567":1,"609":1,"874":1,"911":1,"961":1,"971":1,"1037":2,"1042":1,"1074":1,"1077":1,"1094":1,"1125":1,"1189":1,"1195":1,"1199":1,"1373":1,"1377":1,"1379":1,"1386":1,"1419":1,"1424":1,"1502":1,"1571":1,"1782":1,"1792":4,"1853":1,"1936":1,"1943":1,"1972":1,"2092":1,"2101":1,"2156":1,"2167":1,"2221":1,"2271":1,"2391":1,"2461":1,"2484":1,"2525":1,"2529":1,"2535":1,"2537":1,"2542":1,"2545":1,"2596":1,"2662":1,"2667":1,"2673":1,"2678":1,"2694":1,"2709":1,"2729":1,"2739":1,"2772":1,"2785":1,"2802":1,"2809":1,"2820":1,"2826":1,"2836":1,"2858":1,"2859":1,"2860":1,"2871":1,"2874":1}}],["puserid",{"2":{"2723":1}}],["pushing",{"2":{"974":1}}],["push",{"2":{"848":1,"2388":1}}],["pushes",{"2":{"668":1,"856":1}}],["pulled",{"2":{"2788":1}}],["pulls",{"2":{"1429":1}}],["pull",{"2":{"1343":1,"1428":1,"2788":2,"2789":2,"2790":2,"2791":2}}],["pubkeycredparams",{"2":{"1220":1}}],["pub",{"2":{"922":2,"1185":3,"1302":1,"1303":1,"1320":3,"1322":1}}],["publishing",{"2":{"1792":1,"2407":1}}],["publishaot=true",{"2":{"1046":1,"2481":1}}],["publishaot",{"2":{"954":1}}],["publishes",{"2":{"1305":1,"1714":1}}],["publisher",{"0":{"668":1,"2829":1},"2":{"1861":1,"2226":1,"2407":1,"2827":1,"2828":2,"2829":1,"2830":1,"2835":2,"2836":2,"2838":1}}],["published",{"2":{"325":1,"840":1,"1128":1,"2380":1,"2385":1,"2398":2,"2490":1,"2754":1}}],["publish",{"0":{"2391":1,"2392":1,"2834":1},"2":{"663":1,"1046":1,"1320":1,"1792":1,"1861":1,"2226":2,"2391":3,"2392":4,"2393":2,"2406":1,"2481":1,"2498":1,"2792":3,"2827":1}}],["public|api",{"2":{"2069":1}}],["public|myapp",{"2":{"1792":1,"2062":1,"2635":1}}],["publicapitypes",{"2":{"1577":1}}],["publicapi",{"2":{"1577":1}}],["publicly",{"2":{"1403":1,"1792":1,"2634":1}}],["publickeyalgorithmcolumnname",{"2":{"1240":1,"1792":1,"1889":1}}],["publickeycolumnname",{"2":{"1240":1,"1792":1,"1889":1}}],["public",{"0":{"7":1,"9":1,"925":1,"2214":1,"2370":1},"2":{"7":3,"10":1,"223":1,"261":1,"263":1,"264":1,"320":1,"352":3,"476":1,"542":1,"582":1,"724":1,"785":1,"836":1,"837":1,"867":1,"922":2,"925":4,"926":3,"932":2,"934":3,"935":3,"936":3,"937":5,"938":2,"941":1,"943":1,"946":1,"976":1,"998":1,"1010":1,"1018":1,"1042":1,"1060":1,"1138":4,"1139":1,"1158":1,"1163":2,"1184":2,"1185":2,"1187":1,"1188":2,"1189":1,"1192":10,"1193":5,"1196":1,"1200":1,"1202":1,"1203":1,"1207":2,"1209":1,"1210":3,"1213":3,"1215":7,"1222":1,"1232":1,"1234":1,"1236":7,"1237":2,"1240":2,"1243":2,"1251":2,"1315":1,"1362":1,"1363":1,"1366":2,"1398":1,"1423":1,"1441":1,"1567":2,"1576":1,"1577":1,"1661":1,"1704":1,"1747":1,"1792":8,"1839":1,"1867":2,"1868":1,"1886":3,"1887":2,"1889":2,"1930":2,"2038":1,"2040":2,"2062":1,"2201":1,"2202":1,"2223":1,"2228":1,"2251":1,"2255":6,"2256":4,"2257":1,"2265":4,"2266":1,"2267":1,"2344":2,"2370":3,"2396":1,"2432":1,"2461":1,"2477":1,"2481":1,"2487":1,"2489":1,"2635":1,"2721":1,"2728":1,"2775":1,"2797":1,"2824":3,"2825":2}}],["punchline",{"2":{"861":1}}],["purely",{"2":{"873":1,"1107":1,"1150":1,"1402":1,"1406":1,"2193":1,"2455":1}}],["pure",{"0":{"949":1,"1209":1,"1269":1,"1292":1},"1":{"1210":1,"1211":1,"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1242":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1293":1},"2":{"669":1,"848":1,"851":1,"852":2,"872":1,"1037":1,"1254":1,"1255":1,"1264":1,"1266":1,"1269":2,"1271":1,"1280":1,"1281":1,"1403":1,"1559":1,"1570":1,"1792":2,"2164":1,"2360":1,"2380":1,"2741":1,"2807":1,"2828":1}}],["purposes",{"2":{"624":1,"666":1,"926":1,"1386":1,"1614":1,"2824":1}}],["purpose",{"0":{"2249":1},"2":{"33":1,"300":1,"546":1,"863":1,"1167":1,"1255":1,"1309":1,"1385":1,"1705":1,"2259":1,"2421":1,"2436":2,"2495":1}}],["putting",{"0":{"1179":1},"2":{"683":1,"851":1,"859":1,"876":1,"1078":1,"2809":1}}],["puts",{"2":{"448":1,"852":1,"873":1,"1326":1,"1403":1,"1421":1,"2455":1}}],["put",{"2":{"204":1,"243":1,"258":2,"390":1,"419":3,"423":1,"452":1,"812":1,"815":1,"831":1,"835":1,"849":1,"873":1,"880":1,"1104":1,"1105":1,"1107":1,"1253":1,"1423":1,"1487":1,"1642":1,"1646":1,"1729":1,"1792":2,"1846":1,"1925":1,"2264":1,"2277":3,"2305":2,"2319":2,"2321":1,"2429":1,"2438":1,"2481":1,"2517":1,"2529":1,"2531":1,"2723":1,"2762":1,"2843":2,"2861":1,"2865":1,"2873":1}}],["packaging",{"2":{"2569":1}}],["package",{"0":{"2386":1},"2":{"864":2,"869":1,"1026":1,"1096":1,"1418":1,"2254":1,"2385":1,"2389":1,"2716":1,"2786":1}}],["packages",{"2":{"863":1,"869":1,"1088":1,"2567":1,"2714":1}}],["pacific",{"2":{"2453":1}}],["pause",{"2":{"1254":1}}],["paul",{"2":{"913":1}}],["pagination",{"2":{"1096":2,"1122":1,"1127":1}}],["paged",{"2":{"861":1}}],["page",{"0":{"1430":1},"2":{"3":1,"221":1,"267":1,"296":1,"386":2,"387":1,"395":2,"534":1,"539":3,"833":3,"834":2,"1037":2,"1043":1,"1047":1,"1068":1,"1400":1,"1414":1,"1416":1,"1423":3,"1424":1,"1427":2,"1431":2,"1444":1,"1612":1,"1684":2,"1685":2,"1792":7,"1925":1,"1978":1,"2016":1,"2018":2,"2040":1,"2164":2,"2166":1,"2202":1,"2474":1,"2479":1,"2517":1,"2632":1,"2759":1,"2779":2,"2792":1,"2816":1}}],["pages",{"2":{"0":1,"835":1,"1094":1,"1430":1,"1432":3,"1792":2,"1836":1,"2170":1,"2806":1,"2827":1,"2870":1}}],["pandas",{"0":{"909":1},"2":{"879":1,"909":1}}],["panel",{"2":{"834":1,"836":1,"1047":1,"2166":1}}],["padding",{"2":{"965":1,"1792":1,"2073":1,"2075":1,"2080":1}}],["pad",{"2":{"872":1,"1044":2}}],["papercut",{"2":{"2453":1}}],["papered",{"2":{"2452":1}}],["paper",{"2":{"852":1}}],["papers",{"2":{"840":1}}],["pascal",{"2":{"1792":1}}],["paste",{"2":{"920":1,"959":1,"965":2,"966":1,"1792":2,"2047":1,"2054":1,"2075":1,"2221":1,"2531":1,"2635":2,"2651":1}}],["pasted",{"2":{"699":1,"2531":3,"2533":1,"2537":1,"2678":1,"2695":1,"2869":1}}],["past",{"2":{"877":1,"1180":1}}],["passkeyauth",{"0":{"2625":1},"2":{"1217":2,"1223":1,"1240":1,"1241":1,"1245":1,"1252":1,"1792":1,"1867":1,"1889":1,"1890":1,"1892":1,"1893":1,"2235":1,"2486":1}}],["passkeys",{"0":{"1209":1},"1":{"1210":1,"1211":1,"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1242":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1},"2":{"1037":1,"1098":1,"1209":1,"1210":1,"1213":3,"1215":1,"1216":1,"1218":1,"1220":1,"1232":2,"1234":1,"1236":1,"1239":1,"1252":1,"1253":1,"1867":2,"1870":1,"2625":1,"2628":1,"2736":1}}],["passkey",{"0":{"1220":1,"1221":1,"1866":1,"1870":1,"1871":1,"2486":1,"2492":1},"1":{"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":1,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1889":1,"1890":1,"1891":1,"1892":1,"1893":1,"1894":1,"1895":1},"2":{"835":1,"868":1,"869":1,"1037":1,"1086":1,"1098":6,"1126":1,"1127":1,"1209":2,"1211":2,"1212":1,"1213":2,"1214":3,"1215":2,"1216":1,"1217":7,"1218":1,"1219":1,"1220":12,"1221":9,"1222":9,"1224":2,"1226":8,"1232":4,"1233":2,"1234":4,"1235":3,"1236":2,"1237":2,"1238":1,"1239":3,"1245":3,"1250":1,"1252":2,"1445":2,"1465":1,"1466":1,"1788":1,"1792":29,"1866":2,"1867":1,"1868":1,"1869":1,"1870":6,"1871":3,"1872":3,"1874":2,"1876":8,"1882":1,"1883":1,"1884":1,"1893":10,"1894":3,"1895":1,"2164":3,"2189":1,"2223":1,"2420":1,"2423":2,"2492":1,"2496":1,"2625":1}}],["passthrough",{"0":{"438":1,"1331":1,"1337":1,"1920":1,"2313":1,"2809":1},"2":{"435":1,"436":1,"439":1,"453":2,"876":1,"1104":1,"1105":1,"1333":1,"1337":1,"1342":1,"1349":3,"1351":1,"1396":1,"1431":2,"1915":1,"1928":1,"2229":1,"2313":4,"2463":2,"2510":1,"2549":3,"2580":1,"2806":1,"2807":2,"2809":4,"2817":1}}],["passes",{"2":{"383":1,"408":1,"435":1,"448":1,"942":1,"1159":1,"1332":1,"1338":1,"1359":1,"1376":1,"1396":1,"1422":1,"2348":1,"2482":1,"2528":2,"2665":1,"2864":2,"2881":1}}],["passed",{"2":{"40":1,"41":1,"50":1,"51":1,"156":1,"188":1,"213":1,"389":2,"390":1,"394":1,"460":1,"462":1,"497":1,"512":1,"528":1,"760":1,"761":1,"762":1,"770":1,"771":1,"772":1,"775":1,"801":2,"865":1,"883":1,"930":1,"1070":1,"1074":1,"1102":1,"1105":1,"1214":1,"1232":1,"1236":1,"1477":2,"1569":1,"1741":1,"1792":7,"1852":1,"1882":1,"1886":1,"1921":1,"1928":2,"2094":1,"2104":1,"2107":1,"2113":1,"2147":1,"2282":1,"2287":1,"2289":1,"2291":1,"2296":1,"2321":1,"2348":1,"2383":1,"2446":2,"2496":1,"2526":1,"2528":1,"2531":1,"2535":3,"2537":2,"2549":3,"2572":1,"2575":1,"2615":1,"2860":1,"2864":1,"2880":1}}],["passing",{"2":{"226":1,"514":1,"794":1,"881":1,"915":2,"1097":1,"1241":1,"1475":1,"1572":1,"1792":2,"1864":1,"1890":1,"1961":1,"2094":1,"2104":1,"2107":1,"2178":1,"2258":2,"2495":1,"2535":1,"2537":3,"2802":1,"2825":1,"2855":1}}],["pass2",{"2":{"62":2}}],["pass1",{"2":{"62":2}}],["pass",{"0":{"502":1,"503":1},"2":{"38":4,"167":1,"309":2,"408":1,"458":1,"463":1,"464":1,"469":1,"499":2,"741":1,"776":1,"812":1,"816":1,"851":1,"864":1,"865":1,"872":1,"874":1,"892":1,"994":1,"1063":1,"1074":1,"1105":1,"1326":1,"1328":1,"1340":2,"1398":3,"1458":4,"1469":1,"1472":1,"1711":1,"1792":7,"1823":1,"1909":1,"2097":1,"2124":2,"2130":1,"2140":1,"2149":1,"2184":1,"2322":1,"2375":3,"2396":1,"2407":1,"2416":1,"2431":1,"2433":1,"2435":1,"2446":1,"2456":1,"2482":1,"2513":1,"2526":1,"2535":1,"2575":1,"2665":1,"2687":1,"2695":1,"2800":1,"2830":1,"2860":1,"2875":1,"2880":2,"2881":1}}],["passwordhashlocation",{"2":{"1792":1}}],["password789",{"2":{"1061":1}}],["passwordless",{"2":{"1037":1,"1098":2,"1209":1,"1217":1,"1229":3,"1445":1,"1465":1,"1466":1,"1651":1,"1788":1,"1792":3,"1866":1,"1879":3,"2164":1,"2189":1,"2565":1,"2625":1}}],["password456",{"2":{"938":1,"1051":1,"1061":1,"1307":2,"1502":1}}],["password123",{"2":{"938":2,"970":1,"1051":1,"1061":1,"1307":2}}],["password=test",{"2":{"2875":1}}],["password=pass",{"2":{"2686":1,"2699":1}}],["password=postgres",{"2":{"1792":1,"2111":1,"2532":1,"2718":1,"2823":2,"2824":2,"2825":1}}],["password=mypassword",{"2":{"1613":1}}],["password=secret",{"2":{"1173":1,"1176":2,"1177":2,"1614":3,"1627":1,"1629":2,"2266":1}}],["password=",{"2":{"937":1,"1067":1,"1534":1,"1607":1,"1615":1,"1633":2,"1792":1,"2687":1,"2824":1,"2825":1,"2872":2}}],["passwordverificationsucceededcommand",{"2":{"310":1,"1056":1,"1062":1,"1469":1,"1472":1,"1473":1,"1792":1}}],["passwordverificationfailedcommand",{"2":{"310":1,"1056":1,"1062":1,"1469":1,"1472":1,"1473":1,"1792":1}}],["passwordparameternamecontains",{"2":{"309":2,"1052":2,"1469":1,"1472":1,"1483":1,"1792":3}}],["passwords",{"2":{"63":1,"308":1,"316":1,"357":1,"362":1,"364":1,"366":1,"368":2,"868":1,"922":1,"927":1,"928":2,"942":1,"944":1,"1048":1,"1049":2,"1059":1,"1062":2,"1185":1,"1195":1,"1204":1,"1499":1,"1502":2,"1867":1,"2052":1,"2164":1,"2165":2,"2188":1,"2645":1,"2798":1}}],["password",{"0":{"38":1,"57":1,"307":1,"363":1,"592":1,"930":1,"1049":1,"1051":1,"1055":1,"1056":1,"1195":1,"1472":1,"1473":1,"2177":1},"1":{"308":1,"309":1,"310":1,"1056":1,"1473":1},"2":{"31":2,"33":1,"37":4,"38":9,"39":1,"40":2,"41":1,"48":2,"49":1,"56":3,"57":3,"58":1,"61":2,"63":4,"190":1,"297":2,"298":13,"300":1,"307":2,"308":21,"309":8,"310":9,"312":4,"313":4,"360":6,"361":9,"362":1,"363":3,"364":1,"365":3,"366":2,"367":1,"592":10,"593":1,"700":1,"813":4,"817":4,"834":1,"835":1,"921":1,"922":2,"924":3,"926":4,"927":2,"928":2,"929":2,"930":37,"934":4,"937":1,"938":7,"940":1,"942":1,"944":1,"945":2,"1037":1,"1048":5,"1049":3,"1050":4,"1051":1,"1052":3,"1055":7,"1056":11,"1061":6,"1062":3,"1064":2,"1067":2,"1068":2,"1078":1,"1098":4,"1185":3,"1196":1,"1197":6,"1199":2,"1202":1,"1207":1,"1209":1,"1213":1,"1221":1,"1251":1,"1307":3,"1308":4,"1371":3,"1458":2,"1466":1,"1468":1,"1471":2,"1472":8,"1480":1,"1482":1,"1483":1,"1497":1,"1499":2,"1501":3,"1504":10,"1507":1,"1534":1,"1550":1,"1616":2,"1651":1,"1661":2,"1700":1,"1792":36,"1984":2,"1986":2,"1987":2,"1989":2,"1995":2,"2040":1,"2145":1,"2146":2,"2147":9,"2164":1,"2165":1,"2167":1,"2176":10,"2177":17,"2178":1,"2187":6,"2188":2,"2216":1,"2477":1,"2540":3,"2565":2,"2575":4,"2655":1}}],["painful",{"2":{"1075":1}}],["pairing",{"2":{"2481":1}}],["pairs",{"2":{"1608":1,"2040":1,"2272":1,"2452":1,"2476":1}}],["pair",{"2":{"531":1,"1210":1,"1456":1,"1792":1,"2177":1,"2538":1,"2554":1}}],["paid",{"2":{"2":1,"844":1,"1033":3,"1206":1,"1824":2}}],["payoff",{"2":{"1409":1}}],["pays",{"2":{"873":1,"874":1,"1007":1,"1139":1,"1382":1,"1401":1}}],["payment",{"0":{"594":1},"2":{"577":1,"594":2,"865":1,"1035":1,"1068":1,"1098":1,"1154":4,"1458":1,"1599":1,"1792":1,"2375":1}}],["pay",{"2":{"388":1,"861":1,"864":1,"1792":1,"1861":1}}],["payloads",{"0":{"1091":1,"1268":1},"2":{"1091":1,"1262":1,"1511":1,"1792":1,"2496":1}}],["payload",{"0":{"1262":1,"1263":1,"1298":1,"1299":1},"1":{"1299":1},"2":{"71":8,"414":1,"533":1,"1030":1,"1098":1,"1105":1,"1161":1,"1255":4,"1258":1,"1263":1,"1266":1,"1270":1,"1280":1,"1285":3,"1299":1,"1305":1,"1309":1,"1823":1,"1856":1,"1925":1,"2286":1,"2300":1,"2398":2,"2492":2,"2517":1,"2813":1,"2829":1}}],["patrn",{"2":{"2446":1}}],["patters",{"2":{"1792":2}}],["patterns",{"0":{"895":1,"2036":1,"2213":1},"1":{"896":1,"897":1,"898":1,"899":1,"900":1,"2214":1,"2215":1,"2216":1,"2217":1,"2218":1},"2":{"215":1,"338":1,"747":2,"781":2,"782":2,"784":2,"786":2,"788":2,"840":3,"841":1,"849":1,"851":1,"880":1,"885":1,"920":1,"948":1,"987":1,"1037":1,"1066":1,"1069":1,"1101":1,"1267":1,"1372":1,"1792":5,"1956":1,"2034":1,"2038":1,"2059":1,"2092":1,"2125":2,"2270":1,"2364":1,"2379":1,"2389":1,"2395":1,"2635":1,"2867":1}}],["pattern",{"0":{"9":1,"106":1,"451":1,"663":1,"856":1,"1076":1,"1345":1,"1524":1,"1525":1,"1526":1,"2144":1,"2371":1},"1":{"664":1,"665":1,"666":1},"2":{"298":1,"414":1,"650":1,"663":1,"686":1,"812":1,"816":1,"817":1,"851":2,"863":1,"864":1,"876":1,"920":2,"959":1,"967":1,"986":1,"988":1,"1006":1,"1037":1,"1068":1,"1076":2,"1077":2,"1097":1,"1106":1,"1139":1,"1162":1,"1176":1,"1305":1,"1376":1,"1386":1,"1393":1,"1398":3,"1405":1,"1416":1,"1574":1,"1684":1,"1738":1,"1753":1,"1792":12,"1838":4,"1839":1,"1852":1,"1898":2,"1909":1,"2000":1,"2002":3,"2004":1,"2007":1,"2036":2,"2047":1,"2062":1,"2109":1,"2140":1,"2141":2,"2142":1,"2144":3,"2146":3,"2148":1,"2228":1,"2270":1,"2289":1,"2300":1,"2318":1,"2328":1,"2330":1,"2371":2,"2381":1,"2383":1,"2400":1,"2427":1,"2431":1,"2435":1,"2436":2,"2446":2,"2482":1,"2490":1,"2521":1,"2537":1,"2539":1,"2575":5,"2635":1,"2666":1,"2840":1,"2868":1,"2869":1}}],["patch",{"2":{"204":1,"243":1,"1104":1,"1105":1,"1107":1,"1419":1,"1729":1,"1792":1,"1925":1,"2264":1,"2440":1,"2450":1,"2459":1,"2461":1,"2468":1,"2474":1,"2508":1,"2515":1,"2517":1,"2762":1}}],["patientid=1",{"2":{"186":1,"2293":1}}],["patientid",{"2":{"184":1,"2292":1}}],["patients",{"2":{"184":2,"186":1,"2292":1,"2293":1}}],["patient",{"2":{"184":7,"186":5,"2291":1,"2292":5,"2293":5}}],["pathparam",{"2":{"2277":1}}],["path`",{"2":{"1792":1}}],["path=",{"2":{"1792":1,"2256":1}}],["path=str",{"2":{"1366":1}}],["pathname",{"2":{"1335":1,"1792":2}}],["pathology",{"2":{"852":1,"856":1}}],["paths",{"0":{"1226":1,"1479":1,"1744":1,"1776":1,"1876":1,"1929":1,"2064":1,"2215":1,"2463":1},"1":{"1480":1,"1481":1,"1745":1,"1746":1,"1747":1,"1930":1},"2":{"253":1,"261":1,"387":1,"404":1,"409":1,"446":1,"879":1,"1007":1,"1067":1,"1086":1,"1095":1,"1114":1,"1121":1,"1167":1,"1226":1,"1275":1,"1366":1,"1398":3,"1416":1,"1458":1,"1460":1,"1562":1,"1576":1,"1744":1,"1776":1,"1778":1,"1780":1,"1792":6,"1841":1,"1876":1,"1929":1,"1961":3,"2036":1,"2040":1,"2258":1,"2267":1,"2277":1,"2329":1,"2344":1,"2346":2,"2347":1,"2372":1,"2375":2,"2384":1,"2398":3,"2414":1,"2415":1,"2423":1,"2437":1,"2438":1,"2466":1,"2493":1,"2532":1,"2559":1,"2621":1,"2622":1,"2645":1,"2648":1}}],["path>",{"2":{"243":2,"399":1,"651":2,"2832":2}}],["path",{"0":{"106":1,"249":1,"250":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"397":1,"401":1,"402":1,"404":1,"405":1,"406":1,"408":1,"421":1,"423":1,"445":1,"469":1,"652":1,"653":1,"654":1,"662":1,"933":1,"1070":1,"1575":1,"2036":1,"2277":1,"2327":1,"2346":1,"2404":1,"2555":1,"2665":1,"2727":1},"1":{"254":1,"255":1,"256":1,"257":1,"258":1,"398":1,"399":1,"400":1,"401":1,"402":1,"403":1,"404":1,"405":2,"406":2,"407":2,"408":2,"409":1,"410":1,"411":1,"653":1,"654":1},"2":{"31":1,"37":1,"38":4,"39":1,"40":1,"41":1,"157":7,"162":2,"212":1,"223":2,"243":3,"244":1,"245":1,"252":1,"253":2,"258":1,"260":2,"386":1,"387":1,"393":3,"395":3,"397":2,"398":2,"399":1,"401":2,"402":1,"403":1,"404":1,"405":1,"406":1,"408":4,"409":4,"411":1,"414":3,"421":1,"422":1,"423":9,"436":10,"445":1,"446":8,"448":1,"452":2,"469":4,"533":1,"649":2,"650":2,"652":3,"653":4,"654":4,"659":1,"662":2,"668":1,"669":2,"690":1,"748":1,"756":7,"757":8,"758":1,"784":6,"785":2,"835":1,"868":1,"871":1,"875":1,"876":1,"933":6,"934":2,"935":1,"936":1,"946":1,"983":1,"1037":1,"1055":1,"1056":2,"1057":1,"1058":1,"1060":1,"1065":1,"1066":1,"1067":1,"1070":6,"1073":1,"1078":1,"1094":1,"1095":1,"1102":4,"1113":1,"1121":1,"1125":1,"1127":1,"1185":3,"1188":2,"1192":1,"1199":2,"1207":1,"1335":5,"1355":4,"1357":1,"1358":4,"1366":11,"1367":1,"1386":3,"1447":1,"1449":1,"1451":1,"1452":1,"1454":1,"1456":1,"1460":3,"1479":2,"1501":1,"1511":1,"1554":1,"1575":3,"1576":2,"1604":1,"1618":3,"1651":2,"1661":1,"1684":2,"1763":1,"1764":4,"1773":2,"1776":1,"1780":1,"1792":56,"1804":1,"1817":1,"1824":1,"1831":2,"1833":1,"1852":2,"1864":2,"1898":1,"1929":2,"1961":1,"1984":2,"1986":2,"1987":3,"1989":2,"1995":1,"2011":1,"2034":1,"2040":1,"2047":4,"2094":2,"2096":2,"2102":1,"2110":1,"2112":1,"2127":1,"2185":3,"2196":4,"2197":1,"2221":1,"2232":1,"2239":1,"2249":5,"2251":1,"2252":15,"2254":1,"2256":4,"2265":1,"2267":1,"2270":2,"2272":1,"2277":9,"2278":2,"2286":2,"2309":1,"2318":1,"2323":1,"2327":4,"2328":1,"2346":1,"2347":3,"2354":1,"2358":2,"2372":3,"2375":4,"2383":2,"2389":2,"2391":1,"2400":1,"2402":1,"2411":1,"2428":1,"2429":1,"2435":3,"2437":1,"2438":1,"2455":1,"2463":2,"2465":2,"2476":1,"2481":1,"2489":1,"2493":1,"2498":1,"2529":6,"2530":1,"2531":4,"2532":2,"2533":1,"2535":1,"2537":2,"2539":1,"2542":1,"2546":2,"2554":2,"2555":11,"2558":1,"2559":1,"2565":2,"2589":3,"2614":3,"2634":4,"2635":4,"2665":3,"2666":2,"2672":1,"2690":1,"2723":3,"2727":4,"2729":1,"2758":1,"2781":1,"2782":1,"2783":1,"2784":1,"2795":1,"2807":1,"2811":4,"2830":1,"2832":1,"2840":2,"2865":5,"2869":2,"2877":1,"2880":1,"2881":2}}],["parity",{"0":{"2329":1},"2":{"2498":1}}],["paring",{"2":{"2258":1}}],["parent",{"2":{"1097":1,"1973":1,"1977":1,"2157":1,"2532":2,"2543":1,"2678":1,"2679":1,"2695":1}}],["park",{"2":{"851":1}}],["parquet",{"2":{"848":1}}],["paragraph",{"0":{"1039":1}}],["parallelism",{"2":{"861":1,"1130":2,"2536":1}}],["parallel",{"0":{"1130":1,"1745":1,"2766":1},"2":{"860":1,"871":1,"872":1,"920":1,"928":1,"986":1,"993":1,"1015":1,"1023":1,"1026":1,"1029":1,"1037":1,"1079":1,"1104":1,"1105":2,"1108":1,"1130":7,"1376":2,"1398":4,"1399":2,"1418":1,"1458":1,"1741":2,"1745":2,"1746":1,"2099":1,"2167":1,"2221":1,"2289":3,"2329":1,"2346":4,"2347":3,"2375":1,"2463":1,"2527":1,"2545":1,"2546":1,"2759":1,"2766":2,"2767":2,"2770":1,"2858":1,"2862":1,"2869":1,"2872":1,"2873":1}}],["paradoxical",{"2":{"1324":1}}],["paradigm",{"2":{"874":1}}],["paradigms",{"2":{"841":1}}],["parade",{"2":{"840":1}}],["paramindex",{"2":{"2622":3}}],["paramtests",{"2":{"2457":2}}],["paramtype",{"2":{"2277":1}}],["paramater",{"2":{"1792":1}}],["param3",{"2":{"1792":1}}],["param3>",{"2":{"113":1}}],["param2",{"2":{"915":2,"1792":1}}],["param2>",{"2":{"113":1}}],["param1",{"2":{"915":2,"1792":1}}],["param1>",{"2":{"113":1}}],["param=null",{"2":{"460":1}}],["param=",{"2":{"460":1}}],["param>",{"2":{"358":4}}],["param",{"0":{"165":1,"369":1,"515":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2849":1},"1":{"166":1,"167":1,"168":1,"169":1,"170":1,"370":1,"371":1,"372":1,"373":1,"374":1,"375":1,"376":1,"377":1,"378":1,"379":1,"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"516":1,"517":1,"518":1,"519":1,"520":1,"521":1,"522":1,"523":1,"524":1,"525":1,"526":1},"2":{"37":1,"61":1,"68":1,"69":1,"71":2,"77":1,"136":1,"155":2,"156":2,"157":2,"165":1,"166":2,"167":3,"168":7,"169":3,"170":2,"184":2,"206":1,"215":1,"226":1,"237":1,"238":1,"253":1,"258":1,"260":1,"298":2,"306":1,"312":3,"357":1,"358":3,"360":4,"361":1,"364":2,"365":1,"369":3,"370":16,"372":3,"373":2,"374":2,"375":5,"376":2,"377":1,"378":14,"380":3,"382":5,"383":3,"385":2,"389":1,"395":1,"404":1,"407":1,"408":1,"409":1,"415":1,"466":6,"472":1,"493":1,"503":2,"507":1,"508":1,"510":2,"515":3,"516":2,"520":4,"521":1,"522":4,"523":1,"527":2,"534":1,"544":1,"565":1,"568":1,"584":2,"586":2,"592":2,"612":1,"613":1,"614":1,"621":1,"622":3,"623":1,"659":1,"665":2,"674":1,"722":1,"750":2,"751":1,"755":1,"756":1,"758":1,"764":1,"767":1,"774":1,"775":1,"777":1,"783":1,"785":1,"787":1,"789":1,"797":3,"811":1,"826":2,"827":2,"886":1,"902":1,"904":1,"1038":2,"1040":1,"1045":2,"1073":2,"1105":1,"1142":2,"1150":3,"1154":1,"1179":3,"1358":4,"1368":1,"1371":5,"1372":3,"1373":1,"1374":4,"1375":1,"1376":6,"1378":1,"1379":1,"1386":4,"1387":1,"1391":1,"1392":1,"1395":2,"1396":1,"1398":11,"1405":1,"1410":2,"1412":2,"1413":3,"1458":2,"1472":1,"1504":3,"1547":5,"1567":3,"1664":3,"1689":5,"1727":3,"1738":1,"1792":1,"1864":1,"1924":1,"2010":2,"2012":1,"2013":1,"2147":3,"2176":2,"2193":4,"2204":2,"2221":1,"2228":1,"2247":4,"2277":2,"2319":2,"2320":1,"2321":4,"2322":5,"2323":9,"2329":1,"2332":10,"2333":17,"2334":6,"2335":7,"2336":2,"2337":2,"2338":2,"2339":2,"2342":1,"2348":3,"2372":1,"2511":1,"2513":1,"2540":6,"2575":2,"2591":4,"2665":1,"2723":1,"2731":1,"2732":3,"2733":1,"2734":2,"2762":1,"2763":1,"2774":2,"2813":1,"2829":3,"2834":2,"2845":3,"2846":4,"2847":3,"2848":3,"2849":2,"2859":2}}],["params",{"0":{"1300":1,"2495":1},"1":{"1301":1},"2":{"37":2,"38":1,"39":1,"40":1,"41":1,"50":1,"60":1,"61":2,"62":1,"63":1,"105":1,"395":1,"454":3,"794":1,"795":1,"797":5,"798":3,"799":1,"815":1,"835":1,"1026":1,"1189":2,"1196":1,"1255":2,"1285":4,"1301":1,"1547":2,"1738":1,"1792":1,"1923":1,"1924":1,"2222":1,"2284":2,"2332":1,"2338":1,"2380":1,"2523":1,"2549":2,"2572":2,"2807":2}}],["parameterparsers",{"2":{"2451":1,"2457":1,"2621":1}}],["parameterhandler",{"2":{"2372":1}}],["parameterdescription",{"2":{"2324":1}}],["parameterless",{"2":{"2319":1}}],["parametername",{"2":{"1792":1}}],["parameternameclaimsmapping",{"0":{"1478":1},"2":{"306":2,"690":1,"801":1,"937":1,"1469":1,"1477":1,"1483":1,"1539":1,"1544":1,"1545":1,"1546":1,"1548":1,"1792":2,"2183":2,"2187":1,"2394":2,"2529":1}}],["parameterized",{"2":{"1102":2,"1738":1,"1792":1,"1852":1,"2283":1,"2284":1,"2319":1,"2383":1}}],["parameter",{"0":{"68":1,"71":1,"72":1,"116":1,"156":1,"167":1,"215":1,"237":1,"254":1,"258":1,"357":1,"386":1,"393":1,"405":1,"407":1,"449":1,"503":1,"507":1,"510":1,"511":1,"751":1,"763":1,"773":1,"802":1,"812":1,"814":1,"1033":1,"1052":1,"1142":1,"1545":1,"1546":1,"1738":1,"1918":1,"1923":1,"1968":1,"2203":1,"2282":1,"2332":1,"2493":1,"2494":1,"2518":1,"2519":1,"2575":1,"2724":1,"2732":1,"2734":1},"1":{"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"157":1,"358":1,"359":1,"360":1,"361":1,"362":1,"363":1,"364":1,"365":1,"366":1,"367":1,"368":1,"387":1,"388":1,"389":1,"390":1,"391":1,"392":1,"393":1,"394":1,"395":1,"396":1,"508":1,"509":1,"510":1,"511":1,"512":1,"513":1,"514":1,"1924":1,"1925":1,"1926":1,"2204":1,"2283":1,"2284":1,"2285":1,"2286":1},"2":{"31":1,"38":1,"41":1,"50":1,"51":2,"68":1,"69":1,"71":2,"72":1,"73":2,"74":4,"75":1,"76":1,"77":1,"79":1,"101":2,"106":1,"107":3,"109":1,"133":1,"156":3,"158":1,"165":2,"166":1,"167":2,"168":7,"169":1,"170":1,"182":1,"184":1,"188":1,"190":1,"202":1,"212":4,"215":2,"226":5,"237":3,"253":1,"258":2,"260":1,"302":1,"306":2,"309":4,"316":1,"357":2,"358":3,"362":2,"368":1,"369":4,"370":4,"372":1,"373":1,"376":3,"377":1,"382":1,"383":3,"384":6,"385":2,"386":1,"388":5,"389":2,"390":5,"395":4,"404":2,"407":1,"408":4,"436":2,"447":3,"448":3,"452":1,"454":1,"462":2,"466":1,"467":1,"468":2,"469":1,"472":1,"499":2,"503":2,"504":2,"506":2,"507":2,"508":1,"510":4,"511":2,"512":3,"513":1,"524":1,"525":1,"526":2,"527":2,"528":5,"529":4,"534":3,"535":2,"544":2,"570":1,"587":2,"589":1,"595":1,"596":1,"637":1,"639":1,"646":1,"675":1,"680":1,"690":1,"718":1,"720":4,"725":1,"726":1,"737":1,"751":2,"756":2,"761":1,"762":1,"771":1,"772":1,"775":1,"779":1,"781":1,"782":1,"784":1,"786":1,"788":1,"790":1,"801":1,"802":1,"804":1,"806":1,"809":4,"812":1,"814":2,"817":1,"818":1,"819":1,"868":4,"869":1,"876":1,"882":1,"885":1,"887":1,"904":2,"915":6,"919":1,"957":4,"1016":3,"1017":2,"1019":1,"1037":1,"1052":1,"1055":1,"1067":2,"1070":1,"1074":1,"1097":3,"1100":1,"1102":4,"1105":4,"1109":1,"1110":1,"1133":2,"1139":3,"1150":3,"1185":1,"1188":1,"1189":1,"1204":1,"1237":1,"1239":1,"1341":2,"1357":1,"1358":3,"1362":1,"1379":1,"1386":1,"1395":3,"1396":1,"1398":4,"1399":2,"1410":1,"1412":2,"1415":3,"1426":1,"1431":3,"1470":1,"1472":2,"1473":1,"1477":7,"1501":1,"1518":1,"1519":1,"1520":1,"1521":1,"1523":3,"1524":1,"1525":2,"1526":1,"1527":3,"1529":2,"1543":1,"1544":5,"1546":1,"1561":2,"1567":1,"1569":4,"1573":1,"1616":1,"1664":1,"1687":1,"1723":3,"1727":1,"1733":4,"1738":3,"1759":3,"1788":1,"1792":100,"1795":1,"1806":1,"1836":1,"1841":1,"1844":1,"1846":1,"1848":3,"1849":3,"1852":2,"1862":1,"1863":1,"1887":1,"1888":1,"1901":1,"1912":3,"1917":1,"1918":7,"1921":1,"1922":3,"1923":4,"1924":4,"1925":2,"1967":1,"1968":2,"2007":1,"2034":1,"2047":1,"2056":1,"2079":1,"2124":2,"2129":1,"2131":1,"2137":1,"2138":1,"2139":1,"2140":5,"2141":3,"2142":4,"2144":3,"2145":2,"2146":6,"2148":3,"2149":2,"2156":1,"2164":1,"2177":2,"2178":1,"2183":2,"2184":1,"2185":2,"2216":1,"2221":2,"2222":7,"2223":1,"2224":1,"2228":1,"2230":1,"2237":1,"2247":1,"2250":1,"2252":2,"2258":3,"2261":1,"2264":6,"2265":4,"2267":4,"2277":4,"2282":1,"2283":1,"2284":2,"2291":1,"2296":1,"2318":1,"2320":1,"2321":1,"2322":4,"2323":3,"2324":1,"2328":1,"2332":2,"2333":1,"2334":1,"2336":3,"2364":1,"2372":1,"2380":11,"2383":2,"2394":4,"2395":4,"2435":2,"2445":1,"2450":1,"2451":1,"2481":1,"2483":2,"2491":1,"2493":3,"2494":3,"2495":2,"2496":2,"2498":3,"2504":3,"2508":1,"2509":7,"2510":1,"2511":1,"2513":1,"2515":1,"2517":1,"2518":5,"2519":4,"2520":4,"2521":1,"2522":1,"2523":2,"2527":1,"2529":1,"2540":5,"2542":1,"2546":2,"2549":1,"2551":1,"2572":1,"2575":13,"2580":1,"2597":3,"2614":1,"2615":3,"2621":1,"2622":3,"2649":1,"2653":1,"2654":1,"2664":1,"2665":4,"2674":1,"2701":1,"2712":1,"2723":3,"2731":2,"2732":1,"2733":2,"2734":1,"2739":1,"2745":1,"2750":1,"2759":1,"2760":2,"2762":2,"2764":3,"2768":1,"2771":1,"2774":1,"2798":1,"2809":1,"2810":1,"2812":1,"2814":1,"2816":1,"2833":1,"2840":1,"2845":2,"2847":2,"2848":1,"2849":1,"2851":1,"2860":1}}],["parameters",{"0":{"31":1,"117":1,"154":1,"158":1,"183":1,"253":1,"255":1,"256":1,"257":1,"372":1,"374":1,"376":1,"377":1,"383":1,"394":1,"404":1,"406":1,"408":1,"447":1,"448":1,"454":1,"469":1,"520":1,"521":1,"527":1,"532":1,"544":1,"675":1,"720":1,"756":1,"761":1,"771":1,"780":1,"781":1,"794":1,"797":1,"813":1,"882":1,"915":1,"1300":1,"1341":1,"1392":1,"1395":1,"1473":1,"1477":1,"1501":1,"1544":1,"1547":1,"1561":1,"1575":1,"1616":1,"1687":1,"1759":1,"1806":1,"1846":1,"1912":1,"1922":1,"2129":1,"2131":1,"2183":1,"2277":1,"2285":1,"2286":1,"2292":1,"2321":1,"2322":1,"2332":1,"2333":1,"2348":1,"2394":1,"2496":1,"2520":1,"2540":1,"2555":1,"2591":1,"2653":1,"2665":1,"2730":1,"2731":1,"2844":1,"2845":1,"2846":1,"2849":1},"1":{"155":1,"156":1,"157":1,"158":1,"159":2,"160":2,"161":2,"162":2,"163":2,"164":1,"184":1,"254":1,"255":1,"256":1,"257":1,"258":1,"378":1,"379":1,"380":1,"381":1,"405":1,"406":1,"407":1,"408":1,"448":1,"449":1,"528":1,"529":1,"530":1,"531":1,"532":1,"533":1,"534":1,"535":1,"781":1,"782":1,"783":1,"784":1,"785":1,"786":1,"787":1,"788":1,"789":1,"795":1,"796":1,"797":1,"798":1,"799":1,"800":1,"801":1,"802":1,"803":1,"804":1,"805":1,"806":1,"883":1,"884":1,"1301":1,"1478":1,"1545":1,"1546":1,"1547":1,"1847":1,"2731":1,"2732":1,"2733":1,"2734":1,"2845":1,"2846":1,"2847":1,"2848":1,"2849":1},"2":{"31":1,"43":2,"66":2,"105":1,"106":1,"107":1,"108":1,"113":1,"120":1,"155":1,"156":1,"159":1,"160":2,"164":1,"165":6,"167":1,"168":4,"170":4,"184":2,"188":1,"190":2,"209":1,"215":1,"216":2,"226":1,"228":1,"236":2,"237":1,"238":1,"240":1,"253":1,"258":3,"306":4,"310":1,"315":1,"316":2,"322":1,"362":1,"369":1,"372":1,"374":1,"376":5,"377":2,"380":4,"381":2,"382":1,"384":2,"385":2,"387":2,"388":2,"390":3,"393":1,"394":1,"396":3,"408":2,"409":3,"423":1,"436":2,"438":1,"439":2,"447":1,"448":5,"452":1,"453":1,"454":1,"456":2,"458":1,"469":2,"515":1,"517":2,"524":1,"527":1,"528":2,"529":3,"535":3,"568":1,"595":1,"674":1,"679":1,"680":1,"690":1,"692":1,"725":1,"741":2,"760":1,"770":1,"780":1,"790":1,"794":1,"795":1,"800":1,"801":4,"803":2,"807":2,"821":2,"835":2,"876":1,"914":1,"915":4,"936":2,"937":3,"968":1,"1010":1,"1019":1,"1023":3,"1040":1,"1049":1,"1052":2,"1058":2,"1067":5,"1070":3,"1073":1,"1077":1,"1082":1,"1092":3,"1095":1,"1097":2,"1098":3,"1102":2,"1104":1,"1105":4,"1108":1,"1109":1,"1129":4,"1134":1,"1139":1,"1142":4,"1148":1,"1150":3,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1255":3,"1258":2,"1285":1,"1331":1,"1332":2,"1337":1,"1338":1,"1339":1,"1341":1,"1371":4,"1372":4,"1373":1,"1374":1,"1378":2,"1379":1,"1386":2,"1392":2,"1395":1,"1396":1,"1398":4,"1407":1,"1431":1,"1435":1,"1477":3,"1482":1,"1484":1,"1485":1,"1506":1,"1507":1,"1511":1,"1516":2,"1518":1,"1520":2,"1521":2,"1522":1,"1529":2,"1531":3,"1533":1,"1538":1,"1544":3,"1547":1,"1548":1,"1549":2,"1551":2,"1557":1,"1559":1,"1567":3,"1569":4,"1575":3,"1616":2,"1651":2,"1655":2,"1687":1,"1733":1,"1738":1,"1753":2,"1755":1,"1759":4,"1788":1,"1792":58,"1806":1,"1824":1,"1852":4,"1856":1,"1862":2,"1864":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1898":3,"1912":6,"1920":1,"1921":1,"1922":3,"1923":2,"1924":5,"1928":2,"1932":2,"1968":1,"2013":1,"2079":1,"2081":1,"2124":1,"2137":2,"2147":1,"2150":1,"2152":1,"2167":2,"2170":1,"2183":5,"2184":2,"2185":4,"2187":2,"2188":1,"2189":2,"2193":2,"2203":1,"2204":2,"2205":1,"2221":1,"2222":2,"2223":2,"2226":1,"2228":1,"2232":1,"2239":1,"2247":2,"2258":3,"2264":3,"2265":2,"2267":2,"2277":9,"2278":4,"2282":2,"2284":5,"2285":1,"2292":2,"2296":1,"2304":1,"2319":2,"2320":1,"2321":2,"2322":4,"2329":1,"2332":3,"2333":8,"2334":1,"2348":4,"2380":7,"2383":4,"2394":2,"2398":1,"2445":1,"2481":1,"2483":3,"2493":2,"2494":2,"2496":1,"2504":1,"2508":1,"2509":4,"2510":2,"2511":2,"2512":2,"2515":2,"2518":1,"2520":5,"2525":1,"2527":1,"2529":1,"2540":3,"2545":1,"2546":1,"2549":5,"2555":10,"2558":1,"2572":1,"2575":3,"2580":1,"2591":5,"2595":1,"2597":1,"2614":1,"2653":1,"2663":1,"2665":1,"2666":2,"2672":2,"2712":1,"2723":1,"2731":1,"2733":4,"2766":1,"2771":1,"2798":1,"2803":1,"2805":1,"2807":4,"2809":1,"2810":3,"2812":3,"2814":1,"2817":1,"2829":2,"2836":1,"2844":2,"2845":2,"2846":1,"2848":3,"2849":1,"2851":1,"2855":3,"2858":1,"2859":2,"2862":1}}],["parsepatterns",{"2":{"2371":1}}],["parseerrormode",{"2":{"2328":2}}],["parseenvironmentvariables",{"2":{"1603":1,"1604":1,"1605":1,"1607":1,"1608":2,"1615":1,"1792":2,"2040":1,"2272":2,"2477":1,"2497":1,"2645":2,"2688":1,"2719":1}}],["parseable",{"2":{"2271":1,"2491":1}}],["parseall",{"2":{"244":1,"1792":1,"1840":1,"1863":1,"2004":2,"2209":1,"2330":2,"2721":1,"2841":1}}],["parsecontentoptions",{"0":{"2476":1},"2":{"1792":1,"2033":1,"2034":1,"2037":1,"2040":1,"2042":1,"2224":1,"2371":1,"2476":1,"2483":1,"2551":1}}],["parses",{"2":{"746":2,"759":1,"769":1,"881":2,"1016":1,"1023":1,"1080":1,"1102":2,"1243":1,"1408":1,"1409":1,"1423":1,"1427":1,"1723":1,"1792":1,"1974":1,"2223":1,"2487":1,"2607":1,"2841":2}}],["parsequery",{"2":{"723":1,"894":1,"961":1,"1366":1,"1410":1,"1413":1,"1416":1,"1560":1,"1567":1,"1568":1,"1572":1,"1574":3,"1581":2,"1792":1,"2278":1}}],["parseurl",{"2":{"720":1,"1415":1,"1561":1}}],["parse",{"0":{"1427":1,"1431":1,"2038":1},"2":{"719":2,"720":2,"879":1,"894":2,"904":1,"1037":1,"1218":1,"1318":1,"1320":1,"1321":1,"1338":1,"1339":1,"1366":2,"1385":1,"1386":4,"1394":1,"1410":2,"1415":2,"1423":1,"1424":1,"1558":1,"1604":1,"1792":6,"1840":1,"2000":2,"2005":2,"2007":2,"2037":1,"2038":2,"2164":2,"2209":1,"2224":1,"2273":1,"2278":2,"2324":1,"2328":1,"2330":1,"2451":1,"2453":2,"2482":1,"2491":2,"2494":1,"2506":1,"2536":1,"2566":1,"2649":1,"2762":2,"2763":1,"2770":1,"2830":1,"2836":1,"2840":1}}],["parsed",{"2":{"244":1,"251":1,"324":1,"384":1,"646":1,"650":1,"760":1,"761":1,"807":1,"952":1,"1279":1,"1792":9,"1856":2,"1927":1,"2004":1,"2005":1,"2006":4,"2038":2,"2041":1,"2129":1,"2131":1,"2137":1,"2208":1,"2318":1,"2323":2,"2455":1,"2490":1,"2505":1,"2549":1,"2575":1,"2588":1,"2589":1,"2687":1,"2840":1}}],["parsertests",{"2":{"2546":1}}],["parsers",{"0":{"2451":1},"2":{"1856":2,"2224":1,"2450":2,"2451":5,"2453":1,"2455":2,"2456":2,"2457":1,"2546":1}}],["parserequest",{"2":{"720":1,"1063":4,"1415":1,"1561":1}}],["parser",{"2":{"1":1,"369":1,"378":1,"886":1,"904":1,"1073":1,"1080":1,"1248":1,"1378":1,"1385":1,"1386":4,"1388":1,"1428":1,"1431":1,"2191":1,"2194":1,"2336":1,"2371":1,"2453":1,"2456":1,"2476":1,"2621":2,"2816":1}}],["parsing",{"0":{"379":1,"1270":1,"1294":1,"1607":1,"2037":1},"1":{"1295":1,"2038":1,"2039":1,"2040":1,"2041":1},"2":{"133":1,"277":1,"779":1,"788":3,"834":1,"879":2,"880":1,"891":1,"910":2,"1086":1,"1094":2,"1098":1,"1102":1,"1127":2,"1211":2,"1218":1,"1254":1,"1255":3,"1258":2,"1264":1,"1270":2,"1275":1,"1279":1,"1285":1,"1386":1,"1396":1,"1431":2,"1433":1,"1608":1,"1746":1,"1792":5,"1868":2,"2032":1,"2034":1,"2038":2,"2042":1,"2108":1,"2149":1,"2212":1,"2267":1,"2270":2,"2272":1,"2273":1,"2333":1,"2347":1,"2398":1,"2402":1,"2435":1,"2474":1,"2490":1,"2566":1,"2600":1,"2627":1,"2629":1,"2688":1,"2705":1,"2795":1}}],["party",{"0":{"1225":1,"1875":1},"2":{"864":1,"868":1,"876":1,"1035":1,"1097":1,"1098":2,"1099":1,"1104":2,"1209":1,"1225":1,"1243":1,"1329":1,"1335":1,"1572":1,"1792":2,"1875":1,"2427":1,"2759":1}}],["partly",{"2":{"849":5,"860":1}}],["particular",{"2":{"1403":1}}],["particularly",{"2":{"859":1,"974":1,"1073":1,"1516":1,"2265":1,"2271":1,"2338":1}}],["participates",{"2":{"533":1,"1792":1,"2795":1}}],["participate",{"2":{"384":1,"699":1,"2286":1,"2531":1,"2869":1}}],["participating",{"2":{"165":1}}],["partial",{"2":{"857":1,"879":1,"901":1,"918":1,"1097":1,"1792":1,"2007":2,"2107":1,"2320":1,"2328":1,"2372":1,"2537":1}}],["partitioning",{"2":{"1162":1}}],["partitions",{"0":{"1162":1},"2":{"848":1}}],["partition",{"0":{"1955":1,"1956":1,"2379":1},"1":{"1956":1,"1957":1},"2":{"479":1,"480":1,"860":1,"1069":4,"1101":2,"1121":1,"1127":1,"1162":4,"1792":7,"1951":2,"1952":2,"1953":2,"1954":2,"1955":3,"1956":2,"1957":3,"1958":1,"1959":1,"1960":1,"2379":6,"2438":2,"2441":1,"2443":5,"2447":1,"2470":1,"2471":1}}],["partitioned",{"2":{"479":1,"835":1,"1101":3,"1792":2,"1955":1,"1957":1,"1959":1,"2379":3,"2438":1,"2471":1}}],["parts",{"2":{"387":1,"843":2,"873":1,"1115":1,"1303":1,"1402":1,"1435":1,"2171":1}}],["partners",{"2":{"836":1,"837":1,"2419":1,"2434":1,"2438":1}}],["partner",{"0":{"1911":1,"2430":1,"2434":1,"2438":1},"1":{"2431":1,"2432":1,"2433":1,"2434":1},"2":{"348":3,"352":11,"354":6,"1792":3,"1909":2,"1911":8,"2419":1,"2430":3,"2432":6,"2434":9,"2438":8}}],["part",{"0":{"1377":1},"2":{"1":1,"113":1,"165":1,"167":1,"448":1,"836":1,"843":1,"851":5,"860":1,"861":1,"873":1,"916":1,"917":1,"920":2,"947":1,"1035":1,"1076":1,"1080":1,"1135":1,"1209":1,"1403":2,"1472":1,"1568":1,"2171":1,"2322":1,"2435":1,"2486":1,"2830":1}}],["prm",{"2":{"1792":2,"1825":2,"1828":1,"1830":1,"1833":1,"2481":1,"2498":1}}],["pragma",{"2":{"1792":1,"2033":1,"2037":1,"2041":1,"2551":1}}],["practical",{"2":{"988":1,"1102":1,"1133":1,"1135":1,"1393":1,"1792":2,"2537":1}}],["practice",{"0":{"1421":1},"2":{"175":1,"209":1,"847":1,"861":1,"871":1,"873":1,"876":1,"933":1,"936":1,"948":1,"1096":1,"1208":1,"1368":1,"1393":1,"2389":1,"2424":1}}],["pruned",{"2":{"1722":1,"1792":2,"2502":1,"2769":1}}],["prune",{"2":{"1511":1,"2803":1}}],["prs",{"2":{"1254":1}}],["preamble",{"2":{"2868":1}}],["preachy",{"2":{"1404":1}}],["preauthorize",{"2":{"1366":1}}],["pretty",{"2":{"1401":1,"1435":1}}],["pretend",{"2":{"844":1}}],["premises",{"2":{"1094":1}}],["premium",{"2":{"1033":4}}],["prejudice",{"2":{"913":1,"918":2}}],["preliminary",{"2":{"854":1}}],["pressing",{"2":{"2362":1}}],["pressure",{"2":{"919":1,"920":1,"951":1,"2397":1,"2398":2,"2604":1}}],["prescribes",{"2":{"1045":1}}],["presumably",{"2":{"844":1}}],["preserving",{"2":{"917":1,"1141":1,"1351":1,"2435":1}}],["preservation",{"2":{"903":1,"2435":1,"2498":1}}],["preserves",{"2":{"2678":1,"2695":1}}],["preserved",{"2":{"1102":1,"1408":1,"1605":1,"2405":1,"2435":2,"2497":1,"2504":1,"2587":1,"2588":1,"2589":1,"2607":1,"2688":1}}],["preserve",{"2":{"348":1,"1097":1,"1792":1,"1851":1,"1973":1,"2382":1,"2432":1,"2580":1}}],["presence",{"2":{"369":1,"439":1,"448":1}}],["present",{"0":{"2424":1},"2":{"101":1,"106":1,"214":1,"301":1,"309":1,"319":2,"324":1,"436":1,"869":1,"986":1,"1078":1,"1470":1,"1743":1,"1792":14,"1823":1,"1824":2,"2002":2,"2371":1,"2416":1,"2421":1,"2424":1,"2435":1,"2481":3,"2490":1,"2491":1,"2541":1,"2551":1,"2811":1,"2815":1}}],["precondition",{"2":{"876":1}}],["precompiled",{"2":{"874":1}}],["precise",{"2":{"852":1,"863":1,"864":1,"868":1,"1419":1,"1422":1,"1428":1,"2394":1}}],["precisely",{"2":{"851":1,"1402":1}}],["precision",{"2":{"585":1,"956":1}}],["precedence",{"0":{"319":1,"2424":1,"2697":1},"2":{"1785":1,"1792":2,"1862":1,"2040":1,"2380":1,"2476":1,"2481":1,"2483":1,"2680":1,"2681":1,"2691":1}}],["preprocessing",{"2":{"1343":1}}],["prepended",{"2":{"446":1,"1929":1}}],["preparecommand",{"2":{"2559":1,"2615":1}}],["prepared",{"2":{"427":1,"1130":1,"2099":1,"2527":1,"2534":1,"2862":1}}],["prepare",{"2":{"426":1,"428":1}}],["prepares",{"2":{"414":1,"1105":1,"2300":1,"2419":1}}],["predicting",{"2":{"1401":1}}],["predictable",{"2":{"1096":1,"1255":1,"2393":1}}],["predict",{"2":{"427":4}}],["predefined",{"2":{"159":1,"1013":1,"1390":1}}],["prefs",{"2":{"1029":1,"1347":3}}],["preflightmaxageseconds",{"2":{"1638":1,"1639":1,"1645":1,"1646":2,"1792":1}}],["preflight",{"0":{"1645":1},"2":{"545":1,"1639":1,"1645":2,"1792":1,"2429":1,"2627":1}}],["prefers",{"2":{"2858":1}}],["preferstandby",{"2":{"1174":1,"1176":1,"1177":1,"1628":1,"1629":1,"1792":1,"2266":2}}],["preference",{"2":{"1792":1}}],["preferences",{"2":{"251":1,"452":2,"1029":4,"1347":2}}],["preferred",{"2":{"1217":2,"1228":1,"1229":1,"1792":5,"1878":1,"1879":1,"2486":1}}],["preferprimary",{"2":{"1174":1,"1177":1,"1628":1,"1629":1,"1792":1,"2266":2}}],["prefer",{"2":{"1094":1,"1096":1,"1121":1,"1122":1,"1123":1,"1127":1,"1616":1,"1792":1,"1823":1,"2177":1,"2193":1,"2769":1}}],["preferably",{"2":{"319":1,"920":1}}],["prefixing",{"2":{"1415":1}}],["prefixes",{"2":{"259":1,"374":1,"410":1,"1576":1,"1787":1,"1794":1,"2270":1}}],["prefixed",{"2":{"108":1,"768":1,"776":1,"915":1,"1522":1,"2380":1}}],["prefix",{"0":{"2193":1,"2365":1,"2581":1,"2591":1},"2":{"4":1,"13":1,"29":1,"44":1,"55":1,"68":1,"78":1,"91":1,"125":1,"132":1,"144":1,"155":3,"165":1,"192":1,"211":1,"245":1,"261":1,"282":1,"296":1,"328":1,"339":1,"357":1,"369":1,"412":1,"433":1,"449":1,"458":1,"473":1,"484":1,"497":1,"507":1,"515":1,"549":1,"567":1,"569":1,"589":1,"598":1,"607":1,"618":1,"627":1,"636":1,"649":1,"683":1,"794":1,"823":1,"915":1,"924":1,"976":2,"985":1,"988":1,"1005":1,"1067":1,"1522":1,"1555":2,"1731":1,"1792":5,"1841":1,"2000":1,"2008":1,"2193":10,"2197":1,"2207":1,"2237":1,"2279":1,"2301":1,"2320":1,"2330":1,"2365":3,"2370":1,"2380":1,"2435":1,"2529":1,"2581":5,"2591":5,"2723":1,"2841":1,"2865":1}}],["previews",{"2":{"959":1}}],["preview",{"2":{"959":1,"961":1,"1257":4,"1336":1,"1338":1,"1339":1}}],["previously",{"2":{"892":1,"904":1,"1066":1,"1071":1,"1792":1,"1851":1,"1925":1,"1948":1,"1958":1,"2282":1,"2287":1,"2297":1,"2313":1,"2314":1,"2352":1,"2362":1,"2367":1,"2378":1,"2382":1,"2402":1,"2405":1,"2413":1,"2419":1,"2430":1,"2446":1,"2468":1,"2484":1,"2491":1,"2492":1,"2497":1,"2505":1,"2510":1,"2517":1,"2518":2,"2532":1,"2539":1,"2544":1,"2580":1,"2588":1,"2641":1,"2645":1,"2664":1,"2801":1}}],["previous",{"0":{"1260":1},"2":{"214":1,"563":1,"760":1,"761":1,"770":1,"771":1,"851":1,"854":1,"860":1,"861":2,"880":1,"882":1,"883":1,"885":1,"901":1,"1048":1,"1049":1,"1256":1,"1257":1,"1260":1,"1342":1,"1792":2,"2129":1,"2131":1,"2160":1,"2258":1,"2267":1,"2354":1,"2454":1,"2537":1,"2551":1,"2615":1}}],["prev",{"2":{"760":1,"764":2,"765":2,"766":2,"770":1,"774":2,"883":2,"884":2,"885":5,"888":2,"904":2,"2572":1}}],["prevented",{"2":{"2626":1}}],["prevention",{"2":{"2546":1}}],["preventing",{"2":{"1149":1,"1159":1,"2284":1,"2352":1}}],["preventdefault",{"2":{"961":1}}],["prevents",{"2":{"737":1,"1147":1,"1180":1,"1185":1,"1515":2,"1792":6,"2016":2,"2017":1,"2018":1,"2024":1,"2216":1,"2274":1,"2380":1,"2607":1,"2615":1,"2632":4,"2634":1,"2841":1}}],["prevent",{"2":{"595":1,"1138":1,"1160":1,"1232":1,"1250":1,"1398":1,"1493":1,"1709":1,"1717":2,"1769":2,"1792":7,"2016":1,"2060":1,"2061":1,"2127":1,"2265":1,"2372":1,"2558":1,"2632":1,"2633":1,"2634":1,"2635":1}}],["prevalent",{"2":{"1384":1}}],["preval",{"2":{"38":2}}],["prerequisites",{"0":{"2161":1,"2819":1}}],["prerequisite",{"2":{"182":1,"1596":1,"1792":1,"2291":1}}],["pre",{"0":{"38":1},"2":{"31":1,"308":1,"868":1,"951":1,"1015":1,"1051":1,"1069":1,"1102":8,"1104":1,"1106":2,"1123":1,"1166":1,"1168":1,"1197":1,"1343":1,"1522":1,"1609":1,"1690":2,"1696":3,"1792":1,"1850":1,"1856":1,"2177":1,"2224":1,"2372":1,"2381":1,"2422":1,"2435":3,"2455":2,"2461":1,"2482":2,"2550":1,"2621":1,"2669":1,"2785":1,"2791":1,"2792":1}}],["privacy",{"0":{"1251":1},"2":{"1792":1}}],["private",{"0":{"324":1,"855":1},"2":{"3":1,"695":1,"705":1,"715":1,"852":1,"855":1,"857":2,"864":2,"1138":3,"1210":3,"1312":2,"1435":1,"1571":1,"1661":1,"1708":1,"1792":1,"1987":1,"2207":1,"2372":1,"2484":1,"2490":1,"2559":1,"2633":1,"2873":1}}],["privileged",{"2":{"932":1,"1045":2,"2834":2}}],["privileges",{"2":{"922":1,"926":2,"932":3,"933":2,"2608":1,"2721":1}}],["privilege",{"0":{"922":1,"1185":1,"2876":1},"2":{"921":1,"922":1,"1037":1,"1065":1,"1111":1,"1185":1,"1441":1,"1443":1,"1669":1,"1673":1,"1674":1,"1678":1,"1792":1,"2164":1,"2255":2,"2608":1,"2755":1}}],["prioritize",{"2":{"933":1}}],["priority",{"2":{"52":1,"319":2,"422":1,"446":1,"1929":1,"2266":1,"2481":1}}],["prior",{"2":{"919":1,"2506":1}}],["pride",{"2":{"913":1,"918":2}}],["primitive",{"2":{"2424":1,"2586":1,"2588":1}}],["primitives",{"2":{"874":1,"1075":1,"1082":1}}],["primary|standby|any|preferprimary|preferstandby|readwrite|readonly",{"2":{"1792":1}}],["primary",{"2":{"764":1,"774":1,"852":1,"913":3,"924":1,"977":2,"1050":1,"1054":1,"1075":1,"1086":1,"1098":1,"1173":1,"1174":4,"1176":2,"1177":1,"1178":2,"1213":3,"1307":2,"1336":1,"1355":1,"1385":3,"1414":1,"1628":4,"1629":2,"1655":1,"1792":5,"2020":1,"2195":1,"2266":5,"2438":1,"2774":1,"2836":1,"2868":1}}],["primarily",{"2":{"0":1,"669":1}}],["prices",{"2":{"1010":1,"1011":1,"1018":1,"1020":2,"1021":2,"1024":3,"1376":1,"1431":4}}],["price",{"0":{"1425":1},"1":{"1426":1,"1427":1,"1428":1},"2":{"814":3,"845":1,"863":1,"864":3,"876":1,"898":3,"1019":3,"1021":2,"1023":1,"1026":1,"1038":4,"1044":1,"1187":1,"1188":1,"1189":1,"1192":2,"1373":1,"1376":3,"1398":7,"1423":2,"1427":9,"1429":15,"1430":1,"1431":5,"1435":1,"1436":1,"1437":2,"1442":1,"1571":1,"2164":1,"2214":1,"2726":1,"2760":2,"2762":8,"2766":5}}],["printing",{"2":{"2878":1}}],["prints",{"2":{"2104":1,"2110":1,"2415":1,"2530":1,"2537":1,"2543":1,"2800":1,"2857":1}}],["print",{"2":{"1792":1,"2416":1,"2754":1}}],["printed",{"2":{"1792":1,"2102":1,"2800":1}}],["printable",{"2":{"747":2,"753":2,"757":2,"776":1,"782":3,"784":3,"786":3,"1792":2,"2125":1}}],["principle",{"0":{"922":1,"1185":1},"2":{"921":1,"922":1,"1037":1,"1065":1,"1185":1,"1385":1,"1441":1,"2164":1}}],["principals",{"2":{"2221":1}}],["principal",{"2":{"239":1,"305":1,"689":1,"690":2,"691":1,"692":1,"1792":5,"1825":2,"1827":1,"1832":1,"1961":1,"2181":1,"2183":1,"2423":1,"2438":1,"2481":1,"2529":2,"2733":1,"2865":2}}],["proud",{"2":{"1404":1}}],["proudly",{"2":{"865":1}}],["proclaim",{"2":{"1393":1}}],["proceeds",{"2":{"2415":1}}],["proceed",{"2":{"1214":1,"1228":1,"1232":1,"1234":1,"1236":1,"1386":2,"1792":1,"1882":1,"1884":1,"1886":1}}],["procedural",{"2":{"876":1,"1377":1,"1378":2,"1394":5,"1396":3,"1972":1,"2855":1,"2858":1}}],["procedures",{"0":{"2775":1},"2":{"175":2,"265":1,"338":1,"369":1,"615":1,"650":1,"663":1,"668":1,"684":2,"829":1,"835":1,"994":1,"1037":1,"1086":1,"1095":1,"1113":1,"1305":1,"1385":4,"1405":1,"1435":2,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1558":1,"1792":3,"1965":1,"1967":1,"2106":1,"2156":2,"2164":1,"2190":1,"2273":1,"2317":1,"2325":1,"2332":1,"2338":1,"2344":1,"2350":1,"2388":1,"2389":2,"2391":1,"2395":1,"2542":2,"2709":1,"2713":1,"2772":1,"2774":1,"2775":1,"2802":1}}],["procedure",{"0":{"663":1},"1":{"664":1,"665":1,"666":1},"2":{"173":1,"175":1,"179":1,"220":1,"241":1,"296":1,"310":3,"374":1,"650":9,"663":4,"664":6,"667":1,"668":2,"669":3,"684":2,"828":1,"1054":1,"1056":2,"1073":1,"1077":1,"1128":1,"1302":1,"1305":4,"1309":4,"1312":1,"1313":2,"1314":1,"1315":1,"1321":2,"1396":1,"1655":2,"1792":1,"1973":1,"2010":1,"2047":1,"2329":1,"2332":1,"2391":5,"2392":2,"2394":1,"2407":2,"2504":1,"2635":2,"2712":1,"2803":2,"2827":1,"2828":1,"2829":2,"2830":2,"2834":4,"2836":2}}],["processpath",{"2":{"2543":1}}],["processed",{"0":{"1705":1},"2":{"772":1,"773":1,"886":1,"903":1,"1335":1,"1339":2,"1603":1,"1686":1,"1688":2,"1703":1,"1706":1,"1792":4,"1844":1,"1915":1,"1927":1,"2549":2,"2633":1,"2705":1}}],["processes",{"0":{"1418":1},"2":{"746":2,"759":1,"769":1,"788":1,"844":1,"868":1,"886":1,"902":1,"1105":1,"1106":1,"1324":2,"1358":1,"1359":1,"1376":2,"1418":1,"1706":1,"2128":1,"2130":1,"2157":1,"2543":1,"2611":1,"2833":1}}],["processorder",{"2":{"2357":1}}],["processors",{"2":{"1035":1}}],["processor",{"2":{"421":2,"423":1,"760":1,"770":1,"1792":1,"2094":1,"2099":1,"2527":1,"2537":1,"2862":1}}],["processing",{"0":{"594":1,"878":1,"899":1,"2270":1},"1":{"879":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1},"2":{"160":1,"414":2,"435":1,"438":1,"565":2,"747":2,"768":1,"771":1,"780":1,"781":4,"782":2,"784":2,"786":4,"788":3,"791":1,"878":1,"903":1,"907":1,"1037":2,"1099":2,"1100":1,"1105":3,"1154":1,"1167":1,"1179":1,"1328":1,"1334":1,"1358":1,"1396":1,"1684":1,"1701":1,"1787":1,"1788":1,"1794":1,"1802":1,"1917":1,"1921":1,"1974":1,"2120":1,"2125":2,"2128":1,"2134":1,"2164":1,"2165":1,"2239":1,"2270":2,"2300":2,"2320":2,"2607":1,"2633":1,"2645":1,"2648":1,"2649":1,"2664":1,"2774":1,"2795":1,"2813":1,"2814":1}}],["process",{"0":{"902":1,"1332":1},"1":{"903":1},"2":{"71":4,"138":1,"214":1,"239":1,"277":1,"390":1,"421":1,"439":1,"445":1,"480":1,"510":3,"565":2,"577":1,"594":2,"614":1,"621":1,"631":1,"632":1,"633":1,"646":3,"650":2,"658":5,"659":1,"662":6,"689":1,"691":1,"764":1,"768":1,"774":1,"776":3,"779":1,"788":1,"828":1,"844":2,"852":6,"855":1,"864":3,"865":1,"868":1,"874":1,"876":1,"888":3,"891":1,"892":3,"899":1,"900":1,"902":1,"911":1,"922":1,"986":1,"1014":1,"1021":2,"1037":1,"1049":1,"1073":1,"1074":2,"1078":1,"1080":1,"1081":1,"1094":1,"1121":1,"1130":1,"1154":3,"1179":2,"1200":1,"1305":1,"1379":1,"1398":1,"1401":1,"1404":1,"1406":1,"1599":1,"1703":1,"1743":1,"1746":1,"1768":2,"1774":1,"1781":1,"1792":20,"1856":1,"1911":1,"1927":1,"1928":1,"1929":1,"1954":1,"1961":1,"2007":1,"2092":1,"2106":2,"2112":1,"2123":2,"2128":3,"2130":5,"2153":1,"2157":1,"2158":1,"2167":1,"2221":3,"2270":1,"2274":1,"2320":2,"2328":1,"2330":1,"2337":1,"2346":1,"2347":1,"2367":1,"2372":2,"2402":1,"2434":1,"2438":2,"2450":1,"2466":2,"2476":1,"2502":1,"2525":1,"2527":2,"2529":1,"2532":2,"2533":1,"2537":3,"2541":1,"2542":1,"2543":1,"2549":3,"2572":1,"2633":1,"2634":2,"2649":1,"2664":1,"2679":2,"2739":1,"2742":1,"2767":1,"2774":1,"2795":1,"2800":1,"2811":1,"2828":2,"2832":1,"2860":1,"2865":1,"2874":1,"2878":1,"2881":1}}],["prone",{"2":{"1378":1}}],["profiling",{"2":{"2088":1}}],["profile`",{"2":{"1792":2}}],["profiled",{"2":{"1421":1}}],["profiles`",{"2":{"1792":1}}],["profiles",{"0":{"1066":1,"1150":1,"1519":1,"2380":2,"2445":1},"1":{"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1520":1,"1521":1,"1522":1,"1523":1,"1524":1,"1525":1,"1526":1,"1527":1,"1528":1,"1529":1,"2381":2},"2":{"101":1,"102":1,"104":1,"106":1,"107":1,"108":2,"110":1,"815":1,"869":1,"1037":1,"1067":4,"1101":2,"1150":6,"1510":1,"1511":3,"1519":1,"1520":1,"1521":1,"1522":2,"1528":1,"1529":1,"1792":6,"1948":1,"2153":1,"2225":1,"2378":1,"2380":8,"2381":2,"2440":1,"2442":1,"2445":1,"2532":1,"2541":1}}],["profile",{"0":{"101":1,"711":1,"969":1,"1521":1,"1533":1,"2380":1},"1":{"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"2381":1},"2":{"16":3,"19":2,"101":4,"102":3,"104":3,"105":5,"106":2,"107":1,"108":8,"109":5,"110":2,"111":1,"116":2,"123":2,"230":2,"251":3,"374":4,"376":2,"706":2,"711":4,"800":1,"815":2,"860":2,"868":2,"869":1,"873":1,"1067":5,"1101":1,"1142":3,"1150":11,"1398":8,"1399":5,"1406":1,"1511":2,"1519":1,"1520":4,"1521":1,"1522":5,"1523":1,"1525":1,"1527":9,"1529":5,"1533":5,"1535":2,"1691":1,"1695":1,"1792":11,"1842":2,"2036":1,"2097":1,"2106":1,"2167":1,"2187":4,"2205":1,"2225":1,"2314":1,"2327":2,"2380":15,"2381":6,"2400":1,"2445":3,"2531":1,"2533":1,"2537":3,"2545":1,"2546":1,"2580":2,"2869":2,"2873":1}}],["proficient",{"2":{"1405":1}}],["profit",{"2":{"1203":1}}],["profound",{"2":{"913":1,"919":2}}],["prod",{"0":{"1417":1},"1":{"1418":1,"1419":1,"1420":1,"1421":1},"2":{"868":2,"873":1,"1037":1,"1418":1,"1420":1}}],["producing",{"2":{"1792":1,"1917":1,"2222":1,"2517":1,"2588":1,"2696":1,"2812":1}}],["produced",{"2":{"864":1,"874":1,"1417":1,"1567":1,"1825":1,"2170":1,"2171":1,"2384":1,"2415":1}}],["produce",{"2":{"386":1,"567":2,"587":1,"871":1,"930":2,"1135":1,"1193":1,"1373":1,"1412":1,"1792":2,"1925":1,"2265":1,"2297":1,"2337":1,"2340":1,"2348":1,"2456":1,"2589":2,"2679":1,"2696":1}}],["produces",{"2":{"304":1,"308":1,"348":1,"586":1,"872":1,"971":1,"1406":2,"1431":1,"1856":1,"2180":1,"2319":2,"2358":1,"2391":1,"2529":1,"2648":1,"2842":1}}],["productid",{"2":{"1044":1,"1045":1}}],["productivity",{"0":{"871":1},"1":{"872":1},"2":{"871":1,"1382":1,"1385":1,"1386":1,"1404":1}}],["production",{"0":{"1177":1,"1204":1,"1420":1,"1581":1,"1779":1,"2067":1,"2804":1},"2":{"2":1,"121":1,"307":1,"690":1,"837":1,"838":1,"864":1,"865":1,"866":1,"867":2,"868":1,"872":1,"875":1,"877":2,"926":1,"947":1,"967":1,"972":1,"983":1,"997":1,"1001":1,"1005":1,"1009":1,"1037":5,"1049":1,"1054":1,"1064":1,"1065":1,"1066":1,"1067":1,"1071":1,"1111":1,"1135":1,"1146":1,"1172":1,"1179":1,"1198":1,"1204":1,"1205":2,"1206":1,"1220":1,"1335":1,"1381":2,"1382":2,"1383":1,"1402":2,"1412":1,"1414":1,"1417":1,"1420":5,"1448":1,"1457":1,"1483":1,"1502":1,"1505":1,"1534":1,"1598":1,"1615":1,"1633":1,"1641":1,"1646":1,"1658":1,"1663":1,"1664":1,"1678":1,"1716":1,"1792":5,"1799":1,"1810":1,"1811":1,"1863":1,"1870":1,"1875":1,"1900":1,"1907":2,"1911":1,"1931":1,"1944":1,"1983":1,"1995":1,"2007":1,"2052":1,"2059":1,"2080":1,"2089":1,"2116":1,"2117":2,"2132":1,"2157":1,"2177":1,"2254":1,"2297":1,"2328":1,"2346":1,"2351":1,"2384":2,"2393":1,"2434":1,"2452":1,"2492":1,"2529":1,"2543":1,"2635":1,"2684":2,"2701":1,"2702":2,"2750":1,"2772":1,"2798":1,"2804":2,"2868":1,"2876":1}}],["productname",{"2":{"814":2}}],["products",{"2":{"9":1,"250":6,"254":2,"255":2,"256":2,"257":2,"814":1,"837":1,"898":1,"1038":3,"1042":1,"1044":1,"1045":1,"1138":2,"1139":6,"1179":1,"1429":1,"1531":3,"1532":2,"1575":2,"2214":1,"2277":10,"2555":3,"2726":1}}],["product",{"2":{"1":1,"9":1,"254":2,"256":2,"257":2,"324":2,"814":5,"836":1,"852":1,"866":1,"872":1,"877":1,"948":1,"1037":1,"1038":1,"1044":1,"1045":3,"1138":3,"1179":2,"1187":1,"1188":1,"1189":1,"1191":3,"1192":2,"1373":1,"1381":1,"1382":7,"1383":1,"1424":1,"1427":1,"1429":1,"1432":1,"1531":1,"2164":1,"2214":1,"2277":6,"2389":1}}],["proof",{"2":{"857":1,"877":1,"1792":1}}],["prominently",{"2":{"1823":1,"2533":1}}],["promised",{"2":{"859":1}}],["promise",{"2":{"429":2,"615":2,"894":2,"938":2,"995":2,"1024":1,"1026":1,"1108":1,"1317":1,"1342":1,"1366":2,"1386":1,"1408":2,"1410":2,"1416":2,"1567":1,"1568":1,"1569":1,"1571":1,"2247":2,"2310":2,"2313":3,"2339":2,"2357":1,"2359":2,"2389":1}}],["promoteallscalars=true",{"2":{"1202":1}}],["promoteheaders",{"2":{"1202":1}}],["promotedheaders",{"2":{"1202":2}}],["promoted",{"2":{"851":1}}],["prompts",{"2":{"1202":1,"1401":1}}],["prompted",{"2":{"1200":1,"1832":1,"1833":1}}],["prompting",{"2":{"1068":1,"1400":1}}],["prompt",{"2":{"1044":1,"1105":2,"1792":1}}],["provoking",{"2":{"913":1,"919":2}}],["proving",{"2":{"2490":1,"2545":1,"2546":1}}],["provisioning",{"2":{"1170":1}}],["provisional",{"2":{"855":1}}],["providing",{"2":{"463":1,"464":1,"986":1,"1185":1,"1188":1,"1866":1}}],["provider",{"0":{"1696":1},"1":{"1697":1},"2":{"1050":1,"1056":1,"1058":1,"1059":1,"1060":9,"1088":1,"1204":1,"1684":1,"1685":3,"1687":2,"1689":7,"1690":2,"1696":4,"1697":1,"1792":4,"2496":1}}],["providers",{"0":{"1048":1,"1059":1,"1690":1,"1697":1},"1":{"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1060":2,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1},"2":{"11":1,"25":1,"26":1,"28":1,"295":1,"1037":1,"1048":2,"1050":1,"1060":1,"1064":1,"1098":4,"1445":1,"1466":1,"1682":1,"1684":1,"1690":2,"1696":4,"1697":1,"1792":2,"1795":1,"1895":1,"2164":1,"2175":1,"2189":1,"2219":1,"2736":1}}],["provide",{"2":{"319":1,"364":1,"527":1,"587":1,"851":1,"975":1,"1096":1,"1229":1,"1335":1,"1394":1,"1515":1,"1664":1,"1792":1,"1879":1,"2274":1}}],["provides",{"2":{"308":1,"363":1,"369":1,"375":1,"436":1,"534":1,"841":2,"873":1,"918":1,"994":1,"1015":1,"1100":4,"1107":1,"1140":1,"1147":1,"1151":1,"1211":1,"1218":1,"1223":1,"1335":1,"1343":1,"1398":1,"1446":1,"1450":1,"1453":1,"1511":1,"1620":1,"1765":1,"1792":5,"1840":1,"1868":1,"1940":1,"1974":1,"2045":1,"2160":1,"2164":1,"2168":1,"2177":1,"2332":1,"2531":1,"2581":1,"2607":1,"2614":1,"2634":1,"2635":1,"2701":1,"2772":1}}],["provided",{"2":{"63":1,"377":1,"408":1,"422":1,"462":2,"639":1,"646":2,"864":1,"869":1,"1234":2,"1252":1,"1620":1,"1884":1,"2247":2,"2333":1,"2665":1,"2848":1}}],["proves",{"2":{"1228":1,"1792":2,"1878":1,"2876":1}}],["proven",{"2":{"1122":1,"2167":1}}],["prove",{"2":{"844":1,"851":1}}],["probe",{"0":{"1767":1,"1768":1,"1774":1},"2":{"1764":2,"1770":1,"1774":1,"1792":5,"2459":1,"2461":1,"2466":1,"2634":7}}],["probes",{"2":{"868":2,"869":1,"1351":1,"1774":1,"1781":1,"1791":1,"1792":3,"1898":1,"2431":1,"2434":1,"2634":1}}],["probablybinary",{"2":{"1360":1}}],["probably",{"2":{"841":1,"868":1,"1073":1,"1129":1,"1395":1,"1396":1,"1401":1,"1403":1,"1405":1,"2391":1}}],["problemdetails",{"2":{"2558":1}}],["problems",{"2":{"857":1,"918":1,"1001":1,"1014":1,"1041":1,"1079":1,"1096":1,"1394":1,"1402":1,"1404":1,"2384":1}}],["problem",{"0":{"973":1,"1011":1,"1165":1,"1191":1,"1325":1,"1329":1},"2":{"109":1,"840":1,"841":6,"851":4,"852":3,"859":1,"861":1,"865":1,"879":1,"947":1,"1109":1,"1111":3,"1218":1,"1324":1,"1405":1,"1527":1,"1671":1,"1792":1,"2240":1,"2255":2,"2271":1,"2384":1,"2868":1}}],["programmatically",{"2":{"2148":1,"2389":1}}],["programmatic",{"0":{"2148":1},"2":{"1148":1,"1259":1,"2055":1,"2265":1,"2575":1,"2667":1}}],["programming",{"2":{"841":6,"843":2,"860":2,"1394":1}}],["program",{"2":{"867":1,"868":1,"869":1,"873":1,"922":1,"1403":1,"2409":1}}],["programs",{"2":{"848":1,"2438":1}}],["progressively",{"2":{"2160":1}}],["progressbar",{"2":{"894":1,"1361":1,"1410":1}}],["progress",{"2":{"641":1,"646":1,"658":1,"659":1,"868":1,"878":1,"880":1,"894":6,"907":1,"1037":2,"1352":1,"1361":1,"1366":7,"1367":1,"1410":8,"2164":1,"2833":1}}],["propagation",{"0":{"2615":1},"2":{"1181":1,"2236":1,"2576":1,"2615":3}}],["propagate",{"0":{"984":1},"2":{"1005":1,"1203":1,"1436":1,"2615":1}}],["propagated",{"2":{"974":1}}],["proprietary",{"2":{"1054":1,"1098":1,"1445":1,"1450":1,"1457":1,"1792":1,"2554":1}}],["prophetic",{"2":{"913":1,"919":2}}],["proportional",{"2":{"1974":2,"2607":2}}],["proposing",{"2":{"1101":1}}],["propose",{"2":{"851":1}}],["proposed",{"2":{"851":3}}],["proposes",{"2":{"1":1,"855":1}}],["proponent",{"2":{"859":1}}],["properly",{"2":{"863":2,"919":1,"959":1,"1279":1,"1717":1,"2265":1,"2372":1,"2555":2,"2572":1,"2586":1,"2588":1,"2589":3,"2611":2,"2615":2,"2641":1,"2645":1}}],["property",{"2":{"748":2,"762":1,"763":1,"772":1,"773":1,"841":1,"845":1,"856":1,"864":1,"975":1,"985":1,"996":2,"1005":1,"1386":2,"1409":1,"1419":1,"1618":1,"1620":2,"1792":12,"2141":1,"2222":1,"2254":2,"2257":1,"2266":2,"2357":1,"2378":1,"2380":1,"2482":2,"2519":1,"2527":1,"2532":1,"2558":1,"2575":1,"2621":1,"2635":1,"2642":2,"2670":1,"2862":1}}],["properties",{"0":{"2141":1},"2":{"748":2,"852":2,"996":4,"1069":1,"1386":1,"1567":1,"1569":1,"1792":2,"1948":1,"2141":1,"2399":1,"2487":1,"2575":1,"2621":2,"2666":1}}],["proper",{"2":{"334":1,"859":1,"917":1,"918":1,"919":1,"965":1,"993":1,"1096":1,"1097":1,"1189":1,"1204":1,"1373":1,"1391":1,"1403":2,"1928":1,"1967":1,"1974":2,"2247":1,"2267":2,"2520":1,"2549":1,"2588":1,"2590":1,"2603":1,"2607":2,"2611":1,"2615":3,"2855":1}}],["prose",{"0":{"323":1},"2":{"318":1,"319":3,"323":1,"324":1,"326":2,"706":1,"913":1,"1040":2,"1042":1,"1824":1,"2481":3,"2482":1}}],["proxied",{"2":{"394":1,"396":1,"1106":1,"1328":1,"1329":1}}],["proxies",{"0":{"1707":1},"2":{"263":2,"1014":1,"1100":1,"1323":1,"1334":1,"1703":2,"1706":1,"1707":1,"1713":1,"1717":2,"1792":3,"1930":1,"2633":3,"2815":1}}],["proxyrequesthandler",{"2":{"2615":1}}],["proxyhttptypeprobetest",{"2":{"2513":1,"2523":1}}],["proxytests",{"2":{"2513":1,"2523":1}}],["proxying",{"2":{"837":1,"1351":1,"2809":1}}],["proxyoptions",{"2":{"417":1,"422":3,"423":1,"430":3,"436":4,"441":1,"446":4,"448":1,"449":1,"455":1,"1105":1,"1340":1,"1341":1,"1431":1,"1792":1,"1916":1,"1927":1,"1929":1,"1931":1,"2222":1,"2306":1,"2308":3,"2346":1,"2517":1,"2522":1,"2549":2,"2808":1,"2811":2,"2814":2,"2815":1,"2817":1}}],["proxy",{"0":{"75":1,"263":1,"412":1,"416":1,"417":1,"418":1,"419":1,"421":1,"433":1,"440":1,"441":1,"442":1,"443":1,"445":1,"453":1,"454":1,"1070":1,"1105":1,"1328":1,"1330":1,"1337":1,"1338":1,"1341":1,"1344":1,"1351":1,"1915":1,"1919":1,"2300":2,"2310":1,"2313":1,"2346":1,"2404":1,"2517":1,"2549":1,"2580":1,"2806":1,"2808":1,"2813":1},"1":{"413":1,"414":1,"415":1,"416":1,"417":2,"418":2,"419":2,"420":2,"421":2,"422":1,"423":1,"424":1,"425":1,"426":1,"427":1,"428":1,"429":1,"430":1,"431":1,"432":1,"434":1,"435":1,"436":1,"437":1,"438":1,"439":1,"440":1,"441":2,"442":2,"443":2,"444":2,"445":2,"446":1,"447":1,"448":1,"449":1,"450":1,"451":1,"452":1,"453":1,"454":1,"455":1,"456":1,"457":1,"1329":1,"1330":1,"1331":2,"1332":2,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1341":1,"1342":1,"1343":1,"1344":1,"1345":2,"1346":2,"1347":2,"1348":2,"1349":1,"1350":1,"1351":1,"1916":1,"1917":1,"1918":1,"1919":1,"1920":2,"1921":2,"1922":1,"1923":1,"1924":1,"1925":1,"1926":1,"1927":1,"1928":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1934":1,"2301":2,"2302":2,"2303":2,"2304":2,"2305":2,"2306":2,"2307":2,"2308":2,"2309":2,"2807":1,"2808":1,"2809":1,"2810":1,"2811":1,"2812":1,"2813":1,"2814":1,"2815":1,"2816":1,"2817":1},"2":{"75":3,"77":1,"223":4,"261":2,"263":1,"266":4,"412":1,"413":4,"414":7,"415":2,"417":2,"418":2,"419":2,"420":2,"421":2,"422":1,"423":3,"424":1,"426":1,"427":1,"428":1,"429":3,"430":2,"431":5,"432":2,"433":2,"434":4,"435":2,"436":6,"438":4,"439":13,"441":2,"442":2,"443":2,"444":2,"445":3,"446":9,"447":7,"448":4,"449":2,"451":2,"452":6,"453":4,"454":7,"455":2,"456":5,"457":2,"480":1,"807":1,"835":1,"876":2,"1011":1,"1037":2,"1066":1,"1070":1,"1100":3,"1101":2,"1102":2,"1104":4,"1105":15,"1106":2,"1121":1,"1126":3,"1127":1,"1328":3,"1330":1,"1331":4,"1332":15,"1333":3,"1335":1,"1337":2,"1338":14,"1339":9,"1340":2,"1341":6,"1343":1,"1345":2,"1347":5,"1348":3,"1349":2,"1350":2,"1351":2,"1368":1,"1377":1,"1396":4,"1431":5,"1433":3,"1475":2,"1477":1,"1528":1,"1701":2,"1703":1,"1704":5,"1705":1,"1706":1,"1708":1,"1711":4,"1717":1,"1718":1,"1784":1,"1788":1,"1789":2,"1792":42,"1824":1,"1851":1,"1915":2,"1916":6,"1917":4,"1918":7,"1920":3,"1921":12,"1922":6,"1923":1,"1924":10,"1925":2,"1926":7,"1927":2,"1928":1,"1929":2,"1930":3,"1931":1,"1932":3,"1934":4,"1961":4,"2031":1,"2107":1,"2137":1,"2164":6,"2165":3,"2185":1,"2222":3,"2229":4,"2237":1,"2238":1,"2300":2,"2301":2,"2302":2,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":3,"2313":8,"2344":3,"2346":3,"2347":1,"2382":1,"2404":1,"2463":2,"2466":1,"2489":1,"2508":1,"2509":4,"2510":1,"2513":2,"2515":2,"2517":2,"2518":1,"2521":1,"2523":2,"2529":1,"2537":1,"2549":53,"2550":2,"2575":1,"2580":6,"2581":1,"2615":1,"2633":11,"2771":1,"2791":2,"2806":9,"2807":8,"2809":5,"2810":17,"2811":5,"2812":1,"2813":4,"2814":7,"2815":11,"2816":7,"2817":4,"2835":1,"2856":2,"2865":1,"2879":1,"2881":1}}],["prototyping",{"2":{"1403":1}}],["prototype",{"2":{"1123":1}}],["proto",{"2":{"1100":1,"1705":1,"1711":1,"1792":1,"2633":2}}],["protocols",{"2":{"844":1,"1323":1}}],["protocol",{"0":{"2324":1,"2481":1},"2":{"223":1,"317":1,"848":1,"868":2,"869":1,"1007":1,"1037":1,"1038":1,"1039":2,"1098":1,"1126":1,"1276":1,"1593":1,"1701":1,"1704":1,"1705":1,"1789":1,"1792":6,"1807":2,"1813":2,"1824":2,"1868":1,"2166":1,"2318":1,"2479":1,"2481":4,"2498":1,"2633":2,"2712":1,"2774":1,"2840":1}}],["prot",{"2":{"922":2,"1185":2}}],["protects",{"2":{"921":1,"1156":1,"1180":1,"1185":1,"1487":1,"1792":1}}],["protecting",{"0":{"933":1},"2":{"835":1,"843":1,"1162":1,"1448":1,"2175":1,"2189":1}}],["protection",{"0":{"944":1,"1054":1,"1649":1,"2029":1,"2291":1,"2462":1},"1":{"1650":1,"1651":1,"1652":1,"1653":1,"1654":1,"1655":1,"1656":1,"1657":1,"1658":1,"1659":1,"1660":1,"1661":1,"1662":1,"1663":1,"1664":1,"1665":1,"1666":1,"1667":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1},"2":{"182":2,"184":1,"188":1,"189":1,"191":1,"214":1,"868":2,"869":1,"877":1,"1054":9,"1065":1,"1098":4,"1100":1,"1101":2,"1147":3,"1177":1,"1180":1,"1181":1,"1185":1,"1213":1,"1217":1,"1430":1,"1493":1,"1496":1,"1511":1,"1515":4,"1649":1,"1650":3,"1651":4,"1655":7,"1656":1,"1657":1,"1659":1,"1662":1,"1663":2,"1664":1,"1743":1,"1788":2,"1792":15,"1795":2,"1823":1,"1874":1,"2030":1,"2044":1,"2222":1,"2224":1,"2230":1,"2274":3,"2291":2,"2292":1,"2296":1,"2297":4,"2421":1,"2459":3,"2461":1,"2462":1,"2481":1,"2495":1,"2502":1,"2551":4,"2565":1,"2580":1,"2757":2,"2765":1}}],["protect",{"2":{"182":1,"314":1,"316":1,"792":1,"841":1,"843":2,"845":2,"849":1,"851":1,"934":1,"1135":1,"1188":1,"1224":1,"1251":1,"1252":1,"1470":1,"1651":1,"1792":3,"1990":1,"2014":1,"2035":1,"2295":1,"2297":1,"2565":1,"2632":2}}],["protectedresourcemetadatapath",{"0":{"1831":1},"2":{"1792":1,"1814":1,"2481":1}}],["protected",{"0":{"9":1,"314":1,"924":1,"1833":1,"2214":1},"2":{"23":1,"24":1,"37":3,"41":1,"48":3,"51":1,"182":1,"306":1,"453":1,"478":1,"843":1,"922":1,"924":1,"1045":1,"1184":1,"1185":2,"1207":1,"1210":1,"1436":1,"1662":2,"1792":5,"1828":1,"1829":1,"1831":3,"2042":1,"2187":2,"2199":1,"2223":1,"2295":1,"2481":2}}],["pro",{"2":{"107":2,"1189":1,"1192":1,"1218":1,"1792":1,"2380":1,"2397":1}}],["projection=",{"2":{"1692":1,"1792":1}}],["projections",{"2":{"1046":1}}],["projection",{"2":{"852":1,"2482":1}}],["projects",{"2":{"175":1,"683":1,"920":1,"1076":1,"1382":1,"1385":2,"1403":1,"1566":1,"1582":1,"1792":1,"2389":1,"2392":2,"2590":1,"2860":1}}],["project",{"0":{"976":1,"2538":1},"2":{"1":1,"852":1,"856":1,"867":1,"868":1,"869":1,"871":1,"872":3,"873":2,"874":1,"876":3,"920":1,"977":1,"980":1,"990":1,"1107":1,"1254":1,"1385":1,"1400":1,"1401":2,"1402":1,"1404":1,"1406":1,"1409":1,"1414":1,"1421":1,"1792":1,"2030":1,"2156":1,"2258":2,"2389":1,"2392":1,"2406":1,"2479":1,"2542":1,"2632":1,"2776":1,"2786":1,"2872":1}}],["tcl",{"2":{"1972":1}}],["tcp",{"2":{"1254":1,"1259":1,"1746":1,"2347":2}}],["tmp",{"2":{"1792":1,"2123":1,"2127":2}}],["tmpfs",{"2":{"848":1}}],["tz=america",{"2":{"2456":1}}],["tz=utc",{"2":{"2452":1}}],["tz",{"0":{"2451":1},"2":{"1792":2,"1856":2,"2224":1,"2450":2,"2451":4,"2452":1,"2453":1,"2455":1,"2456":3}}],["t>",{"2":{"1386":1,"1408":1,"2359":1}}],["txt",{"2":{"1792":2,"1800":1,"1804":2}}],["tx",{"2":{"1154":1}}],["tls",{"2":{"1109":1,"1198":1,"1500":1,"1787":1,"1792":1,"1794":1,"2809":1}}],["tl",{"0":{"1074":1}}],["tbody",{"2":{"996":4}}],["tb",{"2":{"881":1,"922":1,"1088":1,"1184":1,"1185":1,"1220":2,"1221":2,"1222":2,"1255":1,"1305":1,"1333":1}}],["tue",{"2":{"1023":1}}],["tuple",{"0":{"2589":1},"2":{"916":1,"919":2,"966":1,"1097":1,"1792":2,"1967":1,"1974":3,"2050":1,"2270":2,"2397":1,"2586":2,"2588":1,"2589":1,"2603":3,"2607":3,"2611":1,"2635":2}}],["tuples",{"2":{"852":1,"2051":1}}],["tune",{"2":{"919":1,"2835":1}}],["tuned",{"2":{"868":1,"1382":1}}],["tuning",{"2":{"874":1,"958":1,"1180":1,"1181":1,"1792":1}}],["turing",{"2":{"860":1}}],["turning",{"2":{"831":1,"1373":1}}],["turn",{"0":{"1038":1,"1183":1,"2724":1},"1":{"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1},"2":{"327":1,"1016":1,"1037":2,"1083":1,"1095":1,"1208":1,"1383":1,"1384":3,"1386":1,"1792":2,"1834":1,"2154":1,"2479":1,"2544":1,"2806":1}}],["turned",{"2":{"300":1,"852":1,"868":1,"876":2,"2765":1,"2828":1}}],["turns",{"2":{"297":1,"832":1,"861":1,"863":1,"868":1,"947":1,"1037":1,"1038":1,"1099":1,"1302":1,"1327":1,"1382":1,"1431":1,"2107":1,"2113":1,"2155":1,"2171":1,"2176":1,"2535":1,"2537":1,"2713":2,"2766":1,"2802":1,"2879":1}}],["tutorials",{"0":{"1037":1},"2":{"849":1,"1405":1}}],["tutorial",{"2":{"791":1,"878":1,"1010":1,"1302":1,"1328":1,"1894":1,"2134":1,"2770":2,"2774":1,"2816":1,"2826":1,"2837":1}}],["twitter",{"2":{"1393":1}}],["twice",{"2":{"690":1,"845":4,"864":1,"865":1,"1082":1,"2529":1,"2815":1}}],["twelve",{"2":{"848":1}}],["twenty",{"2":{"840":2,"851":1,"857":1,"859":1}}],["two",{"0":{"831":2,"959":1,"1043":1,"1418":1,"2391":1},"1":{"832":2,"833":2,"834":2,"835":2,"836":2,"837":2,"838":2,"960":1},"2":{"1":1,"108":2,"121":1,"306":1,"307":2,"347":1,"560":1,"619":1,"622":1,"650":1,"663":1,"665":1,"667":1,"690":1,"699":1,"701":1,"841":9,"844":1,"845":4,"847":1,"849":1,"851":1,"852":2,"855":1,"856":1,"857":2,"860":1,"864":1,"865":2,"868":2,"871":1,"874":2,"876":1,"915":1,"916":1,"920":1,"927":1,"977":1,"1010":1,"1018":1,"1021":1,"1036":1,"1037":1,"1038":2,"1043":2,"1046":1,"1067":1,"1070":1,"1079":1,"1080":1,"1097":1,"1101":1,"1102":1,"1136":1,"1151":1,"1167":1,"1309":1,"1330":1,"1359":1,"1370":1,"1376":1,"1382":1,"1385":1,"1386":2,"1387":2,"1391":1,"1400":1,"1401":2,"1405":2,"1406":1,"1408":2,"1418":1,"1422":1,"1423":2,"1428":1,"1440":1,"1459":1,"1490":1,"1522":1,"1605":1,"1651":1,"1655":2,"1745":1,"1792":3,"1840":1,"1911":1,"2040":1,"2095":1,"2153":1,"2156":1,"2166":1,"2167":1,"2177":1,"2188":1,"2190":1,"2221":1,"2256":1,"2258":1,"2273":1,"2291":1,"2340":1,"2346":2,"2347":1,"2359":1,"2360":1,"2369":1,"2375":2,"2380":3,"2384":1,"2398":1,"2409":1,"2414":1,"2425":1,"2427":1,"2432":1,"2436":1,"2438":1,"2440":1,"2442":1,"2451":1,"2456":1,"2465":1,"2476":1,"2479":1,"2481":1,"2493":1,"2497":1,"2504":3,"2506":1,"2529":1,"2530":1,"2531":1,"2533":1,"2538":1,"2541":1,"2542":1,"2545":1,"2546":1,"2585":1,"2629":1,"2654":1,"2688":1,"2722":1,"2742":1,"2750":1,"2762":1,"2765":1,"2766":1,"2767":1,"2768":1,"2770":1,"2773":1,"2798":1,"2802":1,"2867":1,"2868":1,"2869":1,"2876":1}}],["t=hello",{"2":{"462":1,"463":1,"464":1,"466":1}}],["t=null",{"2":{"462":1,"463":1,"464":2}}],["t=",{"2":{"462":1,"463":1,"464":1,"466":1,"2438":1}}],["typing",{"2":{"704":1,"872":3,"1384":1,"1792":1,"2111":1,"2359":1,"2532":1,"2871":1}}],["typical",{"2":{"310":1,"869":1,"871":2,"918":1,"973":1,"1064":1,"1416":1,"1459":1,"1792":1,"2111":1,"2375":1,"2421":1,"2429":1,"2438":1,"2532":1,"2880":1}}],["typically",{"2":{"302":1,"316":1,"362":1,"512":1,"624":1,"679":1,"841":1,"968":1,"1011":1,"1015":1,"1064":1,"1132":1,"1165":1,"1206":1,"1219":1,"1236":1,"1412":1,"1447":1,"1685":1,"1792":6,"1801":1,"1869":1,"1870":1,"2075":1,"2313":1,"2430":1,"2438":1,"2854":1,"2878":1}}],["typo",{"0":{"2493":1},"2":{"390":1,"1080":1,"2414":1,"2416":2,"2417":1,"2447":1,"2529":1,"2754":1,"2865":1,"2881":1}}],["typos",{"2":{"388":1,"1609":1,"1792":1,"2225":1,"2380":1,"2389":1,"2413":1,"2416":1,"2428":1,"2444":1,"2445":1,"2446":2,"2493":1,"2659":1,"2696":1}}],["typecategorylookup",{"2":{"2621":1}}],["typecategory",{"2":{"2621":2}}],["type1",{"2":{"1792":2,"1968":2}}],["type=code",{"2":{"1691":1,"1692":1,"1694":1,"1695":1,"1697":1,"1792":4}}],["type=file",{"2":{"1366":1}}],["type=",{"2":{"938":2,"1061":5,"1491":1,"1792":1,"2039":1}}],["type=text",{"2":{"386":1,"493":1,"544":1}}],["typedescriptor",{"2":{"2370":1,"2504":1,"2611":4,"2621":2}}],["typed",{"2":{"583":1,"585":1,"833":1,"834":1,"835":3,"836":2,"837":1,"959":1,"995":1,"1020":1,"1024":1,"1037":2,"1038":2,"1043":3,"1104":1,"1105":1,"1126":1,"1342":1,"1381":1,"1382":1,"1406":1,"1407":1,"1410":2,"1581":1,"1605":1,"1924":1,"2166":1,"2223":1,"2310":1,"2337":2,"2357":4,"2496":1,"2497":2,"2498":1,"2509":1,"2513":1,"2590":3,"2611":1,"2688":1,"2826":1,"2830":1,"2836":1,"2838":1}}],["type>",{"2":{"370":6,"516":2,"582":1,"745":1,"1792":1}}],["type",{"0":{"75":1,"169":1,"373":1,"383":1,"515":1,"539":1,"585":1,"758":1,"952":1,"972":1,"981":1,"983":1,"984":1,"997":1,"1004":1,"1008":1,"1017":1,"1020":1,"1092":1,"1187":1,"1190":1,"1192":1,"1279":1,"1284":1,"1286":1,"1352":1,"1406":1,"1409":1,"1426":1,"1436":1,"1459":1,"1559":1,"1570":1,"1676":1,"1724":1,"1725":1,"1968":1,"2017":1,"2273":1,"2287":1,"2325":1,"2336":1,"2337":1,"2348":1,"2356":1,"2359":1,"2370":1,"2394":1,"2410":1,"2441":1,"2502":1,"2504":1,"2505":1,"2518":1,"2585":1,"2587":1,"2590":1,"2607":1,"2611":1,"2618":1,"2621":1,"2734":1,"2762":1,"2847":1},"1":{"516":1,"517":1,"518":1,"519":1,"520":1,"521":1,"522":1,"523":1,"524":1,"525":1,"526":1,"973":1,"974":1,"975":1,"976":1,"977":1,"978":1,"979":1,"980":1,"981":1,"982":2,"983":2,"984":2,"985":1,"986":1,"987":1,"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1,"995":1,"996":1,"997":1,"998":1,"999":1,"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1005":1,"1006":1,"1007":1,"1008":1,"1009":1,"1191":1,"1192":1,"1193":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1,"1725":1,"1726":1,"1727":1,"2288":1,"2289":1,"2290":1,"2411":1,"2412":1,"2413":1,"2442":1,"2443":1,"2444":1,"2586":1,"2587":1},"2":{"31":1,"33":1,"73":1,"74":2,"75":1,"77":3,"106":1,"107":1,"121":3,"128":2,"140":1,"166":3,"169":2,"201":1,"202":2,"203":1,"206":5,"207":3,"208":3,"209":6,"210":4,"211":4,"212":4,"213":6,"214":9,"215":1,"216":2,"223":1,"226":1,"227":1,"238":1,"260":1,"264":3,"266":2,"304":1,"310":1,"322":1,"328":1,"330":3,"332":4,"333":2,"334":8,"335":2,"336":1,"337":2,"370":2,"373":1,"375":1,"379":1,"383":9,"384":2,"385":1,"386":4,"387":1,"388":1,"390":2,"392":1,"394":1,"395":1,"396":1,"408":1,"415":1,"429":1,"436":1,"439":1,"447":3,"472":1,"476":1,"477":1,"478":1,"479":4,"480":2,"489":1,"490":1,"492":1,"493":5,"494":2,"496":1,"512":1,"515":3,"516":2,"520":2,"521":2,"522":4,"523":1,"524":1,"527":2,"529":1,"531":1,"532":1,"533":1,"539":3,"540":1,"543":1,"544":4,"545":1,"546":2,"576":1,"581":1,"582":7,"584":6,"587":3,"625":1,"683":1,"690":1,"691":2,"695":1,"696":1,"700":2,"705":1,"720":1,"747":3,"748":5,"758":2,"761":1,"762":5,"763":2,"768":1,"771":1,"772":5,"773":3,"776":1,"779":1,"781":2,"782":3,"784":3,"786":3,"788":2,"801":2,"803":1,"816":1,"817":2,"834":1,"835":1,"843":1,"845":2,"851":2,"871":2,"872":5,"875":1,"876":1,"880":2,"882":2,"887":3,"893":2,"894":1,"903":4,"904":1,"914":5,"915":9,"916":15,"917":3,"918":2,"920":1,"946":1,"947":1,"952":2,"968":2,"972":3,"974":1,"975":3,"976":2,"979":1,"981":1,"982":3,"983":1,"984":4,"985":2,"995":2,"996":4,"997":1,"998":4,"1005":2,"1009":2,"1010":2,"1016":3,"1017":1,"1019":6,"1020":3,"1023":3,"1027":1,"1029":2,"1030":3,"1031":4,"1032":1,"1033":1,"1034":3,"1036":2,"1037":9,"1065":1,"1067":3,"1068":2,"1069":4,"1073":2,"1078":1,"1080":3,"1084":1,"1086":2,"1092":1,"1094":1,"1096":1,"1097":4,"1098":2,"1100":1,"1102":1,"1104":1,"1105":13,"1107":1,"1111":1,"1121":2,"1126":1,"1127":1,"1141":1,"1145":1,"1146":1,"1147":2,"1150":7,"1158":1,"1159":1,"1160":1,"1161":1,"1162":6,"1167":1,"1168":1,"1174":1,"1175":1,"1177":2,"1187":4,"1189":3,"1190":3,"1192":5,"1193":14,"1207":1,"1232":2,"1234":2,"1236":1,"1237":2,"1239":3,"1245":1,"1255":1,"1280":1,"1341":3,"1350":1,"1355":6,"1357":1,"1359":1,"1360":2,"1362":6,"1364":1,"1366":2,"1368":1,"1373":2,"1375":1,"1376":1,"1378":2,"1382":2,"1386":5,"1390":2,"1391":1,"1394":1,"1395":1,"1396":3,"1398":11,"1399":8,"1402":1,"1403":2,"1405":3,"1406":2,"1407":1,"1408":3,"1409":3,"1410":2,"1412":2,"1413":1,"1416":2,"1418":1,"1419":3,"1423":1,"1424":1,"1426":5,"1430":1,"1431":4,"1432":1,"1434":1,"1436":4,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1,"1447":1,"1451":1,"1452":1,"1454":1,"1456":1,"1458":3,"1459":2,"1460":1,"1470":2,"1471":2,"1472":1,"1473":1,"1474":4,"1475":1,"1477":3,"1479":1,"1480":2,"1489":1,"1499":1,"1501":1,"1510":1,"1511":6,"1513":1,"1514":1,"1515":2,"1516":1,"1520":4,"1521":2,"1522":2,"1523":1,"1527":1,"1529":4,"1534":2,"1540":2,"1544":2,"1554":2,"1555":1,"1556":1,"1558":2,"1559":4,"1560":1,"1561":1,"1562":1,"1563":1,"1564":1,"1565":1,"1568":1,"1569":2,"1570":2,"1571":3,"1580":1,"1588":1,"1589":1,"1604":1,"1605":1,"1618":1,"1623":1,"1628":1,"1631":1,"1639":1,"1643":1,"1646":1,"1651":1,"1669":5,"1670":3,"1671":3,"1672":1,"1673":4,"1676":2,"1677":1,"1678":7,"1684":1,"1686":1,"1687":1,"1688":1,"1696":1,"1703":1,"1721":1,"1722":5,"1723":3,"1725":3,"1726":2,"1727":3,"1728":1,"1730":4,"1731":2,"1732":5,"1733":3,"1736":4,"1738":1,"1740":6,"1741":1,"1742":2,"1743":5,"1744":5,"1747":1,"1748":2,"1750":2,"1753":1,"1759":1,"1764":1,"1792":119,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1809":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1837":1,"1838":1,"1840":1,"1841":1,"1843":1,"1844":1,"1846":1,"1848":1,"1849":1,"1850":1,"1852":1,"1853":1,"1856":1,"1857":1,"1861":1,"1862":3,"1864":1,"1874":1,"1875":1,"1877":1,"1882":1,"1884":1,"1886":1,"1887":2,"1888":2,"1893":1,"1898":1,"1902":1,"1903":1,"1904":1,"1905":1,"1906":6,"1907":2,"1911":1,"1912":1,"1916":1,"1917":1,"1918":3,"1921":1,"1922":3,"1923":2,"1924":3,"1925":2,"1937":1,"1949":1,"1951":3,"1952":3,"1953":3,"1954":3,"1955":6,"1956":1,"1957":3,"1958":3,"1959":2,"1960":8,"1961":2,"1967":3,"1968":1,"1973":4,"1974":21,"1980":1,"2000":2,"2007":1,"2010":3,"2016":2,"2017":1,"2034":1,"2038":1,"2047":1,"2074":1,"2075":1,"2077":1,"2086":1,"2093":1,"2094":1,"2098":1,"2109":2,"2110":1,"2117":1,"2124":1,"2125":3,"2126":2,"2127":2,"2128":1,"2129":1,"2130":1,"2131":1,"2138":1,"2139":1,"2140":1,"2141":2,"2142":4,"2144":3,"2145":2,"2146":8,"2148":3,"2154":1,"2164":9,"2165":3,"2184":1,"2185":1,"2193":1,"2202":1,"2204":2,"2207":2,"2217":1,"2221":2,"2222":7,"2225":1,"2226":1,"2228":1,"2230":1,"2236":3,"2247":2,"2253":1,"2254":5,"2255":10,"2257":4,"2258":4,"2259":1,"2264":20,"2267":2,"2270":1,"2271":2,"2273":1,"2274":1,"2279":1,"2282":1,"2283":2,"2285":1,"2286":1,"2287":1,"2288":6,"2289":1,"2290":2,"2303":1,"2310":1,"2321":4,"2322":3,"2323":3,"2324":3,"2325":1,"2328":1,"2329":3,"2330":2,"2333":1,"2335":1,"2336":4,"2337":10,"2346":7,"2348":7,"2356":1,"2359":5,"2360":1,"2364":1,"2369":1,"2370":3,"2372":2,"2375":7,"2378":4,"2379":9,"2380":9,"2381":2,"2383":1,"2394":5,"2398":3,"2410":3,"2412":7,"2413":4,"2417":3,"2421":1,"2422":1,"2427":3,"2431":1,"2434":1,"2436":1,"2440":1,"2441":2,"2443":8,"2444":2,"2445":2,"2446":1,"2447":2,"2457":1,"2470":3,"2471":2,"2483":3,"2484":2,"2489":1,"2493":2,"2495":1,"2496":2,"2497":1,"2500":1,"2502":7,"2504":10,"2506":1,"2509":2,"2510":2,"2511":1,"2512":2,"2513":2,"2515":1,"2517":1,"2518":2,"2519":1,"2520":2,"2521":1,"2522":1,"2523":3,"2529":4,"2530":4,"2534":1,"2537":1,"2540":5,"2543":1,"2546":3,"2549":5,"2555":1,"2575":9,"2580":1,"2586":4,"2587":7,"2590":5,"2597":1,"2600":1,"2607":21,"2608":1,"2621":7,"2632":3,"2656":1,"2665":1,"2687":1,"2688":1,"2702":1,"2722":1,"2726":2,"2734":2,"2759":3,"2760":4,"2762":9,"2763":5,"2764":2,"2765":2,"2766":5,"2767":4,"2768":3,"2769":2,"2775":1,"2810":3,"2812":1,"2814":1,"2815":1,"2816":1,"2824":1,"2826":1,"2840":1,"2845":3,"2846":1,"2847":3,"2849":1,"2854":6,"2855":1,"2857":1,"2858":1,"2865":2,"2866":2,"2868":1,"2872":1,"2873":1}}],["typescripttypescripttype",{"2":{"1386":1,"2359":1}}],["typescripttypescriptconst",{"2":{"1024":1,"1410":1}}],["typescripttypescriptif",{"2":{"1364":1}}],["typescripttypescriptinterface",{"2":{"920":1,"1024":1,"1567":1,"2357":1,"2590":1,"2611":2}}],["typescripttypescriptimport",{"2":{"894":1,"961":1,"996":1,"1318":1,"1321":1,"1342":1,"1361":1,"1409":1}}],["typescripttypescriptexport",{"2":{"723":1,"1410":1,"1413":1,"1416":1,"1568":1,"1569":1,"1571":1,"1572":1,"1573":1,"1574":1,"1575":1,"2655":1}}],["typescripttypescript",{"2":{"429":1,"894":1,"938":1,"961":1,"995":1,"1063":1,"1107":1,"1193":1,"1218":1,"1317":1,"1326":1,"1335":1,"1342":1,"1366":1,"1408":1,"1569":1,"1570":1,"1574":1,"2247":1,"2310":1,"2313":1,"2359":1}}],["typescript",{"0":{"163":1,"429":1,"894":1,"961":1,"972":1,"995":1,"1024":1,"1317":1,"1342":1,"1352":1,"1406":1,"2519":1},"1":{"973":1,"974":1,"975":1,"976":1,"977":1,"978":1,"979":1,"980":1,"981":1,"982":1,"983":1,"984":1,"985":1,"986":1,"987":1,"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1,"995":1,"996":1,"997":1,"998":1,"999":1,"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1005":1,"1006":1,"1007":1,"1008":1,"1009":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1},"2":{"74":1,"163":1,"164":1,"381":1,"429":1,"615":1,"679":1,"681":1,"718":2,"720":2,"722":1,"725":1,"727":1,"792":1,"833":1,"834":1,"835":1,"837":1,"867":2,"868":2,"869":2,"871":3,"872":2,"873":2,"875":1,"876":1,"878":1,"879":1,"880":1,"894":1,"909":1,"910":1,"912":1,"914":1,"915":1,"917":1,"918":2,"920":1,"938":1,"957":1,"968":1,"972":3,"975":5,"978":1,"981":1,"982":1,"984":2,"985":2,"996":3,"997":1,"1000":1,"1005":3,"1006":3,"1009":1,"1020":1,"1026":2,"1027":1,"1036":1,"1037":8,"1042":1,"1043":1,"1080":1,"1086":1,"1094":3,"1095":1,"1097":4,"1104":1,"1107":2,"1108":3,"1115":1,"1121":1,"1127":1,"1193":1,"1211":1,"1218":1,"1302":1,"1304":1,"1317":1,"1322":1,"1352":2,"1355":2,"1361":1,"1366":4,"1367":1,"1368":1,"1378":1,"1379":1,"1381":1,"1385":1,"1386":3,"1391":1,"1394":1,"1401":1,"1405":1,"1406":3,"1407":2,"1408":2,"1409":3,"1411":1,"1412":1,"1414":1,"1419":1,"1421":1,"1422":2,"1436":1,"1552":1,"1558":1,"1559":1,"1566":1,"1567":2,"1580":2,"1582":1,"1583":1,"1585":1,"1789":1,"1792":4,"1796":1,"1868":1,"2081":1,"2157":1,"2162":1,"2164":2,"2165":1,"2168":3,"2221":1,"2222":2,"2247":3,"2267":1,"2273":2,"2278":2,"2310":1,"2313":1,"2333":1,"2339":1,"2356":1,"2357":1,"2358":1,"2359":2,"2360":1,"2364":1,"2391":2,"2484":1,"2489":1,"2515":1,"2519":1,"2520":1,"2527":1,"2543":1,"2562":1,"2566":1,"2590":5,"2611":2,"2641":1,"2648":1,"2654":1,"2655":1,"2714":1,"2723":1,"2742":1,"2772":1,"2775":1,"2826":2,"2830":1,"2836":1,"2838":1,"2848":1,"2857":1,"2862":1,"2878":1}}],["types",{"0":{"201":1,"264":1,"334":1,"335":1,"746":1,"912":1,"915":1,"982":1,"1010":1,"1016":1,"1019":1,"1035":1,"1097":1,"1144":1,"1375":1,"1423":1,"1474":1,"1512":1,"1580":1,"1723":1,"1765":1,"1943":1,"1950":1,"1957":1,"1973":1,"1974":1,"2140":1,"2217":1,"2264":1,"2345":1,"2346":1,"2359":1,"2586":1,"2759":1},"1":{"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"913":1,"914":1,"915":1,"916":1,"917":1,"918":1,"919":1,"920":1,"1011":1,"1012":1,"1013":1,"1014":1,"1015":1,"1016":1,"1017":1,"1018":1,"1019":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1145":1,"1146":1,"1147":1,"1424":1,"1425":1,"1426":1,"1427":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"1434":1,"1513":1,"1514":1,"1515":1,"1766":1,"1767":1,"1768":1,"2346":1,"2347":1,"2348":1,"2760":1,"2761":1,"2762":1,"2763":1,"2764":1,"2765":1,"2766":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1},"2":{"22":1,"34":1,"41":1,"119":1,"120":1,"121":1,"186":1,"188":2,"202":2,"212":1,"215":1,"216":1,"217":1,"223":2,"258":1,"261":2,"266":1,"315":1,"334":2,"335":1,"337":3,"338":1,"369":1,"373":1,"378":1,"383":2,"384":1,"387":2,"388":1,"390":1,"394":1,"396":1,"535":1,"583":2,"585":2,"587":2,"746":1,"747":4,"753":4,"757":4,"758":1,"781":2,"782":2,"784":2,"786":2,"788":2,"801":1,"829":1,"835":1,"845":1,"868":1,"871":1,"873":1,"875":2,"876":1,"879":3,"910":1,"912":6,"914":5,"915":5,"916":8,"917":3,"918":5,"919":1,"920":2,"951":1,"952":1,"968":1,"971":1,"973":1,"974":1,"978":1,"982":1,"983":3,"984":1,"985":1,"995":1,"1000":1,"1004":1,"1005":2,"1006":2,"1008":2,"1009":1,"1010":1,"1015":1,"1016":2,"1019":1,"1022":1,"1026":1,"1029":1,"1030":1,"1035":1,"1036":2,"1037":6,"1068":1,"1069":1,"1080":1,"1092":3,"1097":13,"1099":1,"1104":2,"1105":3,"1108":2,"1126":1,"1127":1,"1129":1,"1156":1,"1167":1,"1192":1,"1193":10,"1255":2,"1279":1,"1322":1,"1338":1,"1358":4,"1366":1,"1375":1,"1376":2,"1377":2,"1378":1,"1385":1,"1386":2,"1390":2,"1391":1,"1394":1,"1398":3,"1399":1,"1401":1,"1404":1,"1405":1,"1407":1,"1408":1,"1419":1,"1423":1,"1434":2,"1436":1,"1437":1,"1458":1,"1460":1,"1477":1,"1517":1,"1522":1,"1559":7,"1571":4,"1686":1,"1720":2,"1722":2,"1723":1,"1739":1,"1745":1,"1748":1,"1765":1,"1787":1,"1789":1,"1792":36,"1794":1,"1796":1,"1824":1,"1901":1,"1933":1,"1937":2,"1943":1,"1950":1,"1967":1,"1968":1,"1973":1,"1974":7,"2038":1,"2125":1,"2140":1,"2156":2,"2164":7,"2165":3,"2183":1,"2189":1,"2223":1,"2228":1,"2239":1,"2247":2,"2254":1,"2255":1,"2257":1,"2258":1,"2261":2,"2264":11,"2265":1,"2267":2,"2274":1,"2277":1,"2282":1,"2287":1,"2293":1,"2296":2,"2314":1,"2318":1,"2321":2,"2324":4,"2325":1,"2329":2,"2332":1,"2333":1,"2338":1,"2344":2,"2346":2,"2347":1,"2348":1,"2357":2,"2359":1,"2371":1,"2375":2,"2394":1,"2397":1,"2421":2,"2422":1,"2450":1,"2484":5,"2500":2,"2504":2,"2506":1,"2542":2,"2543":1,"2575":1,"2585":1,"2586":5,"2588":2,"2589":3,"2590":2,"2597":1,"2603":2,"2607":8,"2608":3,"2611":3,"2618":1,"2621":1,"2626":1,"2634":1,"2641":3,"2670":1,"2759":3,"2761":1,"2769":1,"2770":1,"2771":1,"2773":1,"2774":1,"2817":1,"2840":1,"2856":2,"2857":1,"2858":1}}],["td>",{"2":{"996":4}}],["td>$",{"2":{"996":4}}],["tdd",{"0":{"1081":1},"2":{"994":1,"1005":1,"1076":1,"1081":1,"1393":1}}],["td",{"2":{"297":1,"836":1,"965":1,"1792":1,"2073":1,"2075":1,"2080":1,"2171":1,"2760":1,"2807":1,"2828":1}}],["tsts",{"2":{"1431":1}}],["tstsconst",{"2":{"666":1}}],["tsqlt",{"2":{"1075":1}}],["tsc",{"2":{"1005":1,"1407":1,"1419":1,"1422":1}}],["tsclienttests",{"2":{"2523":1}}],["tsclienttestproxypassthrough",{"2":{"2313":1}}],["tsclientoptions",{"2":{"2520":1}}],["tsclient",{"0":{"718":1,"1411":1,"2247":1,"2273":1,"2278":1,"2310":1,"2313":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2484":1,"2562":1,"2566":1,"2590":1,"2611":1,"2654":1,"2655":1,"2656":1},"1":{"719":1,"720":1,"721":1,"722":1,"723":1,"724":1,"725":1,"726":1,"727":1,"1412":1,"1413":1,"1414":1,"1415":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2655":1,"2656":1},"2":{"163":1,"381":1,"429":1,"679":3,"681":2,"719":8,"720":9,"722":3,"723":2,"724":3,"726":2,"792":1,"868":1,"957":2,"961":1,"1037":1,"1374":1,"1406":1,"1411":1,"1412":3,"1413":2,"1414":4,"1415":6,"1583":1,"1585":1,"2081":2,"2228":1,"2229":1,"2233":1,"2240":1,"2247":3,"2273":1,"2277":1,"2278":3,"2310":1,"2313":2,"2333":1,"2357":1,"2364":2,"2484":1,"2489":1,"2523":1,"2555":1,"2569":1,"2590":2,"2611":1,"2641":1,"2655":1,"2656":2}}],["ts",{"2":{"836":1,"868":1,"894":1,"937":1,"961":1,"976":2,"985":2,"995":1,"996":2,"997":4,"998":2,"1026":2,"1043":1,"1044":1,"1062":1,"1107":2,"1108":1,"1209":1,"1211":1,"1218":1,"1252":1,"1255":1,"1318":1,"1321":1,"1335":1,"1342":1,"1361":1,"1406":1,"1407":2,"1408":2,"1409":3,"1414":3,"1416":4,"1417":2,"1418":2,"1419":2,"1420":2,"1422":2,"1431":1,"1559":4,"1570":4,"1571":6,"1574":1,"1577":5,"1579":1,"1580":1,"1581":4,"1582":1,"1792":4,"1868":1,"2247":1,"2391":1,"2407":1,"2484":3,"2519":1,"2520":1}}],["tsv",{"0":{"129":1,"602":1},"2":{"129":1,"490":2,"602":1}}],["ttls",{"2":{"1101":1,"1121":1,"1519":1,"1525":1}}],["ttl",{"0":{"107":1,"1525":1},"2":{"105":1,"108":1,"110":1,"123":1,"214":5,"230":1,"852":1,"1067":3,"1098":1,"1101":1,"1150":2,"1430":1,"1523":1,"1525":1,"1743":4,"1792":2,"2222":1,"2380":2,"2381":1,"2494":1,"2498":1,"2502":4,"2506":1,"2765":1}}],["tampered",{"2":{"2405":1}}],["taking",{"2":{"1645":1,"2459":1,"2543":1}}],["take",{"0":{"1025":1},"1":{"1026":1},"2":{"841":1,"844":1,"845":1,"849":1,"852":1,"860":1,"947":1,"1065":1,"1104":1,"1165":1,"1253":1,"1281":1,"1384":2,"2266":1,"2380":1,"2487":1}}],["takeaway",{"2":{"838":1}}],["takes",{"2":{"415":1,"422":1,"843":1,"852":1,"859":1,"861":1,"865":1,"1010":1,"1059":1,"1064":1,"1096":1,"1098":1,"1378":1,"1402":1,"1410":1,"1426":1,"1569":1,"1655":1,"1792":2,"1862":1,"2040":1,"2303":1,"2476":1,"2483":1,"2540":1,"2795":1,"2845":1,"2869":1}}],["taken",{"2":{"323":1,"386":1,"852":1,"866":1,"1368":1,"1408":1,"1566":1,"2309":1}}],["taught",{"2":{"1402":1}}],["tackling",{"2":{"1132":1}}],["tar",{"2":{"1118":3}}],["targeting",{"0":{"2833":1},"2":{"1792":1,"1961":1,"2634":1,"2827":1,"2831":1}}],["targets",{"2":{"1110":1,"1174":1,"1431":1,"1961":1,"2711":1,"2792":1}}],["targetarray",{"2":{"1026":2}}],["targetcurrencies",{"2":{"1026":5}}],["targetcurrenciescsv",{"2":{"1024":2}}],["targetcurrenciescsv=eur",{"2":{"1023":1}}],["targeted",{"2":{"77":1,"2490":1,"2523":1,"2834":1}}],["target",{"0":{"436":1,"1174":1,"1628":1,"2246":1,"2811":1},"2":{"75":1,"358":3,"362":1,"364":1,"421":1,"422":1,"423":1,"445":1,"446":3,"664":2,"665":3,"666":1,"836":1,"1019":1,"1021":6,"1174":1,"1175":1,"1176":2,"1313":1,"1376":8,"1628":1,"1792":4,"1830":1,"1961":3,"2223":1,"2240":1,"2246":1,"2266":2,"2395":1,"2437":1,"2489":1,"2496":1,"2504":1,"2513":1,"2523":1,"2806":1,"2808":1,"2811":3,"2834":5}}],["taht",{"2":{"920":1}}],["taylor",{"2":{"913":1}}],["talend",{"0":{"908":1}}],["talks",{"2":{"1039":1}}],["talk",{"2":{"844":1,"847":1,"851":1,"1075":1,"1382":1,"1386":2,"1392":1,"1399":1,"1402":1}}],["talking",{"2":{"841":4,"844":1,"1401":1}}],["tailored",{"2":{"916":2}}],["tail",{"2":{"872":1,"2398":2}}],["taxonomies",{"2":{"2381":1}}],["taxonomy",{"2":{"2167":1,"2545":1}}],["tax",{"0":{"856":1},"2":{"861":5,"1382":2}}],["tasks",{"2":{"851":1}}],["task",{"2":{"574":1,"641":3,"646":1,"660":3,"871":2,"872":1,"1105":1,"1366":1,"1376":1,"1398":2,"1403":1,"1741":1,"1745":1,"1799":1,"1811":1,"2013":1,"2289":1,"2346":1,"2347":1,"2462":1,"2502":1,"2559":1,"2794":1}}],["tabs",{"2":{"2589":1}}],["tabular",{"2":{"971":1}}],["tab",{"0":{"490":1,"602":1},"2":{"490":1,"599":1,"767":1,"1068":1}}],["tableau",{"2":{"1206":1}}],["tableformatoptions",{"2":{"673":1,"958":1,"963":1,"964":1,"965":1,"1792":1,"2073":1,"2075":1,"2077":1,"2080":1,"2651":1,"2652":1}}],["tablesstatspath",{"2":{"1792":1,"2046":1,"2047":1,"2064":1,"2635":1}}],["tablespace",{"2":{"848":3}}],["tables",{"0":{"991":1,"1283":1,"2050":2,"2729":1},"1":{"1284":1,"1285":1},"2":{"238":1,"583":1,"673":1,"701":1,"834":1,"836":1,"848":2,"864":1,"865":1,"868":1,"874":1,"913":1,"918":1,"919":1,"922":2,"926":1,"945":1,"956":1,"966":2,"974":1,"976":3,"977":2,"991":1,"992":1,"993":1,"994":1,"1070":1,"1075":1,"1079":1,"1095":2,"1096":8,"1098":1,"1100":1,"1122":1,"1125":1,"1127":1,"1130":1,"1185":1,"1213":1,"1252":1,"1391":1,"1394":1,"1395":1,"1396":1,"1432":1,"1435":4,"1437":1,"1792":5,"1967":1,"2045":1,"2046":1,"2047":1,"2050":1,"2056":1,"2064":1,"2072":1,"2110":1,"2156":2,"2317":1,"2337":1,"2344":1,"2351":1,"2388":1,"2389":1,"2530":1,"2542":1,"2546":2,"2635":5,"2650":1,"2674":1,"2713":1,"2726":1,"2836":1,"2840":1,"2854":1,"2859":1,"2866":1,"2878":1}}],["table",{"0":{"161":1,"228":1,"673":1,"677":1,"958":1,"965":1,"1096":1,"2072":1,"2075":1,"2077":1,"2530":1,"2650":1,"2651":1,"2652":1,"2866":1},"1":{"674":1,"675":1,"676":1,"677":1,"678":1,"679":1,"680":1,"681":1,"682":1,"2073":1,"2074":1,"2075":1,"2076":2,"2077":1,"2078":2,"2079":2,"2080":1,"2081":1,"2082":1,"2083":1,"2651":1,"2652":1,"2653":1},"2":{"37":1,"38":1,"39":1,"119":1,"128":1,"136":1,"161":2,"164":2,"167":4,"186":1,"187":1,"212":1,"215":2,"228":2,"239":1,"298":1,"299":1,"309":1,"312":1,"313":1,"332":1,"333":1,"334":1,"335":1,"337":1,"366":1,"488":1,"489":1,"490":2,"491":1,"492":1,"493":1,"531":1,"583":1,"584":2,"587":1,"611":1,"673":5,"674":1,"675":7,"677":3,"678":1,"679":4,"680":1,"681":1,"682":1,"691":1,"692":1,"698":1,"699":1,"700":1,"701":1,"702":1,"720":1,"723":3,"726":2,"733":1,"734":1,"735":1,"736":1,"764":2,"774":2,"797":1,"798":1,"799":1,"833":1,"841":2,"844":1,"848":15,"851":1,"852":6,"860":1,"864":1,"865":1,"868":4,"872":2,"881":1,"912":1,"913":4,"914":2,"915":2,"916":8,"918":2,"922":1,"924":2,"932":1,"934":3,"936":1,"940":1,"941":1,"947":1,"949":2,"956":1,"957":4,"959":2,"960":3,"961":2,"964":1,"965":3,"966":4,"970":1,"971":1,"975":1,"977":2,"979":1,"980":2,"982":4,"983":3,"990":1,"991":2,"995":2,"996":5,"1037":1,"1050":2,"1054":1,"1055":1,"1057":1,"1060":1,"1064":1,"1065":1,"1068":2,"1071":1,"1076":2,"1078":1,"1084":1,"1096":1,"1099":2,"1105":1,"1107":1,"1110":1,"1111":1,"1122":1,"1125":1,"1126":2,"1127":1,"1133":1,"1149":1,"1154":1,"1184":1,"1185":2,"1190":1,"1191":3,"1192":1,"1193":4,"1197":2,"1202":1,"1203":1,"1213":5,"1214":1,"1215":1,"1216":1,"1232":1,"1234":1,"1236":1,"1239":1,"1254":1,"1255":1,"1258":1,"1307":4,"1308":1,"1310":1,"1336":1,"1355":3,"1367":1,"1368":1,"1374":3,"1376":5,"1378":2,"1385":5,"1387":1,"1395":2,"1396":6,"1412":1,"1413":2,"1427":1,"1431":1,"1436":2,"1437":1,"1441":2,"1458":3,"1504":1,"1547":1,"1567":1,"1632":3,"1655":2,"1664":1,"1688":1,"1689":1,"1742":1,"1789":2,"1792":21,"1929":1,"1973":1,"1974":1,"2007":1,"2047":1,"2050":1,"2054":1,"2059":1,"2072":4,"2074":2,"2075":7,"2076":4,"2077":3,"2078":2,"2079":3,"2081":2,"2083":1,"2094":1,"2099":1,"2109":3,"2110":4,"2156":1,"2164":2,"2165":3,"2167":1,"2176":1,"2183":1,"2184":1,"2187":2,"2195":1,"2221":1,"2233":1,"2247":1,"2283":1,"2290":1,"2293":1,"2294":1,"2322":4,"2323":1,"2328":1,"2329":2,"2337":2,"2339":1,"2372":1,"2375":3,"2389":1,"2438":1,"2498":1,"2527":1,"2529":1,"2530":5,"2537":2,"2542":2,"2546":1,"2572":1,"2586":4,"2587":1,"2588":1,"2607":1,"2621":2,"2635":5,"2650":2,"2651":2,"2652":1,"2653":2,"2656":2,"2726":1,"2729":1,"2768":1,"2775":1,"2802":1,"2803":1,"2810":1,"2815":1,"2836":1,"2839":1,"2849":1,"2855":2,"2856":1,"2858":1,"2860":1,"2862":1,"2865":1,"2866":2,"2868":1,"2869":6}}],["tag=smoke",{"2":{"710":2,"1792":1,"2092":1,"2097":1,"2537":1,"2877":1}}],["tagged",{"2":{"352":1,"668":1,"711":1,"1326":1,"1414":1,"1856":1,"2455":1,"2536":1}}],["tags",{"0":{"353":1,"683":1,"684":1,"711":1,"2877":1},"1":{"684":1,"685":1,"686":1,"687":1,"688":1},"2":{"175":6,"176":1,"179":5,"181":1,"223":4,"347":1,"348":2,"353":1,"355":2,"356":2,"683":2,"684":3,"685":1,"708":2,"709":1,"711":1,"1416":1,"1424":1,"1428":1,"1429":1,"1792":5,"1913":1,"2037":1,"2038":1,"2039":1,"2094":2,"2097":2,"2224":1,"2432":1,"2451":1,"2533":1,"2537":5,"2545":1,"2546":1,"2550":1,"2576":1,"2789":1,"2790":1,"2791":1}}],["tag2>",{"2":{"175":1,"179":1,"685":1}}],["tag1>",{"2":{"175":1,"179":1,"685":1}}],["tag",{"0":{"175":1,"352":1,"708":1,"2039":1,"2097":1},"1":{"709":1,"710":1,"711":1,"712":1},"2":{"175":3,"176":2,"177":1,"181":1,"223":1,"239":3,"320":3,"325":1,"327":1,"347":1,"348":5,"352":4,"355":3,"356":1,"378":1,"683":2,"684":1,"687":1,"688":2,"706":1,"708":1,"709":3,"710":1,"711":2,"712":1,"1042":2,"1792":11,"1834":1,"1913":2,"2040":1,"2075":1,"2093":1,"2094":1,"2097":3,"2107":1,"2114":1,"2167":2,"2221":3,"2223":1,"2225":1,"2323":1,"2333":1,"2367":2,"2419":1,"2430":2,"2432":5,"2435":4,"2476":1,"2481":3,"2482":3,"2487":1,"2533":2,"2537":7,"2545":1,"2546":2,"2869":1,"2870":3,"2873":1,"2877":2,"2879":1,"2882":1}}],["troubleshooting",{"0":{"2707":1,"2753":1,"2881":1},"1":{"2708":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2715":1,"2716":1,"2717":1,"2718":1,"2719":1,"2720":1,"2721":1,"2722":1,"2723":1,"2724":1,"2725":1,"2726":1,"2727":1,"2728":1,"2729":1,"2730":1,"2731":1,"2732":1,"2733":1,"2734":1,"2735":1,"2736":1,"2737":1,"2738":1,"2739":1,"2740":1,"2741":1,"2742":1,"2743":1,"2744":1,"2745":1,"2746":1,"2747":1,"2748":1,"2749":1,"2750":1,"2751":1,"2752":1,"2753":1,"2754":2,"2755":2,"2756":2,"2757":2,"2758":2}}],["tr>",{"2":{"996":2}}],["tr",{"2":{"996":1,"1333":2}}],["trygetvalue",{"2":{"2614":1}}],["trygetitem",{"2":{"2482":1}}],["tryparsetimetz",{"2":{"2451":1}}],["tryparsetime",{"2":{"2451":1}}],["tryparsetimestamptz",{"2":{"2451":1}}],["tryparsetimestamp",{"2":{"2451":1}}],["tryparsedate",{"0":{"2453":1},"2":{"2224":1,"2453":1}}],["tryparse",{"2":{"1792":1,"2451":2,"2452":1,"2453":2,"2455":1}}],["trying",{"2":{"1403":1,"1428":1}}],["try",{"0":{"1047":1,"1433":1,"2402":1},"2":{"844":1,"970":1,"1026":2,"1061":1,"1076":2,"1079":1,"1132":1,"1157":1,"1320":1,"1366":2,"1404":1,"1416":1,"1440":1,"1628":2,"1792":6,"1948":1,"1949":1,"1958":1,"1959":1,"1960":1,"2226":1,"2247":1,"2257":1,"2266":2,"2404":1,"2470":1,"2471":1,"2533":1}}],["tremendous",{"2":{"1403":1,"1404":1}}],["trees",{"2":{"848":1,"860":1,"954":1}}],["tree",{"2":{"843":1,"848":1,"852":2,"1382":1,"1409":1,"1792":1,"2095":2,"2105":1,"2106":1,"2153":1,"2157":1,"2159":1,"2537":3,"2538":1,"2541":1,"2543":2,"2545":1,"2878":1}}],["treatment",{"2":{"2440":1}}],["treating",{"2":{"876":1,"2411":1,"2494":1}}],["treat",{"2":{"859":1,"863":1,"921":1,"946":1,"1079":1,"1139":1,"1208":1,"1792":1,"2040":1,"2105":1,"2438":1,"2477":1,"2798":1}}],["treats",{"2":{"297":1,"788":1,"843":1,"1567":1,"2451":1,"2767":1}}],["treated",{"2":{"252":1,"383":1,"388":1,"528":1,"587":1,"706":1,"1139":1,"1923":1,"2252":1,"2283":1,"2414":1,"2420":1,"2444":1,"2505":1,"2648":1}}],["tri",{"2":{"1792":1,"2107":1}}],["tried",{"2":{"1075":1,"1402":1,"2608":1}}],["tries",{"2":{"904":2,"941":1,"1147":1,"1173":1,"2183":1}}],["trial",{"2":{"913":1}}],["triage",{"2":{"323":2}}],["trims",{"2":{"2861":1}}],["trimming",{"2":{"954":1}}],["trim",{"0":{"954":1},"2":{"888":2,"1021":1,"1026":1,"1318":1,"1376":1,"2528":1,"2861":1,"2864":1}}],["tripped",{"2":{"2468":1}}],["tripping",{"2":{"1041":1}}],["trips",{"2":{"854":1,"1440":1,"2456":2}}],["trip",{"2":{"852":2,"861":1,"874":1,"1070":2,"1076":1,"1102":2,"1137":1,"1370":1,"1439":1,"1792":1,"1850":1,"1852":1,"2282":1,"2320":1,"2383":2,"2398":1,"2496":1,"2498":1,"2546":1,"2767":1,"2774":1,"2811":1,"2850":1}}],["tricked",{"2":{"1185":1}}],["tricks",{"2":{"1079":1,"1792":1}}],["trick",{"2":{"851":1,"860":1}}],["trivial",{"2":{"832":1,"849":1,"1063":1,"1405":1}}],["triggering",{"2":{"2648":1}}],["triggered",{"2":{"1792":1,"1844":1}}],["triggers",{"2":{"663":3,"934":1,"983":1,"1035":1,"1106":1,"1107":1,"2106":1,"2156":1,"2184":1,"2537":1,"2542":1,"2767":1,"2802":1,"2830":1}}],["trigger",{"2":{"213":1,"390":1,"575":1,"663":4,"779":1,"961":1,"1104":1,"1108":1,"1332":1,"1337":1,"1338":1,"1413":1,"1589":1,"1609":1,"1623":1,"1741":1,"1768":1,"1792":4,"1925":1,"2156":1,"2289":1,"2542":1,"2634":1,"2661":1}}],["truly",{"2":{"1170":1,"1326":1}}],["truncating",{"2":{"994":1}}],["truncated",{"2":{"1620":1,"2491":1,"2498":1}}],["truncate",{"2":{"993":1}}],["truncates",{"2":{"308":1,"2177":1}}],["truthful",{"2":{"875":1,"1081":2}}],["truth",{"0":{"975":1,"1000":1},"2":{"844":4,"852":1,"872":1,"873":1,"875":1,"975":1,"1005":1,"1008":1,"1038":1,"1046":1,"1193":1,"1382":2,"1422":1}}],["trusts",{"2":{"1708":1}}],["trusting",{"2":{"1068":1}}],["trusted",{"2":{"933":1,"946":1,"1100":2,"1204":2,"1394":1,"1707":1,"1717":2,"1792":1,"2633":1}}],["trust",{"0":{"1716":1},"2":{"453":1,"1199":2,"1388":1,"1712":1,"1792":1,"2183":2,"2633":1,"2812":1}}],["true`",{"2":{"1792":3}}],["true|false>",{"2":{"719":7}}],["true",{"0":{"1569":1,"1570":1,"1571":1,"1572":1,"1573":1,"1576":1,"1577":1,"2342":1},"2":{"10":1,"31":1,"33":1,"38":2,"102":1,"106":2,"107":1,"121":2,"150":1,"210":1,"216":1,"256":1,"301":1,"306":1,"334":1,"336":2,"378":1,"430":2,"436":1,"447":1,"449":1,"455":1,"476":2,"477":2,"478":2,"479":2,"502":1,"577":1,"584":3,"586":1,"592":1,"624":1,"673":1,"679":2,"718":1,"720":3,"723":2,"733":6,"734":1,"735":1,"736":3,"737":2,"747":3,"752":1,"763":1,"766":1,"768":2,"770":1,"771":2,"773":3,"774":1,"775":2,"781":2,"782":2,"783":1,"784":4,"785":3,"786":3,"788":2,"789":1,"812":1,"813":1,"814":1,"815":1,"826":2,"827":1,"841":1,"852":1,"860":1,"876":1,"887":4,"889":6,"891":2,"900":2,"903":3,"904":1,"917":1,"919":1,"929":1,"937":4,"956":2,"957":2,"958":3,"961":1,"963":2,"965":1,"966":1,"967":2,"977":4,"979":3,"980":1,"982":1,"986":3,"988":3,"989":1,"990":1,"994":2,"1021":2,"1022":1,"1023":2,"1026":2,"1031":1,"1041":1,"1053":3,"1054":1,"1057":2,"1058":6,"1059":2,"1062":8,"1063":1,"1067":6,"1068":2,"1069":3,"1070":4,"1075":1,"1086":1,"1102":4,"1127":1,"1135":1,"1141":1,"1145":1,"1146":1,"1147":3,"1148":2,"1150":5,"1152":2,"1153":1,"1154":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":2,"1162":5,"1176":1,"1177":8,"1178":1,"1179":1,"1193":1,"1196":2,"1197":1,"1199":1,"1217":5,"1220":2,"1221":1,"1227":1,"1229":2,"1258":1,"1320":1,"1338":1,"1339":1,"1340":3,"1341":1,"1356":8,"1357":1,"1358":10,"1359":1,"1360":3,"1369":1,"1372":3,"1374":3,"1376":2,"1386":3,"1391":1,"1393":1,"1395":1,"1408":3,"1410":3,"1413":2,"1415":3,"1416":6,"1417":7,"1446":3,"1447":2,"1448":1,"1449":4,"1450":1,"1453":5,"1454":4,"1458":5,"1459":1,"1462":2,"1463":3,"1464":4,"1469":2,"1470":2,"1482":1,"1483":3,"1489":2,"1493":1,"1494":2,"1498":1,"1499":1,"1501":1,"1502":1,"1503":2,"1504":2,"1505":2,"1511":3,"1513":1,"1514":1,"1515":4,"1516":2,"1517":1,"1518":3,"1520":4,"1521":1,"1525":1,"1529":6,"1534":2,"1543":6,"1548":2,"1553":8,"1554":4,"1555":1,"1556":1,"1558":4,"1559":5,"1563":1,"1567":1,"1569":2,"1570":1,"1571":3,"1576":1,"1579":1,"1580":3,"1581":10,"1582":1,"1587":1,"1588":1,"1597":1,"1598":1,"1603":1,"1604":1,"1606":1,"1607":1,"1608":2,"1616":1,"1617":3,"1618":2,"1619":1,"1620":1,"1621":1,"1622":1,"1623":1,"1625":1,"1632":1,"1633":4,"1640":1,"1641":2,"1644":2,"1646":3,"1651":1,"1661":1,"1662":3,"1663":2,"1669":1,"1670":1,"1671":1,"1678":1,"1683":1,"1689":2,"1690":2,"1697":2,"1698":4,"1706":1,"1707":1,"1708":1,"1709":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1721":1,"1722":2,"1732":1,"1735":1,"1736":1,"1752":2,"1753":2,"1758":5,"1759":3,"1763":1,"1764":1,"1767":1,"1769":1,"1770":3,"1771":1,"1776":1,"1778":1,"1779":2,"1780":1,"1781":1,"1792":148,"1800":2,"1803":2,"1804":2,"1810":4,"1824":1,"1825":1,"1827":1,"1832":1,"1836":4,"1841":2,"1842":1,"1843":1,"1844":4,"1850":1,"1851":2,"1852":3,"1856":3,"1861":1,"1863":8,"1867":1,"1877":1,"1879":2,"1892":2,"1893":4,"1897":2,"1898":4,"1899":1,"1900":1,"1907":3,"1909":2,"1911":2,"1912":3,"1916":2,"1917":2,"1918":1,"1922":1,"1927":1,"1931":3,"1936":2,"1937":2,"1940":1,"1941":1,"1942":1,"1944":8,"1951":3,"1952":3,"1953":3,"1954":3,"1955":4,"1956":1,"1958":3,"1959":2,"1960":11,"1966":2,"1967":4,"1973":2,"1974":2,"1975":1,"1979":2,"1980":2,"1981":4,"1982":1,"1983":1,"1994":4,"1995":3,"1999":1,"2000":2,"2001":1,"2003":1,"2009":2,"2010":3,"2011":3,"2012":1,"2017":1,"2018":1,"2019":1,"2020":1,"2021":1,"2027":1,"2028":1,"2029":1,"2033":1,"2035":1,"2037":1,"2038":1,"2039":1,"2040":2,"2042":3,"2047":1,"2054":1,"2055":1,"2058":2,"2059":2,"2060":1,"2061":2,"2062":1,"2063":1,"2064":1,"2066":1,"2067":2,"2068":2,"2069":2,"2073":2,"2075":3,"2077":3,"2080":3,"2094":1,"2106":1,"2107":1,"2109":1,"2111":2,"2112":1,"2113":1,"2123":10,"2124":1,"2126":2,"2127":6,"2128":8,"2130":2,"2131":1,"2132":10,"2138":1,"2139":1,"2142":1,"2146":1,"2147":2,"2173":1,"2174":1,"2175":2,"2183":2,"2184":9,"2187":3,"2193":2,"2223":1,"2254":3,"2255":8,"2257":6,"2264":1,"2265":5,"2267":1,"2272":2,"2273":3,"2274":2,"2277":1,"2297":2,"2308":2,"2330":4,"2333":1,"2336":1,"2337":2,"2338":2,"2342":3,"2350":1,"2351":2,"2353":2,"2354":2,"2360":1,"2375":6,"2377":2,"2378":2,"2379":5,"2380":3,"2381":2,"2382":3,"2383":3,"2389":1,"2392":1,"2406":1,"2410":1,"2415":3,"2423":1,"2426":1,"2427":1,"2429":4,"2431":1,"2434":2,"2441":1,"2451":1,"2453":1,"2455":1,"2470":1,"2471":1,"2476":3,"2481":1,"2484":2,"2486":4,"2502":1,"2528":1,"2530":2,"2532":3,"2535":2,"2537":2,"2549":4,"2551":4,"2554":7,"2555":2,"2565":4,"2575":2,"2586":1,"2587":2,"2591":2,"2607":2,"2618":1,"2629":2,"2634":4,"2635":1,"2655":1,"2656":2,"2664":1,"2689":2,"2692":1,"2697":1,"2701":2,"2734":1,"2737":1,"2746":1,"2750":3,"2758":1,"2761":1,"2763":1,"2769":4,"2798":2,"2802":1,"2803":1,"2804":5,"2808":1,"2810":1,"2814":6,"2815":1,"2821":1,"2825":1,"2829":2,"2830":1,"2835":1,"2841":3,"2842":1,"2847":1,"2848":1,"2851":1,"2852":1,"2855":2,"2864":1,"2871":1,"2879":1,"2880":1,"2881":1}}],["trained",{"2":{"1403":1}}],["trailing",{"2":{"2529":1,"2531":1}}],["trail",{"2":{"1183":1,"1185":1,"1188":1,"1204":1,"1207":1,"2492":1}}],["trails",{"2":{"905":1}}],["tracing",{"2":{"1110":2}}],["traces",{"2":{"2384":1}}],["traced",{"2":{"1409":1}}],["traceid",{"0":{"1677":1},"2":{"1109":1,"1111":3,"1670":2,"1677":2,"1678":1,"1792":1,"2255":1,"2558":2}}],["trace",{"0":{"2405":1},"2":{"995":1,"1111":1,"1792":1,"1845":1,"2226":1,"2242":1,"2364":4,"2366":1,"2394":1,"2405":2,"2527":1,"2663":1,"2750":1,"2798":1,"2860":1}}],["tracks",{"2":{"2546":1}}],["tracked",{"2":{"2422":1}}],["tracker",{"2":{"849":1,"852":1}}],["track",{"2":{"879":1,"967":2,"1249":1,"1254":1,"1303":1,"1355":1,"1388":1,"1792":4,"2049":3,"2635":3}}],["trackingid",{"2":{"2040":1}}],["tracking",{"2":{"878":1,"880":1,"894":1,"905":1,"907":1,"1037":1,"1110":1,"1259":1,"1352":1,"1361":1,"1366":1,"1460":1,"1620":1,"1680":1,"1848":1,"2040":2,"2164":1,"2375":1,"2422":1,"2476":1}}],["traversal",{"2":{"860":1}}],["travels",{"2":{"852":1,"1925":1,"2517":1}}],["travel",{"2":{"75":1,"306":1,"974":1,"2182":1,"2521":1,"2537":1}}],["traditionally",{"2":{"1064":1}}],["traditional",{"0":{"879":1,"945":1,"968":1,"973":1,"1025":1,"1026":1,"1303":1,"1319":1,"1320":1,"1366":1},"1":{"969":1,"1026":1,"1320":1,"1321":1},"2":{"849":1,"879":1,"910":1,"911":1,"922":1,"941":1,"945":1,"948":1,"961":1,"968":2,"969":1,"1006":2,"1007":1,"1008":1,"1011":1,"1027":1,"1036":1,"1076":1,"1098":1,"1181":1,"1191":1,"1200":1,"1203":1,"1205":1,"1206":1,"1303":1,"1322":1,"1350":1,"1366":1,"1382":1,"1445":1,"2200":1}}],["tradeoffs",{"0":{"876":1},"2":{"876":2}}],["trade",{"2":{"88":1,"841":1,"1382":1,"1404":1,"2534":1}}],["traffic",{"0":{"1171":1},"2":{"307":1,"480":1,"1014":1,"1141":1,"1159":1,"1164":1,"1180":1,"1255":1,"1327":1,"1349":1,"1363":1,"1430":1,"1767":2,"1792":3,"1822":1,"1824":1,"2063":1,"2088":1,"2177":1,"2422":1,"2634":2}}],["transmission",{"2":{"1207":1}}],["transmitted",{"2":{"515":1,"2203":1}}],["transmits",{"2":{"64":1,"1198":1,"2451":1}}],["transit",{"2":{"1185":1}}],["transiently",{"2":{"1032":1,"1739":1,"2287":1}}],["transient",{"2":{"213":1,"214":1,"569":1,"575":1,"845":1,"857":1,"868":1,"1101":1,"1135":1,"1151":1,"1152":1,"1177":1,"1180":1,"1217":1,"1224":1,"1250":1,"1586":1,"1622":1,"1624":1,"1743":1,"1874":1,"2502":1}}],["transports",{"2":{"1213":1,"1215":3,"1220":1,"1221":1,"1234":2,"1237":1,"1792":3,"1887":1}}],["transport",{"0":{"1983":1},"2":{"874":1,"1047":1,"1237":1,"1792":4,"1823":1,"1824":1,"1825":1,"1887":1,"1980":1,"1983":1,"2347":1,"2481":1,"2498":1}}],["transparently",{"2":{"187":1,"1180":1,"2294":1,"2649":1}}],["transparent",{"2":{"182":1,"868":1,"1100":1,"1254":1,"1338":1,"1664":1,"2291":1}}],["translators",{"2":{"2712":1}}],["translations",{"2":{"1422":1}}],["translation",{"2":{"871":1,"1909":1}}],["translating",{"2":{"852":1}}],["translates",{"2":{"1422":2,"2398":1}}],["translate",{"2":{"849":1,"1401":1,"1403":1}}],["transfers",{"2":{"965":1,"1323":1,"1351":1}}],["transfer",{"2":{"622":1,"849":6,"854":1,"860":1,"918":1,"1255":1,"1258":1,"1340":1,"1516":1,"1792":2,"1916":2,"1917":2,"1931":2,"2265":1,"2549":2,"2802":2,"2814":2,"2824":1}}],["transforms",{"2":{"2772":1}}],["transformers",{"2":{"1335":1}}],["transform",{"0":{"439":1,"1332":1,"1338":1,"1339":1,"1921":1,"2810":1},"2":{"435":1,"439":4,"448":1,"449":2,"453":1,"876":1,"911":1,"1037":2,"1104":1,"1105":1,"1203":1,"1328":1,"1332":2,"1333":1,"1338":1,"1341":1,"1342":1,"1349":1,"1351":1,"1415":2,"1915":1,"1921":2,"1928":1,"2164":1,"2549":5,"2806":1,"2807":2,"2809":1,"2814":1,"2815":1,"2816":1,"2817":1}}],["transformations",{"2":{"1205":1}}],["transformation",{"2":{"304":1,"876":1,"907":1,"1011":1,"1343":1,"1351":2}}],["transactions",{"0":{"2867":1},"2":{"845":1,"851":1,"860":1,"864":2,"865":1,"899":1,"909":1,"910":2,"992":1,"993":2,"1079":1,"1081":1,"1130":1,"1174":2,"1324":1,"1391":1,"1628":2,"1792":2,"2114":1,"2266":2}}],["transactionally",{"2":{"852":1}}],["transactional",{"2":{"695":1,"779":1,"863":2,"864":1,"1075":1,"1079":2,"1082":1,"1354":1,"1632":1,"2167":1,"2867":1,"2869":1}}],["transaction",{"0":{"622":1,"901":1},"2":{"576":1,"624":1,"625":1,"849":1,"852":2,"855":1,"860":5,"863":3,"864":4,"865":2,"876":1,"879":1,"880":1,"881":2,"899":1,"901":2,"902":1,"903":2,"907":1,"909":1,"974":1,"986":1,"992":2,"993":1,"994":1,"1005":1,"1037":1,"1070":4,"1073":1,"1074":3,"1078":2,"1079":2,"1094":1,"1099":1,"1101":1,"1102":10,"1106":1,"1121":1,"1324":1,"1376":1,"1395":2,"1442":1,"1528":2,"1592":1,"1593":1,"1624":1,"1792":9,"1850":1,"1851":5,"2267":1,"2342":1,"2382":6,"2525":1,"2527":3,"2528":2,"2531":1,"2533":3,"2739":1,"2841":1,"2851":1,"2855":1,"2860":1,"2862":3,"2863":1,"2867":2,"2868":1,"2869":2}}],["tiny",{"2":{"1435":1}}],["ticket",{"2":{"1193":3,"1403":1}}],["tickets",{"2":{"323":4,"1193":1}}],["timing",{"2":{"872":1,"1792":7}}],["timetz",{"2":{"1792":1,"1856":2,"2224":1,"2450":1,"2456":2,"2457":1}}],["timers",{"2":{"1792":1,"2024":1,"2632":1}}],["timezone",{"2":{"1060":1,"1687":1,"1792":2,"2456":1}}],["timeless",{"2":{"913":1}}],["timelines",{"2":{"834":1}}],["timed",{"2":{"140":1,"1669":1,"1672":1,"1678":1,"1792":1,"2101":1,"2253":1,"2255":2}}],["timescaledb",{"2":{"848":1}}],["timestamps",{"2":{"1856":2,"2050":1,"2224":1,"2453":1,"2454":1,"2455":1}}],["timestamptz",{"2":{"585":1,"1213":5,"1307":1,"1309":1,"1310":1,"1321":1,"1336":2,"1355":1,"1372":1,"1792":1,"1806":1,"1856":2,"2224":1,"2450":1,"2456":2,"2457":1,"2803":2,"2829":2,"2836":2,"2845":2}}],["timestamp",{"0":{"1856":1},"2":{"585":1,"913":1,"952":1,"956":5,"961":1,"977":1,"980":6,"982":1,"990":6,"995":1,"1050":1,"1056":1,"1139":1,"1150":1,"1191":1,"1216":1,"1370":3,"1374":4,"1565":1,"1792":5,"1800":1,"1806":1,"1809":2,"1810":1,"1852":1,"1856":1,"2224":1,"2383":1,"2450":1,"2451":1,"2456":1,"2803":1,"2850":3}}],["timespan",{"2":{"211":1,"1034":1,"1731":1,"2253":1,"2461":1}}],["times",{"2":{"140":1,"845":1,"847":1,"848":1,"872":1,"948":1,"966":1,"1032":1,"1082":1,"1139":1,"1255":1,"1382":1,"1403":1,"1792":1,"2459":1,"2504":1,"2533":1,"2540":1,"2580":1,"2622":1,"2635":2,"2789":1,"2845":1}}],["timeseries",{"2":{"106":3,"1067":5,"1150":7,"1520":1,"1529":3}}],["time",{"0":{"872":1,"1001":1,"1103":1,"1181":1,"1302":1,"1304":1,"1320":1,"1372":1,"2210":1,"2376":1,"2377":1,"2836":1},"1":{"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1308":1,"1309":1,"1310":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1,"2211":1,"2212":1},"2":{"91":1,"108":1,"110":1,"120":1,"122":1,"123":1,"214":1,"217":1,"232":1,"267":1,"268":1,"278":1,"386":1,"388":1,"395":3,"480":1,"527":1,"575":1,"776":2,"788":3,"835":1,"841":1,"843":1,"848":1,"849":1,"851":1,"852":3,"856":1,"859":2,"860":1,"863":1,"864":5,"866":1,"869":1,"871":1,"872":4,"873":1,"874":1,"877":1,"892":2,"911":2,"920":1,"949":1,"956":5,"969":1,"975":1,"978":1,"982":2,"995":1,"997":2,"1004":1,"1009":1,"1021":1,"1026":1,"1037":3,"1050":1,"1064":1,"1066":1,"1067":1,"1070":1,"1071":1,"1076":1,"1092":1,"1094":1,"1098":1,"1102":1,"1103":2,"1107":1,"1121":1,"1123":1,"1127":1,"1132":1,"1150":2,"1158":1,"1159":1,"1165":1,"1181":1,"1205":2,"1206":1,"1235":1,"1254":3,"1255":1,"1259":1,"1281":2,"1302":3,"1303":2,"1309":2,"1322":1,"1323":1,"1324":1,"1325":1,"1327":1,"1372":1,"1374":4,"1376":1,"1382":1,"1384":2,"1385":1,"1386":2,"1390":1,"1396":1,"1398":1,"1400":3,"1401":3,"1402":2,"1403":2,"1405":1,"1406":1,"1407":1,"1409":1,"1420":1,"1422":1,"1440":1,"1464":1,"1519":1,"1521":1,"1525":1,"1535":1,"1743":1,"1792":8,"1852":2,"1856":3,"1857":1,"1861":1,"1950":2,"1951":1,"1952":1,"1955":1,"1956":1,"1958":1,"1974":1,"2049":2,"2112":1,"2116":1,"2117":1,"2119":3,"2130":1,"2164":3,"2165":2,"2175":1,"2210":1,"2223":1,"2224":1,"2245":1,"2247":2,"2297":1,"2376":1,"2377":1,"2379":2,"2383":2,"2386":1,"2388":1,"2397":1,"2398":1,"2399":1,"2410":1,"2450":1,"2451":4,"2454":1,"2456":3,"2464":1,"2466":2,"2470":1,"2481":2,"2493":2,"2494":1,"2500":1,"2607":1,"2621":2,"2701":1,"2702":1,"2704":3,"2764":1,"2776":1,"2789":1,"2792":1,"2815":1,"2818":1,"2825":1,"2827":2,"2830":1,"2835":1,"2836":1,"2837":1,"2838":1,"2868":1}}],["timeouts",{"0":{"2765":1},"2":{"213":1,"232":1,"424":1,"1032":1,"1105":2,"1109":1,"1111":1,"1182":1,"1329":1,"1672":2,"1739":1,"1741":1,"2253":1,"2287":1,"2289":1,"2307":1,"2759":1,"2813":1}}],["timeouterrormapping",{"2":{"139":1,"140":2,"141":1,"1669":1,"1670":1,"1672":1,"1678":1,"1792":1,"2253":1,"2255":2}}],["timeout",{"0":{"132":1,"136":1,"140":1,"211":1,"277":2,"574":1,"1034":1,"1672":1,"1731":1,"2253":1,"2756":2},"1":{"133":1,"134":1,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1},"2":{"90":2,"132":2,"133":5,"134":1,"136":2,"137":1,"138":1,"139":2,"140":3,"143":1,"152":2,"203":3,"207":1,"208":1,"211":9,"213":4,"214":2,"218":2,"231":2,"277":6,"281":2,"424":1,"447":1,"574":1,"579":2,"1011":1,"1017":2,"1019":4,"1026":6,"1030":1,"1032":1,"1033":1,"1034":4,"1104":1,"1105":1,"1109":1,"1111":3,"1113":1,"1127":1,"1220":1,"1222":1,"1340":1,"1398":1,"1426":1,"1430":1,"1431":1,"1616":2,"1670":1,"1672":3,"1679":2,"1680":1,"1726":1,"1731":8,"1733":1,"1736":1,"1740":4,"1741":1,"1743":1,"1775":1,"1792":12,"1837":2,"1864":2,"1917":1,"1928":3,"1991":2,"2094":1,"2101":1,"2113":1,"2193":3,"2210":1,"2212":10,"2222":1,"2253":2,"2255":6,"2258":1,"2264":7,"2287":1,"2288":4,"2289":1,"2307":1,"2320":1,"2323":1,"2502":2,"2505":2,"2535":1,"2537":1,"2549":3,"2581":1,"2591":3,"2687":1,"2695":1,"2756":2,"2762":3,"2763":1,"2764":1,"2765":3,"2766":2,"2810":1,"2814":1}}],["tired",{"2":{"861":1}}],["tidies",{"2":{"2830":1}}],["tidy",{"2":{"1435":1}}],["tidb",{"2":{"848":2}}],["tidvxenk9gsqapyi82xduquaigq5odbiecfrtq7wfwtht3ffx2s+noijvfcaw90z",{"2":{"62":2}}],["tiff",{"2":{"747":1,"1792":1,"2123":1,"2125":1}}],["tightened",{"2":{"2457":1}}],["tightens",{"2":{"2427":1}}],["tighter",{"0":{"2400":1}}],["tight",{"0":{"1418":1},"2":{"531":1,"847":1,"1081":2,"1386":1,"1401":1}}],["tip",{"2":{"369":1,"1132":1,"1448":1,"1609":1,"1708":1,"1792":1,"1973":1,"2004":1,"2007":1,"2010":1,"2024":1,"2059":1,"2193":1}}],["tied",{"2":{"1209":1,"1867":2}}],["tie",{"2":{"1014":1,"1127":1}}],["ties",{"2":{"306":1,"937":1}}],["tiers",{"0":{"1265":1}}],["tiered",{"0":{"107":1},"2":{"1792":1,"2380":1}}],["tier",{"2":{"2":1,"107":10,"307":1,"874":1,"876":1,"1014":1,"1015":2,"1121":1,"1127":1,"1193":1,"1265":1,"1266":1,"1278":1,"1280":2,"1281":1,"1792":2,"2177":2,"2380":2,"2760":1}}],["title>",{"2":{"1685":1,"1792":1}}],["title>talking",{"2":{"1685":1,"1792":1}}],["titles",{"2":{"1111":1}}],["title",{"2":{"140":1,"335":3,"372":1,"415":2,"819":1,"834":3,"894":1,"913":2,"918":7,"919":4,"920":2,"938":2,"995":5,"996":2,"1073":2,"1111":5,"1342":1,"1366":1,"1386":1,"1408":1,"1409":1,"1429":5,"1442":1,"1553":1,"1558":1,"1567":2,"1669":5,"1671":2,"1672":1,"1673":4,"1676":1,"1677":1,"1678":7,"1792":9,"1818":1,"1898":1,"2253":1,"2254":1,"2255":14,"2271":1,"2273":2,"2303":1,"2319":2,"2359":2,"2586":3,"2590":1,"2611":2,"2731":1,"2813":2,"2845":1,"2846":1}}],["t",{"0":{"877":1,"910":1,"1210":1,"1396":1,"1410":1,"1432":1,"2721":1,"2722":1,"2799":1},"1":{"911":1},"2":{"23":1,"33":1,"101":1,"129":1,"136":5,"168":3,"175":2,"177":1,"214":4,"302":1,"303":2,"304":1,"307":1,"308":2,"319":2,"351":1,"354":1,"372":1,"373":1,"374":1,"376":1,"389":1,"390":1,"415":4,"454":1,"462":4,"463":3,"464":4,"466":5,"480":2,"490":1,"499":1,"524":1,"528":1,"583":1,"584":1,"587":1,"599":1,"602":1,"639":1,"663":1,"684":1,"691":1,"737":1,"767":1,"784":1,"831":1,"838":1,"841":2,"843":2,"844":1,"845":2,"847":3,"848":5,"849":2,"851":1,"852":5,"856":1,"857":1,"859":2,"860":1,"868":1,"869":2,"871":3,"872":1,"873":3,"874":2,"876":4,"877":3,"884":1,"896":1,"901":1,"903":1,"904":2,"911":1,"918":2,"933":1,"934":2,"947":1,"948":1,"953":1,"960":1,"961":2,"975":1,"984":1,"992":1,"994":1,"1005":1,"1006":1,"1036":1,"1040":1,"1046":1,"1050":1,"1065":1,"1067":2,"1068":1,"1073":2,"1074":1,"1075":1,"1076":3,"1077":3,"1078":1,"1079":5,"1081":1,"1104":1,"1129":2,"1130":1,"1134":1,"1137":1,"1139":1,"1140":2,"1145":2,"1150":3,"1166":1,"1170":1,"1171":1,"1205":1,"1210":1,"1228":1,"1238":1,"1243":1,"1251":1,"1281":1,"1326":2,"1328":2,"1337":1,"1351":1,"1358":1,"1370":1,"1372":1,"1374":1,"1376":1,"1382":2,"1385":6,"1386":8,"1388":2,"1390":1,"1391":2,"1393":3,"1394":2,"1395":2,"1396":3,"1398":1,"1399":1,"1400":2,"1401":4,"1402":7,"1403":4,"1404":1,"1405":2,"1408":3,"1409":1,"1410":1,"1411":1,"1412":1,"1414":1,"1415":1,"1421":1,"1422":1,"1428":1,"1429":1,"1431":1,"1435":1,"1437":3,"1441":3,"1442":1,"1443":1,"1511":1,"1522":1,"1527":2,"1543":1,"1572":1,"1580":1,"1609":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1768":1,"1770":1,"1774":1,"1792":15,"1801":1,"1823":1,"1825":3,"1832":1,"1833":1,"1849":1,"1878":1,"1941":1,"1974":1,"1983":1,"2016":1,"2024":1,"2127":1,"2156":1,"2157":1,"2160":1,"2177":2,"2180":1,"2183":1,"2193":1,"2195":1,"2207":1,"2250":1,"2297":1,"2303":2,"2336":1,"2337":1,"2342":1,"2359":1,"2380":1,"2389":1,"2392":1,"2394":2,"2398":2,"2402":1,"2404":1,"2406":1,"2415":1,"2421":1,"2425":1,"2428":1,"2432":1,"2433":1,"2434":1,"2438":3,"2452":3,"2481":1,"2483":1,"2489":1,"2533":1,"2534":1,"2543":1,"2586":1,"2589":1,"2590":1,"2607":1,"2608":1,"2618":1,"2632":1,"2634":1,"2661":1,"2685":2,"2734":1,"2741":1,"2751":1,"2768":1,"2815":1,"2820":1,"2827":1,"2830":1,"2835":4,"2836":1,"2840":1,"2847":1,"2850":1,"2854":1,"2867":2,"2868":1}}],["terrible",{"0":{"948":1}}],["teradata",{"2":{"918":1}}],["terminate",{"2":{"2362":1}}],["terminals",{"2":{"2535":1}}],["terminal",{"2":{"848":1,"1418":2,"1419":1,"1433":2,"1792":1,"1957":1,"2379":1,"2535":1,"2667":1,"2673":1,"2678":1,"2694":1,"2695":1,"2785":1}}],["terms",{"2":{"1073":1,"1132":1,"2678":1,"2695":1}}],["term",{"2":{"847":1,"848":2,"868":1,"1529":2}}],["techstart",{"2":{"1189":1}}],["techempower",{"2":{"874":1}}],["techniques",{"2":{"1443":1}}],["technique",{"0":{"1139":1},"2":{"1139":2,"2741":1,"2868":1}}],["technical",{"2":{"843":1,"847":1,"1368":1,"1380":1,"1386":2,"1404":1,"2625":1}}],["technology",{"0":{"2776":1},"2":{"859":1,"1403":1}}],["technologies",{"2":{"841":1}}],["tells",{"2":{"873":1,"934":1,"935":1,"979":1,"1077":1,"1134":1,"1138":1,"1216":1,"1233":1}}],["telling",{"2":{"868":1,"1948":1,"2378":1}}],["tell",{"2":{"851":1,"1041":1,"1396":2,"1400":1,"1402":1,"2540":1}}],["telemetry",{"2":{"2":1}}],["tens",{"2":{"1076":1,"2878":1}}],["tension",{"2":{"841":2}}],["tenancy",{"0":{"1102":1},"2":{"1066":1}}],["tenant",{"0":{"106":1,"1070":1},"2":{"1037":1,"1066":1,"1070":7,"1102":4,"1121":1,"1127":1,"1542":2,"1546":2,"1792":3,"1852":2,"2383":2,"2438":1}}],["tend",{"2":{"859":1,"873":1,"1133":1,"1403":1}}],["ten",{"2":{"851":1,"860":2,"871":1,"2389":1,"2400":1}}],["tenets",{"2":{"843":1}}],["tedious",{"2":{"1378":1,"1390":1}}],["ted",{"2":{"840":1}}],["tears",{"2":{"2742":1,"2881":1}}],["teardown",{"0":{"713":1,"2112":1,"2532":1,"2533":1,"2871":1},"1":{"714":1,"715":1,"716":1,"717":1},"2":{"239":1,"695":1,"697":1,"705":2,"706":1,"707":1,"711":1,"714":1,"715":1,"716":2,"1789":1,"1792":8,"2093":1,"2094":4,"2098":1,"2103":1,"2106":1,"2110":1,"2111":3,"2112":3,"2114":1,"2157":1,"2158":1,"2159":1,"2167":2,"2221":3,"2530":1,"2531":2,"2532":7,"2533":10,"2534":5,"2536":2,"2537":7,"2543":1,"2545":1,"2546":3,"2740":1,"2869":1,"2870":1,"2871":3,"2872":2,"2873":2,"2875":2,"2878":1,"2882":1}}],["teaches",{"2":{"851":1,"861":1}}],["teamchat",{"2":{"1326":1}}],["teams",{"2":{"874":1,"876":1,"947":1,"948":1,"1127":1}}],["team",{"2":{"641":5,"864":2,"865":1,"866":1,"868":2,"869":1,"871":1,"872":4,"873":1,"877":1,"1123":1,"1314":1,"1326":3,"1382":3,"2430":1,"2438":1,"2858":1}}],["temporary",{"0":{"2740":1},"2":{"851":1,"1032":1,"1391":1,"1394":1,"1395":2,"1396":4,"1739":1,"2287":1}}],["temporarily",{"2":{"174":1,"2869":1}}],["templated",{"2":{"1792":1,"2038":1,"2040":1,"2476":1,"2477":1}}],["templates",{"2":{"1581":1,"1792":1,"2038":4,"2040":1,"2224":1,"2270":2,"2286":1,"2476":1}}],["template",{"0":{"1809":1,"2185":1,"2873":1},"2":{"493":1,"544":1,"696":1,"697":1,"705":2,"834":1,"1065":1,"1075":1,"1079":1,"1082":2,"1086":1,"1094":2,"1127":2,"1218":1,"1575":1,"1684":1,"1685":1,"1773":1,"1792":1,"1809":2,"2040":1,"2092":1,"2114":1,"2167":2,"2170":1,"2270":2,"2277":1,"2372":1,"2389":1,"2474":1,"2498":1,"2522":1,"2533":2,"2534":4,"2545":2,"2546":3,"2740":1,"2795":1,"2873":9}}],["templating",{"2":{"452":1,"868":1,"2040":1,"2474":1}}],["temp",{"0":{"2530":1},"2":{"238":1,"239":1,"583":2,"584":2,"587":1,"698":1,"874":1,"919":1,"933":1,"934":1,"935":1,"936":1,"1055":1,"1056":2,"1057":1,"1058":1,"1076":1,"1078":1,"1079":1,"1130":1,"1185":1,"1188":1,"1192":1,"1376":5,"1378":1,"1395":1,"1396":2,"1792":4,"2094":1,"2099":1,"2109":1,"2110":2,"2156":1,"2221":1,"2337":3,"2527":1,"2529":1,"2530":3,"2542":1,"2546":1,"2840":1,"2854":1,"2855":2,"2858":1,"2859":1,"2860":1,"2862":1,"2866":2,"2878":1}}],["textnonprintablethreshold",{"2":{"1792":1,"2123":1,"2125":1}}],["textual",{"2":{"1792":1,"2125":1,"2482":1}}],["texttestbuffersize",{"2":{"1792":1,"2123":1,"2125":1}}],["texttextsrc",{"2":{"1570":1,"1571":1,"1577":1}}],["textresponsenullhandling",{"0":{"1855":1,"2596":1},"2":{"556":1,"1792":1,"1836":1,"1853":1,"2594":1,"2596":1,"2597":1,"2666":1}}],["text>",{"2":{"318":3}}],["text",{"0":{"1334":1,"2394":1,"2496":1,"2726":1},"1":{"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1},"2":{"9":1,"21":2,"31":5,"33":3,"37":7,"38":9,"39":6,"40":1,"50":1,"60":3,"61":3,"62":3,"71":3,"73":1,"90":1,"106":2,"107":1,"117":2,"119":1,"128":4,"157":4,"166":1,"167":1,"169":2,"184":5,"186":4,"187":8,"188":1,"206":3,"207":5,"208":5,"209":7,"210":4,"212":1,"215":1,"229":1,"247":1,"248":2,"250":2,"251":1,"254":1,"255":1,"256":1,"257":3,"258":1,"263":4,"264":1,"289":2,"290":2,"291":3,"298":7,"299":1,"303":1,"308":4,"309":8,"310":9,"312":11,"313":9,"319":4,"322":3,"324":1,"326":3,"332":4,"333":3,"334":2,"335":2,"352":3,"360":6,"361":7,"362":1,"365":6,"366":7,"370":1,"378":2,"379":1,"383":3,"386":6,"388":2,"389":1,"392":1,"393":1,"408":4,"423":2,"429":1,"439":6,"447":6,"449":2,"452":4,"454":4,"458":1,"466":3,"467":3,"468":3,"469":2,"484":1,"487":5,"488":2,"489":3,"490":4,"491":3,"492":2,"493":7,"494":1,"503":2,"510":2,"511":2,"512":1,"520":2,"521":2,"522":2,"523":1,"527":1,"531":2,"532":3,"539":4,"541":1,"543":2,"544":6,"548":1,"549":2,"550":1,"555":1,"582":1,"584":3,"585":1,"586":2,"592":4,"593":4,"594":4,"611":2,"617":1,"664":2,"665":2,"677":1,"679":8,"686":1,"700":2,"706":1,"723":8,"733":6,"734":2,"735":2,"736":2,"747":5,"752":1,"753":2,"756":4,"757":2,"760":2,"761":2,"762":1,"763":1,"764":3,"765":1,"766":1,"768":2,"770":2,"771":2,"774":4,"776":2,"782":3,"783":1,"784":3,"785":1,"797":11,"798":9,"799":3,"801":2,"812":2,"813":6,"814":2,"815":4,"817":3,"826":4,"827":2,"830":1,"848":1,"880":2,"881":1,"882":2,"883":1,"884":1,"887":1,"888":4,"892":1,"893":1,"903":2,"904":2,"911":1,"913":7,"914":2,"915":3,"924":3,"928":5,"929":3,"930":2,"934":7,"935":1,"936":9,"938":1,"952":1,"956":9,"957":3,"977":3,"980":2,"982":4,"983":1,"990":2,"994":2,"995":4,"1019":2,"1020":4,"1021":6,"1029":1,"1031":3,"1033":4,"1038":1,"1040":3,"1042":1,"1046":1,"1050":5,"1051":1,"1054":5,"1055":11,"1056":6,"1058":1,"1060":7,"1061":1,"1067":2,"1068":5,"1092":1,"1096":3,"1105":5,"1139":2,"1142":1,"1149":1,"1150":4,"1187":3,"1188":1,"1189":4,"1191":9,"1192":4,"1193":10,"1195":1,"1196":1,"1197":4,"1213":6,"1214":9,"1215":4,"1216":3,"1232":15,"1234":14,"1235":3,"1236":4,"1237":2,"1239":4,"1255":1,"1279":2,"1307":5,"1308":6,"1309":11,"1310":4,"1320":4,"1321":13,"1328":1,"1332":8,"1334":1,"1335":12,"1336":9,"1338":19,"1339":20,"1341":3,"1342":3,"1347":2,"1348":1,"1355":7,"1357":1,"1358":6,"1360":2,"1362":2,"1368":2,"1370":2,"1371":1,"1372":14,"1373":3,"1374":7,"1376":12,"1387":2,"1390":1,"1394":1,"1395":5,"1396":1,"1398":8,"1399":2,"1410":1,"1413":3,"1426":4,"1427":5,"1429":4,"1430":1,"1431":4,"1458":19,"1473":3,"1477":2,"1480":3,"1501":4,"1502":1,"1504":5,"1529":2,"1547":15,"1567":9,"1651":2,"1655":7,"1664":8,"1687":5,"1689":9,"1725":3,"1727":2,"1732":4,"1733":2,"1736":5,"1738":1,"1742":3,"1743":1,"1744":2,"1782":1,"1792":52,"1806":5,"1821":1,"1823":1,"1824":6,"1849":1,"1852":1,"1853":1,"1855":2,"1882":7,"1884":5,"1885":1,"1886":1,"1887":2,"1921":6,"1922":6,"1924":8,"1926":2,"1930":2,"1936":5,"1940":1,"1943":6,"1968":1,"1973":4,"1974":3,"2010":3,"2011":3,"2076":1,"2078":1,"2079":7,"2109":2,"2111":1,"2125":1,"2126":1,"2127":1,"2129":3,"2130":1,"2131":3,"2132":1,"2145":1,"2147":6,"2176":7,"2177":4,"2181":1,"2183":11,"2184":4,"2185":1,"2187":13,"2192":2,"2194":1,"2202":1,"2204":3,"2206":2,"2207":1,"2214":1,"2216":2,"2223":1,"2226":1,"2247":1,"2264":11,"2271":1,"2277":7,"2283":2,"2285":3,"2290":3,"2292":5,"2293":4,"2294":8,"2296":1,"2304":2,"2310":1,"2313":1,"2322":2,"2332":1,"2333":3,"2335":2,"2336":1,"2337":3,"2338":4,"2339":1,"2344":4,"2346":2,"2348":3,"2354":3,"2370":1,"2375":18,"2380":2,"2383":1,"2394":4,"2395":2,"2397":1,"2415":1,"2432":1,"2468":1,"2481":6,"2493":1,"2496":2,"2498":2,"2528":1,"2530":2,"2535":3,"2540":1,"2549":19,"2572":1,"2575":7,"2580":2,"2586":3,"2587":4,"2588":1,"2589":3,"2596":3,"2597":1,"2607":3,"2614":2,"2621":1,"2626":1,"2653":3,"2655":2,"2656":1,"2665":2,"2678":1,"2712":1,"2726":1,"2734":3,"2762":11,"2763":4,"2764":3,"2766":8,"2768":1,"2775":2,"2803":9,"2810":8,"2812":4,"2815":12,"2822":1,"2829":17,"2830":1,"2834":3,"2836":14,"2848":1,"2849":2,"2850":2,"2864":1,"2866":2,"2868":1,"2871":1}}],["testcase",{"2":{"2535":1}}],["testconnectionstrings",{"2":{"1177":1,"1617":1,"1618":1,"1621":1,"1633":1,"1792":1,"2223":1,"2486":1}}],["testfixture",{"2":{"2435":1}}],["test`",{"2":{"1792":1}}],["testability",{"0":{"1393":1},"2":{"860":1,"1037":1,"1378":1,"1393":1,"2258":1}}],["testable",{"2":{"859":1,"860":1,"1247":1,"1378":1,"1792":1,"2107":1}}],["testrunnertests",{"2":{"2546":1}}],["testrunner",{"0":{"2537":1},"2":{"693":1,"699":1,"703":1,"704":1,"705":1,"708":1,"710":4,"713":1,"714":1,"716":1,"1792":6,"1802":1,"2092":3,"2093":1,"2094":2,"2095":2,"2096":1,"2097":2,"2098":1,"2102":1,"2106":1,"2110":1,"2111":2,"2112":1,"2532":2,"2534":2,"2536":1,"2537":6,"2740":1,"2795":1,"2800":1,"2861":1,"2871":3,"2872":1,"2873":1,"2875":1,"2876":1,"2877":3,"2880":1}}],["test",{"0":{"239":1,"689":1,"693":1,"698":1,"703":1,"708":1,"713":1,"988":1,"989":1,"992":1,"1044":1,"1074":1,"1258":1,"1442":1,"2092":1,"2158":1,"2167":1,"2407":1,"2465":1,"2472":1,"2526":2,"2528":1,"2534":1,"2739":1,"2741":1,"2758":1,"2800":1,"2863":1,"2872":1,"2873":1},"1":{"690":1,"691":1,"692":1,"694":1,"695":1,"696":1,"697":1,"699":1,"700":1,"701":1,"702":1,"704":1,"705":1,"706":1,"707":1,"709":1,"710":1,"711":1,"712":1,"714":1,"715":1,"716":1,"717":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":1,"2111":1,"2112":1,"2113":1,"2114":1,"2527":2,"2528":2,"2529":2,"2530":2,"2531":2,"2532":2,"2533":2,"2534":2,"2535":2,"2536":2,"2537":2,"2538":2,"2864":1,"2865":1,"2866":1,"2867":1,"2868":1},"2":{"221":1,"239":13,"689":4,"691":2,"692":1,"693":6,"694":1,"695":4,"696":1,"697":3,"698":4,"701":1,"702":2,"703":5,"705":1,"706":1,"707":3,"708":5,"710":4,"711":1,"712":2,"713":5,"716":1,"717":3,"747":2,"753":2,"757":2,"758":1,"776":1,"782":2,"784":2,"786":2,"835":1,"837":1,"860":2,"865":3,"872":1,"874":3,"875":3,"876":3,"913":3,"915":1,"920":1,"930":20,"938":1,"979":1,"986":5,"987":1,"988":3,"989":10,"990":4,"991":3,"992":5,"993":1,"994":6,"1037":1,"1073":5,"1074":7,"1075":3,"1076":2,"1078":6,"1079":8,"1080":3,"1081":1,"1082":4,"1086":1,"1094":7,"1095":1,"1254":3,"1255":6,"1277":1,"1284":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1305":1,"1307":1,"1318":1,"1379":2,"1385":1,"1393":7,"1401":1,"1402":3,"1403":1,"1405":1,"1419":2,"1423":2,"1442":3,"1443":1,"1775":1,"1789":5,"1792":42,"1796":1,"1802":3,"2089":1,"2092":8,"2094":3,"2095":8,"2096":2,"2097":3,"2098":6,"2099":2,"2101":1,"2102":2,"2103":1,"2105":1,"2106":8,"2107":2,"2109":2,"2110":6,"2111":9,"2113":1,"2114":2,"2153":5,"2155":5,"2156":1,"2157":1,"2158":2,"2159":3,"2167":11,"2221":6,"2231":1,"2247":9,"2278":1,"2313":1,"2346":1,"2435":2,"2452":1,"2456":1,"2465":2,"2498":3,"2525":4,"2526":6,"2527":12,"2528":5,"2529":2,"2530":6,"2531":6,"2532":11,"2533":5,"2534":10,"2535":6,"2536":1,"2537":24,"2538":2,"2539":5,"2541":8,"2542":2,"2543":1,"2544":1,"2545":6,"2546":5,"2679":1,"2722":3,"2739":5,"2740":2,"2741":3,"2742":4,"2752":1,"2758":2,"2772":1,"2775":1,"2785":1,"2794":1,"2795":5,"2800":1,"2802":1,"2823":1,"2824":1,"2857":1,"2859":4,"2860":8,"2861":8,"2862":12,"2863":1,"2864":3,"2865":1,"2866":1,"2867":4,"2868":6,"2869":9,"2871":4,"2872":12,"2873":7,"2874":3,"2875":5,"2876":3,"2877":3,"2878":5,"2879":2,"2880":5,"2881":3,"2882":1}}],["testing",{"0":{"930":1,"986":1,"987":1,"990":1,"991":1,"993":1,"1003":1,"1075":1,"1621":1,"2486":1,"2738":1,"2860":1,"2876":1},"1":{"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1,"2739":1,"2740":1,"2741":1,"2742":1,"2861":1,"2862":1,"2863":1,"2864":1,"2865":1,"2866":1,"2867":1,"2868":1,"2869":1,"2870":1,"2871":1,"2872":1,"2873":1,"2874":1,"2875":1,"2876":1,"2877":1,"2878":1,"2879":1,"2880":1,"2881":1,"2882":1},"2":{"58":1,"692":1,"697":1,"702":1,"707":1,"712":1,"717":1,"782":1,"784":1,"786":1,"860":1,"872":1,"879":1,"986":1,"987":2,"990":1,"992":1,"993":3,"994":3,"1005":1,"1009":1,"1037":1,"1072":1,"1073":1,"1074":1,"1075":5,"1077":3,"1079":2,"1080":2,"1082":2,"1086":1,"1089":1,"1094":2,"1181":1,"1247":1,"1255":1,"1258":1,"1269":1,"1270":1,"1324":1,"1377":1,"1378":1,"1385":1,"1386":2,"1393":3,"1617":1,"1757":1,"1792":1,"2092":1,"2114":1,"2125":1,"2158":1,"2159":1,"2167":3,"2258":1,"2428":1,"2545":3,"2740":1,"2741":1,"2775":1,"2792":1,"2800":1,"2805":1,"2857":1,"2858":1,"2859":1,"2860":3,"2872":1,"2873":1}}],["tested",{"0":{"1255":1},"2":{"2":1,"856":1,"876":1,"988":1,"1076":1,"1077":2,"1078":1,"1255":3,"1386":1,"1393":1,"1402":1,"1419":1,"1792":1,"2465":1,"2486":1,"2607":1,"2882":1}}],["testsse",{"2":{"2247":1}}],["tests",{"0":{"988":1,"1072":1,"1078":1,"1286":1,"2417":1,"2435":1,"2447":1,"2456":1,"2498":1,"2506":1,"2513":1,"2523":1,"2546":1,"2627":1,"2740":1},"1":{"1073":1,"1074":1,"1075":1,"1076":1,"1077":1,"1078":1,"1079":1,"1080":1,"1081":1,"1082":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1},"2":{"1":1,"695":1,"701":1,"710":1,"711":2,"865":1,"867":1,"874":1,"875":1,"876":1,"877":1,"930":2,"988":2,"989":1,"993":2,"1003":1,"1005":4,"1006":2,"1009":1,"1037":2,"1074":2,"1076":2,"1079":1,"1080":1,"1081":2,"1094":2,"1181":2,"1254":6,"1255":4,"1258":4,"1259":3,"1266":1,"1281":2,"1379":1,"1399":1,"1402":5,"1405":3,"1789":1,"1792":11,"2092":1,"2094":3,"2095":4,"2098":1,"2100":2,"2104":2,"2105":1,"2113":1,"2221":2,"2258":1,"2278":1,"2372":1,"2393":1,"2407":1,"2417":2,"2435":8,"2447":1,"2448":1,"2452":1,"2456":2,"2457":1,"2490":1,"2498":3,"2506":3,"2513":1,"2525":2,"2526":2,"2529":2,"2531":1,"2532":1,"2534":3,"2535":5,"2537":6,"2538":2,"2542":1,"2545":1,"2546":4,"2627":4,"2669":1,"2679":1,"2739":1,"2742":1,"2802":1,"2858":1,"2860":4,"2861":1,"2865":1,"2867":1,"2869":3,"2872":2,"2873":3,"2875":1,"2876":1,"2878":1,"2879":1,"2880":3}}],["thu",{"2":{"2823":1,"2824":1}}],["thundering",{"2":{"1515":1}}],["thumbnails",{"2":{"1381":1}}],["thumb",{"2":{"1378":1}}],["thus",{"2":{"863":1}}],["th>active",{"2":{"996":1}}],["th>email",{"2":{"996":1}}],["th>username",{"2":{"996":1}}],["th>",{"2":{"996":4}}],["th>id",{"2":{"996":1}}],["th",{"2":{"965":1,"1792":2,"2073":2,"2075":2,"2080":2}}],["thoroughly",{"2":{"2089":1}}],["thousands",{"2":{"873":1,"918":1,"1064":1,"1164":1,"1168":1,"1974":1,"2607":1,"2744":1}}],["thousand",{"2":{"860":1,"876":1}}],["thought",{"2":{"843":1,"863":1,"864":1,"913":1,"919":2,"1402":1}}],["though",{"2":{"667":1,"843":1,"1414":1,"1569":1,"2156":1,"2414":1,"2470":1,"2496":1,"2520":1,"2542":1,"2833":1}}],["those",{"2":{"304":1,"319":1,"387":1,"448":1,"449":1,"641":1,"650":1,"841":1,"848":1,"849":3,"852":4,"859":1,"868":1,"869":3,"872":1,"873":3,"912":1,"916":1,"919":1,"922":1,"932":3,"1036":1,"1126":1,"1208":1,"1254":1,"1305":1,"1385":1,"1386":2,"1388":1,"1394":3,"1396":1,"1398":1,"1401":1,"1405":1,"1432":1,"1435":2,"1436":1,"1441":1,"1442":1,"1567":1,"1792":1,"2186":1,"2267":1,"2380":1,"2407":1,"2455":1,"2465":1,"2470":1,"2490":1,"2527":1,"2765":1,"2807":1,"2862":1}}],["threat",{"2":{"2438":2}}],["threading",{"2":{"2184":1,"2701":1}}],["threaded",{"2":{"1266":1}}],["threadpool",{"2":{"1166":1,"1168":1,"1171":1,"1792":1,"2085":1,"2089":1,"2701":1}}],["threads",{"0":{"1166":1,"1167":2,"2087":2},"2":{"1164":2,"1165":3,"1166":2,"1167":5,"1168":2,"1169":3,"1170":2,"1792":4,"2086":4,"2087":2}}],["thread",{"0":{"1164":1,"1165":1,"1170":1,"2084":1},"1":{"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"2085":1,"2086":1,"2087":1,"2088":1,"2089":1,"2090":1,"2091":1},"2":{"306":1,"1164":3,"1165":5,"1166":3,"1167":1,"1169":1,"1170":1,"1180":1,"1181":1,"1182":2,"1790":2,"1792":3,"1797":2,"2084":1,"2086":2,"2088":3,"2089":1,"2614":1}}],["threw",{"2":{"2402":1}}],["threshold",{"2":{"747":1,"753":2,"757":2,"776":1,"782":3,"784":3,"786":3,"1511":2,"1516":1,"1792":3,"2107":1,"2221":1,"2265":3,"2537":1,"2546":1}}],["three",{"0":{"1219":1,"1869":1},"1":{"1220":1,"1221":1,"1222":1,"1870":1,"1871":1,"1872":1},"2":{"22":1,"212":1,"305":1,"310":1,"534":1,"540":1,"831":1,"845":1,"859":2,"860":1,"872":1,"1053":1,"1064":1,"1067":1,"1083":1,"1092":1,"1097":2,"1098":1,"1101":1,"1102":1,"1104":1,"1105":2,"1127":1,"1144":1,"1218":1,"1219":1,"1309":1,"1357":1,"1366":1,"1367":1,"1371":1,"1382":1,"1398":3,"1411":1,"1422":1,"1429":1,"1435":1,"1458":1,"1464":1,"1521":1,"1523":1,"1609":1,"1765":1,"1792":6,"1869":1,"1961":1,"2171":1,"2181":1,"2182":1,"2314":1,"2337":1,"2352":1,"2372":1,"2375":1,"2380":1,"2397":1,"2400":1,"2405":1,"2412":1,"2414":1,"2419":1,"2421":2,"2435":3,"2447":1,"2448":2,"2486":1,"2496":1,"2498":1,"2520":2,"2523":1,"2528":1,"2534":1,"2546":1,"2554":1,"2634":1,"2659":1,"2765":1,"2794":1,"2836":1,"2852":1,"2854":1,"2860":1,"2864":1,"2869":1,"2873":1}}],["throttling",{"2":{"1955":1,"2379":1}}],["throttled",{"2":{"1792":1,"1961":1}}],["throttle`",{"2":{"1792":1}}],["throttle",{"0":{"1959":1,"2471":1},"2":{"1069":1,"1101":1,"1162":2,"1792":3,"1822":1,"1824":1,"1955":1,"1956":1,"1958":2,"1959":3,"2224":1,"2379":2,"2441":3,"2442":1,"2468":1,"2470":1,"2471":3,"2481":1}}],["throws",{"2":{"1605":1,"2403":1,"2412":1,"2497":1,"2498":1,"2688":1}}],["throw",{"2":{"1366":1,"1460":2,"1568":1,"1792":1,"2375":2,"2497":1}}],["throwaway",{"2":{"1075":1,"1079":1,"1081":1,"1094":1,"2534":1}}],["thrown",{"2":{"188":1,"2242":1,"2296":1}}],["throughs",{"2":{"1150":1}}],["throughout",{"2":{"267":1,"1328":1,"2615":1,"2769":1}}],["through",{"2":{"108":1,"212":1,"296":1,"389":2,"390":1,"452":1,"636":1,"650":1,"666":1,"695":1,"840":1,"843":1,"851":1,"864":1,"865":1,"868":2,"872":1,"876":2,"878":1,"926":1,"972":1,"993":2,"996":1,"1005":1,"1009":1,"1014":1,"1037":1,"1038":2,"1041":1,"1045":1,"1048":1,"1057":1,"1083":1,"1099":1,"1103":1,"1107":1,"1113":1,"1126":1,"1135":1,"1139":1,"1162":1,"1170":1,"1175":1,"1193":1,"1203":1,"1214":1,"1220":1,"1232":1,"1253":1,"1323":1,"1328":1,"1329":1,"1359":1,"1363":1,"1381":1,"1385":2,"1386":1,"1388":1,"1393":1,"1405":1,"1406":1,"1409":1,"1412":1,"1436":1,"1525":1,"1566":1,"1792":6,"1824":1,"1870":1,"1882":1,"1956":1,"1961":1,"2045":1,"2106":1,"2184":1,"2347":1,"2379":1,"2380":1,"2413":1,"2427":1,"2435":1,"2437":1,"2461":1,"2462":1,"2463":1,"2472":1,"2481":1,"2483":1,"2491":1,"2522":1,"2531":1,"2536":1,"2537":2,"2540":1,"2545":1,"2546":2,"2607":1,"2614":1,"2635":1,"2680":1,"2763":2,"2801":1,"2806":2,"2818":1,"2845":1,"2867":1}}],["throughput",{"0":{"85":1,"1168":1},"2":{"88":1,"1164":1,"1270":1,"1271":1,"1324":2,"2270":1,"2388":1,"2398":1,"2466":1,"2621":1,"2789":1}}],["thief",{"2":{"1441":1}}],["thirty",{"2":{"1079":1}}],["third",{"2":{"565":1,"614":1,"863":1,"876":1,"1011":1,"1035":1,"1097":1,"1098":2,"1099":1,"1104":2,"1150":1,"1152":1,"1209":1,"1329":1,"1335":1,"1382":2,"1572":1,"1590":1,"2274":1,"2317":1,"2339":1,"2554":1,"2759":1}}],["thin",{"2":{"1039":1}}],["think",{"2":{"1":1,"851":1,"859":1,"1037":1,"1400":1,"1401":2,"1402":2,"1404":1}}],["things",{"2":{"650":1,"836":1,"857":1,"864":1,"948":1,"1150":1,"1382":1,"1386":2,"1393":1,"1396":1,"1401":2,"1404":1,"1405":1,"1406":1,"1408":1,"1422":1,"1423":1,"2184":1,"2868":1}}],["thing",{"2":{"1":1,"436":1,"841":1,"848":3,"849":1,"852":5,"871":1,"874":1,"876":1,"918":1,"1044":1,"1075":1,"1076":1,"1078":1,"1081":1,"1161":1,"1382":2,"1384":1,"1386":1,"1391":1,"1398":1,"1399":1,"1400":1,"1404":1,"1406":1,"2414":1,"2531":1,"2729":1,"2797":1,"2807":1}}],["this",{"0":{"0":1,"221":1,"877":1,"939":1,"950":1,"968":1,"999":1,"1006":1,"1046":1,"1065":1,"1246":1,"1256":1,"1325":1,"1379":1,"1421":1,"1432":1,"2452":1,"2465":1},"1":{"1":1,"2":1,"3":1,"940":1,"941":1,"942":1,"943":1,"944":1,"951":1,"952":1,"953":1,"954":1,"969":1,"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1007":1,"1008":1,"1009":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1257":1,"1258":1,"1259":1,"1260":1},"2":{"0":1,"18":1,"19":1,"20":1,"32":1,"101":1,"105":1,"119":1,"139":1,"165":1,"168":3,"215":1,"267":1,"286":2,"292":1,"296":1,"298":1,"302":1,"304":1,"308":1,"309":1,"316":1,"320":1,"335":1,"337":1,"349":1,"357":1,"362":1,"363":1,"369":1,"376":1,"377":1,"386":3,"387":1,"390":1,"395":2,"408":1,"414":1,"423":1,"436":1,"453":2,"458":1,"470":1,"480":1,"527":1,"534":1,"556":1,"559":2,"560":1,"567":1,"581":1,"582":1,"619":1,"624":1,"636":2,"646":5,"650":2,"655":1,"656":1,"668":1,"669":1,"683":1,"686":1,"689":1,"693":2,"694":1,"696":1,"698":2,"703":2,"705":2,"708":1,"713":2,"716":1,"720":1,"761":1,"771":1,"773":1,"826":2,"831":2,"834":2,"841":5,"843":2,"844":3,"845":4,"847":3,"848":2,"849":7,"851":8,"852":3,"855":2,"856":1,"857":2,"859":7,"860":2,"861":3,"863":1,"866":3,"868":2,"869":3,"871":4,"872":6,"873":2,"874":3,"875":1,"876":5,"877":1,"878":1,"885":2,"886":1,"894":10,"901":1,"902":2,"904":2,"910":2,"911":3,"912":2,"913":2,"915":4,"916":5,"917":3,"918":6,"919":2,"920":4,"921":2,"924":2,"926":5,"927":2,"928":2,"932":1,"933":3,"934":3,"936":1,"943":1,"945":1,"946":3,"948":2,"956":1,"961":1,"971":4,"972":1,"973":1,"974":1,"975":2,"976":1,"977":2,"979":1,"980":2,"982":2,"983":1,"985":1,"986":2,"987":1,"990":2,"994":3,"1006":2,"1009":1,"1010":1,"1011":1,"1026":8,"1029":1,"1036":2,"1038":2,"1042":2,"1045":1,"1048":1,"1049":1,"1053":1,"1055":1,"1057":3,"1058":2,"1063":2,"1064":4,"1065":3,"1067":1,"1068":2,"1073":5,"1074":1,"1075":1,"1076":5,"1077":1,"1078":1,"1079":3,"1080":1,"1081":3,"1083":1,"1100":1,"1102":1,"1105":1,"1111":2,"1113":1,"1129":2,"1130":2,"1132":3,"1133":4,"1134":2,"1135":2,"1137":1,"1139":2,"1141":1,"1149":1,"1150":1,"1157":1,"1164":1,"1165":1,"1166":1,"1174":1,"1176":1,"1178":1,"1182":1,"1183":1,"1185":4,"1187":1,"1190":1,"1192":4,"1198":1,"1200":1,"1202":1,"1203":3,"1205":1,"1206":1,"1208":2,"1220":1,"1223":1,"1233":1,"1234":1,"1238":1,"1247":1,"1253":1,"1254":2,"1255":1,"1256":1,"1277":1,"1302":1,"1304":1,"1305":1,"1309":2,"1316":3,"1324":2,"1325":1,"1326":1,"1327":2,"1328":2,"1331":1,"1335":2,"1337":1,"1338":1,"1351":2,"1358":1,"1363":1,"1366":12,"1367":2,"1368":4,"1370":2,"1372":1,"1373":1,"1376":1,"1378":2,"1382":5,"1384":6,"1385":4,"1386":19,"1388":2,"1389":2,"1390":4,"1391":2,"1392":1,"1393":3,"1394":5,"1395":4,"1396":7,"1398":8,"1399":11,"1400":7,"1401":6,"1402":3,"1403":3,"1404":5,"1405":8,"1406":1,"1410":7,"1412":1,"1414":1,"1415":2,"1416":2,"1417":1,"1421":2,"1423":2,"1431":2,"1432":1,"1434":1,"1443":1,"1444":1,"1450":1,"1458":1,"1472":1,"1475":2,"1477":2,"1511":6,"1516":1,"1517":1,"1519":1,"1521":1,"1523":1,"1566":1,"1567":2,"1568":1,"1580":1,"1581":1,"1609":1,"1612":1,"1618":1,"1619":1,"1620":1,"1621":1,"1632":1,"1644":1,"1664":1,"1678":1,"1685":2,"1690":1,"1696":1,"1701":1,"1704":1,"1706":1,"1708":1,"1714":1,"1745":1,"1792":144,"1802":1,"1823":1,"1825":2,"1830":2,"1832":1,"1838":4,"1840":1,"1851":1,"1852":1,"1858":2,"1884":1,"1910":1,"1917":1,"1925":1,"1951":3,"1952":3,"1953":3,"1954":3,"1956":1,"1958":1,"1973":1,"1978":1,"1982":1,"2001":1,"2006":2,"2009":1,"2010":1,"2011":2,"2016":1,"2018":1,"2020":1,"2040":3,"2094":1,"2104":1,"2106":1,"2109":1,"2113":1,"2125":1,"2154":1,"2156":1,"2157":1,"2159":1,"2160":1,"2170":2,"2175":2,"2176":1,"2177":1,"2180":1,"2183":1,"2184":1,"2185":1,"2190":1,"2193":1,"2201":1,"2207":1,"2242":1,"2245":1,"2247":2,"2251":1,"2254":3,"2256":5,"2257":1,"2258":2,"2265":5,"2266":2,"2267":1,"2277":1,"2282":1,"2291":1,"2297":1,"2300":1,"2304":1,"2314":1,"2319":1,"2332":1,"2333":1,"2336":1,"2338":2,"2340":1,"2342":1,"2346":1,"2347":1,"2354":2,"2363":1,"2365":1,"2366":1,"2367":1,"2371":1,"2375":1,"2378":1,"2379":1,"2380":3,"2381":2,"2382":1,"2383":1,"2385":1,"2388":1,"2389":1,"2391":1,"2392":2,"2394":1,"2395":1,"2397":1,"2414":1,"2419":1,"2424":2,"2425":1,"2432":1,"2433":1,"2435":1,"2437":1,"2438":1,"2440":1,"2446":1,"2452":2,"2455":2,"2459":1,"2461":1,"2463":2,"2465":1,"2466":4,"2470":1,"2474":1,"2477":2,"2479":1,"2486":1,"2492":1,"2497":1,"2500":1,"2509":1,"2517":1,"2518":2,"2520":1,"2525":1,"2529":1,"2531":2,"2533":4,"2535":2,"2537":2,"2539":2,"2540":1,"2542":1,"2550":1,"2554":1,"2576":1,"2581":2,"2590":1,"2603":1,"2611":1,"2615":1,"2625":1,"2628":1,"2632":9,"2633":2,"2634":4,"2635":1,"2642":1,"2649":1,"2659":1,"2664":1,"2665":1,"2666":1,"2677":1,"2681":1,"2684":1,"2693":1,"2695":1,"2697":1,"2701":1,"2733":1,"2759":2,"2762":1,"2766":2,"2767":1,"2769":1,"2773":1,"2779":2,"2785":1,"2788":1,"2794":1,"2802":1,"2806":3,"2807":1,"2815":1,"2818":1,"2821":1,"2822":2,"2823":3,"2824":1,"2827":2,"2828":1,"2829":1,"2830":1,"2831":1,"2839":1,"2840":1,"2841":1,"2848":1,"2850":2,"2853":1,"2854":1,"2855":2,"2856":1,"2868":3,"2869":3,"2870":3,"2871":1,"2872":2,"2873":2}}],["thanks",{"2":{"1385":1}}],["thank",{"2":{"848":1}}],["than",{"2":{"1":2,"87":1,"214":1,"216":1,"302":1,"307":1,"325":1,"666":1,"701":1,"723":1,"831":1,"841":2,"847":1,"851":1,"859":1,"860":1,"868":3,"869":2,"872":3,"873":2,"874":1,"875":2,"876":4,"904":1,"908":1,"993":1,"994":1,"1075":1,"1076":2,"1090":1,"1102":1,"1103":1,"1121":1,"1129":1,"1133":1,"1150":1,"1159":1,"1161":1,"1176":1,"1254":1,"1269":1,"1270":1,"1272":1,"1305":1,"1326":1,"1363":1,"1385":4,"1402":2,"1403":1,"1413":1,"1416":1,"1428":1,"1464":1,"1511":5,"1527":1,"1607":1,"1792":8,"1824":1,"1856":1,"1917":1,"1925":2,"1940":1,"2175":2,"2177":1,"2220":1,"2222":1,"2265":3,"2376":1,"2377":1,"2380":1,"2384":1,"2405":1,"2421":1,"2440":1,"2454":1,"2463":1,"2466":2,"2481":1,"2511":1,"2513":1,"2517":1,"2528":1,"2531":2,"2535":1,"2603":1,"2656":1,"2789":1,"2802":1,"2812":1,"2864":1}}],["that",{"0":{"39":1,"324":1,"870":1,"978":1,"1007":1,"1381":1,"2724":1},"1":{"871":1,"872":1,"873":1,"874":1,"875":1,"979":1,"980":1,"1382":1,"1383":1},"2":{"0":1,"1":2,"3":1,"30":1,"33":1,"37":1,"106":1,"109":1,"119":1,"159":1,"162":1,"165":3,"167":1,"168":1,"170":1,"174":1,"177":1,"188":1,"202":1,"214":1,"215":1,"220":1,"263":1,"297":2,"301":1,"302":1,"304":1,"306":1,"308":1,"309":1,"312":1,"319":2,"320":1,"352":1,"357":1,"358":1,"368":1,"380":1,"386":2,"388":1,"390":1,"395":1,"414":1,"423":1,"429":1,"433":1,"436":1,"507":1,"531":1,"535":1,"560":1,"575":1,"583":1,"586":1,"619":1,"636":1,"646":1,"650":1,"654":1,"656":1,"663":2,"664":1,"665":1,"666":1,"668":1,"673":1,"684":1,"687":1,"691":1,"694":2,"697":1,"706":1,"722":1,"749":1,"831":3,"833":1,"834":1,"835":1,"838":1,"840":1,"841":20,"843":5,"844":10,"845":10,"847":5,"848":9,"849":3,"851":19,"852":13,"854":3,"856":2,"857":3,"859":8,"860":7,"861":5,"863":8,"864":6,"865":4,"868":3,"869":3,"871":10,"872":15,"873":7,"874":4,"875":4,"876":6,"877":2,"878":1,"879":1,"880":3,"904":1,"913":1,"914":1,"915":2,"916":3,"917":1,"918":2,"919":1,"920":4,"921":3,"922":1,"924":1,"926":1,"928":2,"932":2,"933":2,"946":3,"948":2,"951":1,"953":1,"954":1,"961":1,"974":3,"975":3,"979":1,"981":1,"982":1,"983":1,"986":3,"987":1,"991":1,"992":1,"993":1,"1005":5,"1006":1,"1007":1,"1009":1,"1010":1,"1012":1,"1017":1,"1037":3,"1042":1,"1043":1,"1044":1,"1048":2,"1049":1,"1050":1,"1053":1,"1063":1,"1064":1,"1065":2,"1066":2,"1067":2,"1068":4,"1069":1,"1073":6,"1075":6,"1077":3,"1078":4,"1079":4,"1081":1,"1082":1,"1086":1,"1096":2,"1098":3,"1101":2,"1102":4,"1104":1,"1105":1,"1106":1,"1107":1,"1111":1,"1115":1,"1125":1,"1126":1,"1127":1,"1128":1,"1130":2,"1133":4,"1134":2,"1137":2,"1139":1,"1140":1,"1141":1,"1142":1,"1150":1,"1162":2,"1171":1,"1176":1,"1180":3,"1183":2,"1185":1,"1187":1,"1190":1,"1200":1,"1203":1,"1205":2,"1208":1,"1209":1,"1210":1,"1211":1,"1214":2,"1219":1,"1239":1,"1254":4,"1281":1,"1303":1,"1305":1,"1324":1,"1326":1,"1327":2,"1328":3,"1329":1,"1351":1,"1366":1,"1367":1,"1374":1,"1376":1,"1382":8,"1384":2,"1385":18,"1386":20,"1388":5,"1389":2,"1390":3,"1391":5,"1393":7,"1394":8,"1395":2,"1396":5,"1397":3,"1398":6,"1399":8,"1400":1,"1401":11,"1402":15,"1403":22,"1404":7,"1405":12,"1406":2,"1407":1,"1409":3,"1410":2,"1412":2,"1413":1,"1414":1,"1419":2,"1421":2,"1423":2,"1424":1,"1427":1,"1428":2,"1429":1,"1431":5,"1432":2,"1435":3,"1440":2,"1441":2,"1442":1,"1445":1,"1453":1,"1458":1,"1459":1,"1460":5,"1511":1,"1515":1,"1516":1,"1527":1,"1544":2,"1566":1,"1569":1,"1571":1,"1574":1,"1576":1,"1582":1,"1589":1,"1609":1,"1623":1,"1630":1,"1664":1,"1686":1,"1703":1,"1720":1,"1727":1,"1733":1,"1738":1,"1743":1,"1744":1,"1759":1,"1764":1,"1792":75,"1801":3,"1802":2,"1813":3,"1817":1,"1823":2,"1825":3,"1840":1,"1844":1,"1856":1,"1868":1,"1869":1,"1898":1,"1912":1,"1923":1,"1925":1,"1930":1,"1941":1,"1958":3,"1961":2,"1974":1,"2005":1,"2016":2,"2020":1,"2024":1,"2040":2,"2054":1,"2072":2,"2098":1,"2109":1,"2110":2,"2125":1,"2139":1,"2157":2,"2159":1,"2166":1,"2171":1,"2175":1,"2177":1,"2182":2,"2185":2,"2187":1,"2191":1,"2193":1,"2200":1,"2247":1,"2255":2,"2256":5,"2264":2,"2265":2,"2267":1,"2291":1,"2296":1,"2300":2,"2304":1,"2310":1,"2313":1,"2314":1,"2321":2,"2322":2,"2332":1,"2333":1,"2336":2,"2337":1,"2338":1,"2339":1,"2340":1,"2344":1,"2346":4,"2356":1,"2369":1,"2375":7,"2380":3,"2381":1,"2384":1,"2385":1,"2389":5,"2391":1,"2392":3,"2393":1,"2394":1,"2395":3,"2397":1,"2398":3,"2401":1,"2402":1,"2405":1,"2409":1,"2411":1,"2412":1,"2414":1,"2421":2,"2423":1,"2425":1,"2428":1,"2430":1,"2433":1,"2435":1,"2437":1,"2438":4,"2440":2,"2442":1,"2443":1,"2451":1,"2452":2,"2455":2,"2456":1,"2459":2,"2466":3,"2468":3,"2470":5,"2474":1,"2477":2,"2479":2,"2481":3,"2482":1,"2489":2,"2492":1,"2493":1,"2494":2,"2495":2,"2497":1,"2502":1,"2505":1,"2508":1,"2509":1,"2513":1,"2515":1,"2517":2,"2519":1,"2520":1,"2527":2,"2528":1,"2529":2,"2530":4,"2531":2,"2532":3,"2533":3,"2534":3,"2535":1,"2536":2,"2537":3,"2539":1,"2540":2,"2542":1,"2543":2,"2544":1,"2545":1,"2580":2,"2586":1,"2589":1,"2597":1,"2603":1,"2607":2,"2608":2,"2611":1,"2615":1,"2632":2,"2633":1,"2634":1,"2650":1,"2655":1,"2659":2,"2669":1,"2674":1,"2678":1,"2709":1,"2710":1,"2712":2,"2717":1,"2725":1,"2729":1,"2740":1,"2741":2,"2755":1,"2758":1,"2759":1,"2760":2,"2772":1,"2775":1,"2785":1,"2795":1,"2800":1,"2804":1,"2806":1,"2812":1,"2815":1,"2823":1,"2826":1,"2828":1,"2830":3,"2831":1,"2832":1,"2833":2,"2834":2,"2835":2,"2836":1,"2840":1,"2841":1,"2849":1,"2850":1,"2854":1,"2855":1,"2856":1,"2858":1,"2862":2,"2864":1,"2865":2,"2868":4,"2869":3,"2871":2,"2872":1,"2873":2,"2879":1,"2881":2}}],["theft",{"2":{"2438":1}}],["thead>",{"2":{"996":2}}],["therapy",{"2":{"840":1}}],["therefore",{"2":{"696":1,"847":1,"864":1,"868":1,"872":1,"1079":1,"1129":1,"1133":1,"2504":1,"2803":1}}],["there",{"0":{"1080":1,"2741":1,"2742":1},"2":{"167":1,"307":1,"325":1,"389":1,"390":1,"452":1,"453":1,"458":1,"746":1,"773":1,"833":2,"835":1,"841":3,"843":1,"844":2,"845":6,"847":1,"851":1,"852":1,"857":1,"859":2,"867":1,"868":2,"871":5,"872":2,"874":1,"875":2,"876":1,"912":1,"913":1,"916":1,"917":1,"919":1,"920":3,"949":1,"973":1,"974":1,"975":1,"982":1,"988":1,"994":1,"1075":2,"1076":3,"1077":1,"1079":1,"1082":1,"1137":1,"1157":1,"1169":1,"1209":1,"1254":1,"1384":1,"1385":2,"1386":6,"1390":1,"1392":1,"1394":4,"1396":2,"1398":1,"1399":1,"1400":1,"1401":8,"1402":3,"1403":1,"1405":1,"1406":1,"1409":1,"1422":1,"1432":1,"1792":3,"2171":2,"2183":1,"2256":1,"2381":1,"2383":1,"2438":1,"2544":1,"2590":1,"2712":1,"2744":1,"2760":1,"2795":1,"2828":1,"2848":1,"2868":1}}],["their",{"0":{"2249":1},"2":{"210":1,"244":1,"300":1,"328":1,"337":1,"348":1,"352":1,"386":1,"439":1,"479":1,"565":1,"567":1,"636":1,"650":1,"668":1,"696":1,"801":1,"841":1,"851":1,"859":1,"865":1,"904":1,"912":1,"917":1,"918":3,"919":1,"933":1,"1054":1,"1068":1,"1074":1,"1079":1,"1096":1,"1098":2,"1100":1,"1101":2,"1106":1,"1108":1,"1111":1,"1115":1,"1127":1,"1162":1,"1206":1,"1220":1,"1232":1,"1254":1,"1324":1,"1382":3,"1385":1,"1396":1,"1398":1,"1432":2,"1574":1,"1588":1,"1605":1,"1690":1,"1714":1,"1732":1,"1792":5,"1840":1,"1871":1,"1908":1,"1955":1,"1973":1,"1974":1,"2217":1,"2264":1,"2285":1,"2320":1,"2330":1,"2342":1,"2379":1,"2397":1,"2398":1,"2456":1,"2466":2,"2495":1,"2497":1,"2532":1,"2533":1,"2536":1,"2607":1,"2625":1,"2688":1,"2694":1,"2799":1,"2870":1,"2873":1}}],["theme",{"2":{"2535":3,"2880":1}}],["theme=dark",{"2":{"541":2,"2202":1}}],["themself",{"2":{"1254":1}}],["themselves",{"2":{"841":1,"1792":1,"1908":1,"2297":1,"2353":1,"2415":1,"2543":1}}],["them",{"0":{"868":1},"2":{"165":1,"167":1,"302":1,"305":1,"306":2,"308":1,"309":1,"362":1,"364":1,"369":1,"372":1,"376":1,"390":1,"447":1,"448":3,"614":1,"684":1,"841":4,"843":1,"845":1,"848":1,"851":3,"852":1,"855":1,"856":2,"857":1,"860":2,"865":2,"868":3,"869":2,"871":3,"872":2,"877":1,"912":1,"932":3,"933":2,"936":1,"942":1,"1010":1,"1038":3,"1056":1,"1065":1,"1105":1,"1128":2,"1133":1,"1134":1,"1150":1,"1169":1,"1190":1,"1196":1,"1208":2,"1215":1,"1220":1,"1304":1,"1305":1,"1325":1,"1327":2,"1362":1,"1371":1,"1375":1,"1377":1,"1382":2,"1386":4,"1392":1,"1393":1,"1394":3,"1398":5,"1400":1,"1401":3,"1402":1,"1405":1,"1409":1,"1416":1,"1419":1,"1423":2,"1427":1,"1429":1,"1435":2,"1437":1,"1449":1,"1519":1,"1569":1,"1571":3,"1574":2,"1792":5,"1832":1,"1833":1,"1840":1,"1912":1,"1922":1,"1961":1,"2092":1,"2097":1,"2111":1,"2156":1,"2182":2,"2183":1,"2184":1,"2190":1,"2193":1,"2209":1,"2282":1,"2322":1,"2339":1,"2347":1,"2358":1,"2378":1,"2380":1,"2389":1,"2410":1,"2415":1,"2421":1,"2422":1,"2476":1,"2481":3,"2484":1,"2486":1,"2509":1,"2530":1,"2536":1,"2537":1,"2540":1,"2572":1,"2603":1,"2666":1,"2747":1,"2749":1,"2758":1,"2766":1,"2827":1,"2834":1,"2852":1,"2860":1,"2881":1}}],["then",{"0":{"1080":1},"2":{"106":1,"107":3,"207":1,"208":1,"209":2,"215":1,"223":1,"310":1,"313":1,"378":1,"395":1,"412":1,"423":1,"436":1,"439":1,"446":1,"448":1,"449":2,"452":1,"453":1,"454":1,"456":1,"470":1,"556":1,"683":1,"745":1,"840":1,"841":1,"843":1,"844":2,"845":2,"847":1,"848":1,"849":6,"851":5,"859":1,"861":1,"864":1,"865":1,"888":1,"896":1,"897":2,"916":1,"918":1,"928":1,"929":3,"1021":3,"1039":1,"1044":2,"1060":1,"1067":3,"1075":1,"1078":1,"1081":1,"1105":4,"1129":1,"1133":1,"1150":3,"1232":1,"1234":2,"1236":1,"1239":1,"1254":1,"1332":2,"1338":2,"1339":2,"1376":3,"1385":2,"1386":7,"1393":2,"1394":1,"1395":3,"1396":2,"1398":5,"1399":2,"1401":4,"1403":1,"1404":1,"1405":2,"1417":1,"1418":1,"1427":2,"1428":1,"1429":2,"1431":2,"1439":3,"1504":1,"1520":1,"1523":1,"1524":1,"1525":2,"1526":1,"1527":1,"1529":2,"1689":1,"1727":2,"1736":1,"1738":1,"1742":2,"1792":8,"1823":1,"1856":1,"1921":1,"2095":1,"2106":1,"2156":1,"2164":1,"2171":1,"2257":1,"2264":1,"2290":2,"2300":1,"2304":1,"2333":1,"2378":1,"2380":7,"2393":2,"2422":1,"2424":1,"2445":1,"2451":1,"2511":1,"2521":1,"2537":2,"2542":1,"2549":1,"2669":1,"2672":1,"2681":1,"2689":1,"2728":1,"2741":1,"2762":3,"2764":1,"2766":3,"2804":1,"2810":1,"2815":3,"2816":1,"2855":2,"2876":1,"2878":1}}],["they",{"0":{"836":1,"1075":1,"2749":1},"2":{"74":1,"101":1,"184":1,"305":1,"320":1,"390":1,"395":1,"452":1,"567":1,"650":1,"666":2,"669":1,"691":1,"696":1,"831":2,"836":1,"838":1,"841":4,"844":4,"845":1,"848":3,"849":1,"851":3,"852":2,"857":2,"860":1,"864":2,"865":3,"868":3,"869":1,"872":3,"874":1,"877":1,"904":1,"912":1,"916":1,"932":1,"933":1,"940":1,"963":1,"978":1,"1005":1,"1008":1,"1012":1,"1036":1,"1037":1,"1046":1,"1049":1,"1052":1,"1054":1,"1068":1,"1071":1,"1075":2,"1076":1,"1077":1,"1079":1,"1083":2,"1107":2,"1122":1,"1145":1,"1150":1,"1166":1,"1180":1,"1206":2,"1210":2,"1221":1,"1232":1,"1254":1,"1305":1,"1325":1,"1328":1,"1371":1,"1377":1,"1382":5,"1385":3,"1386":4,"1388":1,"1394":2,"1395":1,"1396":1,"1397":1,"1398":1,"1401":2,"1403":7,"1414":1,"1435":2,"1441":2,"1559":1,"1571":1,"1792":2,"1924":1,"1961":1,"2110":1,"2156":1,"2160":1,"2181":2,"2185":1,"2190":1,"2193":1,"2250":1,"2267":1,"2282":1,"2289":1,"2292":1,"2297":1,"2320":1,"2377":1,"2383":1,"2384":1,"2398":2,"2413":1,"2415":1,"2419":1,"2423":1,"2432":1,"2438":1,"2444":1,"2483":1,"2484":1,"2486":1,"2492":1,"2511":2,"2518":1,"2522":1,"2531":1,"2532":1,"2555":1,"2588":1,"2685":1,"2722":1,"2724":1,"2739":1,"2765":1,"2820":1,"2849":1,"2852":1,"2855":1,"2868":2,"2869":1,"2876":1}}],["thesis",{"2":{"1":1}}],["these",{"0":{"1":1,"2521":1},"2":{"17":1,"105":1,"159":1,"165":1,"169":1,"239":1,"305":1,"309":2,"375":1,"387":1,"453":1,"564":1,"624":1,"684":1,"747":1,"840":1,"841":2,"843":1,"847":1,"852":1,"857":2,"865":1,"868":1,"869":1,"872":2,"893":1,"914":1,"917":1,"918":1,"926":1,"927":1,"963":1,"983":2,"985":1,"986":1,"988":1,"996":1,"1054":1,"1057":1,"1088":1,"1096":1,"1098":1,"1100":1,"1106":1,"1107":1,"1129":3,"1130":2,"1135":1,"1179":1,"1180":1,"1184":1,"1204":1,"1205":1,"1221":1,"1279":1,"1304":1,"1313":1,"1325":1,"1328":1,"1329":1,"1332":1,"1341":1,"1358":1,"1379":1,"1383":1,"1386":3,"1387":2,"1394":1,"1398":1,"1399":1,"1401":2,"1403":3,"1435":3,"1443":1,"1464":1,"1472":1,"1475":1,"1477":1,"1480":1,"1521":1,"1558":1,"1574":1,"1591":1,"1690":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1707":1,"1733":1,"1757":1,"1792":14,"1826":1,"1855":1,"1871":1,"1918":1,"1922":1,"1961":2,"2094":2,"2115":1,"2119":1,"2164":1,"2165":1,"2168":1,"2169":1,"2255":2,"2264":1,"2270":2,"2273":1,"2282":1,"2322":1,"2335":1,"2377":1,"2384":1,"2398":2,"2401":1,"2429":1,"2431":1,"2438":1,"2482":2,"2486":1,"2518":1,"2533":2,"2537":2,"2549":1,"2551":1,"2586":1,"2615":1,"2629":1,"2632":2,"2633":1,"2692":1,"2702":1,"2721":1,"2835":1,"2855":1,"2871":1}}],["the",{"0":{"2":1,"299":1,"304":1,"325":1,"436":1,"534":1,"666":1,"668":1,"669":1,"691":1,"832":1,"833":2,"834":1,"835":1,"839":1,"841":1,"843":1,"844":1,"845":1,"847":1,"848":1,"849":1,"851":1,"852":1,"853":1,"855":1,"856":1,"857":1,"859":1,"860":1,"861":1,"863":1,"864":1,"865":1,"867":1,"869":1,"870":1,"879":1,"880":1,"882":1,"885":1,"886":1,"902":1,"911":1,"922":1,"924":1,"925":1,"926":1,"928":1,"929":1,"930":1,"931":1,"938":1,"949":1,"957":1,"961":1,"968":1,"970":1,"973":1,"975":1,"977":1,"978":1,"981":1,"983":1,"988":1,"992":1,"995":1,"996":1,"997":1,"1009":1,"1011":1,"1015":1,"1016":1,"1017":1,"1018":1,"1020":1,"1021":1,"1024":1,"1027":1,"1044":2,"1045":1,"1055":1,"1060":1,"1061":1,"1068":1,"1076":1,"1079":1,"1137":1,"1165":1,"1184":1,"1185":1,"1188":1,"1191":1,"1192":1,"1203":1,"1206":1,"1264":1,"1268":1,"1303":1,"1304":1,"1306":1,"1309":1,"1317":1,"1318":1,"1322":1,"1329":1,"1330":1,"1334":1,"1335":1,"1342":1,"1349":1,"1355":1,"1357":1,"1358":1,"1359":1,"1361":1,"1369":1,"1377":1,"1381":1,"1382":1,"1405":1,"1407":1,"1410":1,"1420":1,"1424":1,"1426":1,"1430":1,"1924":2,"2110":1,"2171":1,"2173":1,"2177":1,"2180":1,"2188":1,"2195":1,"2389":1,"2398":1,"2413":1,"2416":1,"2423":1,"2444":1,"2484":1,"2494":2,"2505":1,"2517":1,"2530":1,"2542":1,"2727":1,"2733":1,"2741":1,"2750":1,"2751":1,"2761":1,"2763":1,"2770":1,"2795":1,"2800":1,"2808":1,"2811":1,"2816":1,"2830":1,"2837":1,"2857":1,"2866":1,"2868":1},"1":{"305":1,"306":1,"840":1,"841":1,"842":1,"843":1,"844":1,"845":1,"846":1,"847":1,"848":1,"849":1,"850":1,"851":1,"852":1,"853":1,"854":2,"855":2,"856":2,"857":2,"858":1,"859":1,"860":1,"861":1,"862":1,"863":1,"864":1,"865":1,"871":1,"872":1,"873":1,"874":1,"875":1,"883":1,"884":1,"887":1,"903":1,"932":1,"933":1,"934":1,"935":1,"936":1,"969":1,"979":1,"980":1,"982":1,"983":1,"984":1,"1019":1,"1020":1,"1021":1,"1022":1,"1056":1,"1138":1,"1139":1,"1307":1,"1308":1,"1309":1,"1310":1,"1331":1,"1332":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1350":1,"1360":1,"1382":1,"1383":1,"2196":1,"2197":1},"2":{"0":1,"1":21,"3":2,"4":2,"10":1,"13":1,"18":1,"19":2,"20":2,"21":1,"22":2,"23":1,"29":1,"31":5,"32":3,"37":2,"38":2,"39":1,"40":1,"41":11,"44":1,"45":3,"46":1,"48":1,"50":2,"51":7,"52":2,"55":1,"56":3,"57":1,"58":1,"60":1,"63":7,"64":2,"68":1,"73":3,"74":12,"75":4,"77":2,"78":3,"80":1,"81":1,"83":1,"87":4,"101":2,"102":2,"104":1,"105":3,"106":3,"108":10,"109":1,"113":1,"119":2,"120":1,"121":2,"125":1,"132":2,"133":4,"134":1,"139":3,"140":2,"144":1,"154":1,"155":1,"156":5,"157":1,"158":2,"159":1,"162":1,"165":6,"166":1,"167":7,"168":12,"169":1,"173":3,"174":2,"175":12,"179":4,"180":3,"182":4,"184":4,"186":4,"188":2,"192":1,"197":1,"202":4,"203":4,"206":2,"210":1,"211":1,"212":4,"213":7,"214":17,"215":12,"216":3,"217":1,"220":2,"221":1,"223":2,"239":3,"244":4,"245":2,"251":3,"253":2,"258":2,"263":1,"267":2,"277":4,"279":1,"280":1,"284":2,"285":3,"286":1,"289":1,"292":1,"296":5,"297":12,"298":13,"299":5,"301":4,"302":3,"303":7,"304":3,"305":10,"306":9,"307":12,"308":13,"309":14,"310":10,"312":3,"314":1,"316":1,"317":7,"318":3,"319":14,"320":12,"322":4,"323":2,"324":7,"326":1,"327":3,"330":2,"334":2,"335":1,"336":3,"337":1,"339":1,"347":8,"349":4,"351":1,"352":1,"353":1,"354":2,"357":2,"358":3,"361":2,"362":9,"363":2,"364":4,"366":1,"369":5,"370":4,"373":1,"374":1,"375":2,"376":4,"377":3,"378":3,"380":3,"383":7,"384":8,"386":3,"387":3,"388":13,"390":13,"393":1,"394":4,"395":1,"397":2,"404":2,"408":9,"409":3,"412":3,"414":20,"415":5,"417":1,"418":1,"419":4,"421":4,"422":4,"423":15,"424":7,"429":8,"430":2,"431":1,"435":2,"436":31,"438":5,"439":14,"441":1,"442":1,"443":1,"445":3,"446":13,"447":6,"448":20,"449":3,"452":11,"453":19,"454":15,"456":1,"462":3,"464":2,"469":3,"470":2,"473":3,"480":7,"492":1,"497":1,"499":1,"504":2,"507":1,"511":1,"515":2,"523":1,"524":2,"527":7,"528":1,"529":12,"531":2,"534":5,"535":3,"536":1,"541":1,"542":1,"544":2,"545":1,"549":2,"556":2,"559":2,"560":5,"562":1,"563":5,"564":1,"567":3,"575":1,"581":2,"582":6,"583":2,"584":4,"585":2,"586":2,"587":16,"595":1,"598":1,"609":2,"613":2,"614":1,"615":3,"616":3,"618":4,"619":5,"621":3,"622":2,"624":6,"625":3,"627":1,"634":1,"636":4,"639":4,"641":2,"643":1,"644":1,"646":6,"647":1,"649":1,"650":10,"652":3,"653":5,"654":2,"655":2,"656":2,"658":3,"659":5,"660":2,"661":2,"662":6,"663":13,"664":5,"665":3,"666":13,"667":1,"668":7,"669":10,"670":1,"673":1,"674":1,"675":9,"679":4,"683":4,"684":1,"685":6,"686":3,"687":2,"689":4,"690":5,"691":1,"692":2,"693":4,"694":6,"695":2,"696":6,"697":2,"698":2,"699":3,"700":2,"701":2,"702":1,"703":2,"704":8,"705":2,"706":7,"707":4,"708":2,"709":4,"710":1,"711":3,"712":1,"713":3,"714":7,"715":4,"716":4,"717":3,"718":1,"720":10,"722":1,"723":1,"724":2,"728":1,"737":3,"745":2,"746":1,"747":3,"748":3,"751":1,"753":1,"754":1,"756":1,"760":1,"761":5,"762":4,"763":2,"765":1,"770":1,"771":6,"772":4,"773":2,"776":1,"777":3,"778":1,"779":1,"780":1,"781":2,"782":4,"784":6,"786":2,"788":2,"794":1,"809":4,"814":2,"818":2,"819":1,"826":1,"829":4,"831":4,"832":7,"833":2,"834":6,"835":7,"836":15,"838":5,"840":8,"841":26,"843":22,"844":41,"845":24,"847":19,"848":49,"849":20,"851":61,"852":77,"854":19,"855":11,"856":10,"857":19,"859":24,"860":39,"861":34,"863":20,"864":40,"865":38,"866":8,"867":3,"868":34,"869":23,"871":41,"872":73,"873":36,"874":25,"875":12,"876":29,"877":6,"878":3,"879":8,"880":8,"881":5,"882":1,"884":1,"885":6,"886":2,"887":1,"888":6,"893":1,"901":1,"902":9,"903":5,"904":13,"910":7,"911":7,"912":1,"913":7,"914":3,"915":9,"916":12,"917":10,"918":12,"919":8,"920":10,"921":7,"922":5,"924":3,"925":2,"926":9,"927":2,"929":2,"930":2,"932":13,"933":5,"934":7,"935":2,"936":3,"937":6,"938":2,"940":4,"941":1,"942":1,"943":3,"944":1,"946":5,"947":7,"948":14,"949":4,"951":1,"952":1,"953":2,"954":1,"956":4,"957":5,"958":2,"959":3,"960":1,"961":7,"963":1,"965":4,"966":5,"970":4,"971":4,"973":2,"974":10,"975":10,"976":3,"977":1,"978":5,"979":3,"980":1,"981":1,"982":6,"983":6,"984":5,"985":9,"986":10,"987":1,"988":7,"989":6,"990":1,"992":4,"993":2,"994":7,"995":5,"996":8,"997":6,"998":2,"1000":2,"1001":1,"1002":3,"1003":1,"1004":1,"1005":10,"1006":1,"1007":2,"1009":1,"1010":2,"1011":2,"1012":1,"1014":5,"1015":6,"1016":9,"1017":5,"1018":1,"1019":2,"1020":4,"1021":1,"1023":5,"1025":1,"1031":1,"1032":4,"1033":5,"1036":5,"1037":14,"1038":5,"1039":4,"1040":8,"1041":7,"1042":11,"1043":6,"1044":10,"1045":8,"1046":6,"1047":10,"1048":2,"1049":11,"1050":1,"1051":1,"1052":2,"1053":1,"1054":5,"1055":6,"1056":2,"1057":2,"1060":4,"1061":1,"1062":1,"1063":4,"1065":7,"1066":2,"1067":18,"1068":14,"1069":5,"1070":19,"1071":5,"1073":13,"1074":13,"1075":8,"1076":19,"1077":18,"1078":21,"1079":13,"1080":17,"1081":11,"1082":17,"1083":1,"1084":1,"1086":2,"1088":2,"1090":1,"1091":1,"1094":11,"1095":1,"1096":6,"1097":5,"1098":9,"1099":2,"1100":3,"1101":7,"1102":9,"1103":1,"1104":2,"1105":25,"1106":7,"1107":5,"1108":2,"1111":7,"1113":1,"1115":1,"1119":1,"1122":1,"1123":2,"1125":1,"1126":3,"1127":2,"1128":1,"1129":15,"1130":6,"1132":4,"1133":7,"1134":3,"1135":6,"1137":2,"1138":2,"1139":5,"1141":1,"1142":1,"1147":2,"1148":4,"1150":12,"1153":3,"1155":2,"1156":1,"1157":2,"1158":2,"1162":3,"1164":2,"1165":3,"1166":1,"1167":1,"1169":1,"1170":1,"1171":1,"1173":2,"1174":1,"1175":2,"1176":5,"1178":3,"1179":2,"1180":4,"1181":2,"1183":4,"1184":1,"1185":11,"1188":3,"1189":2,"1190":4,"1192":3,"1193":10,"1195":1,"1196":2,"1199":1,"1200":4,"1202":1,"1203":9,"1204":2,"1205":1,"1206":1,"1207":2,"1208":5,"1209":5,"1210":8,"1211":8,"1212":3,"1213":2,"1214":5,"1215":7,"1216":2,"1217":2,"1218":2,"1220":6,"1225":2,"1232":1,"1233":2,"1235":4,"1236":3,"1239":2,"1240":1,"1241":1,"1243":2,"1244":1,"1250":1,"1252":5,"1253":2,"1254":8,"1255":4,"1256":1,"1258":1,"1260":1,"1263":1,"1268":1,"1270":1,"1271":1,"1272":1,"1278":6,"1279":1,"1280":4,"1281":7,"1303":1,"1304":1,"1305":5,"1309":9,"1311":1,"1316":1,"1318":2,"1322":1,"1323":1,"1324":6,"1325":1,"1326":16,"1327":5,"1328":2,"1329":2,"1330":1,"1331":7,"1332":5,"1334":2,"1337":4,"1338":8,"1343":4,"1348":1,"1350":2,"1351":3,"1352":5,"1356":1,"1357":5,"1358":2,"1359":2,"1360":1,"1363":8,"1366":4,"1367":4,"1368":11,"1369":2,"1370":2,"1371":3,"1372":5,"1373":2,"1374":1,"1376":9,"1378":4,"1379":6,"1380":1,"1381":4,"1382":58,"1383":5,"1384":2,"1385":24,"1386":30,"1388":4,"1390":5,"1391":1,"1393":5,"1394":6,"1395":1,"1396":12,"1398":17,"1399":9,"1400":8,"1401":14,"1402":9,"1403":20,"1404":9,"1405":16,"1406":13,"1407":9,"1408":8,"1409":23,"1410":7,"1411":3,"1412":9,"1413":4,"1414":6,"1415":8,"1416":9,"1417":5,"1418":6,"1419":24,"1420":11,"1421":14,"1422":14,"1423":9,"1424":5,"1426":4,"1427":10,"1428":6,"1429":5,"1430":4,"1431":35,"1432":4,"1433":2,"1434":2,"1435":13,"1436":5,"1437":5,"1438":4,"1439":9,"1440":4,"1441":8,"1442":10,"1443":2,"1447":7,"1448":1,"1449":3,"1451":1,"1452":1,"1454":5,"1455":1,"1456":1,"1458":7,"1459":4,"1460":8,"1464":5,"1465":1,"1470":2,"1471":1,"1472":3,"1475":1,"1480":1,"1484":1,"1489":3,"1492":1,"1493":2,"1502":1,"1504":4,"1506":1,"1511":4,"1513":1,"1515":3,"1516":1,"1517":1,"1518":5,"1519":1,"1520":2,"1521":3,"1522":5,"1523":6,"1524":1,"1525":1,"1527":2,"1531":2,"1533":3,"1540":3,"1543":2,"1544":4,"1547":2,"1549":1,"1558":1,"1559":5,"1566":1,"1567":4,"1568":2,"1569":10,"1570":2,"1571":5,"1572":1,"1573":3,"1574":1,"1575":1,"1576":3,"1577":1,"1579":2,"1580":2,"1581":1,"1582":2,"1588":2,"1589":1,"1590":1,"1591":1,"1596":1,"1599":1,"1603":2,"1605":4,"1607":1,"1608":4,"1609":7,"1613":2,"1615":1,"1616":1,"1617":1,"1618":5,"1619":2,"1620":6,"1621":1,"1622":1,"1624":1,"1630":1,"1644":2,"1645":1,"1649":1,"1651":5,"1653":1,"1654":1,"1655":6,"1656":1,"1657":1,"1658":3,"1661":3,"1662":3,"1664":4,"1670":2,"1671":4,"1672":3,"1674":1,"1678":1,"1684":3,"1685":3,"1686":5,"1687":2,"1688":4,"1689":4,"1690":1,"1696":3,"1699":1,"1701":1,"1703":3,"1704":7,"1706":1,"1712":1,"1715":1,"1716":1,"1722":1,"1723":6,"1725":1,"1726":1,"1727":3,"1728":2,"1731":1,"1732":1,"1733":7,"1737":1,"1738":12,"1739":1,"1740":3,"1741":6,"1742":3,"1743":11,"1744":1,"1746":2,"1747":1,"1748":1,"1754":1,"1756":1,"1758":1,"1759":4,"1762":1,"1764":5,"1766":1,"1767":2,"1768":2,"1770":4,"1776":1,"1781":1,"1785":2,"1789":1,"1792":706,"1799":2,"1801":1,"1802":8,"1806":1,"1813":6,"1816":1,"1817":2,"1818":5,"1819":2,"1820":3,"1822":10,"1823":9,"1824":26,"1825":13,"1827":4,"1828":1,"1829":1,"1830":6,"1831":2,"1832":3,"1833":3,"1834":1,"1840":5,"1845":1,"1850":3,"1851":7,"1852":2,"1856":17,"1858":5,"1861":1,"1862":5,"1868":6,"1870":3,"1875":2,"1885":1,"1886":1,"1888":2,"1890":1,"1894":1,"1898":5,"1899":1,"1900":1,"1901":1,"1906":1,"1908":3,"1909":2,"1910":3,"1911":2,"1912":5,"1915":3,"1917":4,"1920":3,"1921":4,"1922":9,"1923":7,"1924":20,"1925":19,"1926":1,"1929":8,"1930":3,"1932":1,"1940":2,"1941":1,"1942":1,"1943":1,"1947":2,"1948":3,"1949":2,"1951":4,"1952":3,"1953":5,"1954":3,"1955":1,"1956":3,"1957":7,"1958":9,"1959":3,"1961":13,"1968":2,"1971":1,"1973":4,"1974":13,"1978":1,"1979":1,"1980":1,"1981":1,"1982":1,"1983":3,"1984":3,"1991":3,"1994":2,"2000":3,"2002":2,"2003":2,"2004":2,"2005":3,"2006":1,"2007":7,"2008":1,"2009":1,"2010":2,"2011":4,"2012":2,"2013":2,"2014":1,"2016":5,"2017":1,"2018":4,"2019":1,"2020":2,"2021":1,"2025":2,"2036":1,"2038":6,"2039":3,"2040":17,"2041":1,"2047":3,"2052":1,"2056":4,"2060":1,"2062":1,"2072":1,"2075":5,"2076":1,"2077":5,"2079":1,"2086":2,"2088":1,"2092":7,"2094":6,"2095":1,"2096":2,"2097":4,"2098":10,"2100":1,"2102":3,"2103":1,"2104":3,"2106":8,"2107":9,"2108":1,"2109":7,"2110":10,"2111":3,"2112":9,"2114":1,"2115":1,"2117":1,"2118":1,"2119":1,"2125":2,"2127":1,"2129":2,"2130":1,"2131":2,"2140":1,"2141":1,"2143":4,"2147":1,"2149":1,"2153":7,"2154":4,"2155":2,"2156":13,"2157":15,"2158":2,"2159":3,"2160":4,"2161":1,"2162":4,"2164":11,"2165":4,"2166":1,"2167":6,"2170":4,"2171":7,"2172":2,"2174":2,"2175":4,"2176":6,"2177":17,"2178":2,"2179":2,"2180":7,"2181":13,"2182":4,"2183":14,"2184":6,"2185":4,"2186":3,"2187":4,"2189":1,"2190":2,"2191":2,"2192":4,"2193":8,"2194":1,"2195":5,"2197":2,"2201":1,"2202":2,"2203":1,"2206":1,"2207":2,"2208":1,"2209":1,"2210":1,"2212":3,"2217":1,"2218":1,"2220":2,"2221":5,"2222":14,"2223":7,"2224":2,"2225":1,"2226":1,"2227":1,"2245":1,"2247":5,"2251":1,"2252":2,"2254":24,"2255":4,"2256":15,"2257":2,"2258":2,"2259":1,"2264":28,"2265":12,"2266":2,"2267":1,"2271":2,"2272":7,"2273":4,"2274":3,"2277":4,"2279":3,"2282":4,"2283":13,"2284":6,"2287":3,"2288":3,"2289":8,"2290":3,"2291":6,"2292":4,"2293":4,"2296":2,"2297":8,"2300":5,"2302":9,"2303":5,"2304":9,"2305":4,"2306":1,"2307":7,"2308":2,"2309":2,"2310":8,"2313":6,"2314":2,"2317":1,"2318":6,"2319":3,"2320":6,"2321":2,"2322":6,"2323":3,"2324":1,"2325":2,"2327":5,"2328":3,"2329":1,"2330":1,"2333":7,"2335":1,"2336":3,"2337":16,"2339":4,"2340":7,"2342":2,"2343":2,"2344":1,"2346":4,"2347":5,"2348":6,"2350":3,"2351":1,"2353":1,"2354":5,"2356":2,"2357":1,"2358":4,"2359":6,"2360":3,"2362":3,"2363":2,"2364":3,"2365":6,"2366":3,"2367":4,"2371":2,"2372":1,"2375":19,"2376":9,"2377":4,"2378":5,"2379":12,"2380":23,"2381":4,"2382":7,"2383":5,"2384":2,"2385":6,"2388":2,"2389":26,"2391":8,"2392":7,"2393":4,"2394":9,"2395":12,"2397":4,"2398":14,"2399":2,"2400":3,"2402":5,"2403":3,"2404":3,"2405":3,"2406":1,"2407":5,"2410":2,"2411":9,"2412":4,"2413":3,"2414":8,"2415":8,"2416":4,"2417":1,"2419":3,"2420":5,"2421":13,"2422":10,"2423":5,"2424":3,"2425":4,"2427":5,"2428":5,"2429":5,"2430":3,"2431":3,"2432":8,"2433":3,"2434":4,"2435":10,"2436":3,"2437":3,"2438":17,"2440":4,"2441":2,"2442":6,"2443":4,"2445":3,"2446":3,"2448":1,"2450":11,"2451":23,"2452":8,"2453":7,"2454":2,"2455":9,"2456":8,"2457":1,"2459":10,"2461":5,"2462":2,"2463":12,"2464":4,"2465":6,"2466":26,"2468":3,"2470":5,"2471":3,"2472":6,"2474":3,"2476":8,"2477":4,"2479":5,"2481":49,"2482":9,"2483":7,"2484":10,"2486":9,"2487":6,"2489":6,"2490":7,"2491":3,"2492":5,"2493":5,"2494":7,"2495":8,"2496":5,"2497":5,"2498":8,"2500":3,"2502":14,"2504":15,"2505":7,"2506":2,"2508":1,"2509":18,"2510":5,"2511":5,"2512":2,"2513":6,"2515":1,"2517":8,"2518":19,"2519":13,"2520":8,"2521":6,"2522":5,"2523":8,"2525":7,"2526":3,"2527":14,"2528":16,"2529":25,"2530":15,"2531":10,"2532":18,"2533":30,"2534":22,"2535":19,"2536":3,"2537":48,"2538":5,"2539":8,"2540":22,"2541":10,"2542":17,"2543":31,"2544":6,"2545":10,"2546":10,"2549":8,"2550":2,"2551":4,"2554":3,"2555":5,"2558":3,"2565":2,"2566":3,"2567":1,"2571":1,"2572":1,"2575":1,"2576":1,"2577":5,"2580":1,"2581":2,"2586":8,"2587":1,"2588":1,"2589":2,"2590":6,"2591":3,"2595":1,"2596":3,"2597":6,"2600":1,"2603":1,"2607":14,"2608":11,"2611":4,"2614":3,"2615":5,"2626":5,"2627":1,"2628":4,"2629":1,"2632":7,"2633":9,"2634":13,"2635":4,"2641":6,"2645":1,"2648":2,"2649":3,"2650":1,"2652":1,"2653":1,"2655":2,"2656":3,"2659":3,"2660":2,"2661":2,"2662":3,"2664":3,"2665":9,"2666":2,"2669":1,"2670":3,"2672":1,"2673":2,"2674":1,"2677":4,"2678":4,"2679":2,"2681":1,"2682":2,"2684":2,"2685":1,"2687":4,"2688":4,"2689":1,"2691":2,"2692":1,"2693":3,"2694":4,"2695":3,"2696":1,"2701":1,"2702":2,"2703":1,"2704":1,"2705":3,"2711":3,"2712":3,"2713":3,"2714":3,"2716":1,"2717":4,"2718":1,"2719":3,"2721":8,"2722":5,"2723":7,"2724":3,"2725":2,"2726":2,"2727":3,"2728":1,"2729":5,"2731":3,"2732":2,"2733":4,"2734":2,"2737":1,"2739":4,"2740":4,"2741":5,"2742":4,"2744":3,"2745":1,"2749":2,"2750":5,"2751":4,"2752":2,"2754":2,"2755":3,"2756":1,"2758":1,"2759":7,"2760":10,"2761":1,"2762":12,"2763":8,"2764":5,"2765":11,"2766":2,"2767":3,"2768":8,"2769":11,"2771":1,"2774":3,"2775":1,"2776":4,"2779":5,"2782":2,"2783":2,"2784":2,"2785":2,"2786":4,"2788":2,"2789":1,"2790":1,"2791":3,"2792":10,"2794":7,"2795":16,"2797":3,"2798":2,"2799":2,"2800":5,"2801":1,"2802":11,"2803":7,"2804":5,"2805":2,"2806":4,"2807":12,"2808":1,"2809":5,"2810":9,"2811":6,"2812":9,"2813":11,"2814":3,"2815":11,"2816":1,"2817":2,"2818":2,"2820":1,"2821":1,"2822":3,"2823":3,"2824":4,"2825":2,"2827":4,"2828":6,"2829":12,"2830":11,"2831":5,"2832":4,"2833":7,"2834":9,"2835":7,"2836":8,"2837":1,"2838":3,"2839":2,"2840":9,"2841":3,"2842":1,"2843":2,"2845":12,"2846":3,"2847":2,"2848":3,"2849":3,"2850":1,"2851":2,"2852":4,"2853":2,"2854":3,"2855":3,"2856":4,"2857":5,"2858":2,"2860":7,"2861":6,"2862":13,"2863":1,"2864":12,"2865":12,"2866":3,"2867":4,"2868":20,"2869":19,"2870":2,"2871":14,"2872":4,"2873":4,"2874":4,"2875":7,"2876":10,"2877":1,"2878":13,"2879":8,"2880":4,"2881":5,"2882":2}}],["torn",{"2":{"2532":1}}],["toward",{"2":{"2438":1}}],["tofile",{"2":{"1792":1,"1800":1,"1804":2,"1810":1,"2804":2}}],["toconsole",{"2":{"1792":1,"1800":1,"1803":2,"1810":1,"2804":1}}],["toctou",{"2":{"864":1}}],["toggles",{"0":{"1415":1},"2":{"2474":1}}],["together",{"0":{"1179":1,"2521":1},"2":{"101":1,"306":1,"364":1,"831":1,"841":1,"857":1,"919":1,"937":1,"988":1,"1048":1,"1179":1,"1180":1,"1372":1,"1394":1,"1396":1,"1402":1,"1423":1,"1445":1,"1464":1,"1639":1,"1644":1,"1792":1,"2170":1,"2193":1,"2409":1,"2419":1,"2435":1,"2486":1,"2533":1,"2554":1,"2581":1,"2858":1}}],["toast",{"2":{"1412":1}}],["tostring",{"2":{"1366":1,"2622":4}}],["toscrape",{"2":{"214":1,"1423":1,"1426":1,"1430":1,"1431":1,"1743":1,"2502":1,"2760":1,"2762":3}}],["tokio",{"2":{"1255":1}}],["tokenizer",{"2":{"2540":1,"2845":1}}],["tokenurl",{"2":{"1690":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1792":5}}],["tokenvalue",{"2":{"1492":1,"1792":1}}],["tokentype",{"2":{"1455":1,"2554":1}}],["token=hacked",{"2":{"527":1,"529":1,"2284":1}}],["tokenlimit",{"2":{"477":1,"1160":1,"1792":1,"1953":2,"1960":1,"2257":1,"2443":1}}],["tokenbucket",{"2":{"477":1,"480":1,"868":1,"1160":1,"1792":2,"1950":1,"1953":2,"1958":1,"1960":1,"2257":1,"2443":1,"2444":1,"2470":1,"2551":1,"2558":1}}],["token",{"0":{"477":1,"531":1,"1063":1,"1160":1,"1450":1,"1451":1,"1452":1,"1456":1,"1457":1,"1490":1,"1902":1,"1953":1,"2174":1,"2554":1},"1":{"1451":1,"1452":1,"1491":1,"1492":1},"2":{"66":1,"133":2,"208":2,"209":4,"211":1,"212":4,"215":8,"277":2,"286":1,"297":3,"302":2,"303":2,"312":3,"378":1,"477":1,"527":8,"531":3,"532":4,"533":3,"534":1,"835":1,"854":2,"855":1,"871":2,"872":1,"1017":2,"1030":1,"1033":6,"1045":3,"1053":4,"1054":2,"1055":1,"1061":2,"1062":2,"1063":2,"1064":2,"1079":1,"1098":6,"1101":1,"1320":4,"1401":1,"1444":1,"1445":3,"1450":4,"1451":3,"1452":2,"1453":3,"1454":5,"1456":3,"1457":3,"1458":3,"1470":1,"1485":1,"1487":1,"1489":3,"1491":1,"1492":1,"1494":1,"1507":1,"1550":1,"1564":1,"1582":1,"1691":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1699":1,"1700":1,"1730":1,"1731":1,"1738":9,"1742":2,"1788":1,"1792":40,"1825":3,"1830":2,"1894":1,"1902":1,"1906":1,"1907":1,"1950":1,"1953":2,"2038":1,"2040":2,"2170":1,"2171":2,"2174":3,"2175":1,"2178":1,"2212":3,"2254":2,"2257":1,"2283":8,"2285":3,"2286":3,"2290":2,"2375":3,"2377":3,"2410":1,"2413":1,"2435":1,"2438":3,"2466":2,"2476":1,"2477":1,"2481":2,"2497":1,"2529":1,"2534":1,"2554":13,"2615":3,"2768":7}}],["tokensperperiod",{"2":{"1160":1,"1792":1,"1953":2,"1960":1,"2443":1,"2444":1,"2558":1}}],["tokens",{"2":{"10":1,"215":1,"292":2,"390":1,"396":1,"527":2,"531":2,"532":2,"696":2,"697":1,"871":1,"934":1,"1033":2,"1037":1,"1045":1,"1048":2,"1054":3,"1062":2,"1063":1,"1064":2,"1081":1,"1098":2,"1160":3,"1303":1,"1401":3,"1405":1,"1451":1,"1453":1,"1454":2,"1460":1,"1487":1,"1489":1,"1490":1,"1649":1,"1651":1,"1653":1,"1738":1,"1792":9,"1830":2,"1862":1,"1953":4,"2040":1,"2098":3,"2164":2,"2165":3,"2188":1,"2221":1,"2282":1,"2283":2,"2285":2,"2353":1,"2375":1,"2477":1,"2482":1,"2493":1,"2534":3,"2545":1,"2554":1,"2615":1,"2736":2,"2768":1,"2871":2,"2873":1}}],["to=null",{"2":{"1067":1,"1525":1}}],["to=2025",{"2":{"1067":1}}],["to=eur",{"2":{"263":1}}],["tour",{"2":{"2479":1}}],["touched",{"0":{"2448":1,"2457":1},"2":{"1402":1,"2398":1,"2872":1}}],["touches",{"2":{"868":1,"1210":1,"1409":1,"1435":1,"1436":1,"1868":1,"2537":1,"2879":1}}],["touch",{"2":{"1382":1,"1397":1,"1402":1,"2437":1,"2463":1}}],["touching",{"2":{"1075":1,"1137":1,"1328":1,"1337":1,"1382":1,"1396":1,"1410":1,"2869":1,"2878":1}}],["touppercase",{"2":{"1026":2}}],["tolerant",{"2":{"2456":1}}],["tolerance",{"2":{"1454":1,"2554":1}}],["tolerate",{"2":{"2007":1,"2328":1}}],["tolerates",{"2":{"2007":1}}],["tolocalestring",{"2":{"996":1}}],["told",{"2":{"852":1,"1384":1,"1441":1}}],["toisostring",{"2":{"961":1,"1335":1,"1792":1}}],["todate=2024",{"2":{"2845":1}}],["todate=",{"2":{"2731":1}}],["today",{"2":{"851":1,"977":1,"980":1,"990":1,"1382":1,"2381":1,"2438":3}}],["todictionary",{"2":{"2614":1}}],["todo",{"2":{"324":2,"839":1}}],["toopentelemetry",{"2":{"1792":1,"1800":1,"1807":2,"1810":1,"2804":1}}],["took",{"2":{"861":1,"1078":1,"1401":1,"1403":1,"1678":1,"2411":1}}],["too",{"0":{"1072":1,"1078":1},"1":{"1073":1,"1074":1,"1075":1,"1076":1,"1077":1,"1078":1,"1079":1,"1080":1,"1081":1,"1082":1},"2":{"374":1,"436":1,"480":1,"576":1,"664":1,"828":1,"841":1,"844":2,"845":1,"847":2,"852":1,"869":1,"873":1,"1037":1,"1042":1,"1079":1,"1082":1,"1101":1,"1152":1,"1157":1,"1169":1,"1254":1,"1281":1,"1378":1,"1385":1,"1399":1,"1401":1,"1406":1,"1421":1,"1431":1,"1435":1,"1594":1,"1624":1,"1678":1,"1792":6,"1925":2,"1948":1,"1949":1,"1958":3,"1959":1,"1960":1,"2089":1,"2104":1,"2184":1,"2200":1,"2222":1,"2257":1,"2323":1,"2332":1,"2468":1,"2470":2,"2471":1,"2493":1,"2531":1,"2537":1,"2795":1,"2830":1,"2857":1,"2869":1,"2878":1}}],["tooldescriptionsuffix",{"0":{"1821":1},"2":{"1792":1,"1814":1,"1823":1,"2481":1}}],["toolchain",{"2":{"873":1,"1419":1}}],["tool",{"0":{"322":1,"325":1,"1042":1,"2667":1},"1":{"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1},"2":{"223":1,"317":2,"318":3,"319":1,"320":6,"322":1,"325":1,"326":4,"327":1,"834":1,"837":1,"845":1,"926":1,"1036":1,"1037":2,"1038":3,"1040":4,"1041":1,"1042":3,"1043":2,"1044":1,"1045":2,"1046":4,"1203":1,"1206":3,"1255":1,"1382":2,"1385":3,"1386":1,"1388":1,"1400":1,"1401":2,"1402":2,"1403":3,"1404":1,"1409":1,"1792":4,"1821":1,"1823":5,"1824":2,"1825":2,"1827":1,"1832":1,"1833":1,"1834":2,"1961":1,"2111":2,"2166":2,"2223":2,"2232":1,"2481":13,"2482":2,"2532":3,"2871":1,"2874":1}}],["tooling",{"2":{"1":1,"876":1,"1082":1,"1111":1,"1366":1,"1378":1,"1400":1,"2874":2}}],["tools",{"0":{"320":1,"831":1,"906":1,"908":1,"1038":1,"1042":1,"1400":1,"1401":1,"1402":1},"1":{"832":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1,"907":1,"908":1,"909":1,"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1,"1401":1,"1402":1},"2":{"0":1,"317":2,"320":1,"327":1,"480":1,"529":1,"831":1,"832":1,"836":2,"840":1,"851":1,"876":1,"908":1,"994":1,"1037":4,"1038":1,"1039":3,"1041":1,"1042":2,"1043":2,"1044":4,"1045":2,"1046":1,"1047":1,"1083":1,"1097":1,"1113":1,"1247":1,"1381":1,"1383":1,"1384":1,"1385":1,"1393":1,"1400":1,"1401":2,"1402":7,"1404":1,"1619":1,"1676":1,"1677":1,"1789":1,"1792":6,"1813":3,"1820":1,"1821":1,"1822":1,"1823":1,"1824":5,"1825":1,"1832":4,"1833":3,"1834":1,"1961":1,"2055":1,"2162":1,"2166":3,"2193":1,"2223":4,"2479":2,"2481":12,"2498":2,"2667":1,"2874":1}}],["totaling",{"2":{"875":1}}],["totals",{"2":{"860":1,"872":1}}],["totally",{"2":{"841":1}}],["total",{"2":{"180":1,"426":1,"427":2,"562":2,"563":1,"566":1,"834":1,"869":1,"894":4,"1027":1,"1044":1,"1064":1,"1169":1,"1187":1,"1188":1,"1189":1,"1192":2,"1193":2,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1350":1,"1361":2,"1366":3,"1373":1,"1398":2,"1410":4,"1414":1,"1824":3,"1991":1,"2049":1,"2340":2,"2364":1,"2435":2,"2621":1,"2733":1}}],["topostgres",{"2":{"1792":1,"1800":1,"1805":2,"1810":1,"2803":1,"2804":1}}],["topic",{"2":{"650":2,"669":1,"1399":1,"1400":1,"1403":1,"2700":1,"2828":1}}],["top",{"0":{"1264":1,"2115":1,"2702":1},"1":{"2116":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2703":1,"2704":1},"2":{"111":1,"436":1,"845":1,"848":1,"860":1,"868":1,"869":1,"872":1,"873":1,"874":1,"879":1,"910":1,"1067":1,"1069":1,"1265":1,"1266":1,"1278":1,"1280":3,"1281":1,"1351":1,"1400":1,"1418":1,"1435":1,"1436":1,"1520":1,"1609":1,"1658":1,"1787":1,"1792":2,"1794":1,"1825":1,"1856":1,"1924":1,"1956":1,"2092":1,"2106":1,"2117":1,"2154":1,"2175":1,"2359":1,"2379":1,"2398":2,"2438":2,"2455":1,"2509":1,"2542":1,"2661":1,"2689":1,"2702":1,"2794":1,"2812":1,"2878":1}}],["to",{"0":{"221":1,"275":1,"395":1,"534":1,"583":1,"645":1,"837":1,"910":1,"972":2,"992":1,"1035":1,"1082":1,"1120":1,"1125":1,"1126":1,"1170":1,"1202":1,"1271":1,"1323":1,"1328":1,"1351":1,"1354":1,"1378":1,"1383":1,"1406":1,"1409":1,"1427":2,"1959":1,"2088":1,"2249":2,"2363":1,"2471":1,"2490":1,"2511":1,"2591":1,"2713":1,"2718":1,"2728":1,"2867":1},"1":{"911":1,"973":2,"974":2,"975":2,"976":2,"977":2,"978":2,"979":2,"980":2,"981":2,"982":2,"983":2,"984":2,"985":2,"986":2,"987":2,"988":2,"989":2,"990":2,"991":2,"992":2,"993":2,"994":2,"995":2,"996":2,"997":2,"998":2,"999":2,"1000":2,"1001":2,"1002":2,"1003":2,"1004":2,"1005":2,"1006":2,"1007":2,"1008":2,"1009":2,"1121":1,"1122":1,"1123":1,"1329":1,"1330":1,"1331":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1341":1,"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1},"2":{"0":1,"3":1,"4":1,"16":2,"19":1,"20":1,"27":1,"29":1,"31":1,"35":1,"40":1,"41":1,"43":1,"50":1,"51":3,"57":1,"58":1,"60":2,"61":1,"62":1,"63":1,"66":1,"73":2,"74":1,"78":1,"83":1,"87":3,"102":1,"106":6,"116":1,"119":1,"120":1,"121":1,"133":2,"134":1,"136":2,"150":1,"156":1,"157":1,"158":1,"160":1,"165":2,"167":1,"168":2,"169":1,"170":2,"175":1,"177":1,"182":2,"184":3,"186":4,"188":1,"197":1,"201":3,"208":1,"209":1,"213":1,"215":1,"220":2,"223":1,"227":1,"237":2,"238":1,"239":2,"260":1,"261":1,"263":1,"264":2,"268":1,"277":1,"286":2,"291":1,"296":1,"297":1,"298":2,"300":1,"301":1,"303":1,"304":1,"305":1,"306":1,"307":3,"308":1,"309":1,"310":4,"313":1,"315":1,"317":1,"319":1,"324":1,"334":2,"336":1,"337":1,"347":1,"357":1,"364":2,"372":3,"373":1,"376":2,"380":1,"384":4,"387":2,"390":6,"394":1,"395":1,"397":1,"401":1,"408":2,"412":2,"414":6,"415":4,"419":1,"421":2,"423":6,"424":2,"426":1,"427":1,"428":2,"429":1,"431":1,"433":1,"435":2,"436":10,"438":2,"439":5,"445":2,"446":2,"447":1,"448":3,"449":1,"451":1,"452":4,"453":2,"454":8,"456":1,"458":2,"462":1,"463":2,"464":2,"473":1,"476":1,"477":1,"478":1,"480":1,"494":3,"497":1,"499":2,"515":1,"527":1,"529":1,"531":1,"545":1,"559":2,"560":3,"562":1,"565":2,"581":1,"582":1,"583":1,"586":1,"587":2,"589":1,"595":1,"614":1,"615":1,"618":1,"619":3,"622":3,"624":1,"625":1,"636":1,"641":1,"643":1,"646":4,"650":4,"652":1,"653":1,"654":1,"656":1,"663":1,"666":3,"668":4,"669":6,"673":2,"675":3,"679":2,"683":1,"684":1,"686":1,"689":1,"690":2,"693":1,"694":1,"695":1,"701":1,"703":1,"704":1,"708":1,"713":1,"720":2,"722":1,"724":1,"726":1,"737":1,"747":14,"753":2,"757":3,"760":2,"761":1,"762":1,"764":1,"768":3,"770":2,"771":2,"772":1,"774":1,"776":2,"780":1,"781":4,"782":3,"783":1,"784":4,"785":1,"786":7,"788":4,"801":2,"809":1,"811":2,"814":1,"821":1,"823":1,"826":2,"831":1,"832":2,"833":2,"834":1,"835":2,"837":1,"840":1,"841":14,"843":7,"844":3,"845":8,"847":9,"848":15,"849":15,"851":29,"852":13,"854":6,"857":4,"859":7,"860":8,"861":6,"863":1,"864":6,"865":4,"866":2,"867":1,"868":7,"869":3,"871":8,"872":6,"873":8,"874":1,"875":4,"876":9,"877":2,"879":3,"881":1,"883":1,"886":1,"888":3,"891":3,"892":4,"894":1,"901":1,"902":3,"904":8,"909":1,"911":3,"912":2,"913":3,"914":2,"915":5,"916":12,"917":3,"918":11,"919":8,"920":6,"921":2,"922":4,"926":6,"930":1,"932":1,"933":4,"934":3,"935":2,"937":1,"942":1,"946":2,"948":5,"949":2,"952":1,"958":3,"961":2,"967":4,"968":1,"969":1,"970":1,"971":1,"972":2,"973":1,"974":3,"975":1,"979":1,"981":1,"982":3,"984":2,"985":5,"988":2,"989":2,"991":1,"993":1,"994":3,"995":3,"996":3,"997":1,"1004":1,"1006":2,"1008":2,"1009":4,"1010":1,"1011":3,"1013":2,"1014":2,"1019":2,"1020":1,"1021":3,"1026":1,"1036":1,"1037":12,"1038":1,"1039":1,"1041":1,"1042":2,"1044":3,"1045":3,"1046":1,"1048":1,"1049":1,"1051":1,"1052":1,"1053":2,"1054":1,"1055":2,"1056":1,"1057":1,"1058":2,"1059":1,"1063":3,"1064":1,"1065":3,"1066":2,"1067":10,"1068":1,"1069":1,"1070":2,"1071":2,"1073":6,"1074":3,"1075":4,"1076":4,"1077":2,"1079":3,"1081":2,"1082":3,"1086":4,"1087":1,"1090":2,"1095":2,"1096":2,"1097":2,"1098":5,"1099":1,"1100":2,"1101":1,"1102":3,"1103":2,"1104":2,"1105":10,"1106":4,"1107":3,"1108":2,"1110":2,"1111":6,"1113":1,"1119":1,"1122":1,"1123":1,"1125":2,"1127":5,"1128":2,"1129":2,"1130":5,"1132":2,"1133":3,"1134":3,"1135":4,"1138":3,"1139":5,"1142":3,"1147":1,"1148":2,"1150":7,"1154":1,"1157":1,"1158":2,"1160":3,"1161":2,"1162":2,"1165":2,"1166":1,"1167":1,"1168":2,"1169":2,"1171":1,"1173":1,"1174":1,"1176":4,"1177":4,"1181":2,"1184":1,"1185":2,"1189":1,"1191":2,"1193":3,"1197":2,"1202":1,"1203":3,"1205":1,"1207":2,"1208":1,"1209":3,"1213":1,"1214":2,"1216":1,"1217":1,"1218":1,"1220":2,"1221":1,"1224":4,"1225":1,"1226":4,"1227":1,"1229":1,"1230":1,"1232":4,"1233":1,"1234":1,"1236":2,"1237":1,"1241":2,"1247":1,"1249":3,"1250":1,"1251":1,"1252":1,"1253":2,"1254":17,"1255":1,"1258":3,"1266":3,"1280":1,"1281":1,"1302":1,"1303":1,"1304":1,"1305":1,"1309":2,"1315":1,"1316":2,"1318":2,"1320":1,"1322":2,"1323":1,"1324":2,"1325":2,"1326":1,"1328":3,"1329":2,"1331":3,"1332":3,"1334":1,"1335":2,"1338":5,"1339":1,"1340":3,"1345":1,"1348":2,"1351":2,"1352":1,"1355":1,"1357":3,"1358":5,"1359":1,"1360":1,"1362":1,"1363":1,"1366":6,"1367":3,"1372":2,"1374":1,"1376":1,"1377":1,"1378":2,"1381":2,"1382":7,"1384":5,"1385":22,"1386":18,"1388":7,"1389":3,"1390":8,"1391":3,"1392":3,"1393":4,"1394":5,"1395":6,"1396":10,"1397":1,"1398":11,"1399":6,"1400":4,"1401":18,"1402":14,"1403":22,"1404":5,"1405":5,"1406":7,"1408":4,"1409":8,"1410":4,"1412":1,"1413":2,"1414":1,"1415":3,"1417":2,"1419":5,"1420":2,"1421":3,"1422":5,"1427":2,"1428":1,"1430":2,"1431":6,"1432":3,"1433":1,"1434":1,"1435":3,"1436":2,"1437":2,"1439":2,"1441":4,"1442":1,"1443":1,"1447":3,"1448":1,"1451":3,"1452":2,"1454":8,"1456":2,"1458":1,"1460":1,"1464":2,"1470":1,"1471":1,"1475":7,"1477":7,"1481":2,"1485":1,"1493":2,"1507":1,"1511":6,"1515":3,"1516":1,"1517":1,"1518":1,"1520":3,"1521":1,"1523":3,"1524":2,"1525":3,"1529":3,"1531":1,"1538":1,"1540":5,"1542":1,"1543":2,"1544":3,"1546":1,"1551":2,"1554":2,"1558":1,"1559":1,"1560":2,"1562":4,"1564":1,"1567":1,"1568":1,"1570":1,"1571":2,"1572":3,"1573":1,"1574":2,"1576":1,"1577":1,"1582":3,"1588":2,"1593":1,"1599":1,"1600":1,"1601":1,"1604":2,"1605":2,"1607":1,"1609":1,"1615":1,"1618":3,"1620":1,"1624":1,"1628":3,"1631":2,"1632":3,"1641":1,"1642":1,"1643":1,"1644":1,"1651":6,"1654":2,"1661":2,"1662":3,"1664":2,"1668":1,"1670":4,"1671":3,"1672":1,"1673":1,"1676":1,"1678":1,"1679":1,"1684":5,"1685":4,"1687":1,"1690":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1703":3,"1706":1,"1709":1,"1717":3,"1720":2,"1723":2,"1728":1,"1733":1,"1738":3,"1739":1,"1741":1,"1744":1,"1745":2,"1747":1,"1757":1,"1759":1,"1762":1,"1764":2,"1767":5,"1768":2,"1769":4,"1771":1,"1774":1,"1785":1,"1789":1,"1792":506,"1801":1,"1802":2,"1803":1,"1804":2,"1805":2,"1818":1,"1819":1,"1820":1,"1821":1,"1822":2,"1823":2,"1824":5,"1825":1,"1832":1,"1833":2,"1837":1,"1838":8,"1840":3,"1841":2,"1843":1,"1844":1,"1848":6,"1849":2,"1850":1,"1851":4,"1856":5,"1857":2,"1858":1,"1859":1,"1862":2,"1867":3,"1870":2,"1871":2,"1874":2,"1875":1,"1876":3,"1877":1,"1879":1,"1880":1,"1882":2,"1884":1,"1886":3,"1890":2,"1894":1,"1898":4,"1900":1,"1909":2,"1911":2,"1915":2,"1917":6,"1920":1,"1921":1,"1922":2,"1923":1,"1924":2,"1925":6,"1926":1,"1927":2,"1928":3,"1929":2,"1930":2,"1937":2,"1941":1,"1942":1,"1947":2,"1948":2,"1949":3,"1951":2,"1952":2,"1953":4,"1954":2,"1956":2,"1957":1,"1959":1,"1961":1,"1962":1,"1964":1,"1967":4,"1968":1,"1970":1,"1971":1,"1973":2,"1974":7,"1980":1,"1981":2,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"1987":2,"1989":1,"1990":1,"1994":2,"2000":2,"2004":2,"2007":5,"2009":1,"2014":2,"2016":8,"2017":1,"2018":2,"2021":1,"2024":1,"2033":1,"2034":1,"2035":1,"2036":1,"2038":5,"2040":4,"2042":1,"2045":1,"2047":5,"2049":1,"2056":1,"2060":4,"2061":1,"2062":1,"2072":3,"2075":5,"2077":1,"2089":1,"2094":1,"2095":2,"2098":3,"2102":1,"2103":1,"2106":2,"2107":2,"2109":2,"2110":1,"2111":1,"2114":1,"2117":1,"2125":7,"2127":2,"2128":2,"2130":2,"2141":1,"2143":1,"2147":2,"2149":2,"2150":1,"2152":1,"2153":1,"2155":2,"2156":2,"2157":2,"2160":2,"2162":2,"2164":3,"2167":1,"2168":1,"2170":1,"2171":1,"2175":1,"2176":2,"2177":3,"2178":1,"2180":2,"2181":3,"2182":1,"2183":2,"2184":2,"2185":1,"2186":1,"2187":1,"2189":1,"2190":2,"2193":1,"2195":1,"2198":1,"2200":1,"2203":1,"2208":3,"2209":1,"2212":2,"2220":1,"2221":2,"2222":1,"2223":4,"2224":6,"2242":1,"2245":2,"2246":1,"2247":5,"2249":4,"2252":3,"2254":10,"2255":19,"2256":8,"2257":3,"2258":7,"2259":3,"2261":1,"2264":5,"2265":16,"2266":4,"2267":2,"2270":3,"2272":1,"2273":2,"2274":2,"2279":2,"2282":4,"2283":2,"2284":2,"2287":3,"2289":2,"2291":3,"2292":3,"2293":4,"2296":1,"2297":3,"2300":2,"2302":5,"2303":3,"2304":5,"2305":1,"2307":2,"2310":1,"2313":1,"2314":2,"2317":1,"2319":2,"2320":3,"2322":2,"2323":1,"2324":1,"2328":3,"2329":2,"2330":1,"2333":1,"2337":2,"2338":4,"2339":1,"2340":3,"2342":1,"2343":1,"2344":2,"2346":5,"2347":1,"2348":1,"2350":2,"2351":1,"2353":1,"2358":1,"2362":3,"2363":1,"2364":4,"2366":5,"2369":3,"2370":2,"2372":2,"2375":3,"2376":1,"2377":2,"2378":3,"2379":3,"2380":13,"2381":1,"2382":6,"2383":1,"2384":4,"2385":1,"2389":4,"2391":4,"2392":4,"2393":2,"2394":3,"2395":1,"2397":1,"2398":13,"2399":1,"2400":2,"2401":2,"2403":1,"2404":1,"2405":2,"2407":3,"2409":1,"2411":2,"2415":3,"2416":2,"2419":3,"2420":1,"2421":1,"2422":2,"2423":2,"2425":3,"2427":2,"2428":2,"2430":3,"2431":1,"2432":1,"2433":1,"2434":2,"2435":2,"2436":2,"2437":3,"2438":6,"2440":1,"2442":1,"2443":1,"2444":2,"2448":1,"2450":3,"2451":5,"2452":1,"2453":2,"2454":2,"2455":3,"2456":3,"2457":1,"2459":1,"2462":2,"2463":1,"2466":3,"2468":1,"2471":1,"2474":1,"2476":2,"2477":1,"2479":1,"2481":6,"2482":3,"2483":2,"2484":1,"2486":2,"2490":2,"2491":1,"2494":2,"2495":2,"2496":1,"2497":2,"2498":1,"2500":1,"2504":1,"2506":1,"2508":1,"2509":2,"2510":1,"2511":1,"2513":2,"2515":1,"2517":4,"2518":4,"2521":2,"2525":1,"2526":1,"2528":1,"2529":2,"2530":5,"2531":5,"2532":3,"2533":3,"2535":1,"2536":1,"2537":11,"2539":4,"2540":3,"2541":1,"2542":3,"2543":4,"2544":2,"2546":3,"2549":10,"2550":1,"2551":1,"2554":3,"2555":2,"2558":4,"2559":1,"2562":2,"2565":5,"2566":2,"2567":1,"2571":2,"2572":7,"2575":1,"2576":1,"2577":1,"2580":1,"2581":2,"2586":1,"2587":1,"2588":1,"2589":4,"2590":2,"2591":1,"2597":3,"2600":2,"2604":1,"2607":7,"2608":3,"2611":3,"2614":3,"2615":6,"2621":1,"2625":1,"2626":1,"2627":1,"2628":1,"2629":2,"2632":24,"2633":4,"2634":13,"2635":10,"2638":1,"2641":1,"2642":2,"2649":4,"2650":1,"2654":1,"2660":1,"2662":1,"2664":3,"2665":2,"2666":4,"2672":2,"2677":1,"2678":1,"2681":2,"2682":2,"2685":1,"2687":1,"2688":2,"2689":3,"2692":2,"2694":3,"2695":2,"2700":1,"2702":1,"2706":1,"2709":1,"2712":2,"2717":1,"2721":3,"2723":3,"2724":2,"2725":1,"2726":1,"2729":1,"2731":1,"2733":2,"2749":1,"2750":1,"2751":2,"2754":1,"2755":2,"2757":1,"2759":1,"2761":1,"2763":2,"2764":2,"2765":1,"2767":2,"2768":1,"2769":2,"2771":1,"2772":2,"2773":2,"2774":1,"2776":3,"2781":2,"2782":1,"2783":1,"2784":1,"2785":1,"2791":1,"2792":1,"2793":1,"2794":1,"2795":2,"2797":3,"2798":1,"2802":4,"2804":1,"2806":4,"2807":3,"2809":3,"2810":1,"2811":2,"2812":2,"2813":8,"2814":2,"2815":4,"2816":1,"2818":1,"2820":1,"2821":2,"2823":2,"2824":7,"2825":4,"2826":3,"2827":2,"2828":2,"2829":2,"2831":1,"2833":3,"2834":3,"2835":1,"2836":2,"2840":2,"2841":1,"2842":1,"2845":3,"2846":2,"2847":1,"2849":1,"2852":1,"2853":2,"2854":1,"2855":2,"2857":1,"2858":1,"2861":2,"2866":2,"2868":4,"2869":4,"2873":1,"2879":1}}],["wb",{"2":{"1366":1}}],["wget",{"2":{"1117":1,"1118":1,"2782":1,"2783":1}}],["w4itb24mvxg8r9rc906c0",{"2":{"1051":2}}],["w0rd",{"2":{"930":2}}],["wrn",{"2":{"1609":1,"2659":1}}],["wright",{"2":{"913":1}}],["writeasync",{"2":{"2615":1}}],["writeresponseasync",{"2":{"2615":1}}],["writer",{"2":{"844":1,"852":3,"864":5,"865":1,"949":1}}],["writers",{"2":{"844":2,"852":2}}],["writes",{"0":{"1381":1,"2400":1},"1":{"1382":1,"1383":1},"2":{"88":1,"531":1,"666":1,"843":1,"848":1,"851":2,"860":1,"951":1,"1037":1,"1043":1,"1174":1,"1382":3,"1406":1,"1408":1,"1792":2,"2184":1,"2400":1,"2435":1,"2615":2,"2867":2,"2881":1}}],["write",{"0":{"9":1,"854":1,"910":1,"956":1,"2176":1,"2214":1},"1":{"911":1,"2177":1,"2178":1},"2":{"33":1,"81":1,"83":1,"303":3,"370":1,"669":1,"706":1,"831":1,"835":1,"848":2,"854":1,"855":1,"860":3,"864":1,"869":1,"871":3,"873":1,"876":2,"879":2,"894":1,"901":1,"910":1,"920":2,"948":1,"968":3,"971":1,"994":1,"1006":1,"1036":1,"1037":1,"1038":2,"1040":1,"1065":2,"1073":4,"1080":2,"1081":3,"1086":1,"1094":1,"1095":1,"1096":2,"1098":1,"1102":1,"1121":1,"1126":1,"1127":1,"1128":1,"1174":2,"1176":1,"1179":1,"1366":2,"1367":1,"1382":2,"1384":1,"1385":2,"1386":2,"1401":8,"1403":5,"1405":2,"1410":1,"1417":1,"1422":1,"1439":2,"1524":1,"1582":1,"1628":2,"1792":5,"1833":1,"2092":1,"2102":1,"2107":1,"2170":1,"2171":2,"2221":1,"2266":2,"2389":1,"2400":1,"2466":1,"2525":1,"2533":1,"2537":1,"2739":1,"2772":1,"2803":1,"2827":1,"2836":1,"2860":1,"2879":1,"2881":1}}],["writing",{"0":{"951":1,"2729":1},"2":{"1":1,"81":2,"87":2,"782":1,"784":1,"856":1,"859":1,"860":1,"868":2,"879":1,"947":1,"966":1,"1096":1,"1101":1,"1102":1,"1150":1,"1281":1,"1384":1,"1400":2,"1401":1,"1402":2,"1403":1,"1523":1,"1792":3,"2380":1,"2394":1,"2626":1,"2857":1}}],["written",{"2":{"0":2,"1":1,"108":1,"188":1,"383":1,"636":1,"704":1,"706":1,"711":1,"714":1,"716":2,"832":1,"854":1,"860":2,"861":1,"866":1,"867":3,"872":4,"873":2,"910":1,"912":1,"916":1,"952":1,"976":1,"996":1,"1004":1,"1006":1,"1073":1,"1083":1,"1107":1,"1122":1,"1209":1,"1382":2,"1384":1,"1386":1,"1404":1,"1406":1,"1420":1,"1422":1,"1522":1,"1792":6,"1969":1,"1970":1,"2075":2,"2094":2,"2097":1,"2110":1,"2112":1,"2296":1,"2360":2,"2380":1,"2381":1,"2451":1,"2530":1,"2532":1,"2533":1,"2537":2,"2540":1,"2726":1,"2836":1,"2845":1,"2869":1,"2870":1,"2871":1}}],["wrote",{"2":{"859":1,"879":1,"1046":1,"1403":1,"2348":1,"2712":1}}],["wrongpassword",{"2":{"930":1}}],["wrong",{"2":{"298":1,"663":1,"848":1,"855":1,"865":1,"874":1,"930":2,"986":1,"1036":1,"1037":2,"1064":1,"1075":1,"1076":1,"1385":1,"1386":1,"1390":1,"1391":1,"1442":1,"1704":1,"2176":1,"2258":1,"2414":1,"2441":1,"2498":1,"2597":1,"2611":1,"2666":1}}],["wraps",{"2":{"1070":1,"1102":2,"1375":1,"1567":1,"2466":1}}],["wrapintransaction",{"0":{"1851":1,"2382":1},"2":{"1070":1,"1102":1,"1528":1,"1792":1,"1850":2,"1851":2,"1852":1,"2382":2,"2383":1,"2527":1,"2862":1}}],["wrapper",{"0":{"1410":1},"2":{"871":1,"872":2,"965":1,"1181":1,"1193":2,"1407":1,"1410":2,"1411":1,"1412":1,"1413":1,"1415":1,"1422":1,"1568":1,"2106":1,"2372":1,"2489":1,"2537":1,"2678":1,"2714":1}}],["wrappers",{"2":{"848":1,"1406":1,"1412":1,"2389":1,"2878":1}}],["wrapped",{"2":{"864":1,"1279":1,"1391":1,"1408":1,"1792":1,"1850":1,"2010":1,"2382":1,"2810":1}}],["wrapping",{"2":{"487":1,"615":1,"829":1,"1102":1,"1368":1,"1376":1,"1412":1,"2339":1,"2358":1}}],["wrap",{"0":{"1404":1},"2":{"716":1,"847":1,"1111":1,"1193":1,"1395":1,"2810":3,"2867":1,"2881":1}}],["w",{"2":{"269":1,"922":1,"2211":1}}],["wolf",{"2":{"2385":1}}],["woff2",{"2":{"1792":2,"1936":2,"1943":2}}],["woff",{"2":{"1792":2,"1936":2,"1943":2}}],["woolf",{"2":{"913":1}}],["wondering",{"2":{"877":1}}],["wonderful",{"2":{"852":1,"1403":1}}],["wonder",{"2":{"841":1,"1402":1}}],["won",{"2":{"354":1,"480":1,"903":1,"992":1,"1130":1,"1145":1,"1382":1,"1609":1,"2195":1,"2425":1,"2590":1,"2661":1,"2685":1}}],["worry",{"2":{"1390":1}}],["worst",{"2":{"947":1,"1382":2,"2459":1,"2464":1}}],["worse",{"2":{"838":1,"861":1,"865":2,"948":1}}],["worth",{"2":{"841":1,"864":1,"871":1,"874":1,"1074":1,"1386":1,"1389":1,"1396":1,"1397":1,"2867":1}}],["words",{"2":{"1335":1,"1339":2,"1383":1,"1404":3}}],["word",{"2":{"379":1,"851":3,"852":1,"865":1,"2333":1,"2533":1}}],["worldview",{"2":{"859":1}}],["worlds",{"2":{"840":1,"865":1,"1515":1}}],["world",{"0":{"1416":1,"1417":1},"1":{"1418":1,"1419":1,"1420":1,"1421":1},"2":{"338":1,"487":3,"851":1,"864":1,"865":1,"916":1,"956":1,"977":1,"980":1,"990":1,"1037":2,"1078":1,"1370":2,"1374":1,"1385":1,"1401":1,"1403":2,"1414":1,"1581":1,"2326":1,"2333":1,"2589":3,"2621":1,"2821":1,"2822":1,"2824":1,"2850":2,"2868":1}}],["workdir",{"2":{"1420":2}}],["workflow",{"0":{"997":1,"1417":1,"1422":1},"1":{"1418":1,"1419":1,"1420":1,"1421":1},"2":{"984":1,"1037":1,"1328":1,"1351":1,"1384":1,"2110":1,"2112":1,"2530":1,"2545":1,"2546":1}}],["workflows",{"2":{"973":1,"1005":1,"2534":1,"2858":1}}],["workarounds",{"2":{"918":1,"1066":1,"1097":1,"1378":2,"1396":1,"2855":1,"2858":1}}],["workaround",{"0":{"920":1},"2":{"918":1,"920":1,"1049":1,"1111":2,"1394":2,"1395":2}}],["workloads",{"2":{"1154":1,"1205":1,"1272":1,"1280":2,"1412":1,"1632":1,"2088":1,"2789":1}}],["workload",{"2":{"868":1,"869":1,"1084":1}}],["worker",{"0":{"1167":1,"2087":1},"2":{"1106":1,"1167":2,"1792":2,"2086":2,"2087":1}}],["workers",{"2":{"860":1,"1106":1,"1130":2}}],["worked",{"0":{"2187":1},"2":{"306":1,"844":1,"919":1,"1368":1,"1385":1,"2170":1,"2580":1,"2824":1}}],["workbook",{"2":{"776":1,"892":1,"948":2,"949":1,"968":2,"969":1,"971":1,"1183":1,"1203":1,"1207":1,"1208":1,"2130":1}}],["workingdirectory",{"2":{"1792":3,"2111":3,"2532":2,"2871":2,"2874":1}}],["working",{"0":{"2365":1},"2":{"221":1,"834":2,"857":1,"876":2,"879":1,"919":2,"920":1,"921":1,"947":1,"976":1,"977":1,"980":1,"990":1,"1045":1,"1048":2,"1054":1,"1068":1,"1081":1,"1183":2,"1207":1,"1382":1,"1386":1,"1390":1,"1399":1,"1404":1,"1405":1,"1653":1,"1792":1,"1802":1,"1894":1,"2397":1,"2540":1,"2545":1,"2645":1,"2684":1,"2795":1,"2818":1,"2825":1,"2860":1}}],["workshops",{"2":{"1443":1}}],["worksheets",{"2":{"788":1}}],["worksheet",{"0":{"964":1},"2":{"675":1,"788":1,"957":1,"964":1,"1792":1,"2077":1,"2079":1,"2653":1}}],["works",{"0":{"297":1,"387":1,"881":1,"1305":1,"1359":1,"1432":1,"1824":1,"1868":1,"2283":1,"2302":1,"2318":1,"2527":1,"2760":1,"2807":1,"2828":1,"2840":1,"2862":1},"1":{"1360":1},"2":{"11":1,"25":1,"26":1,"42":1,"53":1,"65":1,"76":1,"89":1,"98":1,"119":1,"120":1,"122":1,"130":1,"141":1,"151":1,"164":1,"186":1,"198":1,"217":1,"258":1,"259":1,"263":1,"265":1,"293":1,"305":1,"320":1,"334":1,"337":1,"345":1,"364":1,"367":1,"369":1,"374":1,"408":1,"410":1,"436":1,"469":1,"471":1,"481":1,"495":1,"505":1,"513":1,"525":1,"529":1,"547":1,"557":1,"578":1,"596":1,"605":1,"615":1,"625":1,"634":1,"647":1,"670":1,"680":1,"725":1,"740":1,"790":1,"803":1,"804":1,"815":1,"820":1,"827":1,"828":1,"829":1,"840":1,"841":1,"860":1,"869":1,"871":1,"873":1,"877":1,"884":1,"911":1,"918":1,"920":1,"934":1,"946":1,"954":1,"971":1,"994":1,"1009":1,"1015":1,"1036":1,"1048":1,"1061":1,"1065":1,"1068":1,"1070":1,"1081":1,"1083":1,"1086":1,"1103":1,"1117":1,"1126":1,"1135":1,"1149":1,"1176":1,"1205":1,"1208":1,"1304":1,"1322":1,"1323":2,"1327":1,"1351":1,"1367":2,"1378":1,"1385":1,"1386":1,"1394":1,"1395":2,"1396":2,"1398":2,"1400":1,"1416":1,"1421":1,"1465":1,"1472":1,"1484":1,"1495":1,"1506":1,"1515":1,"1517":1,"1518":1,"1535":1,"1549":1,"1583":1,"1600":1,"1634":1,"1647":1,"1665":1,"1679":1,"1699":1,"1747":1,"1748":1,"1760":1,"1785":1,"1792":3,"1811":1,"1864":1,"1913":1,"1930":1,"1932":1,"1945":1,"1962":1,"1974":1,"1976":1,"1996":1,"2043":1,"2081":1,"2090":1,"2095":1,"2133":1,"2150":1,"2157":1,"2170":1,"2183":1,"2193":2,"2200":1,"2265":2,"2274":1,"2277":1,"2284":1,"2293":1,"2332":2,"2335":2,"2338":1,"2339":1,"2344":1,"2389":1,"2391":1,"2406":1,"2419":2,"2425":1,"2430":1,"2438":1,"2481":1,"2521":1,"2533":1,"2535":1,"2543":2,"2545":1,"2581":1,"2586":2,"2588":1,"2591":1,"2607":2,"2627":1,"2665":1,"2681":1,"2687":1,"2695":1,"2727":1,"2779":1,"2795":2,"2827":1,"2835":1,"2871":1,"2874":1}}],["work",{"0":{"1723":1,"2179":1,"2191":1,"2856":1},"1":{"2180":1,"2181":1,"2192":1,"2193":1,"2194":1},"2":{"11":1,"26":1,"42":1,"53":1,"65":1,"76":1,"89":1,"98":1,"122":1,"130":1,"141":1,"151":1,"155":1,"164":1,"189":1,"198":1,"212":1,"217":1,"220":2,"259":1,"261":1,"281":1,"293":1,"307":1,"308":1,"319":1,"327":1,"338":1,"345":1,"356":1,"367":1,"376":1,"385":1,"388":1,"396":1,"410":1,"448":1,"453":1,"471":1,"481":1,"495":1,"505":1,"513":1,"515":1,"525":1,"547":1,"557":1,"568":1,"578":1,"588":1,"596":1,"605":1,"617":1,"626":1,"634":1,"647":1,"658":2,"659":2,"665":1,"670":1,"680":1,"683":1,"725":1,"740":1,"790":1,"801":1,"804":1,"818":1,"820":1,"830":1,"832":1,"840":1,"841":2,"844":1,"849":2,"852":1,"861":2,"864":1,"868":1,"871":1,"872":2,"874":2,"876":1,"919":2,"930":1,"932":1,"952":1,"967":1,"973":1,"992":1,"994":1,"1009":1,"1012":1,"1042":1,"1049":1,"1074":1,"1075":2,"1125":1,"1167":1,"1170":1,"1179":1,"1180":1,"1182":1,"1193":1,"1200":1,"1211":1,"1309":1,"1368":1,"1371":1,"1372":1,"1378":1,"1382":1,"1394":1,"1400":1,"1402":2,"1405":1,"1449":1,"1460":1,"1465":1,"1484":1,"1495":1,"1506":1,"1535":1,"1549":1,"1583":1,"1600":1,"1610":2,"1634":1,"1647":1,"1655":1,"1665":1,"1679":1,"1686":1,"1699":1,"1748":1,"1760":1,"1792":1,"1811":1,"1825":1,"1834":1,"1864":1,"1909":1,"1913":1,"1932":1,"1945":1,"1962":1,"1976":1,"1996":1,"2043":1,"2081":1,"2087":1,"2088":1,"2090":1,"2120":2,"2133":1,"2150":1,"2170":1,"2177":1,"2190":3,"2193":3,"2200":1,"2274":1,"2319":1,"2323":2,"2332":1,"2375":2,"2380":1,"2398":3,"2407":2,"2430":1,"2461":1,"2466":1,"2496":1,"2529":2,"2531":1,"2532":1,"2533":1,"2534":1,"2545":1,"2581":2,"2759":1,"2769":1,"2806":1,"2814":1,"2846":1,"2855":1,"2856":1,"2865":1}}],["wouldn",{"2":{"1412":1}}],["would",{"0":{"1025":1},"1":{"1026":1},"2":{"75":1,"167":2,"177":1,"209":1,"320":1,"349":1,"354":1,"376":1,"587":1,"829":1,"841":2,"849":1,"851":4,"852":1,"857":1,"859":2,"860":1,"861":1,"865":1,"867":1,"868":1,"869":1,"872":3,"873":1,"915":2,"918":7,"919":2,"956":1,"985":2,"1065":1,"1254":1,"1335":1,"1382":1,"1386":1,"1400":2,"1401":4,"1402":2,"1403":3,"1404":1,"1412":1,"1413":1,"1428":1,"1431":1,"1449":1,"1527":1,"1569":1,"1609":1,"1759":1,"1774":1,"1792":2,"1851":1,"1912":1,"1923":1,"1925":1,"1958":1,"1968":1,"2107":1,"2313":1,"2338":1,"2362":1,"2367":1,"2375":1,"2376":2,"2378":1,"2382":1,"2394":1,"2414":2,"2420":1,"2438":2,"2468":1,"2494":1,"2509":1,"2520":1,"2532":1,"2533":1,"2537":1,"2539":1,"2540":1,"2551":1,"2577":1,"2597":1,"2600":1,"2608":1,"2659":1,"2666":1,"2722":1,"2823":1,"2868":2,"2873":1,"2876":1}}],["waving",{"2":{"1435":1}}],["waves",{"2":{"1162":1}}],["waanted",{"2":{"1254":1}}],["wa",{"2":{"1220":1,"1221":1,"1222":1}}],["wakes",{"2":{"859":1}}],["wall",{"2":{"2451":3}}],["walled",{"2":{"848":1}}],["walked",{"2":{"1069":1,"1956":1,"2379":1,"2442":1}}],["walks",{"2":{"860":2,"878":1,"972":1,"1038":1,"1048":1,"1135":1,"1409":1,"1566":1,"2422":1,"2818":1}}],["walking",{"2":{"856":1}}],["walk",{"0":{"856":1},"2":{"857":1,"860":1,"1381":1,"2424":1}}],["walkthroughs",{"2":{"1066":1}}],["walkthrough",{"0":{"1212":1,"1406":1},"1":{"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1},"2":{"217":1,"296":1,"315":1,"327":1,"431":1,"436":1,"456":1,"634":1,"647":1,"670":1,"1037":1,"1073":1,"1074":1,"1082":1,"1465":1,"1484":1,"1506":1,"1549":1,"1699":1,"1748":1,"1799":1,"1811":1,"1834":1,"1894":1,"1932":1,"2013":1,"2092":1,"2114":1,"2159":1,"2170":1,"2479":1,"2737":1,"2759":1,"2794":1,"2806":1,"2826":1,"2827":1,"2837":1}}],["warmup",{"2":{"1254":1,"1259":2,"2744":1}}],["warm",{"2":{"1076":1,"1141":1,"2465":1}}],["warehouses",{"2":{"1206":1}}],["warehouse",{"2":{"837":1,"1203":1,"1206":1,"1208":1}}],["warnunboundserversenteventsnotices=false",{"2":{"2392":1}}],["warnunboundserversenteventsnotices",{"2":{"1792":1,"1861":1,"2392":1,"2406":1,"2835":1}}],["warns",{"2":{"1743":1,"2392":1,"2502":1}}],["warn",{"2":{"1388":1,"2380":1}}],["warned",{"2":{"388":1}}],["warningsarefatal",{"2":{"2415":2}}],["warnings",{"0":{"2428":1},"2":{"952":1,"1199":1,"1609":2,"1792":2,"1801":1,"1861":1,"2392":2,"2415":5,"2416":1,"2537":1,"2659":1,"2661":1}}],["warning",{"0":{"633":1,"661":1,"1861":1,"2392":1,"2395":1,"2493":1,"2754":1},"2":{"64":2,"109":3,"214":2,"319":1,"382":2,"383":1,"384":1,"388":2,"390":1,"395":1,"629":2,"631":1,"632":1,"633":2,"651":1,"653":2,"656":3,"661":2,"675":1,"859":1,"1056":1,"1060":1,"1071":1,"1103":1,"1192":2,"1193":1,"1199":2,"1305":1,"1325":1,"1386":1,"1449":1,"1493":1,"1499":1,"1500":3,"1527":6,"1603":1,"1604":1,"1609":2,"1620":1,"1743":1,"1774":1,"1792":19,"1800":2,"1801":1,"1802":4,"1806":1,"1810":3,"1822":2,"1825":1,"1857":1,"1858":1,"1861":1,"1875":1,"1917":1,"1925":1,"1957":2,"1961":1,"1983":1,"2007":1,"2018":1,"2052":1,"2110":1,"2222":1,"2223":1,"2226":2,"2252":6,"2328":1,"2334":2,"2348":1,"2353":1,"2363":2,"2379":2,"2380":2,"2384":1,"2392":2,"2395":2,"2406":1,"2407":1,"2414":4,"2415":2,"2416":2,"2417":1,"2428":2,"2481":3,"2492":2,"2493":1,"2502":1,"2517":1,"2529":1,"2530":1,"2533":2,"2536":2,"2628":2,"2633":1,"2659":2,"2794":1,"2795":4,"2802":1,"2803":2,"2804":4,"2812":1,"2828":1,"2832":3,"2835":2,"2865":1}}],["watchable",{"2":{"2156":1,"2542":1}}],["watching",{"0":{"2542":1},"2":{"1792":1,"2153":1,"2157":1,"2544":1,"2752":1,"2857":1}}],["watcher",{"2":{"2157":1,"2543":1,"2546":1}}],["watcher=1",{"2":{"2157":1,"2543":1}}],["watched",{"2":{"1080":2,"1407":1,"2537":1,"2857":1}}],["watches",{"2":{"1080":1,"2153":1,"2157":1,"2541":1,"2543":1,"2742":1,"2878":1}}],["watch",{"0":{"1080":1,"2106":1,"2153":1,"2157":1,"2158":1,"2541":2,"2543":1,"2742":1,"2800":1,"2857":1,"2878":1},"1":{"2154":1,"2155":1,"2156":1,"2157":1,"2158":1,"2159":1,"2542":2,"2543":2},"2":{"706":1,"863":1,"876":1,"986":1,"1037":1,"1072":1,"1073":2,"1080":3,"1081":1,"1082":1,"1094":3,"1379":2,"1401":1,"1407":2,"1418":4,"1419":2,"1789":2,"1792":6,"2092":1,"2106":12,"2113":1,"2153":6,"2154":4,"2155":13,"2156":4,"2157":1,"2159":1,"2167":1,"2168":2,"2221":4,"2525":2,"2537":10,"2541":10,"2542":9,"2543":4,"2546":3,"2742":3,"2857":3,"2878":8,"2880":1}}],["wanted",{"2":{"912":1,"919":1,"1073":1,"1254":4,"1384":2,"1394":1,"1399":1,"1402":2,"1403":2}}],["wants",{"2":{"650":1,"1428":1,"2393":1,"2729":1}}],["want",{"2":{"88":1,"286":1,"304":1,"307":1,"319":1,"334":1,"390":1,"449":1,"583":1,"587":1,"624":1,"650":1,"837":4,"843":1,"847":1,"848":1,"851":2,"852":2,"866":1,"869":1,"904":2,"916":3,"918":1,"971":1,"1065":2,"1068":3,"1069":1,"1094":1,"1096":1,"1121":5,"1122":2,"1123":2,"1127":1,"1145":1,"1150":1,"1160":1,"1161":1,"1162":1,"1181":1,"1206":1,"1220":1,"1221":1,"1305":1,"1338":1,"1354":2,"1366":1,"1382":2,"1385":1,"1386":1,"1390":1,"1395":1,"1398":1,"1399":1,"1403":2,"1404":1,"1405":1,"1431":1,"1435":1,"1437":1,"1443":1,"1515":1,"1572":1,"1576":1,"1580":1,"1625":1,"1771":1,"1792":5,"1870":1,"1871":1,"2004":1,"2180":1,"2406":1,"2430":1,"2533":1,"2635":1,"2729":1,"2771":1,"2834":1}}],["waiter",{"2":{"2466":2}}],["waiters",{"2":{"2463":1,"2466":3}}],["waits",{"2":{"1014":1,"1165":1,"1170":1,"2157":1,"2407":1}}],["waiting",{"2":{"852":1,"922":1,"1014":1,"1078":1,"1148":1,"1324":2,"2393":1,"2532":1,"2543":1}}],["wait",{"2":{"84":1,"575":1,"871":1,"917":1,"966":1,"1147":1,"1158":1,"1166":1,"1254":1,"1259":1,"1329":1,"1623":1,"1792":2,"1958":1,"1959":1,"2052":1,"2247":2,"2470":1,"2471":1,"2534":1,"2635":2}}],["waste",{"2":{"1171":1}}],["wastes",{"2":{"1170":1}}],["was",{"0":{"2452":1,"2491":1},"2":{"74":1,"188":1,"347":1,"453":1,"469":1,"748":1,"841":1,"848":5,"851":2,"852":1,"855":1,"857":1,"860":3,"861":1,"864":2,"865":1,"866":1,"872":2,"919":1,"1037":1,"1069":1,"1073":2,"1075":2,"1076":1,"1078":3,"1079":1,"1082":2,"1239":1,"1254":3,"1326":1,"1332":1,"1384":1,"1385":9,"1400":4,"1401":6,"1402":9,"1403":6,"1404":4,"1442":2,"1453":1,"1504":1,"1518":2,"1569":1,"1609":1,"1674":1,"1701":1,"1759":1,"1762":1,"1792":1,"1866":1,"1912":1,"1925":2,"1948":1,"2014":1,"2056":1,"2182":1,"2223":1,"2242":1,"2258":1,"2265":2,"2267":2,"2287":1,"2296":1,"2313":1,"2314":1,"2351":1,"2352":2,"2353":1,"2360":2,"2363":1,"2372":2,"2378":1,"2392":1,"2395":2,"2402":1,"2410":1,"2414":1,"2416":1,"2420":2,"2421":2,"2437":1,"2441":1,"2442":2,"2444":1,"2445":1,"2446":1,"2448":1,"2450":1,"2451":1,"2452":1,"2453":2,"2486":2,"2490":4,"2493":1,"2494":1,"2495":2,"2505":2,"2506":1,"2510":1,"2517":1,"2518":1,"2519":5,"2544":1,"2551":1,"2597":1,"2622":1,"2626":2,"2648":3,"2721":1,"2722":1,"2758":1,"2799":2,"2801":1,"2868":1,"2881":2}}],["ways",{"2":{"306":1,"307":1,"534":1,"560":1,"619":1,"1043":1,"1073":1,"1490":1,"1985":1,"2182":1,"2340":1,"2768":1}}],["way",{"0":{"968":2,"2741":1},"1":{"969":2},"2":{"1":1,"260":1,"310":1,"390":1,"414":1,"458":1,"840":1,"841":2,"843":1,"851":2,"852":1,"857":1,"863":1,"872":1,"874":1,"904":1,"910":1,"915":1,"916":1,"946":1,"974":1,"983":1,"1020":1,"1056":1,"1073":1,"1075":2,"1076":1,"1077":2,"1081":1,"1082":1,"1086":1,"1127":1,"1128":1,"1176":1,"1254":1,"1303":1,"1368":1,"1385":3,"1386":1,"1390":1,"1393":1,"1394":1,"1398":5,"1399":1,"1400":1,"1403":5,"1433":1,"1441":1,"1832":1,"2160":1,"2195":1,"2325":1,"2423":1,"2430":1,"2481":1,"2510":1,"2531":1,"2544":1,"2545":1,"2590":1,"2727":1,"2772":1,"2774":1,"2827":1}}],["wwwroot",{"2":{"1792":1,"2033":1,"2034":1,"2042":1}}],["www",{"2":{"45":1,"51":1,"63":1,"209":1,"845":1,"1691":1,"1692":2,"1695":1,"1709":1,"1711":1,"1714":1,"1792":13,"1825":1,"1827":1,"2255":4,"2481":1,"2632":1,"2633":1}}],["why",{"0":{"691":1,"939":1,"948":1,"974":1,"985":1,"993":1,"1006":1,"1012":1,"1046":1,"1049":1,"1273":1,"1324":1,"1428":1,"1704":1,"2452":1,"2510":1,"2521":1,"2723":1,"2724":1,"2725":1,"2797":1,"2799":1},"1":{"940":1,"941":1,"942":1,"943":1,"944":1,"1007":1,"1008":1,"1009":1,"1013":1,"1014":1,"1015":1,"1274":1,"1275":1,"1276":1,"1325":1},"2":{"636":1,"841":4,"848":2,"851":1,"861":1,"864":1,"866":1,"948":3,"1037":2,"1049":1,"1075":1,"1324":1,"1325":1,"1385":1,"1386":1,"1396":1,"1397":1,"1400":1,"1402":1,"1405":2,"2389":1,"2540":1,"2545":1,"2799":1,"2838":1}}],["whatnot",{"2":{"1400":1}}],["whatsoever",{"2":{"851":1}}],["what",{"0":{"666":1,"841":1,"867":1,"868":1,"877":1,"910":1,"950":1,"1023":1,"1025":1,"1039":1,"1210":2,"1243":1,"1244":1,"1255":1,"1256":1,"1266":1,"1379":1,"1421":1,"1435":1,"1566":1,"2390":1,"2412":1,"2415":1,"2422":1,"2438":1,"2443":1,"2460":1,"2469":1,"2475":1,"2509":1,"2516":1,"2709":1,"2710":1,"2711":1,"2736":1,"2749":1},"1":{"911":1,"951":1,"952":1,"953":1,"954":1,"1026":1,"1257":1,"1258":1,"1259":1,"1260":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1,"1567":1,"1568":1,"1569":1,"1570":1,"1571":1,"1572":1,"1573":1,"1574":1,"1575":1,"1576":1,"1577":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2461":1,"2462":1,"2463":1,"2470":1,"2471":1,"2476":1,"2477":1,"2510":1,"2511":1,"2512":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1},"2":{"386":1,"387":1,"390":1,"436":1,"439":2,"448":1,"458":1,"666":2,"668":1,"669":1,"692":1,"832":1,"833":1,"834":1,"841":3,"843":1,"844":5,"845":1,"848":1,"849":4,"852":9,"853":1,"855":1,"857":4,"860":4,"861":1,"864":4,"865":1,"866":1,"867":1,"868":2,"877":1,"879":1,"918":1,"926":1,"932":1,"937":1,"940":1,"943":2,"957":1,"961":1,"966":1,"968":1,"987":1,"997":1,"1002":1,"1037":3,"1039":1,"1043":1,"1044":2,"1064":1,"1069":1,"1077":1,"1079":2,"1081":1,"1082":2,"1084":1,"1096":2,"1098":1,"1107":1,"1108":1,"1111":1,"1129":1,"1150":1,"1162":1,"1165":1,"1180":1,"1181":3,"1185":2,"1206":1,"1208":1,"1210":1,"1231":1,"1244":1,"1249":2,"1254":1,"1302":1,"1304":1,"1335":1,"1366":1,"1382":4,"1384":1,"1385":2,"1386":1,"1396":2,"1399":1,"1401":1,"1402":2,"1403":3,"1404":4,"1405":3,"1406":2,"1419":1,"1435":4,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":3,"1442":1,"1458":1,"1566":1,"1567":1,"1579":1,"1792":1,"1832":1,"1961":1,"2112":1,"2171":1,"2179":1,"2377":1,"2388":1,"2389":2,"2391":1,"2395":1,"2398":1,"2415":1,"2434":1,"2531":1,"2532":1,"2539":1,"2540":1,"2577":2,"2677":1,"2721":1,"2755":1,"2765":1,"2795":1,"2799":2,"2807":1,"2824":1,"2829":1,"2833":1,"2855":1,"2867":1,"2868":1,"2869":1}}],["whatever",{"2":{"304":1,"436":1,"650":1,"843":1,"864":1,"880":1,"882":1,"885":1,"911":1,"956":1,"1044":1,"1220":1,"1386":1,"1402":1,"1405":1,"1435":1,"1437":1,"1825":1,"1922":1,"2769":1}}],["whitelist",{"2":{"2442":1,"2446":2}}],["white",{"2":{"768":1,"786":2,"891":1,"913":1,"919":2}}],["whitespace",{"2":{"704":1,"709":1,"714":1,"768":1,"786":1,"891":1,"1527":1,"1792":2,"2097":1,"2128":1,"2380":1,"2533":1,"2537":1,"2589":1,"2870":1}}],["while",{"2":{"174":1,"414":1,"453":1,"587":1,"772":1,"841":1,"843":1,"844":3,"860":1,"864":1,"903":1,"907":1,"916":1,"926":1,"994":1,"1014":1,"1054":1,"1088":1,"1091":1,"1098":1,"1100":1,"1127":1,"1147":1,"1160":1,"1211":1,"1270":1,"1280":1,"1324":1,"1351":1,"1385":1,"1403":2,"1404":1,"1407":1,"1410":1,"1459":1,"1792":2,"1868":1,"1925":1,"2153":1,"2207":1,"2270":1,"2302":1,"2342":1,"2362":1,"2372":1,"2375":1,"2419":1,"2482":1,"2493":1,"2504":1,"2521":1,"2543":1,"2544":1,"2615":1,"2621":1,"2629":1,"2752":1,"2857":3,"2876":1}}],["whichever",{"2":{"1081":1,"1135":1,"2193":1}}],["which",{"0":{"1378":1,"2731":1,"2749":1,"2797":1,"2832":1},"2":{"51":2,"68":1,"74":1,"106":1,"215":1,"298":2,"300":1,"307":1,"324":2,"372":1,"390":1,"419":1,"423":1,"436":2,"470":1,"528":1,"556":1,"636":1,"650":2,"669":1,"693":1,"695":1,"696":1,"708":1,"831":1,"836":1,"837":1,"841":1,"844":2,"845":1,"848":3,"849":2,"852":3,"856":1,"860":2,"864":1,"865":2,"873":1,"874":2,"876":1,"886":1,"904":1,"918":2,"919":1,"920":2,"934":1,"943":2,"978":1,"980":1,"982":1,"1013":1,"1052":1,"1053":1,"1054":1,"1055":1,"1067":2,"1069":1,"1073":1,"1075":1,"1077":1,"1079":1,"1080":1,"1097":1,"1098":1,"1103":1,"1111":2,"1133":1,"1134":1,"1139":1,"1142":1,"1165":1,"1174":2,"1176":3,"1216":1,"1244":1,"1254":1,"1355":1,"1358":2,"1385":2,"1386":3,"1390":1,"1392":1,"1399":1,"1400":1,"1402":2,"1403":3,"1410":1,"1412":1,"1421":1,"1437":1,"1440":2,"1458":1,"1531":1,"1628":1,"1632":1,"1640":1,"1642":1,"1643":1,"1664":1,"1706":1,"1709":1,"1722":1,"1738":1,"1792":20,"1823":1,"1838":1,"1840":1,"1851":2,"1858":1,"1908":1,"1918":1,"1957":1,"1969":1,"2000":1,"2005":1,"2016":1,"2021":1,"2040":1,"2052":1,"2112":1,"2175":1,"2176":2,"2178":1,"2184":1,"2195":1,"2208":1,"2252":1,"2255":1,"2264":1,"2302":1,"2305":1,"2313":2,"2323":1,"2351":1,"2353":1,"2360":1,"2363":1,"2365":2,"2375":1,"2376":1,"2379":1,"2382":2,"2384":1,"2394":1,"2397":1,"2421":2,"2424":1,"2426":1,"2438":1,"2442":1,"2450":1,"2451":1,"2452":1,"2459":1,"2463":2,"2465":1,"2468":1,"2477":1,"2482":1,"2492":1,"2495":2,"2496":1,"2509":1,"2518":1,"2519":1,"2532":2,"2533":1,"2535":1,"2540":1,"2545":2,"2626":1,"2632":1,"2635":1,"2645":1,"2648":1,"2656":1,"2666":1,"2742":1,"2749":1,"2795":2,"2801":1,"2802":1,"2827":1,"2828":1,"2831":1,"2840":1,"2854":1,"2868":2}}],["whether",{"2":{"22":1,"335":1,"337":1,"669":1,"748":1,"864":1,"872":1,"877":1,"904":1,"953":1,"1055":1,"1056":1,"1150":1,"1228":1,"1230":1,"1237":1,"1567":1,"1767":1,"1768":1,"1792":6,"1878":1,"1880":1,"1887":1,"1927":1,"2011":1,"2016":1,"2018":1,"2354":1,"2541":1,"2549":1,"2597":1,"2632":1,"2806":1,"2807":1}}],["wherever",{"2":{"527":1,"704":1,"1792":1,"2111":1,"2532":1,"2537":1,"2871":1}}],["whereas",{"2":{"307":1,"414":1,"1127":1}}],["where",{"0":{"387":1,"834":1,"835":1,"1082":1,"1383":1,"2811":1},"2":{"16":2,"18":1,"19":1,"20":1,"35":1,"37":1,"75":1,"88":1,"115":2,"116":1,"136":2,"156":1,"158":1,"165":1,"167":1,"168":1,"175":1,"186":1,"215":1,"250":1,"288":2,"292":1,"298":4,"302":1,"304":1,"307":1,"309":1,"310":3,"312":2,"313":3,"366":1,"372":1,"373":1,"374":1,"376":1,"377":1,"395":1,"401":1,"414":1,"415":2,"426":2,"427":1,"428":1,"452":1,"520":2,"527":3,"531":1,"532":2,"534":1,"535":1,"542":1,"565":3,"566":2,"592":1,"611":1,"612":1,"613":1,"614":3,"621":1,"622":4,"623":2,"686":1,"722":2,"748":1,"784":1,"811":2,"812":1,"815":1,"831":1,"835":1,"836":2,"838":2,"841":1,"843":1,"844":1,"845":1,"847":2,"848":2,"849":2,"851":2,"852":1,"854":1,"855":2,"857":1,"859":2,"861":1,"864":4,"873":3,"874":2,"903":2,"914":2,"916":3,"918":3,"926":1,"934":1,"975":1,"978":1,"979":1,"980":2,"982":1,"986":1,"988":1,"989":1,"990":5,"994":1,"996":1,"1009":1,"1015":1,"1033":1,"1036":1,"1038":1,"1042":1,"1045":1,"1055":1,"1056":1,"1058":1,"1060":3,"1065":1,"1068":1,"1069":1,"1070":1,"1073":2,"1075":2,"1076":2,"1079":1,"1080":1,"1091":1,"1105":3,"1108":2,"1113":1,"1127":1,"1129":1,"1135":2,"1138":2,"1141":2,"1142":2,"1145":1,"1146":1,"1150":1,"1152":1,"1154":1,"1160":1,"1161":1,"1162":2,"1179":3,"1193":1,"1197":1,"1203":1,"1216":2,"1232":2,"1234":2,"1235":1,"1236":1,"1239":2,"1280":1,"1308":1,"1328":1,"1332":1,"1338":2,"1339":2,"1343":1,"1347":1,"1357":1,"1358":1,"1363":1,"1368":2,"1371":1,"1375":1,"1379":1,"1384":1,"1386":5,"1387":2,"1390":1,"1391":2,"1393":1,"1394":1,"1395":1,"1396":2,"1398":3,"1402":1,"1405":1,"1408":1,"1410":1,"1412":1,"1415":1,"1431":1,"1440":1,"1442":1,"1458":5,"1504":2,"1516":1,"1574":1,"1664":1,"1689":1,"1738":1,"1792":15,"1924":1,"1961":2,"2010":3,"2012":1,"2105":1,"2110":1,"2157":1,"2171":1,"2176":2,"2178":1,"2184":1,"2187":1,"2221":1,"2245":1,"2265":1,"2270":1,"2277":1,"2283":2,"2285":2,"2293":1,"2300":1,"2303":1,"2319":1,"2320":3,"2321":1,"2322":1,"2333":1,"2338":1,"2339":4,"2342":2,"2350":1,"2375":4,"2380":1,"2389":1,"2394":1,"2395":1,"2398":3,"2413":1,"2430":1,"2438":1,"2452":1,"2489":1,"2495":1,"2520":1,"2530":1,"2531":1,"2540":4,"2543":1,"2550":1,"2551":1,"2572":1,"2611":1,"2626":1,"2689":1,"2731":1,"2733":1,"2758":1,"2768":1,"2774":4,"2775":1,"2791":1,"2794":1,"2802":1,"2806":1,"2813":2,"2815":1,"2845":3,"2846":1,"2869":1}}],["whenall",{"2":{"1105":1,"1376":1,"1398":2,"1745":1,"2346":1,"2347":1}}],["whenever",{"2":{"319":1,"841":2,"848":1,"879":1,"910":1,"1823":1,"2422":1,"2490":1}}],["when",{"0":{"583":1,"653":1,"654":1,"686":1,"739":1,"837":1,"1035":1,"1120":1,"1121":1,"1122":1,"1123":1,"1170":1,"1205":1,"1323":1,"1351":1,"1354":1,"1360":1,"1378":1,"1410":1,"1432":2,"1523":1,"2088":1,"2392":1,"2394":1,"2395":1,"2424":1,"2867":1},"1":{"1121":1,"1122":1,"1123":1,"1524":1,"1525":1,"1526":1},"2":{"1":1,"25":1,"38":1,"40":1,"51":2,"60":1,"63":2,"64":1,"73":1,"87":1,"101":3,"105":1,"106":2,"107":1,"108":2,"109":1,"110":1,"119":1,"140":1,"168":2,"169":1,"175":1,"179":1,"180":1,"188":1,"202":1,"213":1,"214":1,"245":2,"284":1,"286":1,"297":1,"298":1,"301":1,"302":1,"303":1,"307":1,"308":2,"309":2,"317":2,"319":4,"320":1,"330":1,"334":2,"347":1,"349":2,"354":1,"373":2,"374":1,"376":1,"377":1,"382":1,"383":1,"388":4,"389":1,"390":2,"395":1,"408":1,"409":1,"422":1,"435":1,"436":2,"446":1,"447":1,"463":1,"464":1,"469":1,"480":2,"507":1,"512":1,"518":1,"524":1,"531":1,"534":1,"549":1,"575":1,"583":3,"587":2,"609":1,"613":1,"616":1,"624":1,"639":2,"646":2,"653":1,"654":1,"656":1,"666":1,"675":2,"679":1,"683":2,"685":1,"696":2,"713":1,"720":2,"734":1,"737":1,"747":4,"762":1,"771":1,"772":1,"773":1,"775":1,"781":2,"782":2,"784":4,"786":3,"788":2,"801":1,"819":1,"826":1,"837":3,"841":1,"843":1,"844":1,"848":2,"849":5,"852":1,"859":1,"860":3,"865":1,"866":1,"868":1,"869":1,"872":2,"877":1,"880":2,"888":1,"902":1,"903":1,"904":1,"911":3,"914":2,"915":2,"917":2,"918":2,"919":4,"926":1,"932":1,"933":2,"946":1,"974":3,"982":1,"983":3,"988":1,"991":2,"992":1,"994":1,"1009":1,"1016":1,"1023":1,"1037":1,"1040":1,"1042":1,"1049":1,"1050":1,"1060":1,"1067":4,"1068":1,"1070":1,"1079":1,"1096":1,"1101":2,"1105":1,"1127":3,"1128":1,"1129":1,"1130":2,"1132":1,"1133":1,"1137":1,"1139":4,"1140":1,"1147":2,"1150":5,"1152":1,"1158":1,"1164":1,"1165":1,"1167":1,"1170":1,"1178":1,"1190":1,"1193":2,"1200":1,"1203":2,"1205":1,"1220":1,"1231":1,"1232":2,"1233":1,"1234":2,"1235":1,"1236":2,"1237":3,"1238":1,"1239":1,"1279":1,"1318":2,"1323":1,"1324":1,"1326":1,"1328":2,"1329":1,"1331":1,"1332":1,"1337":1,"1341":1,"1353":1,"1354":3,"1355":2,"1359":1,"1360":3,"1377":1,"1378":2,"1382":1,"1385":1,"1390":1,"1396":1,"1399":1,"1402":2,"1403":1,"1410":1,"1414":1,"1415":1,"1416":1,"1417":1,"1419":1,"1421":1,"1426":1,"1429":1,"1447":2,"1448":1,"1455":1,"1460":1,"1470":2,"1475":4,"1477":4,"1489":2,"1493":1,"1500":1,"1502":1,"1511":8,"1515":6,"1516":2,"1517":1,"1518":1,"1519":1,"1520":1,"1521":3,"1523":2,"1524":1,"1525":1,"1526":2,"1527":3,"1529":2,"1543":2,"1547":1,"1554":1,"1558":3,"1559":2,"1569":2,"1570":1,"1571":3,"1572":2,"1575":2,"1576":1,"1580":1,"1588":1,"1605":3,"1606":1,"1607":1,"1608":1,"1613":1,"1615":1,"1618":2,"1619":1,"1620":1,"1621":1,"1632":1,"1640":1,"1644":1,"1651":3,"1653":1,"1654":1,"1671":3,"1672":2,"1676":1,"1677":1,"1701":1,"1704":1,"1708":1,"1722":1,"1723":1,"1727":1,"1739":1,"1741":1,"1743":1,"1753":2,"1759":2,"1764":1,"1767":2,"1768":1,"1770":1,"1771":1,"1792":194,"1802":1,"1804":1,"1816":1,"1818":1,"1820":2,"1821":1,"1822":4,"1827":2,"1828":1,"1830":2,"1831":1,"1832":2,"1833":2,"1844":1,"1847":3,"1848":2,"1850":1,"1851":1,"1856":3,"1858":1,"1859":1,"1861":1,"1875":1,"1882":2,"1883":1,"1884":2,"1885":1,"1886":2,"1887":2,"1888":1,"1898":4,"1912":2,"1915":1,"1917":2,"1920":1,"1921":1,"1922":1,"1924":2,"1925":1,"1926":1,"1928":2,"1929":2,"1937":2,"1940":1,"1941":1,"1949":2,"1951":3,"1952":3,"1953":3,"1954":3,"1956":1,"1967":2,"1968":1,"1973":1,"1974":3,"1982":1,"1983":1,"2000":3,"2002":2,"2007":3,"2009":1,"2011":1,"2015":1,"2016":2,"2019":4,"2027":1,"2029":1,"2038":2,"2039":1,"2040":1,"2047":1,"2062":1,"2074":1,"2077":3,"2088":1,"2092":1,"2094":2,"2097":1,"2106":1,"2107":1,"2109":2,"2112":1,"2124":1,"2129":1,"2131":1,"2148":1,"2156":1,"2177":3,"2183":1,"2187":1,"2195":1,"2197":2,"2200":1,"2208":1,"2224":1,"2226":3,"2242":1,"2247":4,"2251":2,"2254":1,"2255":4,"2256":3,"2258":4,"2264":2,"2265":9,"2266":1,"2267":7,"2273":2,"2274":4,"2278":1,"2282":1,"2284":1,"2287":1,"2289":1,"2296":1,"2297":1,"2319":1,"2328":1,"2330":2,"2333":1,"2334":1,"2335":1,"2336":2,"2346":1,"2352":1,"2353":1,"2354":2,"2359":1,"2360":3,"2362":1,"2365":2,"2367":1,"2371":2,"2372":2,"2375":1,"2379":1,"2380":5,"2382":2,"2391":1,"2392":3,"2395":2,"2405":1,"2411":1,"2412":1,"2414":1,"2421":3,"2424":1,"2429":2,"2431":1,"2432":1,"2435":1,"2436":2,"2438":2,"2443":1,"2444":1,"2445":3,"2447":1,"2453":3,"2455":1,"2466":1,"2476":1,"2481":2,"2482":1,"2484":2,"2486":2,"2487":1,"2491":1,"2492":1,"2495":1,"2497":3,"2498":3,"2502":1,"2509":2,"2512":1,"2517":1,"2520":3,"2531":1,"2532":1,"2533":2,"2534":1,"2535":1,"2536":1,"2537":6,"2539":1,"2541":1,"2549":5,"2551":1,"2554":1,"2558":4,"2559":1,"2565":2,"2566":1,"2586":3,"2587":1,"2589":1,"2590":2,"2596":1,"2597":4,"2600":1,"2603":1,"2607":3,"2608":3,"2611":3,"2614":2,"2615":3,"2629":2,"2632":8,"2633":3,"2634":5,"2635":4,"2641":1,"2645":1,"2648":2,"2649":1,"2656":1,"2662":1,"2664":1,"2665":1,"2667":2,"2673":1,"2678":2,"2679":1,"2688":3,"2694":1,"2695":2,"2719":1,"2751":1,"2760":1,"2763":1,"2764":1,"2766":2,"2769":1,"2771":1,"2785":1,"2795":2,"2797":1,"2814":2,"2815":1,"2829":1,"2833":1,"2834":1,"2840":1,"2847":1,"2854":2,"2855":1,"2858":2,"2868":2,"2871":1,"2876":1,"2878":1,"2879":1,"2880":1}}],["whoami",{"2":{"938":2,"1061":1,"1063":1,"1567":2,"1568":1,"1576":2}}],["whoever",{"2":{"926":1}}],["whose",{"2":{"77":1,"309":1,"314":1,"320":1,"358":1,"389":1,"447":1,"624":1,"664":1,"871":1,"1075":1,"1105":1,"1326":1,"1426":1,"1569":1,"1792":6,"1823":2,"1832":1,"1861":1,"1898":1,"1925":1,"2106":1,"2380":1,"2392":1,"2394":1,"2411":1,"2422":1,"2423":1,"2431":1,"2455":1,"2476":1,"2482":1,"2504":1,"2505":1,"2517":1,"2529":3,"2537":1,"2539":1,"2540":1,"2733":1,"2760":1,"2813":1,"2831":1,"2835":1,"2865":3,"2878":1}}],["who",{"0":{"936":1,"1371":1,"2831":1},"2":{"1":1,"636":1,"844":2,"848":1,"851":1,"879":1,"922":1,"927":1,"932":2,"936":3,"944":1,"1058":2,"1059":1,"1064":1,"1106":1,"1185":2,"1188":2,"1221":1,"1304":1,"1311":1,"1327":1,"1371":2,"1382":3,"1384":1,"1401":1,"1402":1,"1403":1,"1567":4,"1568":1,"1576":2,"1871":1,"2179":1,"2183":2,"2184":2,"2351":1,"2353":1,"2366":9,"2454":2,"2455":1,"2794":1,"2795":1,"2812":1,"2827":1,"2828":1,"2831":1,"2833":1,"2838":1}}],["wholesale",{"2":{"1111":1}}],["whole",{"0":{"2868":1},"2":{"1":1,"214":2,"694":1,"711":1,"716":1,"834":1,"836":1,"845":1,"848":3,"851":1,"852":2,"854":2,"865":1,"922":1,"1037":1,"1039":1,"1042":1,"1044":1,"1076":1,"1080":1,"1382":2,"1427":1,"1436":1,"1743":2,"1792":3,"1822":1,"1824":1,"1961":1,"2098":1,"2112":1,"2477":1,"2481":1,"2492":1,"2502":2,"2528":1,"2532":1,"2534":2,"2542":1,"2740":1,"2861":1,"2863":1,"2869":1,"2875":1}}],["went",{"2":{"1441":1,"2510":1}}],["weakest",{"2":{"1209":1}}],["weak",{"2":{"876":1}}],["wearing",{"2":{"853":1,"857":1}}],["weather",{"2":{"207":5,"212":1,"322":8,"390":4,"394":2,"452":6,"531":5,"1105":3,"1347":6,"1725":1,"1726":2,"1727":7,"1733":6,"1792":1,"1823":2,"2264":12,"2483":2,"2763":1,"2768":3}}],["well",{"2":{"840":1,"841":2,"843":1,"844":3,"845":1,"848":1,"851":1,"875":1,"916":1,"918":1,"920":1,"933":1,"994":1,"1048":1,"1073":1,"1079":1,"1081":1,"1096":1,"1122":1,"1132":1,"1170":1,"1205":1,"1385":1,"1386":2,"1389":1,"1391":1,"1394":1,"1395":1,"1396":1,"1398":2,"1399":1,"1400":1,"1402":3,"1403":3,"1404":2,"1405":1,"1419":1,"1424":1,"1427":1,"1428":1,"1576":1,"1792":2,"1831":3,"1833":1,"2088":1,"2422":1,"2481":1,"2795":1,"2803":1}}],["welcome",{"2":{"313":1,"428":4,"1254":1}}],["weighting",{"2":{"1429":1}}],["weighted",{"2":{"1423":1,"2164":1}}],["weight",{"2":{"686":1,"976":1,"1792":1,"2073":1,"2075":1,"2080":1}}],["weeks",{"2":{"133":1,"269":2,"271":1,"272":1,"280":1,"851":1,"865":1,"872":1,"1064":1,"1181":1,"1385":1,"2211":2}}],["week",{"2":{"92":1,"269":1,"859":1,"1143":1,"1193":2,"1792":1,"2211":1}}],["weekends",{"2":{"1":1}}],["webrequest",{"2":{"2781":1}}],["webapplicationfactory",{"2":{"2372":1}}],["webauthn",{"0":{"1209":1,"1227":1,"1877":1,"2492":1,"2625":1},"1":{"1210":1,"1211":1,"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":2,"1229":2,"1230":2,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1242":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1878":1,"1879":1,"1880":1},"2":{"868":2,"869":3,"873":1,"877":1,"1037":1,"1086":1,"1098":4,"1126":1,"1127":1,"1209":3,"1211":2,"1214":1,"1218":1,"1220":1,"1221":1,"1222":1,"1232":1,"1237":1,"1243":1,"1445":1,"1465":1,"1466":1,"1788":1,"1792":6,"1866":1,"1868":2,"1882":1,"1887":1,"2164":1,"2235":1,"2492":2,"2625":1,"2736":1}}],["webhostbuilderkestrelextensions",{"2":{"1792":1}}],["webhooks",{"2":{"1101":1,"1104":1,"1107":1,"1108":1}}],["webhook",{"2":{"72":2,"1030":2,"1035":1,"1106":1}}],["webcam",{"2":{"1044":2}}],["webscraper",{"2":{"1423":1}}],["websocket",{"2":{"1094":1,"1121":1,"1302":1,"1303":3,"1304":1,"1320":1,"1322":2,"2020":1}}],["websockets",{"0":{"1323":1},"2":{"1035":1,"1037":1,"1103":2,"1127":1,"1323":1,"1327":1,"1351":1,"1372":1,"1991":1}}],["website",{"0":{"0":1},"1":{"1":1,"2":1,"3":1},"2":{"0":1,"1":1,"815":3,"1400":1,"1404":1,"2267":1}}],["webp",{"2":{"747":1,"1099":1,"1792":1,"2123":1,"2125":1}}],["web",{"0":{"1423":1,"2429":1,"2554":1},"1":{"1424":1,"1425":1,"1426":1,"1427":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"1434":1},"2":{"290":3,"831":1,"834":1,"921":1,"922":1,"938":1,"1037":2,"1043":1,"1047":2,"1061":1,"1064":1,"1098":2,"1115":1,"1202":1,"1354":1,"1363":1,"1373":1,"1404":1,"1423":2,"1445":1,"1453":1,"1466":1,"1582":1,"1635":1,"1648":1,"1666":1,"1718":1,"1787":1,"1792":6,"1794":1,"1812":1,"1946":1,"1963":1,"1978":1,"1984":1,"2014":1,"2091":1,"2164":5,"2166":1,"2175":1,"2419":1,"2479":1,"2527":1,"2632":4,"2706":1,"2762":1,"2770":2,"2772":1,"2776":2,"2862":1}}],["were",{"0":{"2490":2,"2505":1},"2":{"31":1,"188":1,"317":1,"408":1,"423":1,"848":1,"852":2,"856":1,"857":1,"859":1,"872":3,"912":1,"919":1,"1037":1,"1077":1,"1082":1,"1254":2,"1377":1,"1385":1,"1441":1,"1464":1,"1741":1,"1813":1,"1924":2,"1958":1,"2045":1,"2222":1,"2223":2,"2258":1,"2289":1,"2296":1,"2304":1,"2360":1,"2362":2,"2365":2,"2367":1,"2384":2,"2414":1,"2421":1,"2423":1,"2437":1,"2442":1,"2444":1,"2450":1,"2454":1,"2468":1,"2482":1,"2486":1,"2487":1,"2489":1,"2490":1,"2491":1,"2493":1,"2494":2,"2496":1,"2504":1,"2510":2,"2544":1,"2551":2,"2572":1,"2588":1,"2597":1,"2645":1,"2749":1}}],["we",{"0":{"1255":1},"2":{"1":2,"840":5,"841":15,"843":3,"844":9,"845":10,"847":4,"848":6,"849":4,"851":12,"852":3,"854":1,"856":1,"859":3,"861":2,"863":1,"864":1,"866":1,"913":1,"914":7,"915":4,"916":12,"917":7,"918":12,"919":4,"920":2,"922":1,"926":1,"932":1,"981":1,"992":2,"994":1,"996":1,"1031":1,"1048":1,"1075":1,"1258":2,"1318":1,"1335":1,"1337":1,"1338":2,"1382":13,"1385":5,"1386":15,"1388":3,"1389":2,"1390":8,"1391":5,"1392":4,"1394":7,"1395":8,"1396":6,"1397":1,"1398":5,"1399":10,"1401":2,"1403":1,"1404":1,"1405":6,"1426":1,"1428":1,"1435":1,"1441":2,"2438":1,"2452":1,"2823":1,"2824":4,"2825":1}}],["wildcard",{"2":{"1792":1}}],["wildcards",{"2":{"1792":4,"2002":1,"2096":2,"2270":1,"2537":3,"2877":1}}],["wild",{"2":{"1404":1}}],["wilson",{"2":{"913":1}}],["will",{"2":{"39":1,"40":2,"48":1,"60":1,"157":1,"173":1,"244":1,"336":1,"358":2,"408":1,"492":1,"653":1,"654":1,"656":2,"658":1,"660":1,"661":1,"662":2,"724":1,"745":1,"747":1,"761":1,"767":1,"771":1,"778":1,"784":1,"844":2,"845":3,"848":1,"851":2,"852":1,"857":1,"859":1,"860":1,"864":1,"869":1,"911":1,"912":1,"914":1,"916":1,"932":1,"982":1,"994":1,"996":2,"1009":1,"1052":1,"1073":2,"1076":2,"1078":1,"1084":1,"1129":6,"1130":2,"1132":3,"1133":2,"1196":1,"1203":1,"1318":1,"1326":1,"1382":1,"1386":18,"1388":1,"1390":1,"1391":2,"1394":1,"1395":1,"1398":6,"1399":7,"1402":1,"1404":2,"1409":1,"1464":1,"1511":4,"1517":2,"1608":1,"1620":1,"1621":1,"1641":1,"1653":1,"1697":1,"1703":1,"1733":1,"1792":95,"1840":1,"1940":1,"1948":1,"2208":1,"2247":4,"2250":1,"2252":2,"2254":2,"2255":1,"2256":5,"2258":2,"2264":1,"2265":4,"2266":1,"2267":1,"2272":1,"2376":1,"2378":1,"2389":1,"2454":1,"2533":1,"2577":1,"2633":1,"2634":1,"2642":1,"2665":1,"2687":1,"2788":1,"2792":2,"2821":1,"2823":1,"2881":1}}],["witty",{"2":{"913":1}}],["withactiverequests",{"2":{"1792":1,"1992":1}}],["withmessage",{"2":{"1026":4}}],["within",{"2":{"214":1,"646":1,"841":1,"863":1,"901":1,"902":1,"917":2,"918":1,"1098":1,"1129":1,"1158":1,"1204":1,"1208":1,"1343":1,"1418":1,"1430":1,"1741":1,"1743":1,"1792":9,"1951":1,"2002":1,"2257":1,"2264":6,"2289":1,"2397":2,"2463":1,"2464":1,"2465":1,"2482":1,"2500":1,"2525":1,"2550":1,"2588":1,"2633":1,"2791":1}}],["without",{"0":{"40":1,"60":1,"1045":1,"1781":1,"2729":1,"2868":1},"2":{"4":1,"10":1,"13":1,"29":1,"40":1,"41":1,"44":1,"55":1,"60":3,"68":1,"78":1,"91":1,"125":1,"132":1,"133":2,"144":1,"155":1,"165":4,"167":3,"168":1,"171":1,"174":1,"179":1,"180":1,"184":1,"186":1,"188":1,"192":1,"211":1,"212":1,"213":1,"214":1,"215":1,"244":1,"258":1,"261":1,"277":1,"282":1,"296":1,"320":1,"328":1,"332":1,"336":1,"339":1,"357":1,"362":1,"369":2,"378":1,"388":1,"390":1,"412":1,"433":1,"438":2,"458":1,"473":1,"484":1,"497":1,"507":1,"515":1,"549":1,"565":1,"567":1,"569":1,"589":1,"598":1,"607":1,"609":1,"618":1,"627":1,"636":2,"649":1,"650":1,"653":2,"664":1,"668":1,"699":1,"745":1,"794":1,"801":1,"803":1,"816":1,"823":1,"843":2,"851":1,"864":1,"868":3,"872":1,"874":2,"877":1,"888":1,"933":2,"936":1,"947":1,"952":1,"966":1,"985":1,"986":1,"992":1,"995":1,"1032":1,"1037":1,"1045":1,"1057":1,"1069":1,"1070":2,"1075":1,"1080":1,"1083":1,"1094":1,"1100":1,"1101":1,"1102":1,"1105":1,"1121":1,"1130":1,"1137":1,"1147":2,"1150":1,"1162":1,"1192":1,"1193":2,"1196":1,"1205":1,"1228":1,"1269":1,"1305":1,"1325":1,"1328":2,"1337":1,"1349":1,"1350":1,"1363":1,"1374":1,"1384":1,"1386":2,"1396":1,"1399":2,"1400":2,"1402":1,"1403":1,"1404":1,"1408":1,"1410":1,"1416":1,"1449":2,"1460":1,"1500":1,"1520":2,"1522":1,"1547":1,"1562":2,"1660":1,"1704":1,"1716":1,"1741":1,"1792":18,"1822":1,"1823":1,"1825":1,"1840":1,"1920":1,"1955":1,"1957":2,"1961":1,"2024":1,"2056":1,"2096":1,"2106":1,"2165":1,"2184":1,"2185":1,"2193":3,"2195":1,"2212":2,"2221":2,"2270":2,"2277":1,"2289":1,"2292":1,"2293":1,"2296":1,"2301":1,"2318":1,"2320":2,"2322":4,"2326":1,"2327":1,"2332":1,"2333":1,"2340":1,"2342":1,"2346":1,"2347":1,"2351":1,"2353":1,"2365":1,"2367":2,"2375":1,"2379":2,"2380":2,"2381":3,"2415":1,"2422":1,"2425":2,"2428":1,"2451":2,"2474":1,"2482":2,"2490":1,"2494":1,"2532":1,"2535":1,"2537":1,"2539":1,"2540":1,"2541":1,"2550":1,"2580":1,"2581":2,"2591":2,"2615":1,"2625":1,"2633":1,"2634":1,"2635":1,"2662":1,"2677":1,"2693":1,"2723":1,"2728":1,"2732":1,"2742":1,"2749":1,"2759":1,"2779":1,"2791":1,"2797":1,"2812":1,"2825":1,"2840":1,"2843":1,"2845":1,"2846":1,"2849":1,"2851":1,"2872":1,"2878":1,"2881":1}}],["with",{"0":{"38":1,"50":1,"61":1,"105":1,"118":1,"128":1,"129":1,"207":1,"208":1,"251":1,"256":1,"257":1,"263":1,"264":1,"273":1,"286":1,"292":1,"324":1,"349":1,"361":1,"373":1,"376":1,"395":1,"402":1,"417":1,"418":1,"419":1,"441":1,"442":1,"443":1,"453":1,"454":1,"478":1,"488":1,"523":1,"543":1,"574":1,"642":1,"643":1,"660":1,"736":1,"751":1,"756":1,"798":1,"800":1,"815":1,"878":1,"906":1,"918":1,"921":1,"945":1,"973":1,"986":1,"989":1,"1030":1,"1042":1,"1055":1,"1058":1,"1063":1,"1070":1,"1135":1,"1194":1,"1197":1,"1209":1,"1220":1,"1260":1,"1302":1,"1309":1,"1316":1,"1328":1,"1338":1,"1352":1,"1372":1,"1373":1,"1401":1,"1411":1,"1423":1,"1582":1,"1664":1,"1715":1,"1779":1,"1870":1,"1987":1,"2029":1,"2147":1,"2215":1,"2362":1,"2365":1,"2484":1,"2544":1,"2550":1,"2764":1},"1":{"879":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":2,"908":2,"909":2,"910":1,"911":1,"919":1,"920":1,"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"1056":1,"1136":1,"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1151":1,"1152":1,"1153":1,"1154":1,"1155":1,"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1164":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"1172":1,"1173":1,"1174":1,"1175":1,"1176":1,"1177":1,"1178":1,"1179":1,"1180":1,"1181":1,"1182":1,"1195":1,"1196":1,"1197":1,"1210":1,"1211":1,"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1242":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1308":1,"1309":1,"1310":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1,"1329":1,"1330":1,"1331":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1341":1,"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1,"1412":1,"1413":1,"1414":1,"1415":1,"1424":1,"1425":1,"1426":1,"1427":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"1434":1},"2":{"0":1,"4":1,"13":1,"18":1,"19":1,"20":1,"25":1,"29":1,"34":1,"35":1,"38":3,"40":1,"44":1,"55":1,"61":1,"62":1,"63":1,"64":2,"68":1,"78":1,"87":1,"91":1,"102":2,"108":2,"109":3,"120":2,"125":1,"132":1,"144":1,"155":1,"157":1,"165":1,"168":1,"170":1,"179":1,"184":1,"187":2,"192":2,"202":2,"209":1,"211":1,"213":4,"214":4,"215":1,"221":1,"243":1,"244":2,"245":2,"257":1,"258":2,"261":2,"266":2,"282":1,"284":1,"296":1,"298":1,"301":2,"306":4,"308":2,"309":1,"310":2,"313":1,"314":1,"316":1,"320":2,"322":1,"327":2,"328":1,"330":1,"332":2,"337":1,"338":1,"339":1,"347":1,"348":2,"352":1,"355":2,"357":1,"361":1,"363":1,"364":1,"368":1,"369":3,"372":1,"374":1,"375":2,"376":1,"377":1,"380":1,"381":2,"382":4,"386":2,"387":1,"388":2,"389":1,"394":1,"395":1,"408":1,"409":2,"412":1,"415":1,"419":1,"421":2,"422":1,"423":2,"433":1,"436":4,"439":1,"445":2,"446":3,"448":4,"452":1,"453":1,"454":4,"458":1,"469":3,"473":1,"480":1,"484":1,"494":1,"497":1,"503":3,"507":1,"515":1,"527":1,"528":1,"529":1,"531":1,"537":1,"541":1,"549":1,"551":2,"554":1,"559":1,"565":1,"567":1,"569":1,"584":1,"585":1,"587":1,"589":1,"595":1,"598":1,"607":1,"609":1,"618":1,"624":1,"625":1,"627":1,"636":2,"638":1,"641":1,"642":1,"646":2,"649":1,"659":1,"663":1,"668":1,"679":3,"690":1,"698":1,"699":2,"701":1,"704":1,"705":2,"708":1,"714":1,"720":2,"726":1,"748":1,"761":1,"763":1,"765":1,"766":1,"771":1,"775":1,"778":1,"791":1,"794":1,"801":1,"803":1,"823":1,"826":1,"829":1,"833":1,"834":3,"835":3,"837":2,"838":1,"840":1,"841":4,"843":2,"844":1,"845":4,"848":5,"849":3,"851":5,"852":4,"856":1,"857":2,"859":2,"860":3,"861":2,"863":5,"864":5,"865":1,"866":2,"867":1,"868":5,"869":4,"871":1,"872":7,"873":1,"874":2,"875":1,"876":2,"877":1,"878":1,"879":2,"880":1,"884":1,"887":2,"894":1,"900":1,"902":2,"903":2,"904":1,"905":1,"910":1,"911":1,"913":1,"914":5,"915":4,"916":8,"917":3,"918":5,"919":5,"920":7,"922":1,"924":2,"926":3,"928":1,"932":3,"933":2,"934":1,"937":1,"941":1,"946":3,"947":2,"951":2,"952":1,"954":1,"964":1,"965":1,"969":1,"970":1,"971":2,"972":1,"973":1,"974":2,"975":1,"982":1,"983":2,"985":2,"986":2,"987":1,"988":1,"989":3,"990":1,"991":1,"992":3,"994":2,"995":1,"996":2,"997":1,"998":1,"1002":1,"1005":1,"1006":1,"1008":1,"1009":1,"1010":2,"1013":3,"1015":3,"1016":3,"1017":2,"1023":2,"1029":1,"1030":1,"1032":1,"1034":1,"1035":1,"1036":1,"1037":24,"1038":2,"1039":2,"1040":1,"1041":1,"1042":1,"1044":1,"1046":2,"1048":3,"1049":5,"1050":2,"1051":1,"1054":1,"1057":4,"1060":3,"1061":1,"1064":6,"1065":2,"1066":1,"1067":3,"1068":1,"1069":1,"1070":2,"1071":1,"1073":2,"1074":1,"1075":2,"1076":1,"1078":2,"1080":1,"1082":1,"1084":2,"1086":6,"1088":2,"1091":2,"1094":4,"1095":3,"1096":3,"1098":4,"1099":5,"1100":3,"1101":11,"1102":7,"1104":2,"1105":5,"1106":1,"1107":1,"1108":1,"1110":2,"1111":4,"1113":3,"1115":1,"1119":1,"1121":3,"1122":1,"1123":1,"1125":3,"1126":8,"1127":6,"1132":2,"1134":1,"1135":4,"1137":1,"1139":3,"1140":1,"1142":1,"1150":4,"1155":1,"1156":1,"1157":2,"1164":1,"1170":2,"1171":2,"1176":1,"1177":2,"1181":1,"1182":1,"1183":3,"1184":1,"1185":2,"1190":1,"1191":1,"1192":1,"1193":1,"1200":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":2,"1208":1,"1209":2,"1210":2,"1211":3,"1213":1,"1214":1,"1218":1,"1220":3,"1221":1,"1222":1,"1224":1,"1228":1,"1233":1,"1237":1,"1247":2,"1250":1,"1254":3,"1255":6,"1258":1,"1260":1,"1262":2,"1263":1,"1268":1,"1271":2,"1278":1,"1279":1,"1280":1,"1281":1,"1302":1,"1304":1,"1307":1,"1309":1,"1314":1,"1317":2,"1323":1,"1325":1,"1326":1,"1327":1,"1328":1,"1334":1,"1335":1,"1338":2,"1342":1,"1343":1,"1347":2,"1349":2,"1351":1,"1357":1,"1360":1,"1361":1,"1365":2,"1366":3,"1367":3,"1368":1,"1370":1,"1373":1,"1377":3,"1378":6,"1379":1,"1380":1,"1382":3,"1384":1,"1385":12,"1386":16,"1387":1,"1388":1,"1389":3,"1390":4,"1391":3,"1392":2,"1393":2,"1394":8,"1395":1,"1396":3,"1398":6,"1399":4,"1400":2,"1401":5,"1402":3,"1403":4,"1405":9,"1406":1,"1407":3,"1409":2,"1410":5,"1414":1,"1419":4,"1420":1,"1422":2,"1424":3,"1427":1,"1428":1,"1430":1,"1431":3,"1432":2,"1435":4,"1438":1,"1441":1,"1449":1,"1453":1,"1458":4,"1460":4,"1464":2,"1483":1,"1494":1,"1497":1,"1505":1,"1511":4,"1515":3,"1516":4,"1518":2,"1519":1,"1520":1,"1521":1,"1522":1,"1525":1,"1527":1,"1529":1,"1534":2,"1540":2,"1544":2,"1547":1,"1548":1,"1559":2,"1567":1,"1569":1,"1571":1,"1573":1,"1575":1,"1576":2,"1577":2,"1581":1,"1588":1,"1598":1,"1604":1,"1605":3,"1608":2,"1609":1,"1618":1,"1626":1,"1627":1,"1630":1,"1639":1,"1641":2,"1643":1,"1644":1,"1646":1,"1651":1,"1655":1,"1658":1,"1663":2,"1664":2,"1670":1,"1678":3,"1682":1,"1684":1,"1685":1,"1689":1,"1698":1,"1723":4,"1725":1,"1727":1,"1730":2,"1731":2,"1733":7,"1739":1,"1740":2,"1741":1,"1743":3,"1745":1,"1747":1,"1751":1,"1758":1,"1759":1,"1766":2,"1771":1,"1792":106,"1802":1,"1807":1,"1810":1,"1813":1,"1823":2,"1824":2,"1825":3,"1827":1,"1830":2,"1834":2,"1837":1,"1840":4,"1842":1,"1847":2,"1849":2,"1851":2,"1852":3,"1855":2,"1856":1,"1861":1,"1863":1,"1868":1,"1870":2,"1872":1,"1874":1,"1878":1,"1883":1,"1894":1,"1907":1,"1911":1,"1912":1,"1917":2,"1923":1,"1924":2,"1925":2,"1926":2,"1927":1,"1928":2,"1929":2,"1930":1,"1931":1,"1938":1,"1948":3,"1951":1,"1952":1,"1957":1,"1958":2,"1959":2,"1960":1,"1968":1,"1973":1,"1974":5,"1995":1,"2000":1,"2004":1,"2006":1,"2010":3,"2016":2,"2019":1,"2020":1,"2023":1,"2024":1,"2032":1,"2037":1,"2038":1,"2039":3,"2040":1,"2042":1,"2047":1,"2055":1,"2059":1,"2062":1,"2063":1,"2080":1,"2081":1,"2092":1,"2094":1,"2095":1,"2096":1,"2097":2,"2103":1,"2106":2,"2109":1,"2110":3,"2111":4,"2114":1,"2117":1,"2119":1,"2125":1,"2132":1,"2134":1,"2141":1,"2146":1,"2155":2,"2156":2,"2157":1,"2158":1,"2160":1,"2161":1,"2164":17,"2165":8,"2167":4,"2171":1,"2175":1,"2176":1,"2177":3,"2178":1,"2182":1,"2183":3,"2184":3,"2186":1,"2187":1,"2188":1,"2192":1,"2193":6,"2195":1,"2196":4,"2197":3,"2198":1,"2202":2,"2205":1,"2206":1,"2209":1,"2217":1,"2221":6,"2222":3,"2223":2,"2228":1,"2238":1,"2245":2,"2247":1,"2251":1,"2254":1,"2255":2,"2256":2,"2257":1,"2258":5,"2261":1,"2264":11,"2265":10,"2266":3,"2267":3,"2270":4,"2272":2,"2274":2,"2277":5,"2283":1,"2284":1,"2287":2,"2288":2,"2289":1,"2292":1,"2294":2,"2301":1,"2303":1,"2304":1,"2305":1,"2314":1,"2318":1,"2319":2,"2320":5,"2321":4,"2322":1,"2325":1,"2326":1,"2327":2,"2328":1,"2329":3,"2330":1,"2332":2,"2333":4,"2334":4,"2335":2,"2337":1,"2338":1,"2339":1,"2342":1,"2344":1,"2346":1,"2347":2,"2348":2,"2353":1,"2357":2,"2360":2,"2365":1,"2367":1,"2369":1,"2372":3,"2375":8,"2376":2,"2377":1,"2378":3,"2379":1,"2380":5,"2381":2,"2382":2,"2383":3,"2384":1,"2389":4,"2391":2,"2394":4,"2395":1,"2398":1,"2410":1,"2413":1,"2414":2,"2415":1,"2416":1,"2421":1,"2422":1,"2427":1,"2428":1,"2429":1,"2430":2,"2432":1,"2435":2,"2438":2,"2441":1,"2442":1,"2450":2,"2451":2,"2452":1,"2456":6,"2459":2,"2465":2,"2468":2,"2471":2,"2472":2,"2481":13,"2482":2,"2486":1,"2487":1,"2490":2,"2492":1,"2493":1,"2496":2,"2497":3,"2498":1,"2502":4,"2505":1,"2509":1,"2515":2,"2517":1,"2519":1,"2521":2,"2527":1,"2528":3,"2529":5,"2530":8,"2531":4,"2532":4,"2533":6,"2534":4,"2535":3,"2536":1,"2537":7,"2538":1,"2540":4,"2541":2,"2542":2,"2543":3,"2545":3,"2546":1,"2549":10,"2550":3,"2554":1,"2555":1,"2558":1,"2559":1,"2565":2,"2571":1,"2575":1,"2576":1,"2577":1,"2580":3,"2581":3,"2586":4,"2587":3,"2588":1,"2589":2,"2591":3,"2596":2,"2597":3,"2600":4,"2603":2,"2607":6,"2608":3,"2614":3,"2615":1,"2621":1,"2622":2,"2625":1,"2632":4,"2634":2,"2635":5,"2638":1,"2659":1,"2662":2,"2663":1,"2665":1,"2666":1,"2669":1,"2671":1,"2677":2,"2678":1,"2679":2,"2680":1,"2682":2,"2686":1,"2688":2,"2691":1,"2694":2,"2695":1,"2696":1,"2697":1,"2700":1,"2702":1,"2704":1,"2705":1,"2719":1,"2721":1,"2722":2,"2723":2,"2725":2,"2726":1,"2728":1,"2733":3,"2739":2,"2741":1,"2742":1,"2745":1,"2747":1,"2756":1,"2758":3,"2759":1,"2760":3,"2762":2,"2763":1,"2764":1,"2765":2,"2767":2,"2768":1,"2770":2,"2774":1,"2775":1,"2776":1,"2779":1,"2785":2,"2788":2,"2789":4,"2790":1,"2791":4,"2792":1,"2795":2,"2797":1,"2799":1,"2802":1,"2804":2,"2805":1,"2806":1,"2810":2,"2811":2,"2812":1,"2815":2,"2816":1,"2819":1,"2824":4,"2825":3,"2826":1,"2827":2,"2828":2,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2835":1,"2837":1,"2840":3,"2842":1,"2845":4,"2848":2,"2850":2,"2851":1,"2855":5,"2857":1,"2858":1,"2859":2,"2860":4,"2862":1,"2863":1,"2864":2,"2865":2,"2866":1,"2868":1,"2869":4,"2871":1,"2872":1,"2873":2,"2877":2,"2879":2,"2880":2,"2881":2}}],["widget",{"2":{"1189":2,"1192":1}}],["width",{"2":{"894":1,"1361":1,"1410":1,"1792":2}}],["widespread",{"2":{"1075":1}}],["widely",{"2":{"918":1}}],["wider",{"2":{"868":1,"1792":1}}],["wide",{"2":{"650":2,"872":1,"1305":1,"1385":1,"1792":1,"1823":1,"2040":1,"2474":1,"2828":1,"2832":1}}],["widens",{"2":{"320":1,"1042":1,"2481":1}}],["wiring",{"2":{"873":2,"2472":1}}],["wiremock",{"2":{"2506":1,"2513":1,"2523":1}}],["wires",{"2":{"2226":1}}],["wireless",{"2":{"1044":2}}],["wire",{"0":{"2324":1},"2":{"848":1,"860":1,"861":1,"872":2,"1405":1,"1440":1,"1522":1,"2318":1,"2380":1,"2774":1,"2840":1}}],["wired",{"2":{"310":1,"868":2,"1096":1,"1406":1,"2181":1,"2389":1,"2438":1,"2522":1,"2545":1}}],["wiki",{"2":{"841":1,"1792":2}}],["wikipedia",{"2":{"841":3,"859":1}}],["win64",{"2":{"2779":1,"2781":1}}],["winning",{"2":{"1382":1,"2435":1}}],["winner",{"2":{"1127":1}}],["win",{"2":{"840":1,"852":1,"857":1,"872":1,"1378":1,"1388":1,"1389":1,"1390":1,"1391":1,"1392":2,"1393":1,"1396":1,"2040":1,"2397":1,"2440":1,"2476":1,"2792":1}}],["windowseconds",{"2":{"476":1,"478":1,"479":1,"1069":2,"1158":1,"1159":1,"1162":2,"1177":1,"1245":1,"1792":4,"1893":1,"1951":2,"1952":2,"1955":2,"1958":1,"1959":1,"1960":3,"2257":2,"2379":2,"2441":1,"2443":2,"2470":1,"2471":1}}],["windows",{"0":{"343":1,"1662":1,"1988":1,"2781":1},"2":{"340":1,"343":1,"1117":1,"1651":1,"1659":1,"1662":4,"1792":3,"2157":1,"2297":2,"2450":1,"2543":1,"2565":3,"2716":1,"2776":1,"2792":1}}],["window",{"0":{"476":1,"1158":1,"1159":1,"1951":1,"1952":1},"2":{"214":2,"476":1,"480":1,"857":1,"860":3,"876":1,"956":1,"1071":1,"1096":1,"1101":2,"1158":2,"1159":2,"1317":1,"1413":1,"1416":1,"1440":2,"1743":2,"1792":14,"1950":2,"1951":3,"1952":5,"2040":1,"2061":1,"2247":1,"2257":1,"2377":1,"2385":1,"2476":1,"2498":1,"2500":1,"2502":1}}],["wins",{"2":{"1":1,"108":1,"319":3,"349":1,"390":1,"529":1,"710":1,"831":1,"834":1,"835":1,"873":1,"1067":1,"1069":1,"1150":1,"1162":1,"1429":1,"1523":1,"1792":3,"1910":1,"1956":1,"2094":1,"2097":1,"2319":1,"2379":1,"2380":1,"2381":1,"2395":2,"2398":1,"2424":1,"2427":1,"2433":1,"2435":1,"2481":1,"2537":2,"2843":1,"2877":1}}],["axes",{"2":{"2794":1}}],["axios",{"2":{"1011":1,"1026":4,"1027":2}}],["axis",{"2":{"841":1,"859":1,"865":2}}],["aad",{"2":{"1792":1}}],["aes",{"2":{"1656":13,"1663":1,"1792":6}}],["ajax",{"2":{"1489":1,"1492":1,"1792":3}}],["aka",{"2":{"1404":1}}],["a2",{"2":{"1382":1}}],["azure",{"0":{"1713":1},"2":{"1013":1,"1094":1,"1694":1,"1701":1,"1713":1,"1792":2,"2633":2}}],["awkwardness",{"2":{"2391":1}}],["aws",{"0":{"1712":1},"2":{"1013":1,"1070":1,"1086":1,"1094":1,"1102":2,"1121":2,"1528":1,"1701":1,"1792":2,"1851":1,"2382":1,"2576":1,"2633":2,"2779":1,"2783":1,"2790":1}}],["away",{"2":{"840":1,"841":1,"845":1,"847":1,"852":1,"856":2,"859":1,"860":1,"873":1,"1382":1,"1401":1,"1792":1,"1959":1,"2016":1,"2017":1,"2471":1,"2632":1}}],["awaited",{"2":{"2267":1}}],["awaitconnectionms",{"2":{"1317":1,"1416":3,"2247":4}}],["await",{"2":{"214":1,"429":1,"894":1,"938":1,"995":6,"996":4,"1024":1,"1026":3,"1063":2,"1107":4,"1218":2,"1318":1,"1320":2,"1321":1,"1326":1,"1335":3,"1342":5,"1361":1,"1366":5,"1386":3,"1408":3,"1409":1,"1410":1,"1416":4,"1431":1,"1553":1,"1558":1,"1567":3,"1568":2,"1569":1,"1575":2,"1792":1,"2247":4,"2273":2,"2310":1,"2313":1,"2360":1,"2462":1,"2502":1,"2836":2}}],["aware",{"2":{"107":2,"502":1,"919":1,"920":1,"1040":1,"1394":1,"1405":1,"2225":1,"2380":1,"2422":1,"2481":1}}],["ahead",{"2":{"1007":1,"1957":1,"2379":1,"2776":1,"2792":1}}],["aot",{"0":{"954":1,"1272":1,"2788":1},"2":{"1046":1,"1086":1,"1090":2,"1255":1,"1263":1,"1265":1,"1266":2,"1272":3,"1277":1,"1278":1,"1279":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1396":1,"2077":1,"2157":1,"2242":1,"2245":4,"2385":1,"2481":1,"2543":1,"2600":3,"2652":1,"2711":1,"2744":1,"2776":1,"2789":3,"2792":3}}],["a1",{"2":{"775":1,"900":1,"1382":1}}],["a>",{"2":{"348":1,"961":2,"1061":1,"1200":1}}],["america",{"2":{"2453":1}}],["ambiguous",{"2":{"2540":1,"2847":1}}],["ambiguity",{"2":{"369":1,"844":1,"2332":1}}],["ambient",{"2":{"1559":1,"1571":2,"1792":1,"2484":2,"2545":1}}],["ambitious",{"2":{"1385":1}}],["amd",{"2":{"1255":1}}],["am",{"0":{"936":1,"1371":1},"2":{"852":1,"922":1,"936":3,"938":1,"971":1,"1058":2,"1061":1,"1064":1,"1371":2,"1385":1,"1399":3,"1400":1,"1401":1,"1402":2,"1403":1,"1404":2,"1421":1,"1567":4,"1568":1,"1576":2,"2183":2,"2184":2,"2366":9}}],["among",{"2":{"305":1}}],["amounts",{"2":{"1823":1}}],["amount=100",{"2":{"263":1}}],["amount",{"2":{"263":1,"378":1,"426":1,"594":1,"622":1,"677":2,"860":2,"900":1,"920":1,"1009":1,"1391":3,"1398":2,"1403":2,"1404":1,"2076":2,"2078":1,"2079":1,"2333":1,"2344":1,"2802":2}}],["amplification",{"0":{"854":1}}],["amp",{"0":{"223":1,"236":1,"1037":1,"1102":1,"1183":1,"1574":1,"1978":1,"2345":1,"2361":1,"2368":1,"2707":1,"2715":1,"2748":1,"2776":1},"1":{"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1,"1979":1,"1980":1,"1981":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1,"1995":1,"1996":1,"1997":1,"2346":1,"2347":1,"2348":1,"2362":1,"2363":1,"2364":1,"2365":1,"2366":1,"2367":1,"2369":1,"2370":1,"2371":1,"2372":1,"2708":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2715":1,"2716":2,"2717":2,"2718":2,"2719":2,"2720":1,"2721":1,"2722":1,"2723":1,"2724":1,"2725":1,"2726":1,"2727":1,"2728":1,"2729":1,"2730":1,"2731":1,"2732":1,"2733":1,"2734":1,"2735":1,"2736":1,"2737":1,"2738":1,"2739":1,"2740":1,"2741":1,"2742":1,"2743":1,"2744":1,"2745":1,"2746":1,"2747":1,"2748":1,"2749":2,"2750":2,"2751":2,"2752":2,"2753":1,"2754":1,"2755":1,"2756":1,"2757":1,"2758":1},"2":{"167":1,"263":2,"298":1,"372":2,"374":2,"386":1,"423":2,"493":1,"520":1,"527":1,"529":1,"544":1,"679":1,"832":1,"835":1,"964":1,"1023":1,"1033":1,"1067":2,"1098":1,"1374":2,"1382":1,"1412":1,"1466":1,"1611":1,"1635":1,"1648":1,"1666":1,"1691":4,"1692":5,"1693":3,"1694":4,"1695":4,"1718":1,"1733":1,"1812":1,"1946":1,"1963":1,"2091":1,"2121":1,"2164":4,"2183":1,"2188":2,"2264":1,"2284":1,"2304":2,"2319":1,"2321":1,"2322":1,"2481":1,"2540":1,"2706":1,"2731":1,"2805":1,"2816":1,"2845":2,"2846":2}}],["ab",{"2":{"2265":1}}],["abuse",{"2":{"1156":1,"1160":1,"1180":1,"1250":1,"2061":1}}],["abusing",{"2":{"933":1}}],["able",{"2":{"1077":1,"1385":1,"1388":1,"1400":1,"1792":1}}],["abcde",{"0":{"2758":1}}],["abc",{"2":{"1017":2,"1620":1,"2283":2}}],["abc123",{"2":{"187":2,"1359":1,"1677":1,"2294":2}}],["ability",{"2":{"926":1,"1399":1,"2525":1,"2628":1}}],["abandoned",{"2":{"856":1,"2615":3}}],["absurd",{"2":{"913":1}}],["absorbed",{"2":{"1382":1}}],["absorb",{"2":{"869":1}}],["absorbs",{"2":{"868":1,"869":1}}],["absolutely",{"2":{"994":1,"1076":1,"1401":1}}],["absolute",{"2":{"409":1,"422":1,"436":1,"446":1,"1917":1,"2398":1}}],["absence",{"2":{"865":1}}],["absent",{"2":{"390":1,"872":1,"1792":2,"1824":1,"2038":1,"2040":1,"2476":2,"2536":1,"2666":1,"2868":1}}],["abstracting",{"2":{"856":1}}],["abstraction",{"0":{"842":1,"846":1,"850":1,"858":1,"862":1},"1":{"843":1,"844":1,"845":1,"847":1,"848":1,"849":1,"851":1,"852":1,"853":1,"854":1,"855":1,"856":1,"857":1,"859":1,"860":1,"861":1,"863":1,"864":1,"865":1},"2":{"841":5,"848":2,"856":1,"1385":1}}],["abstractions",{"2":{"841":2,"1403":1}}],["abstracts",{"2":{"848":2,"849":1,"865":1}}],["abstract",{"2":{"847":1}}],["abomination",{"2":{"1385":1}}],["aborted",{"2":{"2615":1}}],["aborting",{"2":{"1592":1}}],["aborts",{"2":{"1232":1,"1792":1,"2414":1,"2527":1,"2528":1,"2862":1}}],["abortconnect=false",{"2":{"1067":1,"1146":1,"1147":1,"1177":1,"1510":1,"1514":1,"1515":1,"1534":1,"1792":1,"2274":1}}],["above",{"2":{"175":1,"206":1,"308":1,"370":1,"614":1,"656":1,"690":1,"840":1,"847":1,"848":1,"851":1,"860":1,"869":1,"872":2,"873":1,"915":2,"919":1,"920":1,"946":1,"987":1,"1073":1,"1077":1,"1171":1,"1208":1,"1258":1,"1377":1,"1379":1,"1390":1,"1391":1,"1392":1,"1399":1,"1743":1,"1755":1,"1792":8,"1824":1,"1825":1,"1858":1,"1922":1,"1924":1,"1925":1,"1961":2,"2165":1,"2177":2,"2258":1,"2264":1,"2339":1,"2398":1,"2406":1,"2429":1,"2431":1,"2466":1,"2533":1,"2540":1,"2541":1,"2543":1,"2544":1,"2828":1,"2830":1,"2835":1}}],["about",{"0":{"0":1,"2":1},"1":{"1":1,"2":1,"3":1},"2":{"74":1,"388":1,"436":1,"841":8,"843":2,"844":5,"847":3,"848":2,"852":4,"855":1,"857":1,"859":3,"860":1,"863":1,"864":2,"868":1,"872":1,"873":1,"875":1,"881":1,"886":1,"944":1,"987":1,"1010":1,"1036":1,"1073":1,"1077":1,"1079":2,"1080":1,"1081":1,"1132":1,"1210":1,"1384":1,"1386":4,"1390":1,"1392":1,"1399":1,"1400":1,"1401":2,"1402":1,"1403":4,"1404":5,"1421":1,"1428":1,"1792":2,"2059":1,"2156":1,"2179":1,"2388":1,"2465":1,"2542":1,"2634":1,"2635":1,"2741":1,"2868":2,"2869":2}}],["affinity",{"2":{"1078":1,"2527":1,"2862":1}}],["affected",{"2":{"567":1,"586":1,"614":1,"622":1,"624":1,"666":1,"673":1,"829":1,"1254":1,"2072":1,"2320":1,"2337":1,"2339":1,"2342":2,"2357":2,"2365":2,"2389":1,"2453":1,"2486":1,"2487":1,"2490":1,"2494":1,"2496":1,"2504":1,"2834":1,"2851":1}}],["affects",{"2":{"337":1,"650":1,"667":1,"1566":1,"1704":1,"1832":1,"2157":1,"2397":1,"2466":1,"2795":1}}],["affect",{"2":{"165":1,"384":1,"1128":1,"1528":1,"1801":1,"1840":1,"2000":1,"2004":1,"2209":1,"2459":1}}],["afterwards",{"2":{"448":1,"2110":1,"2530":1,"2862":1}}],["after",{"0":{"314":1,"563":1,"1379":1,"2110":1,"2413":1,"2416":1,"2423":1,"2444":1,"2505":1,"2757":1},"2":{"133":1,"203":1,"211":2,"239":1,"277":1,"284":1,"310":1,"319":1,"378":1,"387":1,"447":1,"560":1,"563":1,"619":1,"689":1,"701":1,"705":1,"706":2,"707":1,"713":1,"714":1,"747":2,"781":2,"807":1,"851":2,"852":2,"876":1,"927":1,"947":1,"969":1,"1068":1,"1070":1,"1080":1,"1102":1,"1139":1,"1148":1,"1152":4,"1153":1,"1170":1,"1215":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1244":1,"1358":2,"1360":1,"1363":1,"1402":1,"1403":1,"1409":1,"1443":1,"1590":4,"1684":3,"1686":1,"1731":2,"1742":1,"1792":13,"1850":1,"1885":1,"1887":1,"1888":1,"1922":1,"2006":1,"2034":1,"2075":1,"2094":1,"2100":1,"2107":2,"2110":1,"2125":1,"2137":1,"2149":1,"2156":1,"2169":1,"2182":1,"2212":1,"2222":2,"2247":1,"2267":1,"2290":1,"2320":1,"2323":1,"2340":1,"2359":1,"2378":1,"2383":1,"2397":1,"2452":1,"2498":1,"2505":2,"2528":1,"2529":3,"2530":1,"2533":3,"2537":4,"2540":1,"2542":1,"2575":1,"2577":1,"2621":1,"2762":2,"2765":1,"2852":1,"2864":1,"2865":2,"2866":1,"2870":1,"2879":1}}],["agrees",{"2":{"2486":1}}],["agree",{"2":{"1403":1}}],["again",{"2":{"851":1,"852":1,"856":1,"859":1,"863":1,"1054":1,"1076":1,"1157":1,"1191":1,"1384":2,"1394":1,"1396":2,"1440":1,"1792":4,"1948":1,"1949":1,"1958":1,"1959":1,"1960":1,"2257":1,"2470":1,"2471":1,"2824":1}}],["against",{"0":{"933":1,"991":1,"2740":1},"2":{"0":1,"1":2,"19":1,"20":1,"22":1,"41":1,"299":1,"308":1,"309":3,"388":1,"618":1,"625":1,"650":1,"666":1,"696":1,"836":1,"852":1,"864":1,"874":2,"875":1,"876":1,"930":2,"934":1,"986":1,"1005":1,"1055":1,"1073":2,"1074":1,"1075":2,"1076":2,"1077":1,"1078":1,"1080":2,"1096":2,"1127":1,"1136":1,"1149":1,"1150":1,"1168":1,"1188":1,"1196":1,"1197":1,"1224":1,"1252":1,"1255":1,"1368":1,"1378":1,"1379":1,"1382":1,"1406":2,"1408":1,"1409":1,"1412":1,"1416":1,"1419":2,"1448":1,"1487":1,"1504":1,"1523":2,"1604":1,"1609":2,"1792":8,"1898":1,"2014":1,"2020":1,"2092":1,"2094":1,"2096":1,"2098":1,"2112":1,"2141":1,"2177":1,"2314":2,"2367":1,"2389":1,"2411":1,"2413":1,"2416":1,"2420":1,"2421":1,"2431":1,"2435":1,"2442":1,"2446":1,"2459":1,"2464":1,"2465":1,"2486":1,"2495":1,"2519":1,"2527":1,"2537":3,"2546":1,"2632":2,"2659":1,"2661":1,"2669":1,"2722":1,"2744":1,"2840":1,"2872":2}}],["agnostic",{"2":{"848":1,"1039":1,"2481":1}}],["ago",{"2":{"841":1,"851":1,"855":1,"860":1,"1382":3,"1385":1,"1400":1,"1403":1,"2297":1}}],["age=42",{"2":{"2321":1}}],["age=1800",{"2":{"2207":1}}],["age=31536000",{"2":{"1139":1,"1362":1,"1363":1,"2775":1}}],["age=300",{"2":{"1138":1}}],["age=3600",{"2":{"542":1,"1138":2,"2202":1}}],["age=n",{"2":{"1138":1}}],["age=86400",{"2":{"1138":1}}],["age",{"2":{"1068":1,"1098":1,"1459":1,"1639":1,"1792":1,"2148":1,"2321":2,"2375":1}}],["agent",{"0":{"1038":1,"1044":1},"1":{"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1},"2":{"317":1,"319":1,"320":1,"324":1,"327":2,"480":1,"529":1,"1037":3,"1038":3,"1039":2,"1042":1,"1043":1,"1044":4,"1045":1,"1047":2,"1081":5,"1381":1,"1382":2,"1383":2,"1736":1,"1792":2,"1813":1,"1820":1,"1823":1,"1832":1,"1833":1,"1834":2,"2166":2,"2479":3,"2481":1}}],["agents",{"2":{"223":1,"837":1,"1038":1,"1041":1,"1042":1,"1081":1,"1382":2,"1789":1}}],["aggegations",{"2":{"919":1}}],["aggregator",{"2":{"1929":1,"2346":1,"2766":1}}],["aggregating",{"2":{"1021":1,"1429":1,"2770":1}}],["aggregations",{"2":{"919":2,"920":1,"956":1,"1385":1}}],["aggregation",{"0":{"1011":1,"1021":1},"2":{"137":1,"919":3,"1010":1,"1035":1,"1036":1,"1105":1,"1205":1,"1259":1,"1746":1,"2347":1,"2608":1}}],["aggregated",{"0":{"2366":1},"2":{"869":2,"2366":1}}],["aggregates",{"2":{"851":2,"865":2,"1010":1,"1036":1,"1096":2,"1122":1,"1127":1}}],["aggregate",{"2":{"845":1,"849":1,"851":4,"854":1,"860":1,"861":1,"863":10,"864":3,"865":2,"918":1,"919":1,"1011":1,"1096":1,"1130":1}}],["aggressive",{"2":{"573":1,"577":3,"1129":1,"1139":1,"1154":4,"1179":2,"1597":1,"1599":2,"1625":1}}],["agg",{"2":{"264":1,"415":2,"426":1,"918":3,"919":3,"1105":1,"1138":2,"1139":1,"1179":3,"1197":1,"1232":1,"1234":1,"1427":1,"1504":2,"2303":1,"2586":1,"2588":1,"2813":2}}],["avx2",{"2":{"2270":1}}],["averaging",{"2":{"1429":1}}],["averagebookprice",{"2":{"1431":1}}],["average",{"0":{"1425":1},"1":{"1426":1,"1427":1,"1428":1},"2":{"1271":1,"1278":5,"1382":2,"1423":1,"1427":5,"1430":1,"1431":4,"1974":1,"2164":1,"2607":1,"2760":2,"2762":6}}],["avgprice",{"2":{"1427":1,"1431":2}}],["avgrating",{"2":{"916":2,"917":2,"920":1}}],["avg",{"2":{"427":2,"916":3,"1277":2,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1295":1,"1297":1,"1299":1,"1301":1,"1427":2,"1431":1,"2762":3}}],["availability",{"0":{"1135":1,"1172":1,"1177":1},"1":{"1136":1,"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1151":1,"1152":1,"1153":1,"1154":1,"1155":1,"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1164":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"1172":1,"1173":2,"1174":2,"1175":2,"1176":2,"1177":2,"1178":2,"1179":1,"1180":1,"1181":1,"1182":1},"2":{"844":1,"1037":1,"1135":2,"1152":1,"1625":1}}],["availableclaims",{"2":{"1792":1,"2033":1,"2037":1,"2038":1,"2039":1,"2040":1,"2042":1,"2476":2}}],["availableenvvars",{"0":{"2476":1},"2":{"390":3,"534":1,"1792":2,"1862":1,"2033":1,"2037":1,"2038":1,"2040":3,"2223":1,"2224":1,"2476":2,"2477":1,"2483":2,"2768":1}}],["available",{"0":{"684":1,"2048":1,"2163":1,"2168":1},"1":{"2049":1,"2050":1,"2051":1,"2052":1,"2164":1,"2165":1,"2166":1,"2167":1},"2":{"19":1,"20":1,"22":1,"63":1,"121":1,"175":2,"179":1,"216":1,"412":1,"448":1,"452":1,"529":1,"559":1,"581":1,"618":1,"746":1,"747":1,"752":1,"765":1,"768":1,"776":1,"781":1,"816":1,"823":1,"868":3,"892":1,"904":1,"905":1,"921":1,"934":1,"947":1,"976":1,"1013":1,"1029":1,"1048":1,"1049":1,"1069":1,"1096":1,"1104":1,"1107":1,"1111":1,"1155":1,"1165":1,"1166":1,"1173":1,"1174":3,"1183":1,"1217":1,"1220":1,"1228":1,"1278":1,"1281":1,"1349":1,"1377":1,"1385":1,"1386":2,"1398":3,"1401":1,"1403":1,"1416":1,"1475":1,"1477":1,"1569":1,"1596":1,"1608":1,"1613":1,"1624":1,"1631":1,"1662":2,"1759":1,"1792":13,"1801":1,"1820":1,"1837":1,"1840":1,"1862":1,"1878":1,"1912":1,"1950":1,"2010":1,"2012":1,"2094":1,"2109":1,"2130":1,"2140":1,"2142":1,"2160":1,"2169":1,"2184":2,"2254":1,"2256":1,"2272":1,"2329":1,"2366":1,"2372":1,"2550":1,"2572":1,"2575":1,"2577":1,"2664":1,"2693":1,"2789":1,"2790":1,"2791":3,"2792":1,"2823":1}}],["avatar",{"2":{"393":1,"2185":1}}],["avoiding",{"2":{"920":1,"951":1}}],["avoids",{"0":{"1325":1},"2":{"915":1,"1031":1,"1199":1}}],["avoided",{"2":{"872":4}}],["avoid",{"2":{"133":1,"277":1,"784":1,"967":1,"1037":1,"1055":1,"1134":1,"1174":1,"1338":1,"1403":1,"1543":1,"1554":1,"1661":1,"1792":1,"2212":1,"2247":1,"2256":1,"2324":1,"2372":1,"2422":1,"2614":1,"2825":1}}],["arabic",{"2":{"2607":1}}],["arial",{"2":{"1792":1,"2073":1,"2075":1,"2080":1}}],["ar",{"2":{"1185":2}}],["arm",{"2":{"2270":1,"2385":1,"2576":4,"2790":6}}],["army",{"2":{"1441":1}}],["arm64",{"0":{"2576":1,"2783":1,"2784":1,"2790":1},"2":{"1117":1,"2237":1,"2576":7,"2779":2,"2783":2,"2784":1,"2790":8,"2792":2}}],["arms",{"2":{"913":1}}],["args",{"2":{"2679":1}}],["arg",{"2":{"2523":1}}],["argon2",{"2":{"1049":2}}],["argued",{"2":{"869":1,"876":1}}],["argue",{"2":{"866":1}}],["arguably",{"2":{"843":1,"1078":1}}],["argument",{"2":{"308":1,"847":1,"852":2,"857":1,"860":1,"873":1,"1040":1,"1046":1,"1403":1,"1569":1,"2092":1,"2164":1,"2184":1,"2252":2,"2520":1,"2522":1,"2540":1,"2662":1,"2678":1,"2695":1,"2823":1,"2824":1}}],["arguments",{"0":{"2691":1},"1":{"2692":1},"2":{"109":1,"184":1,"186":1,"188":1,"653":2,"872":1,"1039":2,"1431":1,"1785":1,"1792":1,"2181":1,"2292":1,"2293":1,"2296":1,"2481":1,"2498":1,"2680":1,"2681":3,"2684":1,"2687":1,"2691":1,"2694":1,"2772":1,"2825":2}}],["artifacts",{"0":{"2489":1},"2":{"2489":1,"2527":1,"2576":1,"2862":1}}],["artifact",{"2":{"872":1,"1406":1,"1421":1,"2102":1}}],["article>",{"2":{"1427":2}}],["articles",{"2":{"1427":4}}],["article",{"2":{"859":1,"863":1,"996":5,"1424":1,"1427":1}}],["arbitration",{"0":{"855":1},"2":{"852":2,"855":1}}],["arbitrary",{"2":{"390":1,"852":1,"857":1,"1097":1,"1132":1,"2383":1,"2389":1}}],["archive",{"2":{"848":1,"1437":1,"1438":1,"2062":1,"2220":1}}],["architect",{"2":{"847":1}}],["architects",{"2":{"845":1}}],["architectures",{"2":{"840":1,"876":1,"1250":1}}],["architecture",{"0":{"923":1,"939":1,"1085":1,"1184":1,"1211":1,"1276":1,"1320":1,"1333":1},"1":{"924":1,"925":1,"926":1,"940":1,"941":1,"942":1,"943":1,"944":1,"1086":1,"1087":1,"1088":1},"2":{"836":1,"839":2,"840":4,"847":1,"848":1,"851":2,"861":1,"866":1,"871":2,"874":1,"876":4,"877":2,"946":1,"948":1,"1007":1,"1015":1,"1035":1,"1037":1,"1083":1,"1185":1,"1382":2,"1402":2,"1403":2,"1405":2,"1435":1,"2790":1}}],["architectural",{"0":{"1108":1},"2":{"307":1,"871":1,"873":1,"1014":1,"1098":1,"1101":2}}],["arranges",{"2":{"2860":1}}],["arrange",{"2":{"1074":1,"1076":1,"1393":1,"2526":1,"2528":1,"2860":1,"2864":1}}],["arraycompositefielddescriptors",{"2":{"2611":1}}],["arraycompositefieldnames",{"2":{"2611":1}}],["arraycompositecolumninfo",{"2":{"2370":1}}],["arraypool",{"0":{"2402":1},"2":{"2226":1,"2402":1,"2604":1}}],["arraybuffer",{"2":{"1107":1}}],["arrayagg",{"2":{"918":1}}],["arrays",{"0":{"335":1,"2397":1,"2586":1,"2589":1},"1":{"2398":1},"2":{"87":1,"286":1,"334":1,"335":2,"337":2,"918":3,"919":1,"1092":1,"1097":3,"1255":1,"1370":1,"1605":1,"1792":2,"1967":1,"1974":1,"2000":2,"2009":2,"2226":1,"2236":1,"2270":2,"2325":1,"2330":2,"2357":2,"2398":2,"2492":1,"2497":1,"2532":1,"2533":1,"2586":6,"2588":9,"2589":4,"2590":3,"2603":1,"2607":3,"2611":3,"2688":1,"2725":1,"2841":2,"2842":1}}],["array",{"0":{"1279":1,"1526":1,"2378":1,"2588":1,"2725":1},"2":{"81":1,"227":1,"290":1,"335":1,"390":1,"567":2,"575":1,"607":1,"609":1,"615":1,"738":1,"760":1,"761":1,"763":1,"770":1,"771":1,"773":1,"776":1,"778":1,"798":1,"802":1,"835":1,"880":1,"881":1,"882":1,"883":1,"885":1,"887":1,"892":1,"903":3,"918":6,"919":5,"924":1,"928":2,"929":6,"930":2,"948":2,"951":1,"1021":2,"1026":1,"1051":3,"1069":1,"1152":1,"1157":2,"1197":1,"1232":1,"1234":1,"1279":4,"1339":3,"1357":2,"1370":1,"1376":2,"1386":1,"1399":1,"1410":2,"1427":3,"1504":3,"1523":2,"1560":1,"1562":4,"1565":1,"1574":1,"1589":3,"1590":1,"1639":4,"1640":1,"1670":1,"1703":3,"1792":22,"1824":1,"1838":4,"1850":1,"1862":2,"1882":1,"1884":1,"1898":2,"1917":2,"1937":2,"1948":2,"1956":1,"1967":2,"1974":7,"2034":1,"2038":7,"2040":1,"2047":2,"2055":1,"2094":2,"2129":1,"2130":1,"2131":1,"2187":1,"2236":1,"2258":1,"2265":2,"2270":2,"2320":1,"2339":3,"2357":2,"2370":1,"2372":1,"2378":2,"2380":2,"2388":1,"2397":4,"2398":5,"2415":1,"2476":1,"2483":1,"2491":1,"2496":1,"2498":1,"2531":1,"2535":1,"2540":1,"2586":7,"2588":3,"2589":2,"2590":4,"2600":1,"2603":1,"2607":7,"2608":1,"2611":2,"2614":1,"2621":2,"2635":2,"2671":1,"2725":1,"2785":1,"2824":1,"2842":1,"2845":1,"2851":2,"2852":1,"2869":1}}],["arr",{"2":{"1021":3,"1376":3}}],["arrows",{"2":{"1381":1}}],["arrow",{"2":{"1008":1}}],["arrive",{"2":{"868":2,"1067":1,"1165":1,"2183":1}}],["arrives",{"2":{"435":1,"2830":1}}],["arriving",{"2":{"847":1,"1961":1}}],["around",{"2":{"174":1,"697":1,"835":1,"851":1,"852":1,"865":1,"912":1,"919":1,"1073":1,"1075":1,"1122":1,"1280":1,"1401":1,"1402":1,"1414":1,"1419":1,"2112":1,"2258":3,"2409":1,"2532":1,"2535":1,"2714":1,"2855":1}}],["aren",{"2":{"319":1,"372":1,"868":1,"1251":1,"1328":1,"1385":1}}],["areas",{"2":{"1068":1,"1098":1,"1458":1,"2375":1}}],["area",{"2":{"49":2,"1083":1,"1414":1,"1458":1,"1792":1,"2042":1,"2375":1}}],["are",{"0":{"1":1,"448":1,"948":1,"985":1,"1041":1,"1072":1,"1078":1,"1395":1,"2180":1,"2384":1,"2410":1,"2424":1,"2451":1,"2489":1,"2492":1,"2710":1,"2724":1,"2736":1,"2749":1},"1":{"1073":1,"1074":1,"1075":1,"1076":1,"1077":1,"1078":1,"1079":1,"1080":1,"1081":1,"1082":1,"2411":1,"2412":1,"2413":1},"2":{"1":3,"3":1,"14":1,"17":1,"25":1,"41":2,"63":3,"87":1,"101":1,"108":2,"113":1,"119":1,"121":1,"155":1,"156":1,"159":1,"165":1,"169":1,"170":1,"175":3,"177":1,"179":1,"182":2,"184":1,"186":1,"188":6,"197":1,"202":1,"203":1,"210":2,"212":2,"214":4,"216":2,"220":1,"244":2,"253":1,"262":1,"269":2,"280":1,"286":5,"299":2,"300":3,"305":2,"306":1,"307":1,"308":1,"309":3,"320":1,"324":2,"327":1,"330":2,"334":1,"335":2,"337":3,"347":1,"352":1,"370":1,"375":1,"376":1,"378":1,"380":1,"381":1,"382":3,"384":1,"387":1,"388":1,"389":1,"390":1,"395":1,"404":1,"414":2,"423":3,"424":1,"436":2,"446":1,"448":5,"452":2,"460":1,"462":1,"480":1,"494":2,"497":1,"512":1,"515":1,"528":1,"529":1,"537":1,"541":1,"544":1,"549":1,"564":1,"567":1,"584":1,"585":1,"595":1,"622":1,"625":1,"637":1,"639":3,"641":1,"643":1,"656":1,"663":2,"668":2,"669":1,"673":2,"679":1,"684":1,"687":1,"691":1,"695":2,"696":2,"704":1,"709":1,"720":3,"722":1,"737":1,"746":1,"747":2,"765":1,"766":1,"768":1,"776":1,"777":1,"779":1,"801":3,"807":1,"816":1,"817":1,"818":3,"819":1,"823":1,"826":1,"829":1,"831":1,"832":1,"840":1,"841":11,"843":2,"844":5,"845":3,"847":2,"848":5,"849":4,"851":5,"852":5,"853":1,"855":1,"856":1,"857":3,"859":2,"860":3,"861":1,"863":1,"864":1,"865":4,"866":1,"867":2,"868":6,"869":3,"871":3,"872":5,"873":3,"874":2,"875":1,"877":1,"881":1,"901":1,"911":1,"915":4,"916":6,"917":2,"918":3,"919":3,"920":1,"926":2,"928":1,"932":2,"933":1,"936":2,"937":2,"938":1,"946":1,"948":1,"949":1,"952":1,"963":1,"973":1,"974":1,"975":2,"978":2,"980":1,"987":1,"990":1,"992":2,"995":1,"996":2,"1004":1,"1014":2,"1015":2,"1029":2,"1034":1,"1035":2,"1037":1,"1038":1,"1041":1,"1042":1,"1046":2,"1049":1,"1054":3,"1056":1,"1063":1,"1067":2,"1069":1,"1070":1,"1071":2,"1074":1,"1076":1,"1077":1,"1079":3,"1080":2,"1081":3,"1082":1,"1086":1,"1087":1,"1088":1,"1095":1,"1096":1,"1097":1,"1098":2,"1100":2,"1102":1,"1105":2,"1106":3,"1107":3,"1127":2,"1128":1,"1129":1,"1132":1,"1142":1,"1149":1,"1150":2,"1151":1,"1152":1,"1160":2,"1164":1,"1165":1,"1169":1,"1170":1,"1172":1,"1178":1,"1192":1,"1214":1,"1220":1,"1225":1,"1226":1,"1244":1,"1249":1,"1254":1,"1281":1,"1285":1,"1305":1,"1323":2,"1324":1,"1325":1,"1341":1,"1354":2,"1355":1,"1359":1,"1363":1,"1365":1,"1376":1,"1378":1,"1382":3,"1385":6,"1386":7,"1387":1,"1390":1,"1391":2,"1392":2,"1393":2,"1394":8,"1396":4,"1397":3,"1398":3,"1401":6,"1402":3,"1403":11,"1405":1,"1406":1,"1410":1,"1414":2,"1417":2,"1419":1,"1420":2,"1423":1,"1429":2,"1431":1,"1433":1,"1435":3,"1437":1,"1453":1,"1472":1,"1475":4,"1477":6,"1502":1,"1511":3,"1513":1,"1516":1,"1521":1,"1522":2,"1523":2,"1531":2,"1538":1,"1566":1,"1567":2,"1569":1,"1570":1,"1571":2,"1575":1,"1582":1,"1608":1,"1621":3,"1627":1,"1642":1,"1643":1,"1651":1,"1653":1,"1660":1,"1662":2,"1664":3,"1690":1,"1706":1,"1707":1,"1708":3,"1709":1,"1722":3,"1732":1,"1733":1,"1741":1,"1743":3,"1757":1,"1759":1,"1769":2,"1792":108,"1816":1,"1820":1,"1823":1,"1824":3,"1825":1,"1827":1,"1830":1,"1838":1,"1840":1,"1851":1,"1852":2,"1853":2,"1854":1,"1856":6,"1858":2,"1862":1,"1876":1,"1898":2,"1908":2,"1909":1,"1910":1,"1912":1,"1915":1,"1917":1,"1922":2,"1923":2,"1924":4,"1926":1,"1927":1,"1950":1,"1953":1,"1957":1,"1961":1,"1967":2,"1968":1,"1969":2,"1973":1,"1974":3,"1982":1,"2000":2,"2004":2,"2005":1,"2006":2,"2007":1,"2008":1,"2010":3,"2011":1,"2016":1,"2036":1,"2039":2,"2040":2,"2056":1,"2060":1,"2062":1,"2072":1,"2074":1,"2095":1,"2098":2,"2100":1,"2106":1,"2107":1,"2110":1,"2112":1,"2137":1,"2140":1,"2142":1,"2147":1,"2149":2,"2157":1,"2160":1,"2165":1,"2167":1,"2179":1,"2181":1,"2184":2,"2185":1,"2187":1,"2191":2,"2192":2,"2193":3,"2202":1,"2203":1,"2208":1,"2212":1,"2222":1,"2223":1,"2224":3,"2242":1,"2250":1,"2253":1,"2256":1,"2258":1,"2264":3,"2265":4,"2267":1,"2270":1,"2272":1,"2273":1,"2277":1,"2278":1,"2282":3,"2284":2,"2289":1,"2291":2,"2292":1,"2293":1,"2296":6,"2297":2,"2302":1,"2307":1,"2318":2,"2320":1,"2321":2,"2322":1,"2323":4,"2325":1,"2328":1,"2330":2,"2332":1,"2333":2,"2334":3,"2335":1,"2337":1,"2338":2,"2340":1,"2342":2,"2347":1,"2348":1,"2352":1,"2353":1,"2354":1,"2357":2,"2359":2,"2362":2,"2363":1,"2364":1,"2366":2,"2367":1,"2372":2,"2376":1,"2379":1,"2380":5,"2382":1,"2383":2,"2384":1,"2385":1,"2394":1,"2398":2,"2399":2,"2403":1,"2407":2,"2410":2,"2413":2,"2415":2,"2419":1,"2422":1,"2427":1,"2428":1,"2430":1,"2431":2,"2432":1,"2433":1,"2438":2,"2444":2,"2445":1,"2450":1,"2454":4,"2455":1,"2459":1,"2465":1,"2466":2,"2474":1,"2476":2,"2481":1,"2482":4,"2483":1,"2484":1,"2486":3,"2491":2,"2492":1,"2493":1,"2495":3,"2496":2,"2502":6,"2505":3,"2509":2,"2511":1,"2512":3,"2523":1,"2527":1,"2528":4,"2529":5,"2530":2,"2531":1,"2532":1,"2533":4,"2534":4,"2535":3,"2537":8,"2538":1,"2539":2,"2540":4,"2543":1,"2545":2,"2546":1,"2549":4,"2555":7,"2558":1,"2572":2,"2575":3,"2581":1,"2586":1,"2587":1,"2588":2,"2589":1,"2590":2,"2591":2,"2595":1,"2597":1,"2607":4,"2615":2,"2621":2,"2632":1,"2633":2,"2634":4,"2635":3,"2656":1,"2674":1,"2678":1,"2680":1,"2684":1,"2692":2,"2695":1,"2710":1,"2711":1,"2712":1,"2714":1,"2722":1,"2723":1,"2724":1,"2726":1,"2729":1,"2731":1,"2741":1,"2744":1,"2745":1,"2754":1,"2760":1,"2763":2,"2769":2,"2774":1,"2802":2,"2803":1,"2810":2,"2812":5,"2813":1,"2820":1,"2822":1,"2824":1,"2833":1,"2836":1,"2840":4,"2841":1,"2842":1,"2845":3,"2849":1,"2852":1,"2854":1,"2855":1,"2856":1,"2857":1,"2861":1,"2864":2,"2865":2,"2867":1,"2868":1,"2869":6,"2870":1,"2871":4,"2872":1,"2873":1,"2875":1,"2878":2,"2879":1,"2880":1}}],["adoption",{"2":{"1382":1}}],["adopted",{"2":{"838":1}}],["advsimd",{"2":{"2270":1}}],["advertising",{"2":{"1825":1}}],["advertises",{"2":{"1824":1}}],["advertised",{"2":{"322":1,"351":1,"1043":1,"1792":2,"1828":1,"1829":1,"2434":1,"2459":1,"2461":1,"2489":1}}],["adverse",{"2":{"1180":1}}],["advantages",{"0":{"1246":1},"1":{"1247":1,"1248":1,"1249":1,"1250":1,"1251":1},"2":{"1378":2,"1386":1,"1392":1,"1396":1}}],["advantage",{"0":{"1015":1,"1365":1},"2":{"944":1}}],["advanced",{"0":{"895":1,"1028":1,"1109":1,"1326":1},"1":{"896":1,"897":1,"898":1,"899":1,"900":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1},"2":{"1114":1,"1376":1,"1386":1,"1405":1,"2160":1}}],["advance",{"2":{"878":1,"1381":1,"1409":1,"2400":1,"2533":1}}],["admit",{"2":{"1385":1}}],["admitted",{"2":{"857":1,"861":1}}],["admirably",{"2":{"863":1}}],["admission",{"2":{"851":1}}],["adminapi",{"2":{"1414":1}}],["administers",{"2":{"926":1}}],["admins",{"2":{"646":1,"1313":1,"1316":1,"2833":1}}],["admin",{"2":{"14":1,"18":2,"21":1,"22":1,"23":1,"34":1,"48":2,"49":3,"107":2,"305":1,"314":2,"351":3,"637":1,"642":4,"644":1,"646":2,"691":3,"695":1,"700":1,"705":2,"714":1,"724":3,"834":1,"835":1,"836":1,"837":1,"868":1,"869":1,"877":1,"967":1,"1051":2,"1057":8,"1061":3,"1065":1,"1066":1,"1068":1,"1073":2,"1078":1,"1088":1,"1098":1,"1100":1,"1113":1,"1179":1,"1189":4,"1193":4,"1195":1,"1196":1,"1220":1,"1313":2,"1316":2,"1373":1,"1414":4,"1458":10,"1502":1,"1504":1,"1595":1,"1646":1,"1792":11,"1909":1,"1911":1,"2006":1,"2035":1,"2036":2,"2042":2,"2059":2,"2067":1,"2098":1,"2111":4,"2167":1,"2179":1,"2181":4,"2187":9,"2199":3,"2200":3,"2207":1,"2214":1,"2314":2,"2319":1,"2375":10,"2410":1,"2413":1,"2432":1,"2434":2,"2532":5,"2534":3,"2540":1,"2635":2,"2728":1,"2774":1,"2775":4,"2797":1,"2831":2,"2833":1,"2871":2,"2872":4,"2873":5,"2876":3}}],["adjusttouniversal",{"2":{"2451":2,"2457":1}}],["adjusting",{"2":{"2088":1}}],["adjust",{"2":{"845":1,"1792":1,"2111":1,"2532":1,"2721":1,"2756":1}}],["adams",{"2":{"913":1}}],["adapters",{"2":{"1343":1}}],["adapts",{"2":{"1066":1}}],["adapt",{"2":{"860":1,"861":1,"1065":1,"1403":1}}],["ada",{"2":{"695":2,"700":1,"705":1,"1078":2,"2873":2}}],["addorupdate",{"2":{"2459":1,"2622":1}}],["addfixedwindowlimiter",{"2":{"1822":1}}],["addpolicy",{"2":{"1822":1}}],["addpasskeypath",{"2":{"1226":1,"1792":1,"1876":1}}],["addpasskeyoptionspath",{"2":{"1226":1,"1792":2,"1876":1}}],["addcurrentserver",{"2":{"1792":1,"1897":1,"1898":1,"1900":1,"1907":1,"2254":1}}],["addcookie",{"2":{"869":1}}],["addenvironmentvariables",{"2":{"1603":1,"1604":1,"1606":1,"1608":2,"1792":2,"2272":2,"2689":2}}],["addeventlistener",{"2":{"894":1,"961":1,"1366":1,"1410":1}}],["added",{"0":{"2582":1,"2627":1},"2":{"203":1,"286":1,"317":1,"347":1,"408":1,"469":1,"663":1,"854":1,"868":1,"869":1,"912":1,"1160":1,"1237":1,"1258":1,"1385":1,"1397":1,"1453":1,"1564":1,"1569":1,"1609":1,"1701":1,"1759":1,"1762":1,"1767":1,"1792":11,"1813":1,"1821":1,"1848":1,"1852":1,"1857":1,"1866":1,"1912":1,"1924":1,"1925":1,"1953":1,"2014":1,"2016":1,"2045":1,"2056":1,"2254":3,"2255":4,"2257":1,"2258":1,"2259":1,"2261":2,"2265":5,"2266":2,"2267":2,"2270":1,"2272":1,"2273":1,"2274":1,"2277":1,"2278":1,"2353":1,"2383":1,"2410":1,"2442":1,"2482":1,"2509":1,"2549":1,"2550":1,"2554":2,"2555":3,"2565":1,"2567":1,"2572":1,"2576":1,"2580":1,"2581":1,"2585":1,"2588":1,"2594":1,"2600":1,"2608":1,"2614":2,"2615":2,"2625":1,"2626":1,"2627":1,"2628":1,"2629":1,"2632":2,"2633":1,"2634":1,"2635":1,"2642":1,"2649":1,"2650":1,"2654":1,"2659":1,"2666":2,"2667":1,"2678":1,"2679":1,"2779":1,"2835":1}}],["addhealthchecks",{"2":{"869":1}}],["addratelimiter",{"2":{"869":1,"1792":1,"1822":1}}],["addressing",{"0":{"994":1}}],["addresses",{"2":{"918":1,"1107":1,"1225":1,"1328":1,"1703":1,"1707":2,"1792":3,"1875":1,"2346":1,"2372":1,"2633":1}}],["addressed",{"2":{"869":1}}],["address",{"0":{"735":1},"2":{"332":7,"436":1,"669":1,"735":2,"738":2,"799":3,"802":2,"819":1,"1239":1,"1241":1,"1469":2,"1475":3,"1477":3,"1483":2,"1539":2,"1540":2,"1543":2,"1544":2,"1546":1,"1547":3,"1548":2,"1569":1,"1687":1,"1701":1,"1759":1,"1792":15,"1890":1,"1912":1,"1923":1,"1924":1,"1973":6,"2010":7,"2142":1,"2146":1,"2184":1,"2217":1,"2346":1,"2509":1,"2520":1,"2549":1,"2575":1,"2587":8,"2590":1,"2633":1,"2869":1}}],["addauthentication",{"2":{"869":1,"2422":1}}],["additively",{"2":{"2430":1}}],["additive",{"0":{"2461":1},"2":{"1150":1,"1924":1,"2509":1,"2545":1}}],["additions",{"2":{"868":1,"872":2}}],["addition",{"2":{"868":1,"1017":1,"1385":1,"1398":1,"2317":1}}],["additional",{"0":{"739":1,"1458":1,"1971":1,"1994":1,"2375":1,"2622":1},"1":{"1459":1,"1460":1},"2":{"816":1,"914":1,"919":1,"948":1,"1027":2,"1068":1,"1086":1,"1098":2,"1105":1,"1108":3,"1111":1,"1127":1,"1158":1,"1161":1,"1165":1,"1169":1,"1181":1,"1190":1,"1192":1,"1220":1,"1279":1,"1322":2,"1325":1,"1385":1,"1393":1,"1401":1,"1458":2,"1460":2,"1511":1,"1542":1,"1546":1,"1630":1,"1659":1,"1660":1,"1792":8,"1870":1,"1898":1,"1971":1,"1974":1,"2227":1,"2254":1,"2256":1,"2265":1,"2375":3,"2534":1,"2607":1,"2648":1,"2684":1,"2722":1,"2779":1,"2829":1}}],["additionally",{"2":{"453":1,"2463":1,"2532":1,"2535":1,"2880":1}}],["adding",{"0":{"2143":1},"1":{"2144":1,"2145":1},"2":{"62":1,"336":1,"868":1,"869":1,"871":3,"878":1,"879":1,"1013":1,"1164":1,"1193":1,"1218":1,"1226":2,"1237":1,"1302":2,"1304":1,"1351":1,"1792":6,"1876":2,"2369":1,"2806":1,"2824":1}}],["add",{"0":{"957":1,"1221":1,"1358":1,"1726":1,"1871":1},"2":{"236":1,"297":1,"439":1,"689":1,"826":1,"845":1,"852":1,"855":1,"864":2,"871":1,"873":1,"915":1,"946":1,"971":1,"1012":1,"1049":1,"1063":2,"1065":2,"1073":2,"1086":1,"1098":1,"1106":2,"1111":1,"1125":2,"1139":1,"1191":1,"1192":1,"1193":4,"1203":1,"1206":1,"1220":2,"1221":8,"1226":2,"1232":3,"1235":1,"1237":1,"1252":1,"1253":1,"1254":1,"1366":2,"1367":2,"1377":1,"1393":1,"1402":1,"1405":1,"1415":2,"1437":1,"1440":1,"1557":2,"1582":1,"1711":1,"1719":1,"1726":1,"1755":2,"1792":18,"1825":1,"1870":2,"1871":3,"1876":2,"1882":1,"1893":2,"1900":1,"1953":1,"1980":1,"1994":1,"2143":1,"2156":1,"2247":1,"2254":1,"2264":1,"2338":1,"2389":1,"2392":1,"2420":1,"2423":2,"2542":1,"2543":1,"2642":1,"2721":1,"2733":1,"2734":1,"2765":1,"2781":1,"2806":1,"2821":1,"2823":1,"2824":1,"2829":1,"2835":1,"2847":1}}],["addserverheader",{"2":{"1792":1,"1994":2}}],["adds",{"2":{"213":1,"453":1,"869":1,"1032":1,"1037":1,"1135":1,"1174":1,"1193":3,"1241":1,"1254":1,"1270":1,"1350":1,"1493":1,"1739":1,"1792":8,"1890":1,"2014":1,"2110":1,"2287":1,"2309":1,"2430":1,"2479":1,"2523":1,"2529":1,"2530":1,"2632":2,"2795":1}}],["auckland",{"2":{"2453":1}}],["aud",{"2":{"1454":1,"1792":2,"1830":1,"2481":1}}],["audience",{"0":{"1830":1},"2":{"836":1,"837":1,"1454":2,"1792":4,"1814":1,"1825":3,"1830":2,"1911":1,"2223":1,"2434":1,"2438":2,"2481":3,"2498":1,"2554":2,"2833":1}}],["audittimestamp",{"2":{"1193":1}}],["auditedby",{"2":{"1193":1}}],["audited",{"2":{"1191":1,"1193":1}}],["audits",{"2":{"943":1,"1181":1}}],["auditable",{"0":{"943":1}}],["audit",{"2":{"41":1,"292":1,"902":1,"905":1,"945":2,"948":1,"1056":1,"1064":1,"1183":1,"1184":1,"1185":1,"1188":1,"1191":3,"1204":2,"1207":1,"1239":1,"1244":1,"1253":1,"1351":1,"1382":1,"1437":1,"1792":1,"2438":1,"2486":1,"2492":1}}],["augment",{"2":{"1035":1}}],["austen",{"2":{"913":2,"916":3,"917":2,"918":3}}],["autocompletion",{"2":{"2754":1}}],["autocomplete",{"2":{"2670":1}}],["autocommit",{"2":{"2110":1,"2528":1,"2530":1,"2863":1}}],["autoreplenishment",{"2":{"1792":5,"1951":2,"1952":2,"1953":2,"1959":1,"1960":4,"2257":3,"2443":3,"2471":1}}],["autonomously",{"2":{"1038":1}}],["autogenerated",{"2":{"872":2,"995":1,"1408":1,"1416":1,"1417":1,"1553":1,"1565":1,"1570":1,"1574":1,"1581":1,"1792":2,"2164":1}}],["automated",{"2":{"845":3,"1009":1,"1393":2,"1405":2,"2465":2,"2627":1}}],["automatic",{"0":{"1002":1,"1040":1,"1052":1,"1759":1,"1912":1,"1923":1,"2520":1},"1":{"1041":1,"1924":1,"1925":1,"1926":1},"2":{"213":1,"317":1,"384":1,"436":2,"777":1,"868":2,"901":1,"908":1,"909":1,"918":1,"968":1,"972":1,"973":1,"1009":1,"1032":1,"1037":3,"1096":1,"1101":1,"1180":1,"1354":1,"1365":1,"1405":3,"1431":1,"1489":1,"1540":1,"1544":1,"1569":3,"1622":1,"1623":2,"1739":1,"1753":1,"1759":2,"1792":6,"1898":1,"1912":2,"1917":1,"1923":1,"1924":3,"1925":1,"2164":2,"2165":1,"2222":1,"2266":1,"2270":1,"2287":1,"2350":1,"2481":1,"2508":1,"2509":1,"2510":1,"2511":1,"2520":2,"2585":1,"2586":1,"2588":1,"2673":1,"2689":1,"2729":1,"2772":1,"2812":1}}],["automatically",{"2":{"168":1,"202":1,"335":1,"337":1,"364":1,"376":1,"380":1,"383":1,"454":1,"575":1,"624":1,"747":1,"801":1,"835":2,"837":1,"868":1,"894":1,"904":2,"914":1,"920":1,"936":2,"937":1,"938":1,"975":2,"988":1,"995":1,"1008":1,"1010":1,"1016":2,"1024":1,"1027":1,"1049":1,"1052":2,"1055":2,"1063":1,"1067":1,"1094":1,"1096":1,"1097":2,"1098":1,"1105":1,"1129":1,"1148":1,"1173":1,"1188":1,"1190":1,"1192":1,"1203":2,"1241":1,"1304":1,"1308":1,"1309":1,"1323":1,"1354":1,"1365":1,"1366":2,"1370":1,"1382":1,"1385":1,"1386":1,"1398":1,"1410":1,"1416":1,"1423":1,"1435":1,"1460":1,"1475":2,"1477":2,"1493":1,"1516":1,"1518":1,"1613":1,"1627":1,"1703":1,"1712":1,"1723":1,"1732":1,"1733":1,"1742":1,"1792":12,"1802":1,"1813":1,"1890":1,"1951":1,"1952":1,"1953":1,"1982":1,"2004":1,"2156":1,"2253":1,"2255":1,"2264":3,"2265":3,"2290":1,"2291":1,"2297":1,"2317":1,"2333":1,"2342":1,"2375":1,"2391":1,"2527":1,"2535":1,"2537":1,"2586":1,"2632":1,"2649":1,"2664":1,"2687":1,"2709":1,"2763":1,"2772":2,"2774":1,"2786":1,"2812":1,"2821":1,"2823":1,"2861":1,"2862":1,"2879":1,"2880":1,"2881":1}}],["auto",{"0":{"1317":1,"2389":1,"2395":1,"2517":1},"2":{"165":1,"168":1,"175":3,"179":2,"376":1,"383":1,"409":1,"436":1,"529":1,"535":1,"565":1,"684":2,"867":2,"868":1,"876":1,"878":1,"880":1,"894":1,"938":1,"961":1,"968":1,"976":1,"1024":1,"1027":2,"1049":1,"1096":3,"1121":1,"1125":1,"1126":1,"1225":2,"1304":1,"1317":2,"1322":1,"1323":1,"1342":2,"1350":1,"1366":1,"1372":1,"1381":1,"1385":1,"1403":1,"1405":1,"1470":1,"1569":1,"1684":1,"1792":4,"1875":1,"1923":1,"1924":1,"1925":1,"2226":1,"2265":1,"2284":1,"2319":2,"2322":1,"2340":1,"2346":1,"2348":1,"2351":1,"2372":1,"2388":1,"2389":2,"2395":3,"2407":1,"2509":1,"2510":1,"2515":1,"2546":1,"2648":1,"2814":1,"2841":1,"2851":1}}],["authintervalnotationtests",{"2":{"2435":1}}],["authlegacyfieldfailfasttests",{"2":{"2435":1}}],["authschemelogintests",{"2":{"2435":1}}],["authschemeregistrationtests",{"2":{"2435":1}}],["authcookiesamesitesecuretests",{"2":{"2435":1}}],["authpolicyschemetests",{"2":{"2435":1}}],["authtests",{"2":{"2435":2,"2472":1}}],["authtoken",{"2":{"1063":2}}],["authurl",{"2":{"1690":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1792":5}}],["authentic",{"2":{"1404":1}}],["authenticators",{"2":{"1227":1,"1792":2,"1877":1}}],["authenticatordata",{"2":{"1222":1,"1792":1}}],["authenticator",{"2":{"1217":1,"1225":1,"1229":1,"1230":2,"1232":2,"1792":9,"1875":1,"1880":2,"1882":2}}],["authenticating",{"2":{"453":1,"1050":1,"1222":1,"1872":1}}],["authenticationtype",{"2":{"2423":1}}],["authenticationschemes",{"2":{"2424":1,"2437":1,"2438":1}}],["authenticationscheme",{"2":{"1447":1,"1451":1,"1454":1}}],["authenticationoptionspath",{"2":{"1792":1}}],["authenticationoptions",{"2":{"33":1,"300":1,"305":2,"309":2,"310":1,"937":1,"1052":1,"1056":1,"1058":1,"1062":1,"1196":1,"1197":1,"1199":1,"1469":1,"1482":1,"1483":1,"1498":1,"1502":1,"1503":1,"1505":1,"1539":1,"1548":1,"1792":2,"1836":2,"2181":1,"2183":1,"2184":1,"2187":1,"2701":1}}],["authentication",{"0":{"34":1,"35":1,"225":1,"905":1,"921":1,"931":1,"1048":1,"1053":1,"1098":1,"1194":1,"1197":1,"1216":1,"1219":1,"1348":1,"1371":1,"1444":1,"1446":1,"1450":1,"1453":1,"1458":1,"1462":1,"1463":1,"1464":1,"1468":1,"1482":1,"1503":1,"1682":1,"1825":1,"1866":1,"1869":1,"1902":1,"1903":1,"1904":1,"2058":1,"2170":1,"2172":1,"2199":1,"2375":1,"2554":1,"2735":1,"2736":1,"2737":1},"1":{"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":2,"933":2,"934":2,"935":2,"936":2,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":2,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1,"1195":1,"1196":1,"1197":1,"1220":1,"1221":1,"1222":1,"1445":1,"1446":1,"1447":2,"1448":2,"1449":2,"1450":1,"1451":2,"1452":2,"1453":1,"1454":2,"1455":2,"1456":2,"1457":2,"1458":1,"1459":2,"1460":2,"1461":1,"1462":1,"1463":1,"1464":1,"1465":1,"1466":1,"1467":1,"1469":1,"1470":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1,"1478":1,"1479":1,"1480":1,"1481":1,"1482":1,"1483":1,"1484":1,"1485":1,"1486":1,"1504":1,"1683":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1690":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1698":1,"1699":1,"1700":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"1867":1,"1868":1,"1869":1,"1870":2,"1871":2,"1872":2,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1889":1,"1890":1,"1891":1,"1892":1,"1893":1,"1894":1,"1895":1,"2171":1,"2172":1,"2173":2,"2174":2,"2175":2,"2176":1,"2177":1,"2178":1,"2179":1,"2180":1,"2181":1,"2182":1,"2183":1,"2184":1,"2185":1,"2186":1,"2187":1,"2188":1,"2189":1,"2736":1,"2737":1},"2":{"10":1,"11":3,"12":1,"13":1,"25":1,"26":5,"27":1,"28":4,"29":2,"33":2,"34":1,"41":3,"42":1,"43":2,"44":2,"45":1,"48":1,"51":2,"53":1,"54":2,"55":2,"56":1,"63":2,"64":1,"65":2,"66":2,"67":1,"209":1,"224":1,"225":2,"260":1,"285":1,"286":2,"288":1,"289":1,"293":4,"294":1,"295":4,"296":1,"300":1,"302":1,"303":1,"306":1,"310":1,"315":3,"364":1,"367":1,"368":2,"456":1,"482":1,"597":1,"691":1,"710":1,"741":1,"801":1,"805":1,"821":1,"832":1,"868":1,"879":1,"880":1,"907":1,"909":1,"921":2,"934":4,"935":2,"936":1,"937":2,"938":1,"957":1,"1026":1,"1037":4,"1048":5,"1053":2,"1054":5,"1055":1,"1060":2,"1061":1,"1063":2,"1064":4,"1065":2,"1068":1,"1086":2,"1088":1,"1094":1,"1098":11,"1102":1,"1105":1,"1113":2,"1118":1,"1127":2,"1148":1,"1185":1,"1189":1,"1192":1,"1197":2,"1198":1,"1209":4,"1211":1,"1213":2,"1216":3,"1217":3,"1221":1,"1222":2,"1224":1,"1226":1,"1234":2,"1235":1,"1239":5,"1244":1,"1247":1,"1248":1,"1249":1,"1252":1,"1303":1,"1304":1,"1320":2,"1377":1,"1403":1,"1444":1,"1445":10,"1446":2,"1447":3,"1450":2,"1451":2,"1453":4,"1454":2,"1455":1,"1458":2,"1464":1,"1465":4,"1466":3,"1467":1,"1468":1,"1470":1,"1471":1,"1473":1,"1480":2,"1482":1,"1484":2,"1485":3,"1486":1,"1496":2,"1497":1,"1499":3,"1503":1,"1505":1,"1506":4,"1507":3,"1518":1,"1547":1,"1549":4,"1550":4,"1635":2,"1648":2,"1649":1,"1651":1,"1653":1,"1666":2,"1682":1,"1686":1,"1699":4,"1700":3,"1788":7,"1792":62,"1795":4,"1825":5,"1836":1,"1866":2,"1867":1,"1868":1,"1871":1,"1874":1,"1876":1,"1885":1,"1888":1,"1893":1,"1894":3,"1895":2,"1898":1,"1901":3,"1902":1,"1903":1,"1904":1,"1907":2,"1933":2,"1977":2,"1997":2,"2031":2,"2034":1,"2035":1,"2044":2,"2047":1,"2070":2,"2151":2,"2164":3,"2165":1,"2170":4,"2171":1,"2172":1,"2175":2,"2181":1,"2189":4,"2194":1,"2219":2,"2227":1,"2238":1,"2254":3,"2265":1,"2291":1,"2353":1,"2363":1,"2375":1,"2386":1,"2421":1,"2437":1,"2438":1,"2481":3,"2492":1,"2527":1,"2554":5,"2559":1,"2567":1,"2625":3,"2628":1,"2634":1,"2635":1,"2706":2,"2736":1,"2836":1,"2838":1,"2856":1,"2862":1}}],["authenticatepath",{"2":{"1792":3}}],["authenticatetoken",{"2":{"1026":2}}],["authenticates",{"2":{"453":1,"1222":1,"1792":2,"2423":1}}],["authenticate",{"0":{"2420":1},"1":{"2421":1,"2422":1,"2423":1,"2424":1},"2":{"45":1,"48":1,"51":1,"63":1,"593":2,"1045":1,"1059":1,"1098":1,"1216":1,"1217":2,"1222":2,"1236":1,"1239":1,"1244":1,"1792":7,"1825":1,"1827":1,"1832":1,"1833":1,"1893":2,"2225":1,"2419":1,"2420":1,"2421":1,"2423":1,"2481":1,"2625":1,"2634":1}}],["authenticatedatacommand",{"0":{"1236":1,"1886":1},"2":{"1217":1,"1239":1,"1792":2,"1888":1,"1893":1}}],["authenticated",{"0":{"16":1,"453":1,"2733":1},"2":{"9":1,"41":1,"43":1,"63":1,"66":1,"165":1,"168":2,"320":1,"376":2,"380":1,"453":1,"454":1,"478":3,"479":1,"529":1,"664":1,"690":1,"737":1,"801":1,"905":1,"936":1,"1057":1,"1069":1,"1074":2,"1094":1,"1098":1,"1101":1,"1105":2,"1138":1,"1140":1,"1162":2,"1163":1,"1185":1,"1188":1,"1189":1,"1208":1,"1232":1,"1309":2,"1312":1,"1348":1,"1371":1,"1372":1,"1475":3,"1477":3,"1538":1,"1540":1,"1544":1,"1547":1,"1620":1,"1792":18,"1824":1,"1825":3,"1827":1,"1830":1,"1871":1,"1882":2,"1911":2,"1928":1,"1955":1,"2037":1,"2047":1,"2058":1,"2125":1,"2183":1,"2199":1,"2284":1,"2333":1,"2379":2,"2394":1,"2430":1,"2434":2,"2436":1,"2481":1,"2490":1,"2498":2,"2526":1,"2529":1,"2549":1,"2572":1,"2634":1,"2635":1,"2733":1,"2739":1,"2812":1,"2817":1,"2829":1,"2831":1,"2860":1}}],["auth0",{"2":{"1045":1,"1825":1}}],["auth",{"0":{"29":1,"44":1,"55":1,"60":1,"61":1,"1064":1,"1066":1,"1183":1,"1373":1,"1497":1,"2363":1,"2375":1,"2376":1,"2377":1,"2410":1,"2427":1},"1":{"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"1065":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"2411":1,"2412":1,"2413":1},"2":{"11":1,"26":1,"30":1,"37":5,"38":9,"39":4,"40":7,"43":2,"45":1,"48":2,"49":2,"50":1,"53":1,"54":2,"56":2,"58":2,"60":4,"61":7,"62":9,"65":2,"66":2,"67":1,"209":8,"225":3,"279":1,"289":1,"290":1,"291":3,"293":1,"296":1,"298":3,"302":1,"305":1,"310":1,"313":1,"365":1,"366":1,"368":1,"709":2,"710":3,"724":1,"803":1,"834":1,"835":2,"836":1,"837":1,"867":1,"869":1,"872":1,"883":1,"910":1,"921":1,"937":5,"1026":1,"1037":4,"1050":1,"1053":2,"1054":3,"1059":1,"1062":1,"1063":1,"1066":1,"1067":1,"1068":3,"1071":1,"1081":1,"1083":1,"1086":1,"1098":9,"1114":1,"1121":2,"1125":1,"1126":1,"1127":3,"1183":2,"1184":3,"1185":2,"1188":1,"1189":2,"1195":1,"1196":2,"1197":5,"1199":3,"1202":1,"1207":2,"1208":1,"1217":2,"1221":1,"1226":6,"1239":1,"1247":1,"1304":1,"1320":2,"1322":1,"1323":1,"1327":1,"1368":1,"1371":2,"1373":3,"1385":1,"1386":1,"1407":1,"1445":1,"1446":1,"1449":2,"1450":1,"1453":1,"1457":1,"1458":2,"1459":1,"1462":1,"1463":1,"1464":10,"1470":2,"1482":1,"1483":2,"1484":1,"1485":1,"1486":2,"1500":1,"1501":3,"1503":1,"1504":3,"1505":1,"1506":3,"1508":4,"1549":1,"1550":1,"1605":2,"1683":1,"1684":4,"1685":1,"1690":1,"1691":1,"1697":3,"1698":1,"1788":1,"1792":30,"1802":1,"1825":3,"1867":1,"1871":1,"1876":2,"1889":1,"1890":1,"1892":1,"1893":1,"1906":1,"2097":1,"2164":5,"2165":5,"2167":1,"2171":2,"2172":1,"2173":2,"2174":1,"2175":3,"2183":1,"2184":1,"2187":2,"2188":2,"2225":4,"2227":1,"2254":4,"2353":2,"2363":1,"2375":3,"2376":9,"2377":2,"2389":1,"2394":1,"2409":1,"2410":4,"2412":1,"2419":3,"2420":1,"2421":1,"2422":2,"2423":1,"2425":1,"2426":1,"2427":3,"2428":1,"2429":2,"2435":3,"2436":4,"2438":3,"2440":1,"2481":2,"2486":1,"2496":2,"2497":2,"2545":1,"2551":1,"2554":1,"2558":1,"2591":1,"2615":1,"2679":1,"2687":1,"2688":2,"2690":2,"2701":1,"2728":1,"2736":2,"2737":2,"2739":1,"2795":1,"2806":1,"2809":1,"2812":1,"2836":1}}],["authorname",{"2":{"2586":2,"2590":1}}],["authored",{"2":{"1382":1,"1400":1,"2496":1}}],["authorauthorid",{"2":{"915":3,"920":2}}],["authorlastname",{"2":{"915":3,"920":2,"1097":1}}],["authorfirstname",{"2":{"915":4,"920":2,"1097":1}}],["authors",{"2":{"847":1,"913":5,"914":5,"915":6,"916":20,"917":3,"918":12,"919":1,"1375":2,"2586":1}}],["authorship",{"2":{"1":1}}],["authority",{"2":{"852":3}}],["authoritative",{"2":{"318":1,"319":1,"326":1,"843":1,"844":2,"852":1,"978":1,"1040":1,"2324":1,"2481":1}}],["authorid=1",{"2":{"914":2}}],["authorid",{"2":{"370":2,"914":1,"915":1,"916":6,"917":4,"918":6,"919":2,"920":13,"1375":2,"2586":4,"2590":2}}],["authorizationservers",{"0":{"1828":1},"2":{"1792":2,"1814":1,"1825":1,"2481":1}}],["authorization",{"0":{"58":1,"224":1,"478":1,"815":1,"1045":1,"1826":1,"1843":1,"2035":1,"2198":1},"1":{"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"2036":1,"2199":1,"2200":1,"2201":1},"2":{"13":1,"17":1,"31":2,"38":1,"40":1,"58":2,"61":1,"62":2,"63":2,"66":1,"207":1,"208":1,"209":1,"211":1,"212":2,"215":2,"390":1,"394":1,"531":1,"533":1,"641":1,"648":1,"663":1,"669":1,"690":1,"807":1,"868":1,"905":1,"1017":2,"1030":1,"1033":2,"1037":1,"1045":2,"1047":1,"1057":1,"1063":4,"1064":1,"1074":1,"1086":1,"1094":2,"1098":2,"1105":1,"1115":1,"1221":1,"1385":1,"1482":1,"1497":1,"1518":1,"1639":1,"1643":1,"1644":1,"1646":1,"1692":1,"1696":1,"1726":1,"1730":1,"1731":1,"1733":2,"1738":3,"1742":1,"1792":13,"1814":1,"1825":7,"1826":1,"1827":1,"1828":1,"1832":1,"1833":3,"1843":1,"1898":1,"1910":1,"1931":1,"2032":1,"2034":1,"2137":1,"2166":1,"2167":1,"2174":1,"2188":1,"2198":1,"2223":1,"2254":1,"2264":3,"2265":1,"2267":2,"2271":1,"2282":1,"2283":2,"2286":1,"2290":1,"2314":1,"2329":1,"2363":1,"2366":1,"2481":10,"2483":1,"2486":1,"2490":1,"2498":3,"2527":1,"2529":1,"2545":1,"2575":1,"2638":1,"2672":1,"2699":1,"2768":3,"2774":1,"2775":1,"2823":1,"2824":2,"2860":1}}],["authorizepaths",{"2":{"1792":1,"2033":1,"2034":1,"2035":1,"2042":1,"2371":1}}],["authorizedroles",{"2":{"967":2,"1792":1,"2046":1,"2047":1,"2059":1,"2067":1,"2068":1,"2635":1}}],["authorized",{"2":{"13":1,"17":1,"638":1,"641":1,"689":1,"1305":1,"1309":1,"2828":1,"2829":1,"2836":1}}],["authorize",{"0":{"13":1,"19":1,"20":1,"23":1,"24":1,"642":1,"643":1,"1312":1,"1313":1,"2314":1},"1":{"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1},"2":{"9":1,"12":1,"14":3,"16":2,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"66":1,"137":1,"168":2,"224":1,"260":1,"288":2,"289":1,"290":1,"291":1,"292":1,"294":1,"305":3,"314":2,"316":1,"320":1,"327":1,"347":1,"351":2,"352":2,"353":1,"354":1,"356":1,"376":1,"380":1,"453":1,"454":1,"456":1,"478":1,"479":1,"482":1,"543":1,"544":1,"592":2,"594":1,"597":1,"637":2,"638":1,"642":1,"643":1,"644":1,"646":2,"648":1,"650":1,"664":6,"665":5,"666":1,"690":2,"692":1,"732":1,"733":2,"734":1,"735":1,"736":1,"741":1,"792":1,"797":2,"799":1,"800":1,"805":1,"815":1,"821":1,"835":1,"868":1,"873":1,"904":1,"935":1,"936":1,"957":2,"1021":1,"1045":2,"1057":6,"1065":1,"1068":1,"1069":1,"1073":2,"1077":1,"1098":1,"1103":1,"1113":1,"1125":1,"1138":1,"1150":1,"1163":2,"1179":3,"1305":1,"1309":4,"1310":1,"1312":1,"1313":2,"1316":1,"1321":2,"1332":1,"1338":1,"1339":1,"1348":1,"1366":1,"1371":3,"1372":2,"1374":1,"1376":1,"1401":1,"1406":1,"1413":1,"1465":1,"1467":1,"1486":1,"1547":2,"1567":2,"1693":1,"1694":1,"1697":1,"1699":1,"1792":3,"1824":1,"1825":1,"1827":1,"1832":1,"1834":1,"1924":1,"1926":1,"1961":1,"2006":1,"2012":1,"2171":1,"2181":3,"2183":1,"2184":1,"2185":1,"2186":1,"2187":3,"2189":1,"2193":3,"2194":2,"2199":3,"2200":3,"2207":1,"2214":1,"2216":1,"2223":1,"2229":1,"2247":1,"2250":1,"2252":4,"2314":9,"2319":1,"2322":1,"2323":1,"2329":1,"2333":1,"2366":1,"2391":1,"2420":1,"2423":2,"2424":1,"2432":2,"2437":2,"2438":2,"2481":3,"2490":4,"2498":1,"2529":1,"2540":1,"2549":2,"2581":4,"2728":3,"2733":1,"2766":1,"2767":1,"2768":1,"2774":1,"2775":1,"2795":1,"2797":1,"2810":1,"2812":1,"2815":1,"2829":5,"2831":4,"2833":3,"2834":10,"2836":4,"2838":1,"2845":1,"2856":1}}],["author",{"0":{"2":1},"2":{"335":2,"370":2,"913":5,"914":20,"915":18,"916":25,"917":4,"918":19,"919":2,"920":6,"1096":2,"1375":6,"1383":1,"1421":1,"1442":1,"2540":1,"2586":5,"2845":1}}],["acquire",{"2":{"1624":1}}],["acquires",{"2":{"1324":1}}],["acquisition",{"0":{"1596":1},"2":{"1792":1}}],["ac",{"2":{"1338":5}}],["achieved",{"2":{"1386":1}}],["achieves",{"2":{"1007":1,"1262":1,"1263":1,"1269":1,"1278":1}}],["achieve",{"2":{"918":1,"1037":1,"1385":1,"1391":2}}],["acronym",{"2":{"864":1}}],["across",{"0":{"1414":1},"2":{"156":1,"214":1,"384":1,"544":1,"615":1,"663":1,"761":1,"771":1,"848":1,"860":1,"861":1,"868":1,"869":1,"871":2,"872":4,"873":2,"874":1,"876":1,"915":1,"948":1,"956":1,"974":1,"1013":1,"1036":1,"1054":2,"1067":1,"1069":1,"1146":1,"1147":1,"1162":1,"1172":1,"1175":1,"1178":1,"1180":1,"1181":2,"1187":1,"1190":1,"1193":1,"1209":1,"1254":1,"1266":1,"1302":1,"1324":1,"1382":1,"1398":1,"1409":1,"1414":1,"1416":1,"1440":1,"1449":1,"1460":2,"1515":2,"1567":1,"1574":1,"1581":1,"1654":1,"1743":1,"1746":1,"1792":7,"1823":1,"1867":1,"2221":1,"2228":1,"2274":3,"2314":1,"2321":2,"2339":1,"2347":1,"2375":2,"2380":1,"2400":1,"2419":1,"2429":1,"2435":1,"2453":1,"2456":1,"2466":1,"2495":1,"2498":4,"2502":1,"2534":1,"2540":1,"2546":1,"2607":1,"2614":1,"2695":1,"2710":1,"2731":1,"2845":1}}],["acid",{"2":{"851":1,"852":1}}],["acknowledged",{"2":{"1824":1}}],["acknowledge",{"2":{"845":1,"847":1,"876":1}}],["acme",{"2":{"333":4,"1038":1,"1044":1,"1189":1,"1192":1,"1792":1,"1823":3,"1911":2,"2166":1,"2434":2,"2479":1}}],["acts",{"2":{"1045":1,"1825":1,"2297":1}}],["act",{"2":{"691":1,"864":1,"865":1,"1074":1,"1076":1,"1385":1,"1393":1,"2419":1,"2528":1,"2529":1,"2860":1,"2864":1,"2865":1}}],["actix",{"2":{"1090":1,"1255":1}}],["activated",{"2":{"1792":2,"2075":1,"2077":1}}],["activate",{"2":{"1792":2,"2380":1}}],["activities",{"2":{"848":1}}],["activityquery",{"2":{"2638":1}}],["activitypath",{"2":{"1792":1,"2046":1,"2047":1,"2064":1,"2635":1}}],["activity",{"0":{"2052":2},"2":{"320":1,"351":1,"868":1,"869":1,"966":2,"1100":1,"1619":1,"1620":1,"1792":4,"2045":1,"2046":1,"2047":2,"2052":2,"2635":7}}],["activereviews",{"2":{"916":2,"917":2,"920":1}}],["active=true",{"2":{"520":1,"1368":1,"2012":1}}],["active",{"0":{"2362":1},"2":{"297":1,"303":1,"373":2,"378":1,"467":1,"520":5,"584":2,"868":1,"916":1,"966":1,"977":2,"979":2,"980":2,"982":1,"986":1,"988":2,"989":1,"990":3,"994":1,"995":2,"996":3,"1101":1,"1138":2,"1179":1,"1368":8,"1369":2,"1386":10,"1387":3,"1390":1,"1391":2,"1393":2,"1396":1,"1408":3,"1792":2,"2012":2,"2052":1,"2059":1,"2194":1,"2333":1,"2342":4,"2362":1,"2635":3,"2732":1,"2842":2,"2847":1,"2848":1}}],["acting",{"2":{"239":1,"689":1,"851":3,"1005":1,"1825":1,"2529":1,"2865":1}}],["action=",{"2":{"1491":1}}],["actions",{"2":{"865":1,"938":1,"1061":1,"1181":1,"2102":1,"2576":1,"2880":1}}],["action",{"0":{"1409":1},"2":{"21":1,"292":1,"326":1,"348":1,"355":1,"523":3,"1413":1,"1523":1,"1572":1,"1774":1,"2495":1,"2834":2}}],["actualname",{"2":{"1523":1,"2372":1,"2522":1}}],["actually",{"0":{"2420":1},"1":{"2421":1,"2422":1,"2423":1,"2424":1},"2":{"388":1,"636":1,"650":1,"664":1,"860":2,"864":4,"865":1,"866":1,"868":1,"869":1,"872":2,"873":1,"874":1,"932":1,"982":1,"994":1,"1009":1,"1037":2,"1064":1,"1077":1,"1081":1,"1141":1,"1185":1,"1210":1,"1324":1,"1358":1,"1384":1,"1385":1,"1401":1,"1403":1,"1405":1,"1410":1,"1421":1,"1435":1,"1443":1,"1522":1,"1566":1,"1922":1,"2224":1,"2225":1,"2389":1,"2392":1,"2395":1,"2419":1,"2421":1,"2459":1,"2466":1,"2537":1,"2763":1,"2869":1}}],["actual",{"2":{"74":1,"156":1,"388":1,"429":1,"436":1,"528":2,"587":1,"772":2,"845":2,"848":1,"857":1,"860":1,"872":1,"874":1,"884":1,"893":1,"930":1,"1005":1,"1044":1,"1096":1,"1169":1,"1393":1,"1403":1,"1575":1,"1671":1,"1792":1,"1802":1,"2222":1,"2255":1,"2264":1,"2283":1,"2310":1,"2313":1,"2356":1,"2412":1,"2506":1,"2518":1,"2519":1,"2641":1,"2795":1,"2840":1}}],["accidental",{"2":{"2040":1,"2476":1,"2841":1}}],["accidentally",{"2":{"1408":1}}],["accident",{"2":{"1040":1,"2454":1}}],["accross",{"2":{"914":1}}],["accordingly",{"2":{"917":1,"918":1,"919":1,"2252":1}}],["according",{"2":{"801":1,"841":1,"918":1}}],["accounting",{"2":{"2666":1}}],["accountability",{"2":{"1185":1}}],["accounts",{"2":{"20":1,"622":4,"1218":1,"1220":3,"1253":1,"1691":1,"1792":2,"1870":3}}],["account",{"2":{"20":2,"107":1,"310":1,"320":3,"622":4,"1056":1,"1064":1,"1220":2,"1221":1,"1229":1,"1232":1,"1233":1,"1249":1,"1662":1,"1792":4,"1870":2,"1871":1,"1879":1,"2314":1,"2422":1}}],["accumulation",{"2":{"880":1,"882":1,"885":1}}],["accumulating",{"2":{"761":1,"771":1}}],["accumulated",{"2":{"919":1}}],["accumulate",{"2":{"709":1,"860":1,"1007":1,"2533":1}}],["accurately",{"2":{"1401":1,"2558":1}}],["accurate",{"2":{"3":1,"1254":1,"1386":1,"1401":1}}],["accuracy",{"2":{"1":1}}],["accelerated",{"0":{"2270":1},"2":{"2239":1,"2270":2}}],["accelerates",{"2":{"2159":1}}],["accel",{"2":{"1859":2,"2835":2}}],["accepting",{"2":{"2648":1}}],["acceptance",{"2":{"2447":1}}],["acceptable",{"2":{"1160":1,"1628":1,"1792":1,"2266":1,"2496":1}}],["accepted",{"2":{"690":1,"701":1,"1707":1,"1708":1,"1709":1,"1792":3,"2419":1,"2427":1,"2544":1,"2633":1}}],["accept",{"0":{"2496":1},"2":{"160":1,"207":1,"267":1,"386":1,"393":1,"394":1,"747":2,"780":1,"865":1,"886":1,"888":1,"904":1,"1017":2,"1019":2,"1026":2,"1032":1,"1063":1,"1138":1,"1174":2,"1230":1,"1398":1,"1403":1,"1426":1,"1430":1,"1431":1,"1464":1,"1628":2,"1703":1,"1717":1,"1730":1,"1736":1,"1767":1,"1792":5,"1880":1,"1940":1,"1941":1,"2183":1,"2210":1,"2221":1,"2223":1,"2266":2,"2376":1,"2423":2,"2437":1,"2438":1,"2532":1,"2537":1,"2615":1,"2633":1,"2634":1,"2649":1,"2674":1,"2762":3,"2764":1,"2765":1,"2766":2,"2811":1}}],["accepts",{"2":{"74":1,"102":1,"214":1,"1067":1,"1070":1,"1148":1,"1418":1,"1460":1,"1511":2,"1590":1,"1792":9,"1802":1,"1817":1,"1875":1,"2101":1,"2118":1,"2156":1,"2200":1,"2335":1,"2375":1,"2476":1,"2492":1,"2502":1,"2518":1,"2542":1,"2544":1,"2703":1,"2752":1,"2840":1}}],["accessor",{"2":{"2545":1}}],["accessory",{"2":{"1080":1}}],["accesses`",{"2":{"1342":1}}],["accessed",{"2":{"1179":1,"1185":1,"1188":1,"1336":2,"1338":4,"1339":8,"1354":1,"1448":1,"1515":1,"2274":1,"2580":1}}],["accesstoken",{"2":{"1222":1,"1455":1,"1692":1,"1792":1,"2554":1}}],["accessing",{"0":{"765":1,"2182":1},"1":{"2183":1,"2184":1,"2185":1},"2":{"306":1,"844":1,"1098":1,"2170":1}}],["accessible",{"2":{"41":1,"223":1,"261":1,"502":1,"737":1,"766":1,"1068":1,"1204":1,"1447":1,"1747":1,"1792":2,"1840":1,"1930":2,"2344":1,"2572":1,"2634":1}}],["access",{"0":{"39":1,"733":1,"734":1,"735":1,"798":1,"799":1,"856":1,"1048":1,"1057":1,"1543":1,"2059":1,"2066":1,"2069":1,"2201":1,"2728":1},"1":{"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":1,"1055":1,"1056":1,"1057":1,"1058":2,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1},"2":{"4":1,"13":1,"18":1,"19":1,"20":1,"27":1,"41":1,"73":1,"224":1,"545":3,"741":1,"765":1,"766":1,"803":1,"805":1,"848":2,"851":1,"869":2,"905":2,"922":5,"926":2,"932":1,"934":3,"940":1,"941":1,"945":1,"967":1,"996":1,"1015":1,"1037":2,"1048":2,"1057":1,"1058":1,"1064":2,"1098":1,"1125":1,"1126":1,"1147":1,"1184":1,"1185":8,"1193":3,"1204":1,"1269":1,"1351":1,"1354":1,"1385":5,"1405":1,"1454":1,"1456":1,"1465":1,"1543":3,"1618":1,"1637":1,"1693":1,"1695":1,"1792":11,"1983":1,"2021":1,"2024":1,"2045":1,"2047":1,"2055":1,"2058":1,"2059":1,"2070":1,"2125":1,"2164":1,"2188":1,"2198":1,"2207":1,"2256":2,"2314":1,"2370":1,"2377":1,"2399":1,"2554":2,"2572":1,"2608":4,"2632":1,"2635":4}}],["april",{"2":{"1066":1,"1384":1,"1406":1}}],["apache",{"2":{"879":1,"1701":1,"1792":1,"2633":2}}],["apart",{"2":{"838":1,"865":1,"1037":1,"1046":1,"2540":1,"2545":1}}],["appconfig",{"2":{"2040":1,"2476":1}}],["apprentice",{"2":{"1403":1}}],["approximate",{"2":{"2245":1}}],["approximately",{"2":{"867":1,"2792":1}}],["approvers",{"2":{"860":1}}],["approver2",{"2":{"849":2}}],["approver1",{"2":{"849":4}}],["approved",{"2":{"849":6,"860":1,"1013":1,"1792":2,"2016":1,"2020":1,"2632":2}}],["approvals",{"2":{"849":4}}],["approval",{"2":{"849":1,"854":1,"860":1,"1220":1}}],["appropriate",{"2":{"494":1,"1155":1,"1942":1,"2353":1,"2381":1,"2687":1,"2786":1}}],["appropriately",{"2":{"429":1,"2310":1,"2313":1}}],["approaches",{"0":{"945":1},"2":{"847":1,"1008":1,"1104":1,"1191":1,"1200":1,"1220":1,"1386":1,"1387":2,"1396":1}}],["approach",{"0":{"879":1,"880":1,"949":1,"999":1,"1025":1,"1046":1,"1112":1,"1246":1,"1303":1,"1304":1,"1321":1,"1366":1,"2773":1},"1":{"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1026":1,"1113":1,"1114":1,"1115":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"2774":1,"2775":1},"2":{"1":1,"308":1,"836":1,"847":1,"859":1,"888":1,"904":1,"907":1,"911":3,"945":1,"946":1,"948":1,"975":1,"987":1,"988":1,"1006":1,"1011":1,"1036":1,"1048":1,"1049":2,"1058":1,"1073":1,"1096":1,"1098":2,"1176":1,"1181":1,"1203":1,"1205":1,"1206":1,"1211":1,"1220":1,"1280":1,"1281":1,"1385":5,"1394":1,"1399":1,"1403":2,"1405":1,"1428":1,"1432":1,"1615":1,"1870":1,"2183":1,"2184":1,"2773":1,"2820":1}}],["apparently",{"2":{"1401":1,"1402":2}}],["appendline",{"2":{"2622":2}}],["appendix",{"2":{"1381":1,"1382":3,"1792":3,"2255":4}}],["appending",{"2":{"436":1,"652":1}}],["appendmessage",{"2":{"1318":1,"1320":1,"1321":1}}],["appendchild",{"2":{"996":5}}],["appended",{"2":{"414":1,"423":3,"436":1,"446":2,"452":1,"454":1,"654":1,"1511":1,"1792":3,"1821":1,"1917":1,"1924":2,"1925":1,"2265":1,"2304":1,"2443":1,"2509":1,"2510":1,"2517":1,"2812":1}}],["append",{"2":{"414":1,"894":1,"928":1,"1366":1,"1410":1,"2614":1,"2622":5}}],["appeared",{"2":{"869":1,"2384":1,"2520":1,"2742":1}}],["appearing",{"2":{"595":1,"1374":1,"2216":1,"2322":1,"2558":1,"2849":1}}],["appears",{"2":{"215":1,"306":1,"319":1,"353":1,"527":1,"865":1,"990":1,"1360":1,"1402":1,"1569":1,"1792":6,"1898":1,"2254":3,"2389":1,"2422":1,"2431":1,"2590":1,"2634":1}}],["appear",{"0":{"2721":1,"2722":1},"2":{"168":1,"203":1,"211":1,"319":1,"354":1,"621":1,"687":1,"963":1,"990":2,"1046":1,"1360":1,"1418":1,"1792":1,"1908":1,"2005":1,"2282":1,"2481":1,"2502":1,"2662":1,"2693":1,"2765":1}}],["appstaticfilemiddleware",{"2":{"2626":1}}],["apps",{"2":{"307":1,"869":1,"1123":1,"1217":1,"1228":1,"1230":1,"1382":1,"1401":1,"1574":1,"1773":1,"1792":6,"1861":1,"1878":1,"1880":1,"2040":1,"2173":1,"2177":1,"2474":1}}],["appsettings",{"2":{"106":1,"182":1,"395":1,"470":1,"556":1,"867":2,"868":5,"873":1,"1217":1,"1417":2,"1418":2,"1420":3,"1609":1,"1792":2,"1959":1,"2012":1,"2040":1,"2171":3,"2187":1,"2208":1,"2265":3,"2274":1,"2279":1,"2291":1,"2297":1,"2377":1,"2380":1,"2389":1,"2406":1,"2419":1,"2428":1,"2431":1,"2455":1,"2471":1,"2477":1,"2486":3,"2522":1,"2545":1,"2546":1,"2551":1,"2594":1,"2659":1,"2670":1,"2677":2,"2678":1,"2681":2,"2682":1,"2684":8,"2685":4,"2691":1,"2694":2,"2695":2,"2697":2,"2700":2,"2717":2,"2718":1,"2754":1,"2788":2,"2789":2,"2790":2,"2791":2,"2821":1,"2824":2,"2825":3,"2841":1}}],["app",{"0":{"1302":1,"1713":1,"2582":1},"1":{"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1308":1,"1309":1,"1310":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1},"2":{"115":5,"307":1,"390":1,"542":1,"584":4,"693":1,"705":3,"826":4,"833":1,"835":1,"836":3,"837":1,"868":1,"922":5,"926":7,"934":2,"937":3,"941":1,"945":4,"976":1,"985":1,"996":9,"997":2,"1026":1,"1037":3,"1079":1,"1104":1,"1135":2,"1141":5,"1185":3,"1188":1,"1287":7,"1288":7,"1289":7,"1290":7,"1291":7,"1293":7,"1295":7,"1297":7,"1299":7,"1301":7,"1343":2,"1366":1,"1382":3,"1409":2,"1416":2,"1417":1,"1418":4,"1419":1,"1420":4,"1435":1,"1441":1,"1449":2,"1453":1,"1457":1,"1463":1,"1519":1,"1529":1,"1581":2,"1582":1,"1620":2,"1640":1,"1658":1,"1663":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1701":1,"1713":1,"1770":1,"1773":2,"1774":2,"1781":1,"1792":15,"1810":1,"1852":1,"2040":2,"2095":2,"2098":2,"2111":4,"2167":2,"2173":1,"2175":2,"2177":2,"2187":1,"2257":1,"2337":4,"2338":4,"2362":1,"2375":2,"2381":1,"2383":1,"2410":1,"2425":1,"2429":1,"2459":1,"2474":1,"2526":1,"2528":2,"2532":4,"2534":5,"2554":2,"2633":2,"2634":4,"2714":2,"2717":1,"2740":1,"2758":1,"2759":1,"2760":1,"2788":1,"2789":1,"2790":1,"2791":1,"2804":2,"2829":1,"2837":1,"2852":2,"2855":2,"2860":1,"2864":2,"2871":2,"2872":4,"2873":6,"2874":2,"2876":1,"2880":1}}],["apple",{"2":{"2397":1,"2576":1,"2779":1,"2790":1}}],["applicable",{"2":{"1792":1,"2438":1}}],["applicationname=myapi",{"2":{"2689":1,"2691":1}}],["applicationname=test",{"2":{"2679":1,"2692":1}}],["applicationname>",{"2":{"1792":1}}],["applicationname",{"2":{"937":1,"998":1,"1062":1,"1225":1,"1618":1,"1619":1,"1620":2,"1651":1,"1658":1,"1792":10,"1802":1,"1808":1,"1875":1,"2116":1,"2117":1,"2119":1,"2297":1,"2679":1,"2686":1,"2690":2,"2692":1,"2697":2,"2701":1,"2702":1,"2704":1,"2795":4}}],["applicationstopping",{"2":{"2362":1}}],["applicationslistblade",{"2":{"1792":1}}],["applications",{"0":{"1193":1},"2":{"844":2,"868":1,"921":1,"922":1,"946":1,"974":1,"1098":2,"1193":2,"1405":1,"1450":1,"1658":1,"1792":2}}],["application",{"0":{"926":1,"938":1,"942":1,"996":1,"1061":1,"1619":1,"1620":1,"1658":1,"2028":1,"2116":1,"2714":1},"1":{"2117":1,"2118":1,"2119":1},"2":{"121":1,"182":1,"207":1,"208":1,"209":1,"214":1,"307":1,"392":1,"521":1,"540":1,"546":1,"691":2,"695":1,"700":1,"705":1,"758":1,"772":1,"773":1,"831":1,"840":1,"841":4,"844":3,"848":1,"849":1,"851":1,"852":1,"859":3,"861":2,"864":1,"865":1,"866":3,"867":1,"868":3,"869":2,"872":1,"873":1,"877":1,"878":1,"879":2,"880":2,"888":1,"893":1,"909":1,"911":1,"915":1,"921":1,"922":2,"926":3,"932":4,"937":2,"940":1,"941":1,"942":1,"946":2,"947":2,"948":1,"956":2,"974":3,"975":2,"976":1,"982":1,"993":1,"995":2,"996":1,"1005":1,"1015":3,"1017":2,"1019":2,"1026":2,"1030":1,"1032":1,"1037":2,"1038":1,"1049":4,"1054":2,"1065":1,"1078":1,"1098":1,"1100":4,"1105":2,"1107":1,"1136":1,"1145":1,"1150":1,"1183":1,"1184":1,"1185":2,"1191":1,"1193":2,"1208":1,"1225":1,"1247":1,"1280":1,"1302":1,"1358":1,"1360":1,"1363":1,"1367":1,"1386":2,"1398":1,"1399":2,"1403":1,"1405":1,"1408":1,"1414":1,"1416":1,"1423":1,"1435":2,"1437":2,"1439":1,"1452":1,"1456":1,"1469":1,"1471":1,"1513":1,"1515":2,"1519":1,"1568":1,"1608":1,"1609":1,"1618":2,"1620":1,"1621":1,"1649":1,"1651":1,"1664":1,"1704":4,"1706":1,"1730":2,"1736":1,"1743":1,"1762":1,"1767":1,"1768":2,"1787":1,"1792":26,"1794":1,"1800":1,"1801":1,"1807":1,"1808":3,"1875":1,"1893":1,"1899":1,"1936":5,"1942":1,"1943":5,"1974":1,"2020":1,"2021":1,"2063":1,"2084":1,"2088":1,"2115":1,"2117":1,"2119":3,"2132":1,"2164":1,"2165":1,"2177":1,"2193":1,"2207":1,"2247":1,"2257":1,"2259":1,"2272":1,"2274":1,"2291":1,"2297":3,"2362":1,"2380":1,"2386":1,"2419":1,"2481":1,"2502":1,"2529":1,"2544":1,"2551":1,"2571":1,"2577":2,"2607":1,"2628":2,"2632":1,"2633":2,"2634":3,"2659":1,"2686":1,"2701":1,"2702":2,"2704":3,"2752":1,"2764":1,"2765":1,"2766":2,"2795":1,"2804":2,"2824":2,"2825":1,"2865":1,"2866":1,"2873":1,"2876":2}}],["applies",{"2":{"87":1,"377":1,"384":1,"480":1,"512":1,"559":1,"560":3,"562":1,"581":1,"595":1,"614":1,"615":1,"619":3,"625":1,"673":2,"675":2,"686":1,"689":1,"693":1,"698":1,"703":1,"708":1,"713":1,"868":1,"919":1,"986":1,"1045":1,"1162":1,"1792":6,"1824":1,"1844":1,"1924":1,"1961":2,"1973":1,"2009":1,"2011":1,"2038":1,"2072":2,"2106":1,"2200":1,"2320":1,"2330":1,"2333":1,"2339":1,"2340":3,"2354":1,"2381":1,"2440":1,"2470":1,"2512":1,"2537":2,"2543":1,"2581":1,"2589":1,"2591":1,"2611":1,"2804":1}}],["applied",{"2":{"74":1,"349":1,"370":1,"387":1,"462":1,"480":1,"859":1,"1150":1,"1193":2,"1407":1,"1409":1,"1792":4,"1822":2,"1824":1,"1898":2,"1910":1,"1938":1,"1961":1,"2149":1,"2208":2,"2222":1,"2410":1,"2431":2,"2436":1,"2468":1,"2505":1,"2527":1,"2543":1,"2641":2,"2700":1,"2749":1,"2795":1,"2862":1}}],["applyratelimiterrejectionasync",{"2":{"2472":1}}],["applymigrations",{"2":{"2111":1,"2112":1,"2532":2,"2534":2,"2871":2,"2872":2,"2875":1}}],["applyschema",{"2":{"1792":1,"2111":1,"2532":1}}],["apply",{"2":{"109":1,"175":1,"176":1,"181":1,"239":1,"320":1,"473":1,"476":1,"477":1,"478":1,"479":1,"683":1,"684":1,"685":1,"687":1,"970":1,"1102":1,"1113":1,"1158":1,"1208":1,"1386":1,"1408":1,"1527":1,"1679":1,"1681":1,"1792":5,"1824":1,"1856":1,"1947":1,"1949":1,"1959":1,"1962":1,"1964":1,"2047":1,"2061":1,"2111":1,"2125":1,"2147":1,"2150":1,"2152":1,"2162":1,"2168":1,"2398":1,"2415":1,"2429":1,"2455":1,"2481":2,"2532":1,"2542":1,"2586":1,"2634":1,"2635":1,"2747":1,"2852":1,"2871":1}}],["apikeyauth",{"2":{"1905":1}}],["apikeylocation",{"2":{"1792":2,"1904":1,"1905":1,"1906":1,"1907":1,"2254":2}}],["apikey",{"2":{"1792":3,"1901":1,"1904":1,"1905":1,"1906":3,"1907":1,"2254":3}}],["apitypes",{"2":{"1416":1,"1418":1,"1419":1,"1581":1}}],["apiresult",{"2":{"1386":3,"1408":5,"1410":2,"1416":1,"1571":1,"2359":3}}],["apierror",{"2":{"1386":3,"1408":3,"1416":1,"2359":3}}],["api",{"0":{"209":1,"403":1,"451":1,"531":1,"835":1,"925":1,"973":1,"978":1,"1011":1,"1029":1,"1095":1,"1254":1,"1333":1,"1345":1,"1376":1,"1384":1,"1386":1,"1780":1,"1905":1,"2028":1,"2215":1,"2370":1,"2429":1,"2487":1,"2489":1},"1":{"979":1,"980":1,"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"1263":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":1,"1275":1,"1276":1,"1277":1,"1278":1,"1279":1,"1280":1,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1301":1,"1385":1,"1386":1,"1387":1,"1388":1,"1389":1,"1390":1,"1391":1,"1392":1,"1393":1,"1394":1,"1395":1,"1396":1,"1397":1,"1398":1,"1399":1,"1400":1,"1401":1,"1402":1,"1403":1,"1404":1},"2":{"31":1,"38":2,"40":2,"48":3,"61":1,"62":2,"74":1,"167":1,"175":1,"182":2,"184":1,"186":1,"187":4,"196":1,"206":7,"207":6,"208":4,"209":8,"211":4,"212":5,"213":6,"214":5,"215":5,"223":1,"247":1,"248":1,"263":3,"264":4,"322":2,"323":1,"348":3,"351":1,"352":5,"353":1,"354":1,"369":1,"370":1,"372":2,"374":3,"376":1,"383":2,"386":1,"390":8,"394":4,"403":1,"415":2,"421":2,"423":8,"429":1,"430":1,"436":6,"442":2,"444":2,"445":2,"446":13,"449":1,"451":6,"452":3,"453":3,"454":4,"455":1,"462":4,"463":3,"464":4,"466":2,"467":3,"468":3,"476":2,"493":1,"520":1,"521":1,"523":1,"527":5,"531":8,"532":4,"533":1,"534":1,"540":2,"544":1,"565":1,"612":1,"613":1,"650":5,"653":2,"654":2,"658":2,"660":2,"661":2,"662":4,"663":2,"666":2,"689":1,"691":2,"695":1,"700":1,"705":1,"710":2,"723":1,"746":1,"831":1,"833":2,"835":7,"836":2,"837":3,"838":1,"867":3,"868":2,"869":2,"871":1,"872":3,"874":1,"886":1,"894":1,"908":1,"914":2,"915":1,"916":5,"917":2,"918":3,"925":2,"937":1,"938":1,"940":1,"943":1,"959":2,"961":3,"964":1,"973":3,"975":1,"995":2,"998":1,"1000":1,"1006":2,"1010":3,"1011":4,"1014":1,"1016":1,"1017":3,"1018":4,"1019":12,"1021":2,"1023":3,"1026":3,"1029":11,"1030":1,"1032":2,"1033":7,"1034":6,"1035":1,"1036":2,"1037":5,"1038":2,"1042":1,"1044":1,"1045":1,"1053":2,"1062":3,"1063":2,"1067":1,"1074":1,"1078":1,"1080":1,"1082":1,"1083":1,"1084":1,"1086":4,"1088":2,"1089":1,"1094":3,"1095":1,"1096":1,"1100":3,"1101":1,"1105":10,"1106":3,"1108":1,"1111":2,"1113":3,"1114":1,"1121":2,"1122":1,"1123":2,"1126":1,"1127":3,"1135":2,"1139":2,"1148":3,"1156":1,"1158":1,"1163":1,"1164":1,"1165":1,"1171":2,"1179":1,"1180":1,"1193":1,"1200":2,"1202":1,"1207":1,"1209":1,"1211":1,"1220":4,"1221":4,"1222":4,"1226":6,"1232":1,"1233":1,"1234":1,"1236":1,"1237":1,"1238":1,"1239":1,"1255":8,"1280":1,"1281":2,"1303":1,"1305":1,"1317":1,"1322":1,"1323":1,"1325":1,"1327":1,"1328":2,"1329":1,"1334":1,"1335":1,"1345":6,"1346":1,"1347":1,"1348":3,"1351":4,"1364":2,"1366":1,"1368":1,"1369":1,"1374":1,"1376":7,"1379":1,"1381":1,"1382":3,"1383":1,"1385":7,"1386":10,"1398":20,"1399":2,"1405":6,"1406":1,"1408":2,"1409":1,"1410":1,"1412":1,"1413":1,"1414":1,"1416":3,"1417":2,"1418":3,"1419":1,"1423":1,"1426":2,"1427":2,"1430":1,"1431":4,"1434":1,"1435":2,"1436":1,"1438":1,"1442":2,"1443":1,"1449":2,"1450":1,"1451":1,"1452":1,"1453":2,"1454":1,"1456":2,"1458":4,"1463":1,"1483":2,"1491":1,"1492":1,"1518":3,"1567":1,"1568":1,"1569":1,"1570":2,"1571":2,"1572":2,"1573":1,"1574":1,"1576":1,"1577":6,"1579":1,"1580":1,"1581":4,"1582":2,"1606":1,"1662":1,"1664":2,"1692":2,"1693":1,"1697":1,"1709":1,"1725":1,"1726":3,"1727":7,"1730":6,"1731":4,"1733":10,"1736":5,"1738":7,"1740":6,"1742":5,"1743":2,"1744":6,"1745":2,"1757":1,"1775":1,"1776":3,"1787":1,"1789":2,"1792":35,"1794":1,"1796":1,"1824":1,"1836":1,"1839":2,"1840":1,"1841":1,"1842":2,"1862":1,"1863":2,"1868":1,"1870":2,"1871":2,"1872":2,"1876":6,"1898":3,"1899":2,"1900":2,"1905":2,"1907":3,"1911":3,"1920":2,"1921":1,"1924":1,"1926":1,"1929":1,"1930":2,"1931":1,"1933":1,"1958":4,"1998":1,"2011":1,"2012":1,"2013":1,"2040":1,"2064":4,"2106":2,"2126":1,"2164":2,"2165":1,"2174":1,"2187":14,"2190":1,"2221":1,"2223":1,"2228":2,"2239":1,"2247":1,"2254":2,"2258":1,"2264":18,"2265":5,"2282":2,"2283":8,"2285":3,"2286":1,"2288":6,"2290":5,"2291":2,"2292":1,"2293":1,"2294":4,"2303":2,"2304":1,"2308":1,"2310":1,"2313":1,"2317":1,"2319":1,"2320":1,"2321":3,"2322":1,"2327":2,"2329":1,"2332":1,"2344":3,"2346":11,"2347":2,"2348":2,"2354":1,"2366":5,"2375":4,"2392":1,"2394":1,"2395":1,"2396":1,"2410":1,"2413":1,"2419":1,"2420":1,"2423":2,"2425":3,"2429":1,"2430":2,"2432":3,"2434":3,"2438":8,"2445":1,"2457":1,"2461":1,"2470":2,"2477":1,"2479":1,"2483":5,"2502":1,"2518":1,"2526":1,"2529":3,"2531":1,"2536":1,"2537":5,"2540":1,"2543":2,"2546":1,"2549":3,"2554":4,"2555":3,"2562":1,"2580":2,"2611":1,"2627":1,"2655":1,"2674":2,"2686":1,"2689":1,"2691":1,"2692":3,"2697":3,"2701":2,"2709":1,"2713":2,"2723":1,"2729":1,"2731":1,"2739":1,"2759":1,"2760":1,"2762":7,"2763":1,"2764":8,"2765":2,"2766":13,"2767":12,"2768":10,"2770":1,"2772":2,"2773":2,"2774":1,"2775":1,"2797":2,"2803":1,"2806":1,"2810":1,"2811":7,"2812":1,"2815":1,"2818":2,"2821":1,"2823":1,"2824":5,"2825":3,"2827":1,"2828":3,"2830":1,"2834":1,"2839":1,"2840":1,"2842":1,"2845":2,"2846":1,"2857":1,"2860":1,"2861":1,"2865":3,"2868":1,"2869":2,"2873":1,"2876":1,"2878":1,"2879":3,"2881":2}}],["apis",{"0":{"912":1,"1010":1},"1":{"913":1,"914":1,"915":1,"916":1,"917":1,"918":1,"919":1,"920":1,"1011":1,"1012":1,"1013":1,"1014":1,"1015":1,"1016":1,"1017":1,"1018":1,"1019":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1},"2":{"10":1,"201":1,"831":1,"835":1,"869":2,"876":1,"912":1,"917":1,"920":1,"1010":2,"1018":1,"1021":1,"1026":1,"1029":1,"1032":1,"1035":1,"1036":1,"1037":5,"1064":1,"1073":1,"1084":1,"1086":1,"1104":1,"1106":1,"1111":1,"1126":1,"1127":1,"1160":1,"1162":1,"1164":1,"1167":1,"1168":1,"1193":1,"1280":1,"1333":1,"1376":1,"1382":1,"1398":2,"1434":1,"1458":1,"1720":1,"1723":1,"1739":1,"1792":2,"1896":1,"2016":1,"2021":1,"2174":1,"2258":1,"2264":1,"2270":1,"2287":1,"2375":1,"2438":1,"2632":1,"2770":2,"2826":1}}],["asc",{"2":{"1310":1,"2836":1}}],["asking",{"2":{"871":1}}],["ask",{"2":{"860":1,"1105":1,"1162":1,"1384":1,"1386":1,"1401":1}}],["asked",{"2":{"849":1,"1082":2,"1385":1,"2482":1}}],["asks",{"2":{"106":1,"302":1,"838":2,"1039":1,"1082":1}}],["asynchronous",{"2":{"1106":1,"2087":1}}],["async",{"2":{"429":1,"894":1,"938":2,"995":2,"996":3,"1024":1,"1026":3,"1104":1,"1105":1,"1107":3,"1167":3,"1170":2,"1274":1,"1317":1,"1318":1,"1320":2,"1321":1,"1335":1,"1342":1,"1366":4,"1386":1,"1408":2,"1409":1,"1410":1,"1416":1,"1567":1,"1568":1,"1569":1,"1571":1,"1575":1,"2247":1,"2310":1,"2313":1,"2357":1,"2559":1,"2615":1}}],["asset",{"2":{"2576":1}}],["assets",{"2":{"1101":1,"2576":1}}],["assembly",{"2":{"2389":1,"2399":1,"2668":1}}],["asserted",{"2":{"2506":1,"2546":1}}],["asserting",{"2":{"1078":1,"2435":1,"2472":1}}],["assertions",{"0":{"986":1,"2864":1},"2":{"874":1,"986":2,"994":1,"1003":1,"1074":3,"1076":2,"1082":1,"1792":1,"2092":1,"2094":1,"2104":1,"2107":1,"2167":1,"2221":1,"2452":1,"2456":3,"2457":1,"2526":2,"2528":2,"2529":1,"2531":1,"2535":5,"2537":1,"2860":2,"2864":1,"2865":1,"2880":1,"2881":1}}],["assertion",{"2":{"715":1,"875":1,"986":1,"1078":2,"1081":2,"2102":2,"2107":1,"2113":1,"2456":1,"2526":1,"2528":3,"2529":1,"2535":4,"2537":1,"2864":3,"2865":1,"2873":1,"2880":2,"2881":2}}],["asserts",{"2":{"1074":1,"1076":1,"1792":1,"2465":1,"2528":1,"2739":1,"2860":1,"2876":1}}],["assert",{"2":{"930":11,"979":2,"980":1,"986":2,"988":1,"989":1,"990":3,"991":2,"994":1,"1074":2,"1075":1,"1076":6,"1077":1,"1078":1,"1082":1,"1214":1,"1393":3,"1419":3,"1442":3,"1674":2,"1792":2,"2109":1,"2255":3,"2384":1,"2452":1,"2525":1,"2526":1,"2527":1,"2528":5,"2529":1,"2530":1,"2858":1,"2860":1,"2862":1,"2864":4,"2865":1,"2867":1,"2881":1}}],["assumeuniversal",{"2":{"2451":2,"2457":1}}],["assume",{"2":{"877":1,"1133":1,"2398":1,"2438":1}}],["assumed",{"2":{"869":1,"1792":1,"1856":1,"2224":1,"2454":1,"2456":1}}],["assumes",{"2":{"869":1,"2504":1}}],["assumption",{"2":{"847":1,"2881":1}}],["assuming",{"2":{"206":1,"2785":1}}],["associated",{"2":{"863":1,"2340":1}}],["associate",{"2":{"192":1}}],["assistance",{"2":{"1384":1}}],["assistants",{"2":{"876":1}}],["assisted",{"2":{"0":1,"1":1,"3":1,"871":2,"1081":1}}],["assignment",{"2":{"2540":1}}],["assigns",{"2":{"684":1}}],["assign",{"2":{"569":1,"1413":1,"1599":1,"1600":1,"1602":1,"1670":1,"1949":1}}],["assigned",{"2":{"175":2,"179":1,"1588":1,"1708":1,"1792":2,"2633":1}}],["aspnet",{"2":{"1792":9,"2257":4,"2450":1,"2633":1,"2634":1}}],["aspnetcore",{"2":{"1460":1,"1489":1,"1792":7,"1904":1,"1907":1,"2254":2,"2375":1,"2386":1,"2422":1,"2435":1,"2567":1,"2634":1}}],["aspects",{"2":{"1128":1,"1254":1}}],["aspect",{"2":{"1084":1,"1108":1,"1325":1,"1401":1}}],["asp",{"0":{"869":1,"2714":1},"2":{"182":1,"188":1,"408":1,"868":3,"869":4,"871":2,"873":1,"876":1,"1054":1,"1098":1,"1100":1,"1156":1,"1366":1,"1409":1,"1421":1,"1445":1,"1447":2,"1450":2,"1457":2,"1458":1,"1460":1,"1718":1,"1783":1,"1792":5,"1802":1,"1822":1,"2257":1,"2258":1,"2291":1,"2296":1,"2375":2,"2419":1,"2421":1,"2422":1,"2424":1,"2425":1,"2426":1,"2427":1,"2428":1,"2435":1,"2436":2,"2437":1,"2438":1,"2470":1,"2481":1,"2554":2,"2645":1,"2665":1,"2795":1}}],["as",{"0":{"322":1,"492":1,"502":1,"503":1,"734":1,"775":1,"799":1,"915":1,"1326":1,"1333":1,"1386":1,"2183":1,"2184":1,"2185":1,"2494":1,"2721":1,"2722":1},"2":{"4":1,"7":1,"12":1,"13":1,"16":1,"27":2,"29":1,"32":1,"34":3,"35":4,"37":1,"41":2,"44":1,"48":1,"50":1,"51":1,"55":1,"61":1,"63":1,"68":1,"71":1,"75":1,"77":1,"78":1,"91":1,"104":1,"108":1,"115":1,"125":2,"128":1,"132":1,"136":1,"144":1,"155":1,"157":1,"165":1,"168":3,"171":1,"174":1,"176":1,"182":1,"184":2,"186":2,"188":3,"192":1,"202":1,"203":1,"206":3,"207":2,"208":2,"209":3,"210":1,"213":1,"214":1,"218":1,"223":4,"224":2,"227":2,"241":1,"244":1,"247":1,"252":1,"261":3,"263":2,"264":3,"266":1,"282":2,"286":2,"288":1,"292":1,"294":1,"296":2,"298":4,"302":1,"305":2,"306":4,"308":4,"309":3,"310":2,"312":5,"313":1,"316":3,"317":1,"318":1,"320":4,"322":2,"325":2,"326":3,"328":2,"330":1,"332":1,"333":2,"334":3,"335":3,"336":1,"337":3,"339":1,"351":2,"357":2,"360":1,"363":1,"366":1,"369":1,"370":1,"372":1,"376":3,"380":3,"383":4,"386":1,"388":1,"389":1,"390":1,"395":1,"401":1,"408":1,"412":1,"414":3,"415":2,"419":1,"422":1,"423":2,"426":2,"427":1,"428":1,"430":1,"431":1,"433":2,"435":1,"438":1,"439":1,"447":3,"448":3,"449":1,"452":1,"453":3,"454":3,"456":1,"458":2,"460":3,"462":1,"463":1,"464":1,"466":1,"473":1,"484":1,"487":1,"492":1,"494":1,"497":1,"499":2,"503":1,"507":1,"510":1,"511":1,"512":1,"515":4,"517":2,"520":1,"528":2,"539":1,"549":1,"563":2,"568":1,"569":1,"584":6,"586":1,"587":2,"588":1,"589":2,"592":1,"597":1,"598":1,"607":2,"609":2,"614":1,"616":1,"618":1,"625":1,"626":1,"627":1,"636":1,"639":1,"641":1,"646":2,"649":1,"650":1,"658":1,"659":2,"663":2,"664":2,"665":1,"669":1,"673":1,"675":2,"677":1,"679":1,"683":1,"690":2,"691":1,"699":1,"700":1,"701":1,"706":2,"711":1,"722":1,"723":1,"733":4,"739":1,"741":1,"743":1,"748":1,"750":2,"751":1,"752":1,"755":1,"756":1,"760":2,"761":2,"763":1,"764":2,"765":1,"766":1,"767":1,"770":2,"771":2,"773":1,"774":2,"775":2,"776":1,"777":1,"778":1,"786":1,"788":1,"794":2,"797":4,"801":2,"802":1,"809":1,"811":1,"812":1,"813":1,"814":1,"815":1,"823":1,"834":10,"835":3,"841":5,"843":1,"844":4,"847":2,"848":8,"849":2,"851":5,"852":2,"859":1,"860":3,"861":2,"863":2,"864":2,"865":1,"866":2,"867":1,"868":5,"869":2,"871":2,"872":3,"873":3,"874":1,"876":2,"877":4,"880":1,"881":1,"882":1,"883":3,"884":1,"885":2,"886":1,"888":2,"892":1,"900":1,"904":1,"913":3,"914":3,"915":5,"916":4,"918":6,"919":3,"920":2,"921":2,"924":1,"928":1,"929":1,"932":1,"933":2,"934":3,"937":1,"949":1,"951":1,"952":3,"959":1,"961":1,"965":1,"966":1,"971":1,"974":1,"977":2,"979":1,"988":1,"994":3,"995":4,"1005":2,"1017":1,"1019":2,"1020":1,"1021":1,"1023":1,"1029":1,"1031":1,"1035":1,"1037":1,"1038":2,"1040":2,"1041":2,"1043":1,"1045":4,"1046":1,"1049":3,"1050":1,"1056":2,"1058":4,"1060":3,"1061":2,"1065":1,"1066":1,"1067":1,"1068":2,"1070":1,"1073":7,"1076":2,"1079":1,"1080":2,"1082":1,"1083":1,"1084":2,"1094":2,"1095":7,"1096":2,"1097":4,"1098":2,"1101":2,"1102":2,"1105":9,"1107":2,"1111":1,"1115":1,"1121":2,"1125":3,"1126":2,"1135":4,"1138":1,"1139":2,"1141":1,"1142":1,"1148":1,"1154":1,"1159":1,"1161":1,"1176":1,"1179":1,"1187":1,"1188":2,"1189":3,"1192":4,"1193":5,"1197":1,"1208":2,"1209":1,"1213":1,"1214":1,"1215":1,"1216":2,"1218":2,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1238":2,"1239":1,"1252":1,"1254":6,"1266":1,"1270":1,"1279":1,"1280":1,"1307":2,"1309":3,"1321":1,"1324":1,"1326":2,"1332":1,"1334":1,"1338":1,"1339":1,"1341":1,"1347":1,"1348":2,"1355":2,"1357":3,"1361":1,"1366":1,"1368":2,"1370":5,"1371":6,"1373":2,"1374":1,"1375":3,"1376":9,"1385":7,"1386":13,"1387":1,"1388":1,"1389":1,"1390":3,"1391":1,"1392":1,"1393":3,"1394":6,"1395":4,"1396":7,"1398":17,"1399":3,"1401":2,"1402":5,"1403":7,"1404":5,"1405":5,"1406":3,"1407":1,"1408":3,"1410":5,"1412":1,"1416":2,"1420":3,"1426":2,"1427":2,"1429":8,"1430":1,"1431":3,"1436":2,"1442":2,"1458":10,"1465":2,"1467":2,"1470":1,"1475":2,"1477":3,"1484":2,"1486":1,"1504":7,"1511":2,"1515":3,"1518":1,"1531":1,"1540":1,"1543":2,"1544":1,"1547":6,"1557":1,"1563":1,"1567":7,"1568":2,"1569":1,"1570":1,"1571":2,"1574":1,"1581":1,"1582":1,"1627":1,"1632":1,"1655":1,"1664":1,"1684":1,"1686":1,"1688":1,"1689":11,"1699":2,"1706":1,"1722":1,"1725":1,"1726":1,"1727":3,"1732":1,"1736":2,"1738":1,"1740":1,"1741":1,"1742":2,"1743":2,"1744":2,"1745":1,"1747":1,"1748":1,"1755":1,"1758":1,"1789":1,"1792":61,"1802":1,"1821":1,"1822":3,"1823":1,"1824":5,"1825":3,"1833":1,"1834":1,"1838":1,"1840":3,"1850":1,"1852":2,"1854":4,"1856":3,"1861":1,"1864":1,"1868":1,"1883":1,"1888":1,"1912":1,"1915":1,"1918":1,"1920":1,"1921":1,"1922":3,"1924":6,"1925":1,"1926":2,"1928":2,"1930":1,"1937":1,"1957":1,"1958":1,"1959":1,"1961":2,"1967":2,"1968":1,"1973":1,"1974":5,"2000":2,"2004":1,"2005":1,"2006":1,"2010":3,"2018":1,"2020":1,"2038":1,"2040":4,"2072":1,"2075":1,"2076":2,"2077":1,"2083":1,"2092":1,"2094":1,"2095":2,"2096":1,"2097":1,"2101":1,"2105":1,"2107":1,"2111":1,"2129":1,"2130":1,"2131":1,"2147":2,"2148":1,"2155":1,"2156":2,"2157":2,"2164":2,"2166":2,"2170":1,"2175":2,"2176":4,"2177":2,"2178":3,"2181":1,"2183":3,"2184":3,"2185":2,"2186":1,"2187":3,"2188":2,"2193":1,"2194":1,"2195":1,"2205":1,"2206":1,"2208":1,"2217":1,"2221":1,"2222":1,"2223":1,"2224":3,"2247":2,"2252":1,"2254":2,"2258":3,"2264":5,"2265":4,"2267":1,"2274":4,"2277":4,"2282":1,"2283":3,"2288":1,"2289":1,"2290":2,"2292":1,"2293":2,"2296":3,"2297":1,"2301":1,"2302":2,"2303":1,"2304":2,"2305":1,"2308":1,"2309":1,"2318":1,"2320":2,"2323":1,"2325":1,"2326":3,"2327":1,"2330":1,"2332":1,"2333":3,"2335":1,"2337":3,"2339":2,"2344":4,"2346":4,"2348":4,"2356":1,"2357":2,"2359":1,"2360":4,"2375":6,"2377":1,"2379":2,"2380":1,"2383":3,"2389":4,"2391":1,"2393":2,"2394":1,"2405":1,"2406":1,"2411":1,"2414":3,"2415":1,"2416":1,"2419":2,"2420":1,"2422":1,"2427":1,"2431":1,"2437":1,"2438":6,"2442":1,"2444":2,"2445":1,"2451":3,"2453":1,"2454":2,"2455":2,"2456":2,"2459":3,"2461":3,"2470":1,"2471":1,"2476":2,"2477":2,"2479":1,"2481":8,"2482":1,"2483":1,"2484":4,"2486":1,"2487":2,"2491":1,"2493":2,"2494":1,"2496":1,"2498":1,"2502":2,"2505":2,"2509":1,"2511":1,"2518":2,"2519":1,"2520":1,"2523":1,"2525":1,"2527":1,"2528":4,"2529":1,"2531":3,"2533":4,"2534":1,"2535":2,"2537":5,"2538":1,"2539":4,"2540":3,"2542":2,"2543":3,"2544":1,"2545":2,"2546":1,"2549":14,"2554":1,"2572":1,"2575":2,"2580":2,"2586":6,"2587":3,"2588":3,"2589":7,"2590":3,"2591":1,"2595":4,"2607":6,"2611":1,"2641":1,"2648":1,"2650":1,"2651":1,"2652":1,"2665":1,"2668":1,"2670":1,"2671":1,"2678":1,"2682":1,"2685":1,"2694":1,"2712":1,"2722":1,"2724":1,"2725":1,"2739":1,"2740":1,"2749":1,"2755":1,"2759":1,"2762":8,"2763":3,"2764":2,"2766":3,"2767":4,"2772":1,"2785":1,"2792":1,"2795":4,"2798":1,"2802":1,"2803":3,"2805":1,"2809":1,"2810":3,"2811":1,"2812":4,"2813":2,"2815":1,"2821":1,"2824":2,"2825":1,"2829":2,"2830":2,"2833":1,"2834":2,"2835":1,"2836":3,"2837":1,"2838":1,"2840":1,"2841":1,"2850":4,"2852":2,"2857":1,"2860":1,"2861":1,"2862":1,"2864":3,"2868":1,"2869":2,"2871":1,"2874":1,"2876":3}}],["although",{"2":{"2461":1}}],["alters",{"2":{"2869":1}}],["alternation",{"2":{"2435":1}}],["alternatively",{"2":{"2822":1}}],["alternatives",{"2":{"994":1,"1035":1}}],["alternative",{"0":{"17":1,"49":1},"2":{"176":1,"260":1,"298":1,"397":1,"690":1,"701":1,"852":1,"869":1,"876":1,"1385":1,"1631":1,"2534":1,"2684":1,"2692":1}}],["alternate",{"2":{"1994":1}}],["alter",{"2":{"848":2,"864":1,"880":1,"982":1,"1193":2,"1792":2,"2156":2,"2456":1,"2542":2,"2546":1,"2635":1,"2869":7}}],["alphanumeric",{"2":{"2144":1}}],["alpine",{"2":{"1420":1}}],["alb",{"0":{"1712":1},"2":{"1701":1,"1792":1,"2633":2}}],["aleph",{"2":{"1442":1}}],["alert",{"2":{"1313":1,"1316":1}}],["alerts",{"2":{"661":2}}],["alright",{"2":{"1402":1,"1441":2}}],["already",{"2":{"38":1,"206":1,"303":1,"308":1,"327":1,"838":1,"841":5,"848":3,"851":2,"852":1,"860":2,"861":2,"864":1,"865":3,"868":1,"869":1,"874":2,"1038":1,"1046":1,"1073":1,"1076":1,"1078":2,"1082":1,"1111":1,"1122":1,"1206":1,"1221":1,"1232":1,"1304":2,"1318":1,"1377":1,"1382":1,"1386":3,"1396":1,"1401":1,"1402":1,"1403":1,"1404":1,"1420":1,"1423":1,"1431":2,"1441":1,"1443":1,"1678":1,"1792":1,"1825":1,"1834":1,"1882":1,"2018":1,"2147":1,"2314":1,"2332":1,"2398":1,"2412":1,"2416":1,"2429":1,"2437":1,"2452":1,"2476":1,"2486":2,"2504":2,"2531":1,"2540":1,"2555":1,"2559":1,"2575":1,"2614":1,"2632":1,"2666":1,"2760":1}}],["alg",{"2":{"928":2}}],["algebra",{"2":{"852":6,"1394":1}}],["algorithms",{"0":{"858":1,"1656":1,"1657":1,"1939":1},"1":{"859":1,"860":1,"861":1,"1940":1,"1941":1},"2":{"841":2,"859":2,"860":2,"865":1,"1049":1,"1064":1,"1101":2,"1403":1,"1792":2,"1935":1}}],["algorithm",{"2":{"363":1,"860":5,"861":2,"1049":2,"1213":1,"1215":4,"1236":4,"1237":2,"1240":1,"1403":2,"1651":2,"1656":2,"1657":2,"1792":7,"1886":2,"1887":2,"1889":1,"1937":1,"1950":1,"1953":1}}],["along",{"2":{"453":1,"841":1,"855":1,"857":1,"863":1,"872":1,"874":1,"915":1,"916":1,"918":1,"1082":1,"1401":1,"1419":1,"1431":1,"1792":1,"1823":1,"2024":1,"2452":1,"2487":1,"2632":1}}],["alongside",{"0":{"354":1,"1068":1},"2":{"409":1,"815":1,"926":1,"1007":1,"1066":1,"1098":1,"1106":1,"1107":1,"1121":1,"1190":1,"1416":1,"1458":3,"1533":1,"1792":6,"1862":1,"1898":2,"2274":1,"2287":1,"2319":1,"2375":2,"2420":1,"2431":2,"2436":1,"2474":1,"2502":1,"2550":1,"2554":1,"2791":1}}],["alone",{"0":{"2453":1},"2":{"436":1,"848":1,"865":1,"869":1,"872":1,"919":1,"1080":1,"1147":1,"1326":1,"1428":1,"1792":1,"2106":1,"2153":1,"2158":1,"2336":1,"2347":1,"2481":1,"2537":1,"2541":1,"2742":1,"2878":1,"2881":1}}],["alike",{"2":{"2871":1}}],["align",{"2":{"2571":1}}],["aligned",{"2":{"2314":1}}],["aligning",{"2":{"2314":1}}],["alignment",{"2":{"965":1}}],["alive",{"2":{"1991":1,"2537":1}}],["alice",{"2":{"332":3,"562":1,"609":2,"611":2,"612":2,"613":1,"614":1,"621":1,"623":1,"762":1,"772":1,"893":2,"913":1,"919":2,"938":3,"970":1,"977":2,"979":2,"980":2,"986":2,"988":2,"990":3,"1051":3,"1061":2,"1218":3,"1233":2,"1305":1,"1307":2,"1313":1,"1369":2,"1375":1,"1419":2,"1973":3,"2009":2,"2040":1,"2179":1,"2180":2,"2339":3,"2587":3,"2842":4}}],["aliased",{"2":{"2301":1}}],["aliases",{"0":{"2295":1,"2343":1},"2":{"768":1,"776":1,"1792":1,"1801":1,"2295":1,"2326":2,"2339":1,"2359":3,"2435":1,"2544":1,"2671":1,"2752":1,"2801":1}}],["alias",{"0":{"2335":1,"2359":1},"2":{"318":1,"326":1,"348":2,"460":1,"753":1,"757":2,"1581":1,"1792":2,"1840":1,"2338":1,"2359":3,"2481":1,"2482":1,"2522":1,"2813":1,"2831":1,"2841":1}}],["almost",{"2":{"214":1,"851":1,"1385":1,"1393":1,"1400":3,"1401":1,"1402":2,"2450":1,"2452":1,"2502":1,"2723":1,"2731":1,"2754":1}}],["always",{"0":{"2403":1},"2":{"39":1,"107":1,"213":1,"214":1,"239":1,"303":1,"308":1,"319":1,"337":1,"377":1,"380":1,"422":1,"446":1,"531":1,"707":1,"713":1,"716":1,"764":1,"774":1,"801":1,"863":3,"864":1,"865":1,"913":3,"918":1,"919":1,"924":1,"933":1,"960":2,"976":3,"977":2,"978":1,"1005":1,"1041":1,"1050":1,"1067":1,"1075":1,"1097":1,"1129":2,"1150":1,"1155":1,"1170":1,"1193":1,"1208":1,"1213":1,"1245":1,"1307":2,"1355":1,"1371":1,"1385":3,"1386":1,"1398":1,"1401":1,"1402":1,"1403":2,"1420":1,"1447":2,"1448":1,"1449":1,"1477":1,"1519":1,"1543":1,"1664":1,"1741":1,"1792":15,"1824":3,"1833":1,"1875":1,"1924":1,"1929":1,"1957":1,"1982":1,"2011":1,"2019":1,"2052":1,"2059":1,"2094":2,"2102":1,"2104":1,"2107":2,"2110":1,"2112":1,"2155":1,"2177":1,"2184":1,"2250":1,"2267":1,"2284":1,"2289":1,"2319":2,"2320":1,"2333":2,"2354":1,"2360":1,"2379":1,"2389":1,"2416":1,"2426":2,"2427":1,"2429":1,"2436":2,"2481":2,"2490":1,"2502":1,"2510":1,"2520":1,"2530":1,"2532":1,"2533":1,"2535":1,"2537":4,"2590":1,"2634":3,"2641":1,"2673":1,"2712":1,"2723":2,"2754":1,"2763":1,"2779":1,"2795":1,"2800":1,"2836":1,"2843":1,"2848":1,"2870":1,"2871":1,"2880":1}}],["also",{"0":{"28":1,"67":1,"100":1,"111":1,"124":1,"143":1,"153":1,"191":1,"200":1,"219":1,"295":1,"432":1,"457":1,"483":1,"580":1,"672":1,"682":1,"727":1,"742":1,"793":1,"806":1,"822":1,"1467":1,"1486":1,"1508":1,"1537":1,"1551":1,"1585":1,"1602":1,"1636":1,"1667":1,"1681":1,"1750":1,"1934":1,"1964":1,"2083":1,"2136":1,"2152":1},"2":{"4":1,"13":1,"14":1,"29":1,"44":1,"55":1,"68":1,"78":1,"91":1,"101":1,"113":1,"125":1,"132":1,"144":1,"159":1,"162":1,"165":1,"182":1,"186":1,"192":1,"212":1,"261":1,"282":1,"296":1,"306":1,"319":1,"324":1,"328":1,"334":1,"339":1,"357":1,"369":1,"385":1,"388":1,"390":1,"408":1,"411":1,"412":1,"433":1,"448":1,"452":1,"454":1,"458":1,"469":1,"473":1,"484":1,"497":1,"507":1,"515":2,"549":1,"569":1,"589":1,"598":1,"607":1,"618":1,"627":1,"636":1,"637":1,"646":1,"649":1,"683":2,"752":1,"768":1,"776":1,"794":1,"823":1,"827":1,"841":1,"843":1,"844":2,"845":1,"868":1,"876":1,"879":1,"911":1,"913":1,"914":2,"917":1,"920":3,"925":1,"946":1,"966":1,"971":1,"975":2,"1007":1,"1036":1,"1038":1,"1042":1,"1065":1,"1069":1,"1070":1,"1077":1,"1098":1,"1102":1,"1107":1,"1182":1,"1208":1,"1254":3,"1258":1,"1327":1,"1351":1,"1367":1,"1382":1,"1385":2,"1386":8,"1390":1,"1391":1,"1394":3,"1395":1,"1396":3,"1398":1,"1400":1,"1405":1,"1475":1,"1477":1,"1504":1,"1558":1,"1569":1,"1609":1,"1689":1,"1738":1,"1759":1,"1792":11,"1819":1,"1822":1,"1830":1,"1912":1,"1961":1,"2000":1,"2010":1,"2030":1,"2039":1,"2079":1,"2094":1,"2102":1,"2109":1,"2110":1,"2111":1,"2162":1,"2185":2,"2193":1,"2200":1,"2221":1,"2222":1,"2252":2,"2253":1,"2254":1,"2256":1,"2273":1,"2282":1,"2293":1,"2314":2,"2323":1,"2325":1,"2330":1,"2335":1,"2340":1,"2388":1,"2395":1,"2446":1,"2481":1,"2483":1,"2495":1,"2496":1,"2500":1,"2518":1,"2525":1,"2530":1,"2532":1,"2533":1,"2537":1,"2545":2,"2580":1,"2591":1,"2596":1,"2626":1,"2633":1,"2653":1,"2661":1,"2665":1,"2695":1,"2719":1,"2726":1,"2755":1,"2764":1,"2775":1,"2779":1,"2795":1,"2828":1,"2832":1,"2833":1,"2835":1,"2855":1,"2871":1}}],["alltogether",{"2":{"2452":1}}],["allegory",{"2":{"913":1,"919":2}}],["alley",{"2":{"841":1}}],["alloc",{"2":{"2397":2}}],["allocated",{"2":{"951":1,"1166":1}}],["allocates",{"2":{"919":1,"1168":1}}],["allocating",{"2":{"948":1,"2397":1,"2614":1}}],["allocations",{"2":{"919":1,"947":1,"951":2,"969":1,"1037":1,"1099":1,"2399":1,"2559":1,"2604":1,"2614":2,"2622":4}}],["allocation",{"0":{"947":1,"951":1,"2397":1,"2622":1},"1":{"948":1,"949":1,"950":1,"951":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1,"2398":1},"2":{"874":1,"969":1,"1007":1,"1037":1,"1275":1,"2226":1,"2309":1,"2372":1,"2397":1,"2398":2,"2399":1,"2400":1,"2604":1,"2614":2}}],["allowempty",{"0":{"2105":1},"2":{"1792":1,"2093":1,"2094":1,"2113":1,"2535":1,"2537":2}}],["allowedimagetypes",{"2":{"1792":1,"2123":1,"2125":1}}],["allowedhosts",{"2":{"1702":1,"1703":1,"1709":1,"1711":1,"1717":1,"1792":1,"2633":1}}],["allowedheaders",{"2":{"1638":1,"1639":1,"1643":1,"1646":2,"1792":1,"2429":1}}],["allowedmethods",{"2":{"1638":1,"1639":1,"1642":1,"1646":2,"1792":1,"2429":1}}],["allowedorigins",{"0":{"1823":1},"2":{"1449":1,"1638":1,"1639":2,"1640":2,"1641":1,"1644":1,"1646":2,"1792":3,"1814":1,"1824":1,"2429":1,"2481":1,"2486":1,"2551":1}}],["allowed",{"0":{"1640":1,"1642":1,"1643":1,"1709":1},"1":{"1641":1},"2":{"382":1,"747":2,"1158":1,"1160":1,"1225":1,"1324":1,"1360":1,"1435":1,"1533":1,"1639":3,"1641":1,"1703":1,"1709":1,"1792":11,"1823":2,"1824":1,"1827":1,"1875":1,"1951":1,"1952":1,"2025":2,"2125":2,"2126":1,"2127":1,"2141":1,"2258":1,"2261":1,"2334":1,"2633":2}}],["allowhostheaderoverride",{"2":{"1792":1,"1994":2}}],["allowresponseheadercompression",{"2":{"1792":1,"1994":2}}],["allowalternateschemes",{"2":{"1792":1,"1994":2}}],["allowinvalid",{"2":{"1792":1,"1988":1}}],["allowing",{"2":{"1646":1,"1792":1,"2282":1,"2310":1,"2362":1,"2383":1,"2554":1,"2776":1}}],["allowcredentialscolumnname",{"2":{"1240":1,"1792":1,"1889":1}}],["allowcredentials",{"2":{"1222":1,"1449":1,"1638":1,"1639":1,"1641":2,"1644":3,"1646":2,"1792":1,"2223":1,"2429":1,"2486":1}}],["allowlist",{"2":{"390":2,"534":1,"1792":1,"1862":1,"2040":2,"2477":1,"2483":2,"2768":1}}],["allowlisted",{"0":{"2483":1},"2":{"212":1,"388":1,"390":3,"394":1,"1738":1,"1862":1,"2223":1,"2483":1,"2764":1,"2768":1}}],["allowsynchronousio",{"2":{"1609":1,"1792":1,"1994":2,"2661":1}}],["allows",{"2":{"10":1,"64":2,"150":1,"286":1,"349":1,"429":1,"463":1,"464":1,"646":1,"851":1,"918":1,"920":1,"928":1,"934":1,"1063":1,"1160":1,"1168":1,"1220":1,"1607":1,"1639":1,"1640":1,"1713":1,"1792":6,"1870":1,"2047":1,"2056":1,"2072":1,"2258":1,"2264":1,"2267":1,"2273":1,"2277":1,"2304":1,"2313":1,"2372":1,"2625":1,"2628":1,"2632":1,"2649":1,"2650":1}}],["allow",{"0":{"4":1,"1641":1,"2201":1},"1":{"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1},"2":{"4":2,"5":1,"7":2,"9":1,"27":2,"224":2,"316":1,"545":3,"747":1,"902":1,"934":1,"940":1,"1012":1,"1096":1,"1098":1,"1199":2,"1222":1,"1230":1,"1234":2,"1240":1,"1254":1,"1358":2,"1371":1,"1415":1,"1427":1,"1431":1,"1447":1,"1458":1,"1465":2,"1500":1,"1558":1,"1604":1,"1631":1,"1639":1,"1641":1,"1642":1,"1643":1,"1693":1,"1723":1,"1757":1,"1792":14,"1824":1,"1837":1,"1880":1,"1884":1,"1889":1,"1898":1,"1994":3,"2016":1,"2018":3,"2021":1,"2023":2,"2125":1,"2175":1,"2189":1,"2201":1,"2214":1,"2323":1,"2329":1,"2380":1,"2431":1,"2436":2,"2540":1,"2629":1,"2632":4,"2728":1,"2762":2,"2764":1,"2821":1,"2824":1}}],["all",{"0":{"566":1,"631":1,"645":1,"734":1,"799":1,"1179":1,"1315":1,"1390":1,"1641":1,"1716":1,"2249":1,"2664":1},"2":{"1":1,"17":1,"22":1,"25":1,"60":1,"64":1,"74":2,"81":1,"84":1,"85":1,"119":2,"168":1,"184":2,"186":2,"213":1,"216":1,"220":2,"244":2,"245":1,"249":2,"258":2,"265":1,"269":2,"285":1,"286":2,"288":1,"291":2,"292":1,"305":1,"306":1,"310":1,"320":1,"323":2,"324":1,"336":1,"369":1,"370":1,"378":1,"384":1,"388":1,"462":1,"470":2,"479":1,"518":1,"540":1,"556":2,"560":1,"585":1,"595":1,"609":1,"615":1,"619":1,"636":1,"638":2,"641":1,"645":1,"646":2,"650":1,"704":1,"737":1,"739":1,"747":2,"748":1,"753":1,"757":1,"768":1,"771":1,"773":1,"774":1,"776":4,"777":2,"779":1,"781":1,"788":3,"789":1,"801":1,"802":1,"823":1,"826":1,"829":3,"831":1,"840":1,"844":1,"845":2,"848":4,"849":2,"851":2,"852":3,"855":2,"857":2,"859":1,"861":1,"863":1,"865":1,"868":2,"871":1,"872":2,"873":1,"874":1,"876":2,"877":1,"880":1,"881":2,"886":1,"887":1,"892":3,"901":2,"904":2,"910":1,"914":1,"916":4,"917":2,"919":1,"920":1,"922":1,"930":1,"933":1,"934":1,"945":1,"947":2,"948":1,"949":2,"967":1,"974":3,"983":1,"991":1,"992":2,"994":1,"1010":1,"1014":1,"1020":1,"1026":1,"1030":1,"1037":1,"1042":1,"1046":1,"1048":1,"1054":1,"1059":1,"1061":1,"1062":1,"1064":2,"1066":2,"1069":1,"1070":2,"1073":1,"1077":2,"1079":1,"1081":1,"1082":1,"1086":1,"1088":1,"1092":1,"1096":1,"1097":3,"1101":1,"1102":1,"1103":1,"1104":1,"1105":3,"1108":1,"1111":1,"1127":2,"1129":1,"1135":1,"1137":1,"1149":2,"1150":2,"1159":1,"1162":1,"1164":1,"1165":1,"1177":1,"1178":2,"1182":1,"1192":1,"1218":1,"1223":1,"1226":1,"1235":1,"1243":1,"1252":1,"1254":1,"1255":3,"1259":1,"1260":1,"1262":1,"1266":1,"1279":1,"1280":1,"1283":1,"1305":2,"1309":2,"1315":1,"1316":1,"1318":1,"1324":2,"1325":1,"1328":1,"1337":1,"1339":1,"1356":1,"1357":3,"1358":1,"1366":1,"1367":1,"1368":2,"1370":1,"1372":1,"1376":1,"1378":1,"1380":2,"1381":1,"1385":4,"1386":5,"1388":2,"1390":1,"1391":1,"1393":1,"1394":1,"1395":1,"1396":4,"1398":3,"1399":1,"1400":1,"1401":1,"1402":1,"1403":6,"1404":1,"1405":1,"1409":1,"1410":1,"1411":1,"1414":1,"1416":1,"1431":1,"1432":1,"1437":1,"1439":1,"1460":1,"1464":1,"1470":1,"1475":2,"1477":2,"1480":1,"1521":1,"1522":1,"1531":1,"1540":2,"1543":1,"1544":2,"1547":2,"1566":1,"1580":1,"1609":1,"1612":1,"1621":1,"1642":1,"1643":1,"1646":1,"1651":1,"1655":1,"1686":1,"1688":1,"1690":2,"1697":1,"1703":1,"1704":1,"1706":1,"1708":1,"1741":1,"1745":1,"1766":1,"1774":1,"1778":1,"1785":2,"1792":43,"1825":1,"1840":2,"1841":1,"1843":1,"1846":2,"1847":1,"1850":1,"1851":1,"1876":1,"1885":1,"1909":1,"1923":1,"1924":1,"1929":1,"1949":1,"1955":2,"1961":1,"1967":1,"1974":1,"1982":1,"1989":1,"1999":1,"2000":1,"2003":3,"2004":1,"2005":1,"2006":2,"2007":1,"2010":1,"2011":1,"2014":1,"2016":1,"2036":3,"2049":2,"2062":1,"2102":1,"2113":1,"2118":1,"2125":2,"2130":1,"2160":1,"2169":1,"2182":1,"2184":1,"2190":1,"2192":1,"2193":1,"2194":1,"2209":3,"2210":1,"2219":1,"2222":2,"2223":1,"2228":1,"2232":1,"2247":1,"2250":1,"2252":2,"2257":3,"2258":1,"2265":1,"2266":1,"2271":2,"2277":2,"2278":1,"2286":1,"2289":1,"2292":2,"2293":2,"2314":2,"2320":1,"2321":1,"2323":2,"2328":1,"2329":1,"2330":4,"2332":1,"2338":3,"2339":1,"2340":1,"2344":1,"2346":1,"2347":1,"2351":1,"2352":1,"2353":1,"2360":1,"2362":1,"2365":1,"2369":1,"2371":1,"2372":1,"2375":1,"2379":1,"2380":2,"2382":2,"2384":1,"2391":2,"2392":1,"2397":1,"2415":1,"2425":1,"2430":1,"2431":1,"2433":1,"2435":3,"2436":1,"2445":1,"2446":1,"2447":1,"2451":2,"2456":1,"2463":1,"2465":1,"2481":1,"2489":1,"2490":1,"2493":1,"2494":2,"2495":1,"2496":1,"2508":1,"2509":1,"2510":1,"2515":1,"2518":3,"2520":1,"2523":1,"2525":1,"2532":1,"2533":1,"2534":1,"2535":2,"2537":1,"2540":1,"2545":1,"2546":1,"2551":1,"2554":1,"2577":3,"2581":2,"2588":1,"2589":1,"2590":1,"2591":1,"2607":2,"2611":1,"2615":3,"2622":1,"2632":3,"2633":1,"2634":3,"2635":4,"2641":1,"2645":1,"2659":1,"2664":1,"2667":1,"2668":1,"2671":1,"2672":1,"2679":1,"2682":1,"2691":1,"2692":1,"2693":1,"2696":1,"2703":1,"2706":2,"2718":1,"2723":1,"2736":1,"2741":1,"2755":1,"2763":1,"2766":1,"2769":1,"2775":1,"2776":1,"2785":3,"2788":1,"2793":2,"2810":1,"2814":1,"2826":3,"2829":1,"2831":2,"2833":1,"2836":1,"2841":2,"2851":1,"2853":1,"2856":1,"2859":2,"2866":1,"2867":1,"2868":2,"2870":1,"2871":1,"2874":1}}],["ate",{"2":{"1792":1}}],["attribution",{"2":{"2531":1}}],["attributed",{"2":{"2531":1}}],["attribute",{"2":{"869":1,"873":1,"1193":2,"1429":1,"1447":2,"1792":4,"1808":1,"2425":1,"2428":1,"2436":2,"2459":1}}],["attributes=prefer",{"2":{"1175":1}}],["attributes",{"0":{"1174":1,"1628":1,"1808":1},"2":{"841":1,"869":2,"873":3,"1176":2,"1428":1,"1572":1,"1807":1,"1808":1,"2266":2,"2419":1,"2429":2,"2804":1}}],["attack",{"2":{"2492":1}}],["attacks",{"0":{"933":1},"2":{"934":1,"1185":1,"1188":1,"1252":1,"1448":1,"1487":1,"1493":1,"1709":1,"1717":1,"1769":1,"1792":7,"1942":1,"2016":1,"2017":1,"2018":1,"2020":1,"2632":3,"2633":1,"2634":1}}],["attackers",{"2":{"1706":1}}],["attacker",{"2":{"927":1,"933":2,"940":1,"941":1,"944":1,"1185":1,"1441":1}}],["attaches",{"2":{"2533":1,"2537":1,"2873":1}}],["attached",{"2":{"841":1,"859":1,"1823":1,"2167":1,"2545":1}}],["attach",{"2":{"1822":1,"2531":1,"2533":1}}],["attaching",{"2":{"711":1,"2873":1}}],["attachment",{"2":{"386":2,"392":1,"492":1,"493":2,"543":1,"544":2,"1189":2,"1373":1}}],["attention",{"2":{"1178":1,"1404":1}}],["attempting",{"2":{"2566":1,"2608":1}}],["attempted",{"2":{"1522":1}}],["attempt",{"2":{"1056":2,"1832":1,"1833":1}}],["attempts",{"2":{"41":2,"310":8,"1152":1,"1623":1,"1792":2,"1958":2,"1959":2,"2468":1,"2470":1,"2471":2}}],["attestationobject",{"2":{"1220":1,"1221":1,"1792":2}}],["attestationconveyance",{"0":{"1230":1,"1880":1},"2":{"1217":1,"1227":1,"1792":1,"1877":1,"1893":1}}],["attestation",{"2":{"868":1,"1211":1,"1215":2,"1230":3,"1237":1,"1238":1,"1243":1,"1792":5,"1880":3,"1887":1,"2492":3}}],["attitude",{"2":{"859":1}}],["atomicity",{"2":{"865":1}}],["atomically",{"2":{"860":1,"2106":1,"2537":1}}],["atomic",{"2":{"7":1,"16":1,"18":1,"19":1,"20":1,"21":1,"37":2,"38":2,"39":2,"40":1,"48":1,"50":1,"60":1,"61":1,"62":1,"71":1,"72":1,"88":1,"104":1,"115":1,"116":1,"117":1,"119":1,"128":1,"136":1,"137":1,"157":1,"206":1,"247":1,"248":1,"249":1,"250":1,"254":1,"255":1,"256":1,"257":1,"288":1,"289":1,"290":1,"291":1,"332":1,"333":1,"334":1,"335":1,"360":1,"361":1,"365":1,"366":1,"374":1,"401":1,"405":1,"406":1,"408":2,"436":1,"438":1,"451":2,"453":1,"466":1,"467":1,"468":1,"469":1,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"503":1,"510":1,"511":1,"520":1,"521":1,"523":1,"539":1,"540":1,"541":1,"542":1,"543":1,"544":1,"545":1,"592":1,"593":1,"594":1,"611":1,"677":1,"679":1,"722":1,"723":1,"733":1,"734":1,"735":1,"736":1,"764":1,"774":1,"797":1,"798":1,"799":1,"811":1,"835":1,"886":1,"904":1,"914":2,"915":1,"916":3,"918":1,"934":1,"935":1,"936":1,"956":1,"974":2,"979":1,"980":1,"982":1,"988":1,"990":1,"994":1,"1054":2,"1055":1,"1057":1,"1058":1,"1113":1,"1135":1,"1138":1,"1139":1,"1141":1,"1142":1,"1149":1,"1179":1,"1188":1,"1192":1,"1308":1,"1310":1,"1331":1,"1337":1,"1345":2,"1357":1,"1362":1,"1368":1,"1438":1,"1547":1,"1632":1,"1655":2,"1920":1,"1973":1,"1974":1,"2076":1,"2078":1,"2079":1,"2775":1,"2822":1}}],["at",{"0":{"981":1,"1023":1,"1265":1,"1390":1,"1460":1,"2405":1,"2750":1,"2751":1},"1":{"982":1,"983":1,"984":1},"2":{"3":1,"21":1,"74":1,"106":1,"108":1,"109":2,"156":1,"168":1,"174":1,"175":1,"179":1,"263":1,"297":1,"308":1,"310":1,"320":1,"322":1,"324":1,"351":1,"372":2,"386":1,"388":1,"390":1,"436":1,"462":1,"527":1,"531":3,"534":1,"566":2,"582":1,"583":1,"584":1,"585":1,"587":3,"646":1,"650":1,"653":1,"654":1,"658":2,"660":2,"661":2,"662":4,"685":3,"694":1,"696":1,"704":1,"706":1,"711":1,"771":1,"817":1,"829":1,"832":1,"835":2,"841":1,"843":2,"844":1,"845":5,"847":2,"848":6,"849":1,"851":3,"852":3,"855":1,"856":3,"857":1,"860":6,"861":1,"863":2,"864":3,"865":1,"867":2,"868":1,"871":3,"872":4,"873":1,"874":1,"876":2,"888":1,"898":1,"910":1,"913":3,"921":2,"922":1,"932":1,"947":2,"948":1,"949":2,"971":1,"973":1,"975":1,"976":1,"977":2,"978":1,"980":3,"982":4,"984":1,"985":1,"989":1,"990":4,"992":1,"995":2,"997":1,"1004":1,"1007":2,"1042":1,"1043":1,"1047":1,"1048":1,"1053":1,"1059":1,"1062":1,"1064":1,"1067":2,"1070":1,"1071":1,"1073":4,"1074":1,"1077":1,"1079":2,"1090":1,"1097":1,"1098":2,"1100":1,"1101":2,"1102":1,"1106":1,"1129":1,"1137":1,"1139":1,"1150":3,"1157":1,"1159":2,"1175":1,"1177":1,"1178":1,"1183":1,"1185":1,"1190":1,"1205":1,"1208":1,"1213":5,"1214":1,"1216":1,"1231":1,"1232":1,"1234":1,"1235":1,"1239":1,"1255":3,"1262":2,"1263":1,"1266":2,"1267":1,"1268":1,"1271":2,"1280":2,"1281":1,"1307":1,"1309":5,"1310":3,"1316":1,"1321":5,"1335":1,"1336":2,"1337":1,"1338":1,"1339":4,"1355":1,"1368":1,"1372":5,"1376":1,"1378":1,"1381":1,"1382":4,"1385":3,"1386":2,"1390":1,"1391":1,"1393":1,"1395":1,"1396":4,"1398":1,"1399":1,"1400":1,"1401":1,"1402":1,"1403":2,"1405":2,"1406":3,"1408":3,"1409":1,"1420":1,"1422":3,"1431":1,"1439":1,"1442":2,"1443":1,"1449":1,"1453":1,"1454":1,"1457":1,"1480":1,"1521":2,"1522":1,"1527":2,"1553":1,"1565":1,"1575":1,"1581":1,"1604":1,"1609":1,"1621":1,"1640":1,"1659":1,"1660":1,"1664":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1714":1,"1722":1,"1792":28,"1802":4,"1823":1,"1824":1,"1825":3,"1831":1,"1833":1,"1844":2,"1851":1,"1852":1,"1856":1,"1861":1,"1862":1,"1881":1,"1924":1,"1929":1,"1955":1,"1956":1,"1957":2,"1958":1,"1961":1,"1974":2,"2003":1,"2007":3,"2012":1,"2038":1,"2040":2,"2094":1,"2097":1,"2098":2,"2107":1,"2108":2,"2110":2,"2113":2,"2140":2,"2145":1,"2146":1,"2148":1,"2164":1,"2165":1,"2171":1,"2175":2,"2177":1,"2191":1,"2192":1,"2199":1,"2224":1,"2226":1,"2258":1,"2283":1,"2291":1,"2297":2,"2318":1,"2319":2,"2324":1,"2328":5,"2337":3,"2344":1,"2347":1,"2359":1,"2360":1,"2364":2,"2366":1,"2371":1,"2372":2,"2375":1,"2377":1,"2379":4,"2380":4,"2381":1,"2382":1,"2383":1,"2384":4,"2389":1,"2392":1,"2394":3,"2405":1,"2410":1,"2412":1,"2414":1,"2415":1,"2424":1,"2425":1,"2428":2,"2443":1,"2450":1,"2452":1,"2456":2,"2463":1,"2464":1,"2466":3,"2470":1,"2474":2,"2476":2,"2481":1,"2483":1,"2486":1,"2493":1,"2494":1,"2496":1,"2510":1,"2518":1,"2530":2,"2531":1,"2532":1,"2533":1,"2534":2,"2535":2,"2537":4,"2554":2,"2565":1,"2575":2,"2577":1,"2607":2,"2621":1,"2629":1,"2705":1,"2717":1,"2721":1,"2731":1,"2737":1,"2740":1,"2741":1,"2744":1,"2750":2,"2754":1,"2764":1,"2775":1,"2794":1,"2795":1,"2798":2,"2802":2,"2803":3,"2804":5,"2809":1,"2829":10,"2830":1,"2831":1,"2832":4,"2833":1,"2836":7,"2840":6,"2841":1,"2845":3,"2846":2,"2854":2,"2860":1,"2861":1,"2867":1,"2868":3,"2871":1,"2874":1,"2875":1,"2879":1,"2880":2}}],["a",{"0":{"75":1,"297":1,"308":1,"309":1,"322":2,"324":1,"352":1,"354":1,"388":1,"393":1,"531":1,"621":1,"711":1,"1042":1,"1054":1,"1183":1,"1187":1,"1302":1,"1406":1,"1408":1,"1430":1,"1431":2,"1442":1,"1725":1,"1727":1,"1771":1,"2063":1,"2176":1,"2178":1,"2187":1,"2378":1,"2379":1,"2392":2,"2394":1,"2395":1,"2534":1,"2582":1,"2694":1,"2732":1,"2733":1,"2740":1,"2741":1,"2742":1,"2752":1,"2762":1,"2801":1,"2813":1,"2815":1,"2821":1,"2829":1,"2836":1},"1":{"389":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1,"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1308":1,"1309":1,"1310":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1,"1407":1,"1408":1,"1409":1,"1410":1,"1411":1,"1412":1,"1413":1,"1414":1,"1415":1,"1416":1,"1417":1,"1418":1,"1419":1,"1420":1,"1421":1,"1422":1,"2177":1,"2178":1},"2":{"0":2,"1":2,"3":2,"7":1,"16":1,"20":3,"22":1,"25":1,"30":1,"34":1,"35":3,"37":1,"41":2,"48":1,"51":1,"57":2,"60":2,"61":1,"63":1,"64":2,"71":1,"74":1,"75":4,"87":2,"101":4,"102":2,"104":1,"106":1,"108":2,"109":2,"115":1,"119":1,"123":1,"128":1,"133":1,"136":1,"140":1,"144":1,"150":1,"156":1,"157":1,"168":4,"169":1,"171":1,"174":2,"175":1,"176":2,"177":2,"184":1,"188":2,"201":1,"202":3,"203":1,"206":3,"209":1,"212":8,"213":1,"214":16,"215":7,"223":2,"227":2,"230":1,"238":1,"239":3,"241":1,"243":1,"244":1,"247":1,"252":2,"261":1,"282":1,"286":1,"288":1,"296":2,"297":5,"298":5,"299":4,"302":2,"303":2,"304":3,"305":2,"306":3,"307":3,"308":4,"309":4,"310":1,"312":2,"313":3,"317":5,"318":1,"319":4,"320":6,"322":2,"323":1,"325":1,"326":3,"327":4,"330":2,"347":1,"348":1,"349":1,"351":1,"352":2,"355":1,"360":1,"363":1,"364":2,"376":3,"377":2,"378":1,"382":2,"383":6,"384":1,"386":4,"387":2,"388":6,"389":7,"390":16,"395":4,"396":1,"397":1,"401":1,"408":2,"414":4,"415":2,"421":1,"422":1,"423":2,"426":1,"429":1,"433":1,"435":2,"436":7,"438":2,"445":1,"446":4,"447":1,"448":2,"453":3,"454":1,"466":1,"473":2,"476":1,"477":1,"479":1,"480":3,"487":1,"491":1,"492":1,"499":1,"503":1,"510":1,"512":1,"520":1,"527":8,"528":6,"529":2,"531":4,"533":1,"534":3,"535":1,"537":1,"539":1,"551":1,"560":1,"562":1,"565":1,"567":4,"569":1,"570":1,"575":1,"581":3,"582":1,"583":1,"585":2,"586":1,"587":1,"592":1,"607":3,"609":2,"613":1,"615":2,"618":3,"619":1,"625":1,"639":1,"641":1,"646":1,"650":10,"654":1,"659":2,"663":3,"664":1,"665":1,"666":2,"669":3,"675":2,"677":1,"679":1,"683":2,"685":1,"689":1,"690":2,"691":1,"693":3,"694":2,"695":4,"698":2,"699":2,"701":2,"704":3,"705":1,"706":1,"708":1,"711":3,"720":2,"722":1,"733":1,"743":1,"747":4,"750":1,"751":1,"759":1,"763":1,"769":1,"772":1,"773":1,"778":2,"797":1,"809":1,"811":1,"817":1,"819":1,"823":1,"826":1,"831":3,"832":2,"833":4,"834":8,"835":12,"836":4,"837":3,"838":4,"840":4,"841":27,"843":5,"844":6,"845":17,"847":9,"848":23,"849":8,"851":24,"852":29,"854":3,"855":6,"856":5,"857":11,"859":6,"860":19,"861":7,"863":10,"864":10,"865":7,"866":3,"867":1,"868":8,"869":12,"871":11,"872":13,"873":14,"874":7,"875":3,"876":23,"877":8,"878":4,"879":3,"880":1,"881":1,"882":1,"885":2,"886":1,"887":1,"894":1,"901":1,"903":2,"904":3,"910":5,"912":1,"913":5,"914":4,"915":2,"916":16,"917":1,"918":6,"919":7,"920":4,"921":2,"922":2,"924":1,"926":1,"927":3,"928":1,"930":1,"932":2,"933":6,"934":1,"938":1,"946":3,"947":3,"948":5,"949":2,"951":2,"956":1,"957":2,"959":3,"961":5,"964":1,"965":1,"967":2,"968":1,"969":1,"971":4,"972":2,"973":2,"974":4,"975":1,"976":3,"977":1,"979":2,"980":2,"982":3,"983":4,"984":1,"985":1,"986":4,"988":3,"989":1,"990":4,"991":1,"992":2,"993":1,"994":3,"995":1,"996":3,"997":2,"1005":3,"1008":1,"1009":2,"1010":4,"1011":3,"1013":1,"1014":2,"1016":1,"1020":2,"1023":1,"1024":1,"1026":1,"1029":1,"1036":1,"1037":16,"1038":8,"1039":6,"1040":3,"1041":6,"1042":2,"1043":5,"1044":4,"1045":6,"1046":1,"1048":2,"1049":1,"1050":2,"1051":1,"1053":1,"1054":1,"1059":1,"1060":1,"1061":2,"1064":4,"1065":2,"1066":1,"1067":10,"1068":5,"1069":5,"1070":8,"1071":1,"1073":14,"1074":6,"1075":9,"1076":2,"1077":3,"1078":3,"1079":13,"1080":9,"1081":5,"1082":1,"1083":3,"1084":4,"1086":9,"1087":2,"1088":5,"1090":2,"1094":3,"1095":6,"1096":7,"1098":8,"1099":3,"1100":1,"1101":5,"1102":9,"1104":2,"1105":9,"1106":3,"1107":5,"1108":7,"1111":9,"1114":1,"1115":4,"1121":4,"1122":1,"1123":2,"1127":7,"1128":1,"1129":3,"1130":2,"1132":2,"1133":3,"1134":2,"1135":8,"1137":2,"1138":1,"1139":2,"1141":2,"1142":2,"1147":1,"1150":8,"1152":1,"1157":2,"1160":1,"1161":2,"1162":12,"1164":2,"1165":2,"1172":1,"1174":1,"1175":1,"1176":1,"1177":1,"1179":1,"1181":2,"1183":4,"1185":4,"1187":1,"1188":1,"1190":4,"1191":1,"1192":5,"1193":4,"1195":1,"1197":1,"1199":2,"1200":2,"1203":3,"1204":2,"1205":1,"1206":4,"1208":1,"1209":4,"1210":5,"1211":4,"1217":1,"1218":2,"1219":2,"1220":2,"1221":1,"1223":1,"1224":1,"1233":1,"1238":1,"1251":1,"1252":1,"1253":1,"1254":1,"1259":1,"1262":1,"1279":1,"1281":3,"1302":5,"1303":2,"1305":3,"1308":1,"1317":1,"1318":1,"1324":5,"1326":1,"1328":2,"1329":2,"1331":3,"1332":1,"1334":1,"1335":3,"1342":1,"1343":1,"1349":1,"1351":2,"1355":2,"1359":1,"1360":2,"1361":1,"1362":1,"1363":2,"1366":1,"1367":1,"1368":4,"1369":1,"1370":3,"1372":2,"1373":3,"1374":1,"1375":3,"1376":2,"1378":4,"1381":5,"1382":22,"1384":4,"1385":14,"1386":19,"1387":1,"1388":6,"1389":4,"1390":3,"1391":5,"1392":3,"1393":5,"1394":9,"1395":7,"1396":6,"1398":9,"1399":3,"1400":7,"1401":8,"1402":7,"1403":17,"1404":6,"1405":10,"1406":2,"1407":3,"1408":1,"1409":7,"1410":6,"1411":2,"1412":3,"1413":3,"1414":3,"1415":3,"1416":4,"1417":2,"1418":1,"1419":3,"1420":3,"1422":4,"1423":7,"1424":3,"1426":3,"1428":2,"1429":3,"1430":4,"1431":7,"1432":3,"1433":1,"1434":1,"1435":5,"1436":2,"1437":2,"1438":1,"1441":5,"1442":1,"1443":2,"1449":1,"1452":1,"1455":1,"1456":2,"1458":6,"1459":3,"1460":4,"1464":1,"1491":1,"1492":1,"1503":1,"1504":2,"1511":2,"1515":1,"1516":1,"1517":2,"1522":3,"1523":2,"1527":3,"1528":1,"1531":1,"1533":1,"1535":1,"1547":1,"1567":4,"1569":3,"1570":1,"1572":4,"1573":1,"1574":2,"1577":2,"1581":2,"1582":3,"1604":1,"1605":2,"1609":1,"1616":1,"1618":1,"1629":1,"1632":2,"1633":2,"1651":3,"1654":1,"1655":3,"1661":1,"1670":1,"1672":2,"1676":1,"1677":1,"1678":1,"1685":1,"1686":1,"1688":1,"1689":2,"1690":1,"1701":1,"1704":1,"1706":2,"1722":1,"1723":2,"1725":1,"1726":1,"1727":5,"1728":1,"1738":9,"1741":1,"1743":12,"1745":1,"1746":1,"1758":1,"1759":3,"1764":1,"1767":1,"1768":3,"1771":3,"1774":1,"1785":1,"1792":197,"1801":1,"1804":1,"1813":1,"1817":1,"1819":1,"1821":1,"1822":6,"1823":4,"1824":18,"1825":2,"1827":2,"1830":1,"1832":1,"1833":2,"1834":5,"1840":2,"1844":2,"1851":1,"1852":6,"1855":1,"1856":2,"1861":2,"1862":5,"1868":4,"1869":2,"1870":2,"1871":1,"1874":1,"1875":1,"1908":1,"1911":3,"1912":2,"1915":1,"1917":2,"1920":2,"1923":1,"1924":3,"1925":10,"1929":4,"1948":1,"1949":1,"1951":2,"1952":3,"1953":2,"1954":2,"1955":6,"1956":1,"1957":6,"1958":4,"1959":3,"1961":4,"1968":1,"1974":7,"1983":1,"1989":1,"1995":1,"2000":1,"2002":2,"2007":3,"2012":1,"2016":3,"2017":1,"2018":1,"2020":1,"2024":1,"2038":1,"2039":1,"2040":10,"2047":3,"2055":1,"2056":1,"2061":1,"2063":2,"2075":2,"2076":1,"2092":2,"2094":3,"2096":2,"2097":2,"2098":3,"2101":2,"2102":2,"2103":1,"2105":1,"2106":8,"2107":5,"2109":3,"2110":7,"2111":8,"2112":4,"2113":2,"2114":1,"2128":1,"2130":1,"2142":1,"2144":3,"2146":5,"2147":1,"2148":2,"2149":1,"2153":1,"2154":1,"2156":8,"2157":4,"2158":2,"2161":1,"2164":6,"2165":1,"2166":3,"2167":5,"2170":2,"2171":6,"2172":1,"2174":1,"2175":2,"2176":6,"2177":6,"2178":1,"2179":2,"2180":1,"2181":2,"2183":2,"2184":2,"2185":5,"2187":4,"2192":1,"2195":2,"2200":1,"2207":2,"2212":1,"2218":1,"2220":1,"2221":2,"2222":6,"2223":2,"2224":5,"2226":4,"2227":1,"2254":2,"2255":5,"2256":2,"2264":6,"2265":7,"2266":3,"2271":2,"2272":1,"2274":2,"2283":2,"2287":1,"2289":1,"2296":2,"2297":2,"2300":3,"2302":2,"2303":1,"2310":2,"2313":1,"2317":2,"2318":1,"2319":5,"2320":3,"2322":1,"2328":2,"2330":2,"2332":1,"2333":3,"2334":2,"2335":1,"2336":1,"2337":4,"2338":2,"2339":5,"2340":1,"2344":1,"2346":2,"2347":3,"2348":2,"2357":1,"2360":1,"2363":1,"2364":1,"2366":1,"2371":2,"2372":1,"2375":12,"2376":1,"2377":2,"2378":1,"2379":12,"2380":11,"2381":3,"2382":1,"2383":7,"2384":2,"2385":2,"2389":5,"2391":6,"2392":2,"2393":2,"2394":5,"2395":8,"2396":1,"2397":4,"2398":4,"2399":1,"2400":2,"2401":1,"2402":3,"2404":1,"2405":4,"2407":4,"2410":2,"2411":1,"2412":1,"2413":1,"2414":4,"2415":1,"2416":3,"2419":5,"2420":2,"2421":2,"2422":3,"2423":3,"2424":4,"2425":2,"2428":1,"2429":4,"2430":5,"2432":2,"2434":2,"2437":6,"2438":14,"2440":1,"2441":1,"2443":1,"2444":2,"2445":2,"2446":1,"2450":4,"2451":4,"2452":5,"2453":4,"2455":1,"2456":1,"2459":5,"2461":6,"2462":1,"2463":4,"2464":4,"2465":1,"2466":12,"2468":3,"2470":4,"2471":3,"2472":4,"2476":11,"2477":2,"2479":3,"2481":28,"2482":14,"2483":6,"2486":1,"2489":6,"2490":5,"2491":4,"2492":4,"2493":5,"2494":1,"2495":5,"2496":2,"2497":6,"2498":2,"2500":2,"2502":15,"2504":6,"2505":5,"2506":1,"2509":3,"2510":1,"2511":3,"2512":1,"2513":3,"2515":2,"2517":7,"2518":4,"2519":4,"2520":3,"2523":2,"2525":2,"2526":1,"2527":7,"2528":10,"2529":15,"2530":12,"2531":11,"2532":20,"2533":15,"2534":8,"2535":2,"2536":1,"2537":25,"2539":2,"2540":10,"2542":7,"2543":9,"2544":2,"2545":5,"2546":9,"2549":1,"2554":3,"2569":1,"2572":1,"2575":2,"2577":1,"2586":5,"2587":2,"2588":3,"2590":1,"2596":1,"2597":1,"2607":7,"2608":2,"2614":2,"2615":1,"2621":2,"2632":3,"2633":5,"2634":8,"2635":4,"2649":1,"2650":1,"2651":1,"2655":2,"2662":1,"2663":2,"2664":3,"2665":2,"2667":1,"2670":1,"2671":1,"2678":3,"2679":2,"2682":2,"2684":1,"2688":2,"2689":1,"2693":1,"2694":1,"2695":4,"2700":2,"2701":1,"2709":1,"2712":1,"2713":1,"2714":1,"2716":1,"2721":3,"2722":2,"2723":3,"2725":4,"2726":2,"2727":2,"2729":2,"2732":5,"2733":2,"2734":1,"2737":1,"2739":2,"2740":2,"2741":1,"2742":3,"2744":1,"2750":1,"2751":1,"2754":1,"2755":2,"2758":1,"2759":5,"2760":3,"2762":5,"2763":1,"2764":3,"2766":1,"2767":1,"2768":2,"2770":1,"2771":1,"2772":4,"2774":4,"2775":1,"2785":1,"2789":2,"2790":1,"2791":1,"2794":2,"2798":1,"2801":1,"2802":1,"2803":6,"2804":3,"2806":6,"2807":1,"2809":2,"2810":2,"2811":4,"2812":5,"2813":2,"2814":1,"2815":6,"2816":1,"2817":1,"2818":1,"2819":1,"2821":3,"2822":1,"2823":1,"2825":1,"2827":4,"2828":12,"2829":4,"2830":4,"2833":5,"2834":4,"2835":6,"2836":5,"2839":1,"2840":1,"2841":3,"2842":2,"2845":6,"2847":2,"2848":2,"2850":3,"2852":1,"2854":4,"2855":4,"2856":1,"2857":3,"2860":4,"2861":2,"2862":6,"2863":3,"2864":4,"2865":12,"2866":2,"2867":3,"2868":7,"2869":5,"2870":1,"2871":9,"2872":2,"2873":11,"2876":3,"2878":9,"2879":4,"2880":1,"2881":8}}],["angeles",{"2":{"2453":1,"2456":1}}],["analogue",{"2":{"2537":1,"2879":1}}],["analyst",{"2":{"1179":1,"1196":1}}],["analysts",{"2":{"836":1,"837":1,"1184":1}}],["analysis",{"0":{"1334":1,"1339":1},"1":{"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1},"2":{"909":1,"1206":1,"1254":1,"1259":1,"1328":1,"1332":2,"1335":4,"1336":3,"1338":4,"1339":5,"1342":1,"1403":1,"2054":1,"2635":1,"2664":1,"2815":2}}],["analyzed",{"2":{"2318":1,"2324":1}}],["analyzesentiment",{"2":{"1335":2}}],["analyze",{"2":{"841":1,"1335":1,"1339":3,"1342":2,"2050":1}}],["analyticsdata",{"2":{"1241":1,"1792":3,"1890":1}}],["analytics",{"0":{"1241":1,"1890":1},"2":{"147":2,"1060":2,"1067":1,"1150":1,"1176":3,"1216":1,"1237":2,"1239":7,"1241":1,"1244":1,"1614":1,"1632":1,"1684":2,"1687":1,"1689":2,"1704":1,"1792":8,"1887":2,"1888":2,"1890":1,"2040":1,"2474":1,"2496":1}}],["anatomy",{"0":{"2528":1,"2863":1},"1":{"2864":1,"2865":1,"2866":1,"2867":1,"2868":1},"2":{"2092":1}}],["animation",{"2":{"1685":1}}],["animal",{"2":{"335":2,"913":1,"918":2,"919":2,"2586":3}}],["anchoring",{"2":{"2435":1}}],["anchored",{"2":{"872":1,"1792":1,"1898":1,"1909":1}}],["ancestors",{"2":{"1493":1,"2028":1}}],["ancient",{"2":{"1443":1}}],["anti",{"2":{"1564":1,"1792":3}}],["anticipate",{"2":{"1080":1}}],["antiforgeryfieldname",{"2":{"1792":2,"2033":2,"2037":2,"2038":2,"2039":1,"2042":2}}],["antiforgerytoken",{"2":{"1792":3,"2033":2,"2037":2,"2038":2,"2039":1,"2042":2}}],["antiforgery",{"0":{"1487":1},"1":{"1488":1,"1489":1,"1490":1,"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1},"2":{"868":1,"869":1,"1487":1,"1488":1,"1489":2,"1490":1,"1494":2,"1649":1,"1651":1,"1788":1,"1792":18,"1795":1,"2018":2,"2030":1,"2038":2,"2044":1,"2353":2,"2438":2,"2632":5,"2701":1}}],["ant",{"2":{"1044":1}}],["anthropic",{"2":{"1044":1}}],["ansi",{"2":{"848":3,"860":1}}],["answers",{"2":{"838":2,"876":1,"1427":1,"1431":1,"2795":1,"2831":1}}],["answer",{"2":{"831":1,"838":1,"844":1,"852":1,"863":1,"1075":1,"1079":1,"1082":1,"1401":1,"1424":1,"1435":1,"2804":1}}],["anniversary",{"0":{"839":1},"1":{"840":1,"841":1,"842":1,"843":1,"844":1,"845":1,"846":1,"847":1,"848":1,"849":1,"850":1,"851":1,"852":1,"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"859":1,"860":1,"861":1,"862":1,"863":1,"864":1,"865":1}}],["announcements",{"2":{"645":1}}],["announcement",{"2":{"645":1,"1315":1,"2882":1}}],["annotate",{"2":{"663":2,"1037":1,"1095":1,"1141":1,"2183":1,"2184":1,"2725":1,"2745":1}}],["annotated",{"2":{"582":1,"587":1,"664":1,"868":1,"871":1,"1305":2,"1722":1,"1792":10,"1861":1,"2171":1,"2176":1,"2264":10,"2337":1,"2389":1,"2420":1,"2423":1,"2481":1,"2534":1,"2754":1}}],["annotations",{"0":{"12":1,"27":1,"43":1,"54":1,"66":1,"77":1,"90":1,"99":1,"123":1,"131":1,"142":1,"152":1,"190":1,"199":1,"218":1,"220":1,"237":1,"238":1,"239":1,"260":1,"276":1,"294":1,"316":1,"346":1,"368":1,"411":1,"416":1,"440":1,"472":1,"482":1,"496":1,"506":1,"514":1,"526":1,"543":1,"548":1,"558":1,"579":1,"597":1,"606":1,"635":1,"648":1,"671":1,"681":1,"726":1,"741":1,"792":1,"805":1,"821":1,"1138":1,"1189":1,"1411":1,"1530":1,"1599":1,"1664":1,"2147":1,"2190":1,"2191":1,"2198":1,"2207":1,"2208":1,"2252":1,"2291":1,"2323":1,"2331":1,"2365":1,"2391":1,"2533":1,"2581":1,"2671":1,"2852":1,"2870":1},"1":{"221":1,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"237":1,"238":1,"239":1,"240":1,"277":1,"278":1,"417":1,"418":1,"419":1,"420":1,"421":1,"441":1,"442":1,"443":1,"444":1,"445":1,"1412":1,"1413":1,"1414":1,"1415":1,"1531":1,"1532":1,"1533":1,"2191":1,"2192":2,"2193":2,"2194":2,"2195":1,"2196":1,"2197":1,"2198":1,"2199":2,"2200":2,"2201":2,"2202":1,"2203":1,"2204":1,"2205":1,"2206":1,"2207":1,"2208":1,"2209":1,"2210":1,"2211":1,"2212":1,"2213":1,"2214":1,"2215":1,"2216":1,"2217":1,"2218":1,"2219":1,"2292":1,"2293":1,"2294":1,"2295":1,"2296":1,"2297":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1},"2":{"11":2,"23":1,"26":2,"42":2,"53":2,"62":1,"65":2,"76":2,"89":2,"98":2,"101":1,"105":1,"122":2,"130":2,"141":2,"151":2,"156":1,"158":1,"159":1,"162":1,"164":2,"176":1,"181":1,"189":2,"198":2,"217":2,"220":6,"221":1,"223":1,"259":2,"261":1,"267":1,"281":2,"293":2,"319":1,"320":1,"327":2,"338":2,"345":2,"356":2,"367":2,"378":1,"385":2,"386":2,"387":2,"396":2,"410":2,"438":1,"470":1,"471":2,"481":2,"495":2,"505":2,"513":2,"515":1,"525":2,"544":1,"547":2,"556":1,"557":2,"560":1,"568":2,"577":1,"578":2,"587":1,"588":2,"596":2,"605":2,"617":2,"619":1,"626":2,"634":2,"647":2,"659":1,"670":2,"680":2,"683":2,"687":2,"706":1,"708":1,"712":1,"718":1,"725":2,"740":2,"790":2,"804":2,"815":1,"817":1,"820":2,"830":2,"868":1,"873":1,"910":1,"964":1,"1037":1,"1065":1,"1080":1,"1086":1,"1098":1,"1100":1,"1104":1,"1105":1,"1108":1,"1125":2,"1126":2,"1135":1,"1138":1,"1174":1,"1181":1,"1195":1,"1196":1,"1208":1,"1304":1,"1309":1,"1327":1,"1358":2,"1366":1,"1371":1,"1386":2,"1398":1,"1401":3,"1406":2,"1407":1,"1411":1,"1465":2,"1484":2,"1495":2,"1506":2,"1511":1,"1530":1,"1535":2,"1549":2,"1576":1,"1580":1,"1583":2,"1600":2,"1610":2,"1634":2,"1647":2,"1649":1,"1651":1,"1664":1,"1665":3,"1679":2,"1699":2,"1748":2,"1760":2,"1792":22,"1802":1,"1811":2,"1816":1,"1834":2,"1840":3,"1843":1,"1855":1,"1864":2,"1913":2,"1917":1,"1932":2,"1945":2,"1961":1,"1962":2,"1976":2,"1996":2,"2000":2,"2004":2,"2005":1,"2043":2,"2074":1,"2079":1,"2081":2,"2090":2,"2094":1,"2111":1,"2114":1,"2120":2,"2133":2,"2139":1,"2150":2,"2156":1,"2169":2,"2185":1,"2189":1,"2190":3,"2191":1,"2192":3,"2193":2,"2198":1,"2207":2,"2208":1,"2209":3,"2210":1,"2219":2,"2221":1,"2226":1,"2230":1,"2237":1,"2249":1,"2252":5,"2255":1,"2257":2,"2267":1,"2282":1,"2291":1,"2318":1,"2323":5,"2333":1,"2340":2,"2346":1,"2348":1,"2353":2,"2365":3,"2366":1,"2378":1,"2380":1,"2388":1,"2389":1,"2391":1,"2407":1,"2481":1,"2482":1,"2487":1,"2531":1,"2533":3,"2537":1,"2540":3,"2542":1,"2549":1,"2581":3,"2586":1,"2591":1,"2596":1,"2653":1,"2654":1,"2671":2,"2679":1,"2706":3,"2731":1,"2749":1,"2772":1,"2773":1,"2785":3,"2793":3,"2814":1,"2826":3,"2840":1,"2845":3,"2852":1,"2856":1,"2869":1,"2870":1,"2873":2,"2882":1}}],["annotation",{"0":{"40":1,"222":1,"747":1,"753":1,"757":1,"768":1,"776":1,"890":1,"957":1,"960":1,"1358":1,"1862":1,"2195":1,"2295":1,"2300":1,"2314":1,"2332":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2343":1,"2344":1,"2366":1,"2380":1,"2432":1,"2483":1,"2487":1,"2591":1},"1":{"223":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"237":1,"238":1,"239":1,"240":1,"891":1,"892":1,"2196":1,"2197":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2342":1,"2343":1,"2381":1},"2":{"1":1,"31":3,"38":1,"41":3,"52":1,"63":2,"101":1,"102":1,"109":1,"110":1,"121":1,"133":1,"165":1,"167":1,"170":1,"215":1,"221":1,"244":3,"277":1,"296":1,"306":1,"309":1,"317":2,"319":1,"327":2,"330":1,"332":1,"335":2,"336":2,"337":1,"347":1,"356":3,"357":1,"364":2,"369":2,"386":1,"387":2,"395":1,"397":1,"409":1,"414":2,"422":2,"423":2,"430":1,"435":1,"436":3,"446":6,"452":1,"458":1,"527":1,"529":1,"534":1,"559":1,"560":1,"565":2,"567":2,"581":1,"582":1,"609":1,"616":1,"619":1,"624":1,"646":3,"650":1,"666":1,"667":1,"686":1,"693":2,"703":1,"704":1,"706":1,"708":2,"709":1,"711":2,"713":1,"714":1,"745":1,"868":3,"869":4,"876":1,"886":1,"910":1,"917":1,"934":2,"935":1,"947":1,"949":1,"957":1,"968":1,"1027":1,"1037":1,"1038":1,"1040":1,"1047":1,"1055":1,"1057":2,"1060":1,"1086":2,"1097":1,"1099":1,"1100":1,"1101":1,"1108":2,"1111":1,"1127":1,"1135":2,"1150":1,"1176":1,"1179":1,"1181":5,"1182":4,"1183":1,"1189":1,"1195":1,"1196":1,"1305":1,"1308":1,"1309":1,"1311":1,"1316":1,"1328":1,"1331":1,"1351":1,"1352":2,"1357":1,"1358":1,"1366":1,"1367":2,"1374":1,"1382":3,"1396":1,"1405":1,"1408":1,"1410":1,"1414":1,"1415":1,"1416":1,"1422":1,"1427":1,"1465":4,"1472":1,"1484":2,"1506":3,"1511":1,"1519":1,"1521":2,"1527":1,"1533":1,"1535":3,"1540":2,"1544":2,"1549":2,"1573":2,"1583":1,"1588":1,"1599":1,"1600":1,"1634":1,"1664":1,"1665":1,"1670":1,"1672":1,"1679":2,"1686":1,"1699":3,"1747":1,"1748":2,"1792":27,"1811":1,"1813":1,"1822":1,"1824":1,"1827":1,"1834":3,"1837":1,"1840":4,"1844":1,"1858":2,"1860":3,"1861":1,"1862":1,"1864":8,"1908":1,"1910":1,"1913":2,"1917":2,"1922":1,"1929":3,"1930":1,"1932":3,"1947":1,"1949":1,"1951":1,"1959":1,"1962":1,"1973":1,"2000":1,"2004":2,"2006":1,"2008":1,"2010":2,"2072":1,"2075":2,"2077":2,"2081":1,"2097":3,"2133":1,"2143":1,"2147":1,"2150":1,"2156":1,"2167":1,"2191":1,"2192":1,"2193":1,"2194":2,"2195":2,"2200":1,"2206":1,"2208":1,"2209":1,"2212":1,"2216":1,"2217":2,"2223":4,"2225":1,"2228":1,"2229":2,"2247":1,"2251":1,"2253":1,"2257":1,"2258":1,"2273":1,"2283":1,"2284":1,"2295":1,"2302":1,"2308":1,"2314":1,"2319":2,"2320":1,"2321":1,"2323":1,"2325":1,"2327":1,"2329":1,"2330":2,"2332":2,"2333":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":2,"2343":1,"2365":2,"2366":6,"2372":1,"2380":5,"2381":1,"2391":2,"2392":1,"2407":2,"2419":1,"2430":1,"2432":1,"2433":1,"2435":2,"2437":2,"2438":1,"2466":1,"2471":1,"2481":3,"2482":1,"2483":1,"2487":3,"2490":1,"2493":1,"2494":1,"2518":1,"2531":1,"2533":3,"2537":1,"2539":1,"2542":1,"2545":1,"2546":1,"2575":1,"2580":1,"2587":2,"2591":2,"2597":1,"2611":1,"2629":1,"2641":1,"2650":1,"2721":4,"2722":1,"2727":1,"2732":1,"2795":1,"2797":2,"2798":1,"2808":1,"2811":3,"2814":1,"2824":3,"2825":1,"2828":1,"2831":1,"2832":1,"2835":1,"2841":2,"2843":2,"2846":1,"2848":1,"2849":1,"2854":1,"2861":1,"2869":1,"2870":1}}],["another",{"2":{"24":1,"237":1,"357":1,"385":1,"421":1,"445":1,"707":1,"717":1,"833":1,"840":1,"841":1,"844":1,"848":1,"852":1,"864":1,"872":1,"873":1,"919":1,"948":2,"1011":1,"1133":1,"1138":1,"1196":2,"1270":1,"1385":1,"1386":1,"1390":2,"1401":2,"1402":1,"1403":1,"1409":1,"1418":1,"1429":1,"1433":1,"1571":1,"1792":3,"1929":1,"1974":1,"2202":2,"2346":1,"2527":1,"2607":1,"2759":1,"2760":1,"2767":1,"2811":1,"2830":1,"2862":1}}],["anonymize",{"2":{"1792":1}}],["anonymized",{"2":{"866":1,"1230":1,"1880":1}}],["anonymously",{"2":{"1825":1,"2481":1}}],["anonymous",{"0":{"4":1,"2201":1,"2824":1},"1":{"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1},"2":{"4":1,"5":1,"7":2,"9":1,"27":1,"224":1,"298":3,"309":1,"312":2,"313":1,"316":1,"479":1,"690":1,"710":1,"798":1,"934":2,"994":1,"996":2,"1005":1,"1045":1,"1055":1,"1069":5,"1076":1,"1077":1,"1098":1,"1101":1,"1162":3,"1308":1,"1371":1,"1394":2,"1396":1,"1427":1,"1431":1,"1458":1,"1465":1,"1620":1,"1792":5,"1827":1,"1833":1,"1898":1,"1955":1,"1956":1,"1957":1,"1960":1,"2175":1,"2176":3,"2183":1,"2187":3,"2189":1,"2201":1,"2214":1,"2319":1,"2323":1,"2329":1,"2379":4,"2420":1,"2421":1,"2422":1,"2428":1,"2481":1,"2490":1,"2498":1,"2529":1,"2540":2,"2728":1,"2762":2,"2764":1,"2821":1,"2824":3,"2865":1}}],["anon",{"2":{"4":2,"8":1,"1162":2,"1955":1,"2379":1}}],["any>",{"2":{"1574":1}}],["anywhere",{"2":{"848":1,"852":1,"994":1,"1441":1,"1607":1,"2662":1}}],["anyway",{"0":{"855":1},"2":{"841":2,"861":1,"873":1,"992":1,"1386":1,"1402":1,"2528":1}}],["anymore",{"2":{"843":1,"1386":2,"1401":1,"1405":1,"2253":1}}],["anything",{"2":{"308":1,"527":1,"841":1,"864":1,"876":2,"1011":1,"1067":1,"1073":1,"1081":1,"1095":1,"1096":1,"1139":1,"1162":1,"1386":1,"1438":1,"1441":1,"1651":1,"1655":1,"1792":3,"2040":1,"2111":1,"2171":1,"2177":1,"2180":1,"2185":1,"2395":1,"2411":1,"2450":1,"2452":1,"2477":1,"2542":1,"2728":1,"2795":1,"2874":1}}],["any",{"0":{"16":1,"2729":1},"2":{"22":1,"40":1,"74":1,"104":1,"105":1,"165":1,"168":1,"212":1,"213":2,"214":1,"301":1,"302":1,"308":2,"319":1,"334":1,"337":1,"388":1,"390":1,"408":1,"436":1,"448":2,"480":1,"528":1,"582":1,"587":1,"625":1,"643":1,"644":1,"664":1,"668":1,"669":1,"687":1,"690":1,"691":1,"760":2,"761":1,"763":1,"770":2,"771":1,"773":1,"777":1,"807":1,"829":1,"834":1,"841":1,"844":2,"845":2,"848":4,"851":2,"863":1,"864":2,"867":1,"868":1,"869":1,"871":1,"872":1,"873":1,"876":1,"882":1,"888":1,"901":1,"903":1,"918":1,"919":2,"922":1,"926":1,"928":1,"934":1,"947":2,"966":1,"971":1,"978":1,"982":2,"989":1,"996":1,"997":1,"1005":1,"1015":1,"1017":1,"1024":2,"1032":1,"1049":2,"1057":1,"1063":1,"1067":1,"1068":2,"1070":1,"1076":1,"1078":1,"1079":1,"1084":1,"1086":1,"1088":1,"1094":2,"1097":1,"1099":1,"1104":1,"1121":1,"1132":1,"1133":1,"1138":1,"1174":5,"1206":1,"1228":1,"1230":1,"1232":1,"1239":1,"1325":1,"1335":1,"1342":1,"1351":1,"1363":1,"1378":2,"1384":1,"1385":4,"1386":3,"1388":1,"1390":1,"1391":1,"1393":1,"1396":1,"1398":2,"1399":1,"1401":2,"1402":1,"1403":2,"1409":1,"1410":1,"1416":1,"1419":1,"1422":1,"1453":1,"1457":1,"1458":1,"1464":2,"1526":1,"1527":1,"1553":1,"1559":1,"1581":2,"1606":1,"1617":1,"1621":1,"1628":5,"1641":1,"1662":1,"1697":1,"1708":1,"1709":1,"1740":1,"1741":1,"1792":34,"1802":1,"1850":1,"1875":1,"1880":1,"1909":1,"1958":1,"1967":1,"1974":1,"2002":2,"2003":2,"2021":1,"2025":1,"2036":1,"2040":1,"2047":1,"2094":1,"2097":1,"2098":1,"2106":1,"2111":1,"2137":1,"2160":1,"2162":1,"2184":1,"2199":1,"2200":1,"2247":2,"2266":6,"2288":1,"2289":1,"2320":1,"2335":1,"2343":1,"2371":4,"2375":1,"2376":1,"2377":1,"2383":1,"2384":1,"2389":1,"2394":1,"2413":1,"2414":1,"2421":1,"2423":1,"2427":1,"2431":1,"2442":1,"2444":1,"2446":1,"2451":1,"2461":1,"2477":1,"2482":1,"2490":1,"2492":1,"2502":1,"2518":1,"2528":2,"2529":1,"2530":1,"2531":1,"2532":1,"2535":1,"2537":2,"2542":1,"2543":1,"2554":1,"2575":1,"2607":1,"2625":1,"2633":2,"2635":1,"2665":1,"2681":1,"2682":1,"2689":1,"2719":1,"2741":1,"2752":1,"2759":1,"2763":1,"2764":1,"2795":1,"2806":2,"2811":1,"2820":1,"2825":1,"2827":1,"2828":1,"2829":1,"2830":2,"2840":1,"2858":1,"2864":1,"2868":1,"2871":1,"2874":2,"2878":1}}],["anyone",{"2":{"9":1,"844":1,"851":2,"876":1,"977":1,"980":1,"990":1,"1220":1,"1254":1,"1403":2,"1870":1,"2490":1}}],["an",{"0":{"75":1,"351":1,"531":1,"955":1,"1038":1,"1044":1,"1724":1,"2172":1,"2378":1,"2429":1,"2544":1,"2714":1,"2721":1,"2722":1,"2723":1,"2725":1,"2728":1},"1":{"956":1,"957":1,"958":1,"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1,"1725":1,"1726":1,"1727":1,"2173":1,"2174":1,"2175":1},"2":{"0":1,"3":1,"74":2,"75":2,"77":1,"101":1,"171":1,"174":2,"177":2,"181":1,"192":1,"197":1,"202":2,"212":1,"214":1,"215":1,"220":1,"227":1,"239":3,"241":1,"244":1,"261":2,"284":1,"296":2,"297":1,"299":1,"307":1,"317":2,"318":1,"319":3,"320":4,"322":1,"326":1,"327":1,"347":1,"388":2,"389":1,"390":6,"394":1,"395":1,"412":1,"414":1,"422":1,"426":1,"427":1,"428":1,"433":1,"435":2,"436":1,"447":1,"453":1,"463":2,"476":1,"477":1,"478":1,"528":1,"529":3,"533":1,"551":1,"567":1,"587":1,"639":1,"650":3,"663":1,"669":1,"679":2,"688":2,"689":2,"690":2,"701":1,"704":1,"706":2,"711":2,"714":1,"747":1,"777":2,"782":1,"784":1,"819":1,"823":1,"829":1,"833":2,"834":2,"835":3,"837":4,"838":1,"841":1,"844":1,"845":2,"847":2,"848":4,"851":16,"852":7,"854":1,"857":3,"859":3,"860":2,"863":2,"864":4,"865":2,"866":1,"868":1,"869":1,"871":4,"872":7,"873":1,"877":1,"903":1,"916":1,"918":2,"921":1,"928":1,"933":2,"934":2,"940":1,"944":1,"946":1,"948":2,"949":1,"961":1,"966":1,"980":1,"983":1,"986":1,"991":1,"1010":1,"1014":1,"1016":1,"1037":5,"1038":3,"1039":1,"1040":2,"1041":1,"1042":1,"1043":2,"1045":2,"1048":1,"1051":1,"1059":1,"1063":1,"1068":2,"1069":2,"1073":1,"1074":1,"1078":1,"1080":2,"1095":1,"1096":1,"1098":1,"1101":1,"1102":2,"1105":5,"1114":1,"1127":1,"1150":1,"1157":2,"1171":1,"1180":1,"1183":1,"1185":1,"1204":1,"1220":1,"1221":1,"1222":1,"1226":1,"1233":1,"1238":1,"1302":1,"1305":2,"1309":2,"1328":1,"1335":1,"1342":1,"1358":1,"1367":1,"1370":2,"1381":1,"1382":6,"1383":1,"1384":1,"1385":3,"1386":3,"1388":1,"1389":1,"1394":2,"1395":1,"1396":3,"1398":1,"1399":2,"1403":1,"1404":1,"1405":1,"1406":1,"1409":1,"1410":5,"1412":1,"1413":1,"1415":1,"1416":1,"1419":1,"1421":1,"1424":1,"1426":2,"1427":2,"1431":1,"1432":3,"1437":1,"1449":2,"1504":1,"1511":1,"1515":1,"1521":1,"1527":1,"1559":2,"1569":2,"1571":2,"1573":1,"1639":1,"1640":1,"1644":1,"1661":1,"1664":1,"1670":1,"1723":1,"1726":1,"1737":1,"1738":2,"1743":1,"1759":1,"1785":1,"1792":45,"1813":1,"1822":3,"1823":1,"1824":4,"1825":7,"1827":2,"1830":1,"1832":2,"1833":2,"1834":2,"1840":6,"1850":1,"1852":2,"1855":1,"1861":1,"1870":1,"1872":1,"1876":1,"1909":1,"1911":1,"1912":1,"1915":2,"1917":1,"1922":1,"1923":1,"1925":4,"1948":2,"1949":1,"1955":1,"1974":1,"2004":5,"2006":1,"2007":1,"2039":1,"2040":4,"2054":1,"2076":1,"2077":1,"2078":1,"2092":1,"2094":1,"2097":1,"2101":1,"2106":2,"2107":1,"2110":1,"2111":5,"2112":1,"2113":1,"2126":1,"2127":1,"2140":1,"2155":2,"2156":1,"2164":5,"2165":1,"2166":3,"2167":1,"2170":1,"2171":1,"2173":1,"2177":1,"2178":1,"2184":1,"2185":1,"2186":1,"2193":1,"2195":3,"2221":1,"2222":3,"2223":1,"2264":2,"2265":2,"2274":1,"2282":2,"2283":1,"2291":1,"2297":1,"2300":2,"2319":1,"2330":1,"2336":1,"2337":1,"2338":1,"2344":1,"2346":1,"2350":1,"2353":1,"2367":2,"2376":2,"2378":3,"2379":2,"2380":1,"2382":1,"2383":2,"2392":1,"2403":1,"2404":1,"2411":1,"2416":1,"2419":1,"2422":1,"2425":2,"2430":1,"2433":1,"2437":1,"2438":1,"2444":1,"2461":1,"2462":1,"2465":1,"2466":3,"2476":5,"2477":1,"2479":3,"2481":7,"2482":7,"2483":2,"2484":3,"2486":1,"2487":1,"2491":1,"2492":2,"2493":1,"2494":1,"2496":1,"2497":1,"2498":1,"2502":1,"2504":2,"2509":2,"2515":1,"2517":2,"2518":1,"2519":2,"2520":1,"2521":2,"2522":1,"2523":1,"2525":1,"2526":1,"2527":1,"2528":3,"2529":6,"2530":1,"2531":6,"2532":6,"2533":7,"2534":1,"2535":1,"2537":6,"2539":4,"2540":2,"2541":2,"2542":1,"2543":2,"2544":2,"2545":1,"2549":2,"2575":1,"2586":1,"2596":1,"2597":1,"2607":1,"2626":1,"2648":3,"2649":1,"2652":1,"2663":1,"2674":1,"2678":1,"2679":1,"2685":1,"2696":1,"2713":2,"2716":1,"2719":1,"2721":2,"2722":1,"2723":1,"2734":1,"2759":1,"2760":2,"2764":2,"2766":1,"2768":1,"2794":1,"2797":2,"2802":1,"2805":1,"2806":1,"2807":1,"2808":1,"2812":2,"2814":1,"2815":2,"2816":2,"2817":2,"2825":1,"2828":2,"2830":1,"2831":1,"2832":2,"2833":3,"2835":2,"2838":2,"2841":4,"2842":1,"2843":2,"2845":1,"2852":2,"2855":1,"2861":2,"2862":2,"2864":3,"2865":5,"2869":3,"2870":1,"2871":4,"2876":1,"2878":1,"2879":2,"2881":1}}],["and",{"0":{"22":1,"207":1,"250":1,"313":1,"322":1,"364":1,"420":1,"423":1,"444":1,"533":1,"777":1,"854":1,"862":1,"877":1,"878":1,"879":1,"880":1,"897":1,"902":1,"904":1,"912":1,"920":1,"921":1,"963":1,"964":1,"988":1,"1013":1,"1014":1,"1048":1,"1054":1,"1066":1,"1079":1,"1080":1,"1096":1,"1097":1,"1100":1,"1104":1,"1135":1,"1190":1,"1209":1,"1210":1,"1279":1,"1302":1,"1352":1,"1428":1,"1432":1,"1479":1,"1564":1,"1582":1,"1605":1,"1838":1,"1841":1,"1846":1,"1909":1,"1958":1,"2097":1,"2107":1,"2112":1,"2258":1,"2267":1,"2273":1,"2286":1,"2314":1,"2323":1,"2326":1,"2332":1,"2337":1,"2341":1,"2346":1,"2359":1,"2365":1,"2391":1,"2397":1,"2414":1,"2425":1,"2428":1,"2433":1,"2489":1,"2497":1,"2531":1,"2532":2,"2533":1,"2555":1,"2572":1,"2576":1,"2589":1,"2628":1,"2678":1,"2688":1,"2724":1,"2729":1,"2749":1,"2762":1,"2765":1,"2768":1,"2775":1,"2797":1,"2804":1,"2812":1,"2824":1,"2855":1,"2871":1,"2873":1,"2877":1},"1":{"365":1,"366":1,"863":1,"864":1,"865":1,"879":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":2,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1,"913":1,"914":1,"915":1,"916":1,"917":1,"918":1,"919":1,"920":1,"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1105":1,"1106":1,"1107":1,"1108":1,"1136":1,"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1151":1,"1152":1,"1153":1,"1154":1,"1155":1,"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1164":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"1172":1,"1173":1,"1174":1,"1175":1,"1176":1,"1177":1,"1178":1,"1179":1,"1180":1,"1181":1,"1182":1,"1191":1,"1192":1,"1193":1,"1210":1,"1211":1,"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1242":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1308":1,"1309":1,"1310":1,"1311":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1360":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1,"1480":1,"1481":1,"1839":1,"1842":1,"1847":1,"1959":1,"2259":1,"2342":1,"2343":1,"2398":1,"2415":1,"2416":1,"2426":1,"2427":1,"2428":1,"2429":1},"2":{"0":1,"1":7,"2":1,"3":2,"10":1,"11":1,"25":1,"26":1,"29":1,"30":1,"32":1,"37":1,"41":3,"45":1,"60":1,"65":1,"74":5,"75":2,"88":1,"100":1,"101":3,"102":2,"104":1,"105":1,"106":1,"110":1,"111":1,"119":1,"120":1,"124":1,"155":1,"156":1,"161":1,"168":1,"170":3,"182":1,"186":1,"187":1,"188":2,"189":1,"191":1,"202":1,"212":1,"213":3,"214":5,"215":2,"220":2,"228":1,"232":1,"237":1,"238":1,"245":1,"261":1,"265":1,"268":1,"286":2,"290":1,"293":1,"296":1,"297":1,"298":2,"299":2,"300":2,"302":2,"305":2,"306":2,"307":2,"308":5,"309":4,"310":2,"313":1,"315":2,"317":2,"319":2,"320":2,"322":2,"324":1,"325":1,"334":1,"337":1,"338":2,"347":1,"349":1,"353":1,"362":1,"364":1,"369":2,"370":1,"372":1,"373":1,"374":1,"375":1,"378":1,"383":2,"384":2,"385":1,"386":1,"387":1,"388":7,"389":1,"390":3,"393":1,"394":1,"396":1,"408":1,"414":4,"415":2,"420":1,"423":4,"424":1,"426":1,"428":1,"429":1,"432":1,"435":1,"436":5,"438":1,"439":2,"444":1,"446":2,"448":4,"449":2,"452":4,"453":3,"454":1,"457":1,"480":1,"493":1,"515":1,"518":1,"520":2,"527":4,"529":2,"535":1,"544":1,"559":1,"560":1,"568":1,"581":1,"583":1,"585":1,"587":2,"592":1,"596":1,"614":1,"615":1,"618":1,"619":1,"621":1,"622":1,"624":1,"636":1,"638":1,"641":1,"650":2,"653":1,"654":1,"656":2,"663":1,"665":1,"666":1,"667":1,"668":1,"669":4,"675":1,"680":2,"682":1,"683":2,"684":1,"687":1,"689":1,"690":1,"691":1,"694":1,"702":1,"704":1,"705":1,"709":1,"710":1,"720":2,"723":1,"725":1,"736":2,"746":2,"747":3,"756":1,"759":1,"766":1,"767":1,"769":1,"772":1,"790":2,"791":2,"793":1,"799":2,"812":2,"814":1,"818":2,"819":1,"828":1,"829":1,"831":2,"832":2,"833":4,"834":4,"835":4,"836":4,"837":3,"838":4,"840":10,"841":19,"843":9,"844":10,"845":18,"847":12,"848":18,"849":15,"851":25,"852":22,"854":5,"855":3,"856":3,"857":8,"859":10,"860":11,"861":6,"863":3,"864":9,"865":12,"866":1,"868":13,"869":6,"871":6,"872":21,"873":7,"874":8,"875":1,"876":10,"877":3,"878":4,"879":4,"880":2,"884":2,"885":1,"886":1,"889":1,"893":1,"902":1,"903":3,"904":1,"905":1,"910":4,"911":3,"912":4,"913":10,"914":5,"915":5,"916":4,"917":2,"918":17,"919":6,"920":6,"921":2,"922":1,"924":2,"926":3,"927":1,"928":1,"930":4,"932":1,"933":1,"934":2,"936":1,"937":3,"942":1,"946":3,"947":1,"948":5,"952":2,"954":1,"957":1,"959":2,"961":1,"963":1,"965":1,"970":2,"971":3,"973":2,"974":3,"975":1,"976":2,"977":1,"978":1,"980":1,"985":1,"986":5,"987":1,"988":1,"994":1,"995":1,"996":2,"997":1,"1000":1,"1005":5,"1007":2,"1008":1,"1009":1,"1010":2,"1011":2,"1012":1,"1013":2,"1014":1,"1017":1,"1019":1,"1021":1,"1029":1,"1032":2,"1033":1,"1037":30,"1038":6,"1039":2,"1041":1,"1042":4,"1043":3,"1044":2,"1045":4,"1046":3,"1047":2,"1048":2,"1049":2,"1054":4,"1056":2,"1060":2,"1061":3,"1063":1,"1064":6,"1065":3,"1066":1,"1067":7,"1068":3,"1069":2,"1070":6,"1071":2,"1073":9,"1074":6,"1075":6,"1076":7,"1077":3,"1078":5,"1079":10,"1080":7,"1081":4,"1082":3,"1083":2,"1084":1,"1086":8,"1087":1,"1088":3,"1090":1,"1094":6,"1095":2,"1096":7,"1097":2,"1098":7,"1099":2,"1100":6,"1101":3,"1102":8,"1103":1,"1104":1,"1105":11,"1106":6,"1107":6,"1108":1,"1110":1,"1111":7,"1113":4,"1114":2,"1115":3,"1117":1,"1118":2,"1119":2,"1121":1,"1123":3,"1125":1,"1126":1,"1127":6,"1128":1,"1129":6,"1130":2,"1132":2,"1133":4,"1134":1,"1135":3,"1136":1,"1137":1,"1138":2,"1139":2,"1141":1,"1142":1,"1150":5,"1151":1,"1153":1,"1156":1,"1158":1,"1162":2,"1164":1,"1165":2,"1167":1,"1169":1,"1170":2,"1171":1,"1172":1,"1174":1,"1177":3,"1179":2,"1181":3,"1182":2,"1183":2,"1184":1,"1185":1,"1187":1,"1190":2,"1191":1,"1193":4,"1200":1,"1202":2,"1203":1,"1205":1,"1206":3,"1207":2,"1208":2,"1209":1,"1210":3,"1211":3,"1213":1,"1214":1,"1215":2,"1216":2,"1218":1,"1220":2,"1221":1,"1223":1,"1231":1,"1234":1,"1235":4,"1243":4,"1244":3,"1248":1,"1249":1,"1252":3,"1253":1,"1254":12,"1255":4,"1258":2,"1259":1,"1263":1,"1268":1,"1271":1,"1272":2,"1277":1,"1279":2,"1280":2,"1281":5,"1285":1,"1302":2,"1303":1,"1304":2,"1305":3,"1308":1,"1309":1,"1323":1,"1324":2,"1325":2,"1326":3,"1327":5,"1328":2,"1331":1,"1332":1,"1337":2,"1338":1,"1339":5,"1351":2,"1352":2,"1353":1,"1354":3,"1355":2,"1359":1,"1360":1,"1363":1,"1366":5,"1367":1,"1368":2,"1371":2,"1372":2,"1373":2,"1376":5,"1377":1,"1378":5,"1379":2,"1381":3,"1382":19,"1384":4,"1385":38,"1386":32,"1387":1,"1389":1,"1390":7,"1391":4,"1392":1,"1393":10,"1394":7,"1395":5,"1396":11,"1397":1,"1398":18,"1399":12,"1400":6,"1401":21,"1402":18,"1403":29,"1404":13,"1405":14,"1406":8,"1407":6,"1408":4,"1409":7,"1410":4,"1412":2,"1413":2,"1416":3,"1417":1,"1418":3,"1419":7,"1420":1,"1421":1,"1422":2,"1423":6,"1424":1,"1426":1,"1427":3,"1428":2,"1429":6,"1430":2,"1431":5,"1432":2,"1434":1,"1435":5,"1436":4,"1437":3,"1438":3,"1439":3,"1440":3,"1441":3,"1442":3,"1443":2,"1444":1,"1448":1,"1449":1,"1453":1,"1455":1,"1456":1,"1458":2,"1460":5,"1464":1,"1466":2,"1468":1,"1470":1,"1472":1,"1473":1,"1475":2,"1477":2,"1482":1,"1483":1,"1484":1,"1485":1,"1506":1,"1507":2,"1511":2,"1517":2,"1518":1,"1519":1,"1522":1,"1523":1,"1525":2,"1527":1,"1533":1,"1538":1,"1548":1,"1550":1,"1557":1,"1558":1,"1559":3,"1567":1,"1569":5,"1571":3,"1574":1,"1577":1,"1581":4,"1586":1,"1601":1,"1604":2,"1605":1,"1608":3,"1609":8,"1611":1,"1612":1,"1617":1,"1618":3,"1621":1,"1626":1,"1628":1,"1635":1,"1639":1,"1641":1,"1644":2,"1648":1,"1649":2,"1655":1,"1661":1,"1664":3,"1665":1,"1666":1,"1667":1,"1682":1,"1686":1,"1690":4,"1698":1,"1699":1,"1700":2,"1701":1,"1704":1,"1708":1,"1718":1,"1722":2,"1733":2,"1738":3,"1740":2,"1741":1,"1742":1,"1743":3,"1751":1,"1754":1,"1755":1,"1757":1,"1759":6,"1762":1,"1787":4,"1788":3,"1789":2,"1791":2,"1792":184,"1794":4,"1795":1,"1798":1,"1799":1,"1802":3,"1810":1,"1812":1,"1813":3,"1816":1,"1822":1,"1823":1,"1824":7,"1825":2,"1827":2,"1830":1,"1832":1,"1833":2,"1835":1,"1844":2,"1845":2,"1847":1,"1848":2,"1850":3,"1851":2,"1852":4,"1856":5,"1858":2,"1861":1,"1862":1,"1868":2,"1870":1,"1894":1,"1896":1,"1898":2,"1901":1,"1908":1,"1911":1,"1912":7,"1915":1,"1921":2,"1922":1,"1924":2,"1925":2,"1935":1,"1938":1,"1942":1,"1946":1,"1948":2,"1951":1,"1952":1,"1953":1,"1954":1,"1957":3,"1958":2,"1959":2,"1961":2,"1963":1,"1965":1,"1967":2,"1969":1,"1974":2,"1978":1,"1979":1,"1981":1,"1984":1,"1990":1,"2003":1,"2007":3,"2009":1,"2011":1,"2013":1,"2016":2,"2020":2,"2021":3,"2024":1,"2032":1,"2036":1,"2037":1,"2040":2,"2042":1,"2045":2,"2049":1,"2050":2,"2051":1,"2052":1,"2054":1,"2055":1,"2056":2,"2059":1,"2075":1,"2079":1,"2080":1,"2081":2,"2087":1,"2089":1,"2091":1,"2092":1,"2094":3,"2098":3,"2100":1,"2104":2,"2106":1,"2107":2,"2108":2,"2110":4,"2111":2,"2112":5,"2114":1,"2115":1,"2121":1,"2122":1,"2125":1,"2128":1,"2130":1,"2132":1,"2134":2,"2140":1,"2149":1,"2153":1,"2156":5,"2157":3,"2158":4,"2160":1,"2162":3,"2164":16,"2165":8,"2166":3,"2167":4,"2168":1,"2170":1,"2171":5,"2174":2,"2176":4,"2177":8,"2179":1,"2181":3,"2183":2,"2184":2,"2185":1,"2187":2,"2189":2,"2190":2,"2191":1,"2192":1,"2196":2,"2197":1,"2208":1,"2210":1,"2221":8,"2222":9,"2223":2,"2224":1,"2225":4,"2226":3,"2228":2,"2229":2,"2231":2,"2235":1,"2237":1,"2245":2,"2246":1,"2247":4,"2250":3,"2251":1,"2252":1,"2254":3,"2255":2,"2256":2,"2257":1,"2258":2,"2259":2,"2264":5,"2265":8,"2266":2,"2267":4,"2270":6,"2272":3,"2273":1,"2274":1,"2278":1,"2279":1,"2282":2,"2283":2,"2286":1,"2288":2,"2289":1,"2290":1,"2291":3,"2293":1,"2294":1,"2296":2,"2297":2,"2300":1,"2302":1,"2303":2,"2307":1,"2309":1,"2310":1,"2313":2,"2314":2,"2317":4,"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2324":1,"2325":1,"2328":2,"2330":1,"2332":4,"2335":1,"2337":1,"2338":1,"2339":2,"2340":1,"2342":1,"2344":2,"2346":1,"2347":2,"2348":1,"2350":1,"2351":1,"2353":2,"2354":1,"2356":1,"2359":2,"2360":1,"2362":1,"2364":1,"2365":1,"2369":2,"2370":1,"2371":2,"2372":3,"2375":6,"2376":2,"2378":3,"2379":4,"2380":7,"2381":1,"2382":3,"2383":4,"2385":1,"2388":4,"2389":9,"2391":3,"2392":3,"2393":1,"2394":3,"2395":1,"2397":3,"2398":2,"2399":2,"2402":1,"2403":2,"2406":1,"2407":3,"2410":1,"2411":1,"2412":1,"2413":1,"2414":2,"2415":2,"2416":1,"2417":3,"2419":3,"2420":1,"2422":3,"2423":2,"2424":3,"2425":3,"2428":1,"2435":5,"2437":1,"2438":6,"2441":1,"2442":1,"2443":1,"2446":1,"2447":1,"2450":3,"2451":4,"2452":2,"2453":2,"2454":2,"2455":3,"2456":3,"2461":2,"2462":1,"2463":3,"2465":2,"2466":3,"2468":2,"2470":3,"2471":1,"2472":3,"2474":1,"2476":2,"2477":1,"2479":3,"2481":7,"2482":1,"2483":1,"2484":2,"2486":3,"2487":2,"2489":2,"2490":2,"2491":4,"2492":1,"2493":4,"2494":1,"2495":6,"2496":3,"2497":1,"2498":11,"2500":1,"2502":5,"2504":3,"2505":3,"2506":3,"2510":3,"2511":2,"2512":1,"2513":2,"2515":1,"2518":5,"2519":2,"2520":4,"2521":1,"2522":1,"2523":4,"2525":4,"2526":2,"2527":4,"2528":5,"2529":5,"2530":6,"2531":7,"2532":6,"2533":7,"2534":7,"2535":5,"2536":1,"2537":19,"2539":3,"2540":10,"2541":3,"2542":7,"2543":11,"2544":2,"2545":4,"2546":10,"2549":5,"2554":4,"2555":3,"2562":1,"2567":1,"2572":1,"2575":2,"2576":2,"2580":1,"2581":2,"2586":2,"2588":1,"2589":2,"2591":1,"2594":1,"2597":3,"2604":2,"2607":3,"2611":1,"2614":2,"2615":7,"2621":4,"2622":2,"2627":3,"2628":1,"2632":3,"2633":4,"2634":3,"2635":9,"2638":1,"2645":1,"2649":1,"2651":1,"2653":1,"2656":2,"2659":2,"2661":5,"2662":3,"2664":1,"2665":1,"2666":3,"2667":1,"2668":1,"2669":1,"2670":1,"2671":1,"2674":1,"2678":2,"2679":1,"2680":1,"2681":1,"2684":1,"2687":1,"2688":1,"2691":1,"2693":2,"2694":1,"2695":2,"2696":1,"2702":1,"2705":1,"2706":1,"2709":2,"2710":1,"2711":1,"2721":2,"2722":2,"2723":1,"2726":2,"2728":1,"2731":2,"2732":1,"2733":1,"2736":1,"2737":1,"2739":3,"2740":2,"2741":2,"2742":3,"2744":2,"2745":1,"2747":1,"2750":1,"2751":3,"2755":1,"2758":1,"2759":7,"2760":2,"2762":1,"2765":2,"2766":2,"2767":1,"2768":2,"2770":1,"2771":1,"2772":5,"2774":4,"2775":3,"2776":3,"2785":2,"2788":1,"2789":1,"2792":1,"2794":1,"2795":5,"2798":2,"2799":3,"2800":1,"2802":2,"2803":2,"2804":2,"2805":1,"2806":5,"2807":2,"2809":2,"2810":5,"2812":4,"2813":4,"2815":2,"2817":1,"2818":1,"2820":1,"2821":1,"2823":4,"2824":2,"2826":2,"2827":2,"2828":4,"2829":3,"2830":3,"2831":1,"2833":1,"2834":1,"2835":3,"2836":2,"2837":1,"2838":1,"2840":2,"2841":1,"2845":6,"2846":2,"2848":1,"2849":1,"2854":1,"2855":1,"2857":3,"2858":2,"2860":4,"2861":1,"2862":4,"2863":2,"2864":3,"2865":1,"2867":1,"2868":8,"2869":8,"2871":4,"2872":2,"2873":1,"2875":2,"2876":2,"2877":1,"2878":9,"2879":1,"2880":3,"2881":1}}],["aid",{"2":{"1792":1,"2109":1,"2110":1,"2530":1,"2537":1}}],["aiming",{"2":{"1401":1}}],["aimed",{"2":{"835":1,"2474":1}}],["aiofiles",{"2":{"1366":1}}],["aihealth",{"2":{"1342":2}}],["aianalyze",{"2":{"1342":3}}],["ai",{"0":{"1038":1,"1044":1,"1081":1,"1334":1,"1335":1,"1400":1,"1401":1,"1402":1,"2815":1},"1":{"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1,"1401":1,"1402":1},"2":{"0":2,"1":2,"3":1,"223":1,"317":1,"327":1,"837":1,"871":1,"876":1,"918":2,"1037":6,"1038":2,"1039":1,"1043":1,"1081":4,"1105":1,"1254":1,"1324":1,"1328":4,"1331":4,"1332":3,"1333":3,"1334":1,"1335":7,"1337":4,"1338":8,"1339":4,"1342":3,"1343":1,"1346":1,"1381":1,"1382":7,"1383":2,"1384":3,"1385":1,"1386":1,"1399":1,"1400":3,"1401":2,"1402":8,"1404":1,"1789":1,"1813":1,"1834":1,"2164":3,"2165":3,"2166":1,"2479":2,"2481":1,"2806":1,"2815":7,"2816":3}}]],"serializationVersion":2}';export{e as default};
diff --git a/assets/chunks/VPLocalSearchBox.z2vlMY86.js b/assets/chunks/VPLocalSearchBox.z2vlMY86.js
new file mode 100644
index 000000000..bc486b63a
--- /dev/null
+++ b/assets/chunks/VPLocalSearchBox.z2vlMY86.js
@@ -0,0 +1,8 @@
+var Nt=Object.defineProperty;var Ft=(a,e,t)=>e in a?Nt(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t;var Ce=(a,e,t)=>Ft(a,typeof e!="symbol"?e+"":e,t);import{V as Ot,D as le,h as ge,ak as et,al as Rt,am as Ct,an as At,q as $e,ao as Mt,d as Lt,ap as tt,p as he,aq as Dt,ar as zt,s as Pt,as as Vt,v as Ae,P as fe,O as _e,aj as $t,at as jt,W as Bt,R as Wt,$ as Kt,b as Jt,o as H,j as _,a0 as qt,au as Ut,k as L,av as Gt,aw as Ht,c as Z,e as Se,n as st,B as nt,F as it,a as pe,t as ve,ax as Qt,ay as rt,a3 as Yt,a9 as Zt,ae as Xt,az as es,_ as ts}from"./framework.CgT1UzWm.js";import{a_ as ss,a$ as ns}from"./theme.kqgpP4eL.js";const is={root:()=>Ot(()=>import("./@localSearchIndexroot.CFuD74JD.js"),[])};/*!
+* tabbable 6.2.0
+* @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
+*/var vt=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],ke=vt.join(","),mt=typeof Element>"u",re=mt?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,Ne=!mt&&Element.prototype.getRootNode?function(a){var e;return a==null||(e=a.getRootNode)===null||e===void 0?void 0:e.call(a)}:function(a){return a==null?void 0:a.ownerDocument},Fe=function a(e,t){var s;t===void 0&&(t=!0);var n=e==null||(s=e.getAttribute)===null||s===void 0?void 0:s.call(e,"inert"),r=n===""||n==="true",i=r||t&&e&&a(e.parentNode);return i},rs=function(e){var t,s=e==null||(t=e.getAttribute)===null||t===void 0?void 0:t.call(e,"contenteditable");return s===""||s==="true"},gt=function(e,t,s){if(Fe(e))return[];var n=Array.prototype.slice.apply(e.querySelectorAll(ke));return t&&re.call(e,ke)&&n.unshift(e),n=n.filter(s),n},bt=function a(e,t,s){for(var n=[],r=Array.from(e);r.length;){var i=r.shift();if(!Fe(i,!1))if(i.tagName==="SLOT"){var o=i.assignedElements(),l=o.length?o:i.children,c=a(l,!0,s);s.flatten?n.push.apply(n,c):n.push({scopeParent:i,candidates:c})}else{var h=re.call(i,ke);h&&s.filter(i)&&(t||!e.includes(i))&&n.push(i);var m=i.shadowRoot||typeof s.getShadowRoot=="function"&&s.getShadowRoot(i),f=!Fe(m,!1)&&(!s.shadowRootFilter||s.shadowRootFilter(i));if(m&&f){var b=a(m===!0?i.children:m.children,!0,s);s.flatten?n.push.apply(n,b):n.push({scopeParent:i,candidates:b})}else r.unshift.apply(r,i.children)}}return n},yt=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},ie=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||rs(e))&&!yt(e)?0:e.tabIndex},as=function(e,t){var s=ie(e);return s<0&&t&&!yt(e)?0:s},os=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},wt=function(e){return e.tagName==="INPUT"},ls=function(e){return wt(e)&&e.type==="hidden"},cs=function(e){var t=e.tagName==="DETAILS"&&Array.prototype.slice.apply(e.children).some(function(s){return s.tagName==="SUMMARY"});return t},us=function(e,t){for(var s=0;ssummary:first-of-type"),i=r?e.parentElement:e;if(re.call(i,"details:not([open]) *"))return!0;if(!s||s==="full"||s==="legacy-full"){if(typeof n=="function"){for(var o=e;e;){var l=e.parentElement,c=Ne(e);if(l&&!l.shadowRoot&&n(l)===!0)return at(e);e.assignedSlot?e=e.assignedSlot:!l&&c!==e.ownerDocument?e=c.host:e=l}e=o}if(ps(e))return!e.getClientRects().length;if(s!=="legacy-full")return!0}else if(s==="non-zero-area")return at(e);return!1},ms=function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var t=e.parentElement;t;){if(t.tagName==="FIELDSET"&&t.disabled){for(var s=0;s=0)},bs=function a(e){var t=[],s=[];return e.forEach(function(n,r){var i=!!n.scopeParent,o=i?n.scopeParent:n,l=as(o,i),c=i?a(n.candidates):o;l===0?i?t.push.apply(t,c):t.push(o):s.push({documentOrder:r,tabIndex:l,item:n,isScope:i,content:c})}),s.sort(os).reduce(function(n,r){return r.isScope?n.push.apply(n,r.content):n.push(r.content),n},[]).concat(t)},ys=function(e,t){t=t||{};var s;return t.getShadowRoot?s=bt([e],t.includeContainer,{filter:je.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:gs}):s=gt(e,t.includeContainer,je.bind(null,t)),bs(s)},ws=function(e,t){t=t||{};var s;return t.getShadowRoot?s=bt([e],t.includeContainer,{filter:Oe.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):s=gt(e,t.includeContainer,Oe.bind(null,t)),s},ae=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return re.call(e,ke)===!1?!1:je(t,e)},xs=vt.concat("iframe").join(","),Me=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return re.call(e,xs)===!1?!1:Oe(t,e)};/*!
+* focus-trap 7.6.5
+* @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE
+*/function Be(a,e){(e==null||e>a.length)&&(e=a.length);for(var t=0,s=Array(e);t0){var s=e[e.length-1];s!==t&&s._setPausedState(!0)}var n=e.indexOf(t);n===-1||e.splice(n,1),e.push(t)},deactivateTrap:function(e,t){var s=e.indexOf(t);s!==-1&&e.splice(s,1),e.length>0&&!e[e.length-1]._isManuallyPaused()&&e[e.length-1]._setPausedState(!1)}},Os=function(e){return e.tagName&&e.tagName.toLowerCase()==="input"&&typeof e.select=="function"},Rs=function(e){return(e==null?void 0:e.key)==="Escape"||(e==null?void 0:e.key)==="Esc"||(e==null?void 0:e.keyCode)===27},be=function(e){return(e==null?void 0:e.key)==="Tab"||(e==null?void 0:e.keyCode)===9},Cs=function(e){return be(e)&&!e.shiftKey},As=function(e){return be(e)&&e.shiftKey},ut=function(e){return setTimeout(e,0)},me=function(e){for(var t=arguments.length,s=new Array(t>1?t-1:0),n=1;n1&&arguments[1]!==void 0?arguments[1]:{},g=d.hasFallback,E=g===void 0?!1:g,T=d.params,F=T===void 0?[]:T,S=r[u];if(typeof S=="function"&&(S=S.apply(void 0,Is(F))),S===!0&&(S=void 0),!S){if(S===void 0||S===!1)return S;throw new Error("`".concat(u,"` was specified but was not a node, or did not return a node"))}var R=S;if(typeof S=="string"){try{R=s.querySelector(S)}catch(v){throw new Error("`".concat(u,'` appears to be an invalid selector; error="').concat(v.message,'"'))}if(!R&&!E)throw new Error("`".concat(u,"` as selector refers to no known node"))}return R},m=function(){var u=h("initialFocus",{hasFallback:!0});if(u===!1)return!1;if(u===void 0||u&&!Me(u,r.tabbableOptions))if(c(s.activeElement)>=0)u=s.activeElement;else{var d=i.tabbableGroups[0],g=d&&d.firstTabbableNode;u=g||h("fallbackFocus")}else u===null&&(u=h("fallbackFocus"));if(!u)throw new Error("Your focus-trap needs to have at least one focusable element");return u},f=function(){if(i.containerGroups=i.containers.map(function(u){var d=ys(u,r.tabbableOptions),g=ws(u,r.tabbableOptions),E=d.length>0?d[0]:void 0,T=d.length>0?d[d.length-1]:void 0,F=g.find(function(v){return ae(v)}),S=g.slice().reverse().find(function(v){return ae(v)}),R=!!d.find(function(v){return ie(v)>0});return{container:u,tabbableNodes:d,focusableNodes:g,posTabIndexesFound:R,firstTabbableNode:E,lastTabbableNode:T,firstDomTabbableNode:F,lastDomTabbableNode:S,nextTabbableNode:function(p){var I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,O=d.indexOf(p);return O<0?I?g.slice(g.indexOf(p)+1).find(function(z){return ae(z)}):g.slice(0,g.indexOf(p)).reverse().find(function(z){return ae(z)}):d[O+(I?1:-1)]}}}),i.tabbableGroups=i.containerGroups.filter(function(u){return u.tabbableNodes.length>0}),i.tabbableGroups.length<=0&&!h("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(i.containerGroups.find(function(u){return u.posTabIndexesFound})&&i.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},b=function(u){var d=u.activeElement;if(d)return d.shadowRoot&&d.shadowRoot.activeElement!==null?b(d.shadowRoot):d},y=function(u){if(u!==!1&&u!==b(document)){if(!u||!u.focus){y(m());return}u.focus({preventScroll:!!r.preventScroll}),i.mostRecentlyFocusedNode=u,Os(u)&&u.select()}},x=function(u){var d=h("setReturnFocus",{params:[u]});return d||(d===!1?!1:u)},w=function(u){var d=u.target,g=u.event,E=u.isBackward,T=E===void 0?!1:E;d=d||Ee(g),f();var F=null;if(i.tabbableGroups.length>0){var S=c(d,g),R=S>=0?i.containerGroups[S]:void 0;if(S<0)T?F=i.tabbableGroups[i.tabbableGroups.length-1].lastTabbableNode:F=i.tabbableGroups[0].firstTabbableNode;else if(T){var v=i.tabbableGroups.findIndex(function(V){var k=V.firstTabbableNode;return d===k});if(v<0&&(R.container===d||Me(d,r.tabbableOptions)&&!ae(d,r.tabbableOptions)&&!R.nextTabbableNode(d,!1))&&(v=S),v>=0){var p=v===0?i.tabbableGroups.length-1:v-1,I=i.tabbableGroups[p];F=ie(d)>=0?I.lastTabbableNode:I.lastDomTabbableNode}else be(g)||(F=R.nextTabbableNode(d,!1))}else{var O=i.tabbableGroups.findIndex(function(V){var k=V.lastTabbableNode;return d===k});if(O<0&&(R.container===d||Me(d,r.tabbableOptions)&&!ae(d,r.tabbableOptions)&&!R.nextTabbableNode(d))&&(O=S),O>=0){var z=O===i.tabbableGroups.length-1?0:O+1,P=i.tabbableGroups[z];F=ie(d)>=0?P.firstTabbableNode:P.firstDomTabbableNode}else be(g)||(F=R.nextTabbableNode(d))}}else F=h("fallbackFocus");return F},C=function(u){var d=Ee(u);if(!(c(d,u)>=0)){if(me(r.clickOutsideDeactivates,u)){o.deactivate({returnFocus:r.returnFocusOnDeactivate});return}me(r.allowOutsideClick,u)||u.preventDefault()}},A=function(u){var d=Ee(u),g=c(d,u)>=0;if(g||d instanceof Document)g&&(i.mostRecentlyFocusedNode=d);else{u.stopImmediatePropagation();var E,T=!0;if(i.mostRecentlyFocusedNode)if(ie(i.mostRecentlyFocusedNode)>0){var F=c(i.mostRecentlyFocusedNode),S=i.containerGroups[F].tabbableNodes;if(S.length>0){var R=S.findIndex(function(v){return v===i.mostRecentlyFocusedNode});R>=0&&(r.isKeyForward(i.recentNavEvent)?R+1=0&&(E=S[R-1],T=!1))}}else i.containerGroups.some(function(v){return v.tabbableNodes.some(function(p){return ie(p)>0})})||(T=!1);else T=!1;T&&(E=w({target:i.mostRecentlyFocusedNode,isBackward:r.isKeyBackward(i.recentNavEvent)})),y(E||i.mostRecentlyFocusedNode||m())}i.recentNavEvent=void 0},J=function(u){var d=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;i.recentNavEvent=u;var g=w({event:u,isBackward:d});g&&(be(u)&&u.preventDefault(),y(g))},Q=function(u){(r.isKeyForward(u)||r.isKeyBackward(u))&&J(u,r.isKeyBackward(u))},W=function(u){Rs(u)&&me(r.escapeDeactivates,u)!==!1&&(u.preventDefault(),o.deactivate())},$=function(u){var d=Ee(u);c(d,u)>=0||me(r.clickOutsideDeactivates,u)||me(r.allowOutsideClick,u)||(u.preventDefault(),u.stopImmediatePropagation())},j=function(){if(i.active)return ct.activateTrap(n,o),i.delayInitialFocusTimer=r.delayInitialFocus?ut(function(){y(m())}):y(m()),s.addEventListener("focusin",A,!0),s.addEventListener("mousedown",C,{capture:!0,passive:!1}),s.addEventListener("touchstart",C,{capture:!0,passive:!1}),s.addEventListener("click",$,{capture:!0,passive:!1}),s.addEventListener("keydown",Q,{capture:!0,passive:!1}),s.addEventListener("keydown",W),o},ye=function(){if(i.active)return s.removeEventListener("focusin",A,!0),s.removeEventListener("mousedown",C,!0),s.removeEventListener("touchstart",C,!0),s.removeEventListener("click",$,!0),s.removeEventListener("keydown",Q,!0),s.removeEventListener("keydown",W),o},M=function(u){var d=u.some(function(g){var E=Array.from(g.removedNodes);return E.some(function(T){return T===i.mostRecentlyFocusedNode})});d&&y(m())},q=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(M):void 0,U=function(){q&&(q.disconnect(),i.active&&!i.paused&&i.containers.map(function(u){q.observe(u,{subtree:!0,childList:!0})}))};return o={get active(){return i.active},get paused(){return i.paused},activate:function(u){if(i.active)return this;var d=l(u,"onActivate"),g=l(u,"onPostActivate"),E=l(u,"checkCanFocusTrap");E||f(),i.active=!0,i.paused=!1,i.nodeFocusedBeforeActivation=b(s),d==null||d();var T=function(){E&&f(),j(),U(),g==null||g()};return E?(E(i.containers.concat()).then(T,T),this):(T(),this)},deactivate:function(u){if(!i.active)return this;var d=lt({onDeactivate:r.onDeactivate,onPostDeactivate:r.onPostDeactivate,checkCanReturnFocus:r.checkCanReturnFocus},u);clearTimeout(i.delayInitialFocusTimer),i.delayInitialFocusTimer=void 0,ye(),i.active=!1,i.paused=!1,U(),ct.deactivateTrap(n,o);var g=l(d,"onDeactivate"),E=l(d,"onPostDeactivate"),T=l(d,"checkCanReturnFocus"),F=l(d,"returnFocus","returnFocusOnDeactivate");g==null||g();var S=function(){ut(function(){F&&y(x(i.nodeFocusedBeforeActivation)),E==null||E()})};return F&&T?(T(x(i.nodeFocusedBeforeActivation)).then(S,S),this):(S(),this)},pause:function(u){return i.active?(i.manuallyPaused=!0,this._setPausedState(!0,u)):this},unpause:function(u){return i.active?(i.manuallyPaused=!1,n[n.length-1]!==this?this:this._setPausedState(!1,u)):this},updateContainerElements:function(u){var d=[].concat(u).filter(Boolean);return i.containers=d.map(function(g){return typeof g=="string"?s.querySelector(g):g}),i.active&&f(),U(),this}},Object.defineProperties(o,{_isManuallyPaused:{value:function(){return i.manuallyPaused}},_setPausedState:{value:function(u,d){if(i.paused===u)return this;if(i.paused=u,u){var g=l(d,"onPause"),E=l(d,"onPostPause");g==null||g(),ye(),U(),E==null||E()}else{var T=l(d,"onUnpause"),F=l(d,"onPostUnpause");T==null||T(),f(),j(),U(),F==null||F()}return this}}}),o.updateContainerElements(e),o};function Ds(a,e={}){let t;const{immediate:s,...n}=e,r=le(!1),i=le(!1),o=f=>t&&t.activate(f),l=f=>t&&t.deactivate(f),c=()=>{t&&(t.pause(),i.value=!0)},h=()=>{t&&(t.unpause(),i.value=!1)},m=ge(()=>{const f=et(a);return Rt(f).map(b=>{const y=et(b);return typeof y=="string"?y:Ct(y)}).filter(At)});return $e(m,f=>{f.length&&(t=Ls(f,{...n,onActivate(){r.value=!0,e.onActivate&&e.onActivate()},onDeactivate(){r.value=!1,e.onDeactivate&&e.onDeactivate()}}),s&&o())},{flush:"post"}),Mt(()=>l()),{hasFocus:r,isPaused:i,activate:o,deactivate:l,pause:c,unpause:h}}class ce{constructor(e,t=!0,s=[],n=5e3){this.ctx=e,this.iframes=t,this.exclude=s,this.iframesTimeout=n}static matches(e,t){const s=typeof t=="string"?[t]:t,n=e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;if(n){let r=!1;return s.every(i=>n.call(e,i)?(r=!0,!1):!0),r}else return!1}getContexts(){let e,t=[];return typeof this.ctx>"u"||!this.ctx?e=[]:NodeList.prototype.isPrototypeOf(this.ctx)?e=Array.prototype.slice.call(this.ctx):Array.isArray(this.ctx)?e=this.ctx:typeof this.ctx=="string"?e=Array.prototype.slice.call(document.querySelectorAll(this.ctx)):e=[this.ctx],e.forEach(s=>{const n=t.filter(r=>r.contains(s)).length>0;t.indexOf(s)===-1&&!n&&t.push(s)}),t}getIframeContents(e,t,s=()=>{}){let n;try{const r=e.contentWindow;if(n=r.document,!r||!n)throw new Error("iframe inaccessible")}catch{s()}n&&t(n)}isIframeBlank(e){const t="about:blank",s=e.getAttribute("src").trim();return e.contentWindow.location.href===t&&s!==t&&s}observeIframeLoad(e,t,s){let n=!1,r=null;const i=()=>{if(!n){n=!0,clearTimeout(r);try{this.isIframeBlank(e)||(e.removeEventListener("load",i),this.getIframeContents(e,t,s))}catch{s()}}};e.addEventListener("load",i),r=setTimeout(i,this.iframesTimeout)}onIframeReady(e,t,s){try{e.contentWindow.document.readyState==="complete"?this.isIframeBlank(e)?this.observeIframeLoad(e,t,s):this.getIframeContents(e,t,s):this.observeIframeLoad(e,t,s)}catch{s()}}waitForIframes(e,t){let s=0;this.forEachIframe(e,()=>!0,n=>{s++,this.waitForIframes(n.querySelector("html"),()=>{--s||t()})},n=>{n||t()})}forEachIframe(e,t,s,n=()=>{}){let r=e.querySelectorAll("iframe"),i=r.length,o=0;r=Array.prototype.slice.call(r);const l=()=>{--i<=0&&n(o)};i||l(),r.forEach(c=>{ce.matches(c,this.exclude)?l():this.onIframeReady(c,h=>{t(c)&&(o++,s(h)),l()},l)})}createIterator(e,t,s){return document.createNodeIterator(e,t,s,!1)}createInstanceOnIframe(e){return new ce(e.querySelector("html"),this.iframes)}compareNodeIframe(e,t,s){const n=e.compareDocumentPosition(s),r=Node.DOCUMENT_POSITION_PRECEDING;if(n&r)if(t!==null){const i=t.compareDocumentPosition(s),o=Node.DOCUMENT_POSITION_FOLLOWING;if(i&o)return!0}else return!0;return!1}getIteratorNode(e){const t=e.previousNode();let s;return t===null?s=e.nextNode():s=e.nextNode()&&e.nextNode(),{prevNode:t,node:s}}checkIframeFilter(e,t,s,n){let r=!1,i=!1;return n.forEach((o,l)=>{o.val===s&&(r=l,i=o.handled)}),this.compareNodeIframe(e,t,s)?(r===!1&&!i?n.push({val:s,handled:!0}):r!==!1&&!i&&(n[r].handled=!0),!0):(r===!1&&n.push({val:s,handled:!1}),!1)}handleOpenIframes(e,t,s,n){e.forEach(r=>{r.handled||this.getIframeContents(r.val,i=>{this.createInstanceOnIframe(i).forEachNode(t,s,n)})})}iterateThroughNodes(e,t,s,n,r){const i=this.createIterator(t,e,n);let o=[],l=[],c,h,m=()=>({prevNode:h,node:c}=this.getIteratorNode(i),c);for(;m();)this.iframes&&this.forEachIframe(t,f=>this.checkIframeFilter(c,h,f,o),f=>{this.createInstanceOnIframe(f).forEachNode(e,b=>l.push(b),n)}),l.push(c);l.forEach(f=>{s(f)}),this.iframes&&this.handleOpenIframes(o,e,s,n),r()}forEachNode(e,t,s,n=()=>{}){const r=this.getContexts();let i=r.length;i||n(),r.forEach(o=>{const l=()=>{this.iterateThroughNodes(e,o,t,s,()=>{--i<=0&&n()})};this.iframes?this.waitForIframes(o,l):l()})}}let zs=class{constructor(e){this.ctx=e,this.ie=!1;const t=window.navigator.userAgent;(t.indexOf("MSIE")>-1||t.indexOf("Trident")>-1)&&(this.ie=!0)}set opt(e){this._opt=Object.assign({},{element:"",className:"",exclude:[],iframes:!1,iframesTimeout:5e3,separateWordSearch:!0,diacritics:!0,synonyms:{},accuracy:"partially",acrossElements:!1,caseSensitive:!1,ignoreJoiners:!1,ignoreGroups:0,ignorePunctuation:[],wildcards:"disabled",each:()=>{},noMatch:()=>{},filter:()=>!0,done:()=>{},debug:!1,log:window.console},e)}get opt(){return this._opt}get iterator(){return new ce(this.ctx,this.opt.iframes,this.opt.exclude,this.opt.iframesTimeout)}log(e,t="debug"){const s=this.opt.log;this.opt.debug&&typeof s=="object"&&typeof s[t]=="function"&&s[t](`mark.js: ${e}`)}escapeStr(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}createRegExp(e){return this.opt.wildcards!=="disabled"&&(e=this.setupWildcardsRegExp(e)),e=this.escapeStr(e),Object.keys(this.opt.synonyms).length&&(e=this.createSynonymsRegExp(e)),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),this.opt.diacritics&&(e=this.createDiacriticsRegExp(e)),e=this.createMergedBlanksRegExp(e),(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.createJoinersRegExp(e)),this.opt.wildcards!=="disabled"&&(e=this.createWildcardsRegExp(e)),e=this.createAccuracyRegExp(e),e}createSynonymsRegExp(e){const t=this.opt.synonyms,s=this.opt.caseSensitive?"":"i",n=this.opt.ignoreJoiners||this.opt.ignorePunctuation.length?"\0":"";for(let r in t)if(t.hasOwnProperty(r)){const i=t[r],o=this.opt.wildcards!=="disabled"?this.setupWildcardsRegExp(r):this.escapeStr(r),l=this.opt.wildcards!=="disabled"?this.setupWildcardsRegExp(i):this.escapeStr(i);o!==""&&l!==""&&(e=e.replace(new RegExp(`(${this.escapeStr(o)}|${this.escapeStr(l)})`,`gm${s}`),n+`(${this.processSynomyms(o)}|${this.processSynomyms(l)})`+n))}return e}processSynomyms(e){return(this.opt.ignoreJoiners||this.opt.ignorePunctuation.length)&&(e=this.setupIgnoreJoinersRegExp(e)),e}setupWildcardsRegExp(e){return e=e.replace(/(?:\\)*\?/g,t=>t.charAt(0)==="\\"?"?":""),e.replace(/(?:\\)*\*/g,t=>t.charAt(0)==="\\"?"*":"")}createWildcardsRegExp(e){let t=this.opt.wildcards==="withSpaces";return e.replace(/\u0001/g,t?"[\\S\\s]?":"\\S?").replace(/\u0002/g,t?"[\\S\\s]*?":"\\S*")}setupIgnoreJoinersRegExp(e){return e.replace(/[^(|)\\]/g,(t,s,n)=>{let r=n.charAt(s+1);return/[(|)\\]/.test(r)||r===""?t:t+"\0"})}createJoinersRegExp(e){let t=[];const s=this.opt.ignorePunctuation;return Array.isArray(s)&&s.length&&t.push(this.escapeStr(s.join(""))),this.opt.ignoreJoiners&&t.push("\\u00ad\\u200b\\u200c\\u200d"),t.length?e.split(/\u0000+/).join(`[${t.join("")}]*`):e}createDiacriticsRegExp(e){const t=this.opt.caseSensitive?"":"i",s=this.opt.caseSensitive?["aàáảãạăằắẳẵặâầấẩẫậäåāą","AÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćč","CÇĆČ","dđď","DĐĎ","eèéẻẽẹêềếểễệëěēę","EÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïī","IÌÍỈĨỊÎÏĪ","lł","LŁ","nñňń","NÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøō","OÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rř","RŘ","sšśșş","SŠŚȘŞ","tťțţ","TŤȚŢ","uùúủũụưừứửữựûüůū","UÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿ","YÝỲỶỸỴŸ","zžżź","ZŽŻŹ"]:["aàáảãạăằắẳẵặâầấẩẫậäåāąAÀÁẢÃẠĂẰẮẲẴẶÂẦẤẨẪẬÄÅĀĄ","cçćčCÇĆČ","dđďDĐĎ","eèéẻẽẹêềếểễệëěēęEÈÉẺẼẸÊỀẾỂỄỆËĚĒĘ","iìíỉĩịîïīIÌÍỈĨỊÎÏĪ","lłLŁ","nñňńNÑŇŃ","oòóỏõọôồốổỗộơởỡớờợöøōOÒÓỎÕỌÔỒỐỔỖỘƠỞỠỚỜỢÖØŌ","rřRŘ","sšśșşSŠŚȘŞ","tťțţTŤȚŢ","uùúủũụưừứửữựûüůūUÙÚỦŨỤƯỪỨỬỮỰÛÜŮŪ","yýỳỷỹỵÿYÝỲỶỸỴŸ","zžżźZŽŻŹ"];let n=[];return e.split("").forEach(r=>{s.every(i=>{if(i.indexOf(r)!==-1){if(n.indexOf(i)>-1)return!1;e=e.replace(new RegExp(`[${i}]`,`gm${t}`),`[${i}]`),n.push(i)}return!0})}),e}createMergedBlanksRegExp(e){return e.replace(/[\s]+/gmi,"[\\s]+")}createAccuracyRegExp(e){const t="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~¡¿";let s=this.opt.accuracy,n=typeof s=="string"?s:s.value,r=typeof s=="string"?[]:s.limiters,i="";switch(r.forEach(o=>{i+=`|${this.escapeStr(o)}`}),n){case"partially":default:return`()(${e})`;case"complementary":return i="\\s"+(i||this.escapeStr(t)),`()([^${i}]*${e}[^${i}]*)`;case"exactly":return`(^|\\s${i})(${e})(?=$|\\s${i})`}}getSeparatedKeywords(e){let t=[];return e.forEach(s=>{this.opt.separateWordSearch?s.split(" ").forEach(n=>{n.trim()&&t.indexOf(n)===-1&&t.push(n)}):s.trim()&&t.indexOf(s)===-1&&t.push(s)}),{keywords:t.sort((s,n)=>n.length-s.length),length:t.length}}isNumeric(e){return Number(parseFloat(e))==e}checkRanges(e){if(!Array.isArray(e)||Object.prototype.toString.call(e[0])!=="[object Object]")return this.log("markRanges() will only accept an array of objects"),this.opt.noMatch(e),[];const t=[];let s=0;return e.sort((n,r)=>n.start-r.start).forEach(n=>{let{start:r,end:i,valid:o}=this.callNoMatchOnInvalidRanges(n,s);o&&(n.start=r,n.length=i-r,t.push(n),s=i)}),t}callNoMatchOnInvalidRanges(e,t){let s,n,r=!1;return e&&typeof e.start<"u"?(s=parseInt(e.start,10),n=s+parseInt(e.length,10),this.isNumeric(e.start)&&this.isNumeric(e.length)&&n-t>0&&n-s>0?r=!0:(this.log(`Ignoring invalid or overlapping range: ${JSON.stringify(e)}`),this.opt.noMatch(e))):(this.log(`Ignoring invalid range: ${JSON.stringify(e)}`),this.opt.noMatch(e)),{start:s,end:n,valid:r}}checkWhitespaceRanges(e,t,s){let n,r=!0,i=s.length,o=t-i,l=parseInt(e.start,10)-o;return l=l>i?i:l,n=l+parseInt(e.length,10),n>i&&(n=i,this.log(`End range automatically set to the max value of ${i}`)),l<0||n-l<0||l>i||n>i?(r=!1,this.log(`Invalid range: ${JSON.stringify(e)}`),this.opt.noMatch(e)):s.substring(l,n).replace(/\s+/g,"")===""&&(r=!1,this.log("Skipping whitespace only range: "+JSON.stringify(e)),this.opt.noMatch(e)),{start:l,end:n,valid:r}}getTextNodes(e){let t="",s=[];this.iterator.forEachNode(NodeFilter.SHOW_TEXT,n=>{s.push({start:t.length,end:(t+=n.textContent).length,node:n})},n=>this.matchesExclude(n.parentNode)?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT,()=>{e({value:t,nodes:s})})}matchesExclude(e){return ce.matches(e,this.opt.exclude.concat(["script","style","title","head","html"]))}wrapRangeInTextNode(e,t,s){const n=this.opt.element?this.opt.element:"mark",r=e.splitText(t),i=r.splitText(s-t);let o=document.createElement(n);return o.setAttribute("data-markjs","true"),this.opt.className&&o.setAttribute("class",this.opt.className),o.textContent=r.textContent,r.parentNode.replaceChild(o,r),i}wrapRangeInMappedTextNode(e,t,s,n,r){e.nodes.every((i,o)=>{const l=e.nodes[o+1];if(typeof l>"u"||l.start>t){if(!n(i.node))return!1;const c=t-i.start,h=(s>i.end?i.end:s)-i.start,m=e.value.substr(0,i.start),f=e.value.substr(h+i.start);if(i.node=this.wrapRangeInTextNode(i.node,c,h),e.value=m+f,e.nodes.forEach((b,y)=>{y>=o&&(e.nodes[y].start>0&&y!==o&&(e.nodes[y].start-=h),e.nodes[y].end-=h)}),s-=h,r(i.node.previousSibling,i.start),s>i.end)t=i.end;else return!1}return!0})}wrapMatches(e,t,s,n,r){const i=t===0?0:t+1;this.getTextNodes(o=>{o.nodes.forEach(l=>{l=l.node;let c;for(;(c=e.exec(l.textContent))!==null&&c[i]!=="";){if(!s(c[i],l))continue;let h=c.index;if(i!==0)for(let m=1;m{let l;for(;(l=e.exec(o.value))!==null&&l[i]!=="";){let c=l.index;if(i!==0)for(let m=1;ms(l[i],m),(m,f)=>{e.lastIndex=f,n(m)})}r()})}wrapRangeFromIndex(e,t,s,n){this.getTextNodes(r=>{const i=r.value.length;e.forEach((o,l)=>{let{start:c,end:h,valid:m}=this.checkWhitespaceRanges(o,i,r.value);m&&this.wrapRangeInMappedTextNode(r,c,h,f=>t(f,o,r.value.substring(c,h),l),f=>{s(f,o)})}),n()})}unwrapMatches(e){const t=e.parentNode;let s=document.createDocumentFragment();for(;e.firstChild;)s.appendChild(e.removeChild(e.firstChild));t.replaceChild(s,e),this.ie?this.normalizeTextNode(t):t.normalize()}normalizeTextNode(e){if(e){if(e.nodeType===3)for(;e.nextSibling&&e.nextSibling.nodeType===3;)e.nodeValue+=e.nextSibling.nodeValue,e.parentNode.removeChild(e.nextSibling);else this.normalizeTextNode(e.firstChild);this.normalizeTextNode(e.nextSibling)}}markRegExp(e,t){this.opt=t,this.log(`Searching with expression "${e}"`);let s=0,n="wrapMatches";const r=i=>{s++,this.opt.each(i)};this.opt.acrossElements&&(n="wrapMatchesAcrossElements"),this[n](e,this.opt.ignoreGroups,(i,o)=>this.opt.filter(o,i,s),r,()=>{s===0&&this.opt.noMatch(e),this.opt.done(s)})}mark(e,t){this.opt=t;let s=0,n="wrapMatches";const{keywords:r,length:i}=this.getSeparatedKeywords(typeof e=="string"?[e]:e),o=this.opt.caseSensitive?"":"i",l=c=>{let h=new RegExp(this.createRegExp(c),`gm${o}`),m=0;this.log(`Searching with expression "${h}"`),this[n](h,1,(f,b)=>this.opt.filter(b,c,s,m),f=>{m++,s++,this.opt.each(f)},()=>{m===0&&this.opt.noMatch(c),r[i-1]===c?this.opt.done(s):l(r[r.indexOf(c)+1])})};this.opt.acrossElements&&(n="wrapMatchesAcrossElements"),i===0?this.opt.done(s):l(r[0])}markRanges(e,t){this.opt=t;let s=0,n=this.checkRanges(e);n&&n.length?(this.log("Starting to mark with the following ranges: "+JSON.stringify(n)),this.wrapRangeFromIndex(n,(r,i,o,l)=>this.opt.filter(r,i,o,l),(r,i)=>{s++,this.opt.each(r,i)},()=>{this.opt.done(s)})):this.opt.done(s)}unmark(e){this.opt=e;let t=this.opt.element?this.opt.element:"*";t+="[data-markjs]",this.opt.className&&(t+=`.${this.opt.className}`),this.log(`Removal selector "${t}"`),this.iterator.forEachNode(NodeFilter.SHOW_ELEMENT,s=>{this.unwrapMatches(s)},s=>{const n=ce.matches(s,t),r=this.matchesExclude(s);return!n||r?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},this.opt.done)}};function Ps(a){const e=new zs(a);return this.mark=(t,s)=>(e.mark(t,s),this),this.markRegExp=(t,s)=>(e.markRegExp(t,s),this),this.markRanges=(t,s)=>(e.markRanges(t,s),this),this.unmark=t=>(e.unmark(t),this),this}const Vs="ENTRIES",xt="KEYS",_t="VALUES",D="";class Le{constructor(e,t){const s=e._tree,n=Array.from(s.keys());this.set=e,this._type=t,this._path=n.length>0?[{node:s,keys:n}]:[]}next(){const e=this.dive();return this.backtrack(),e}dive(){if(this._path.length===0)return{done:!0,value:void 0};const{node:e,keys:t}=oe(this._path);if(oe(t)===D)return{done:!1,value:this.result()};const s=e.get(oe(t));return this._path.push({node:s,keys:Array.from(s.keys())}),this.dive()}backtrack(){if(this._path.length===0)return;const e=oe(this._path).keys;e.pop(),!(e.length>0)&&(this._path.pop(),this.backtrack())}key(){return this.set._prefix+this._path.map(({keys:e})=>oe(e)).filter(e=>e!==D).join("")}value(){return oe(this._path).node.get(D)}result(){switch(this._type){case _t:return this.value();case xt:return this.key();default:return[this.key(),this.value()]}}[Symbol.iterator](){return this}}const oe=a=>a[a.length-1],$s=(a,e,t)=>{const s=new Map;if(e===void 0)return s;const n=e.length+1,r=n+t,i=new Uint8Array(r*n).fill(t+1);for(let o=0;o{const l=r*i;e:for(const c of a.keys())if(c===D){const h=n[l-1];h<=t&&s.set(o,[a.get(c),h])}else{let h=r;for(let m=0;mt)continue e}St(a.get(c),e,t,s,n,h,i,o+c)}};class X{constructor(e=new Map,t=""){this._size=void 0,this._tree=e,this._prefix=t}atPrefix(e){if(!e.startsWith(this._prefix))throw new Error("Mismatched prefix");const[t,s]=Re(this._tree,e.slice(this._prefix.length));if(t===void 0){const[n,r]=qe(s);for(const i of n.keys())if(i!==D&&i.startsWith(r)){const o=new Map;return o.set(i.slice(r.length),n.get(i)),new X(o,e)}}return new X(t,e)}clear(){this._size=void 0,this._tree.clear()}delete(e){return this._size=void 0,js(this._tree,e)}entries(){return new Le(this,Vs)}forEach(e){for(const[t,s]of this)e(t,s,this)}fuzzyGet(e,t){return $s(this._tree,e,t)}get(e){const t=We(this._tree,e);return t!==void 0?t.get(D):void 0}has(e){const t=We(this._tree,e);return t!==void 0&&t.has(D)}keys(){return new Le(this,xt)}set(e,t){if(typeof e!="string")throw new Error("key must be a string");return this._size=void 0,De(this._tree,e).set(D,t),this}get size(){if(this._size)return this._size;this._size=0;const e=this.entries();for(;!e.next().done;)this._size+=1;return this._size}update(e,t){if(typeof e!="string")throw new Error("key must be a string");this._size=void 0;const s=De(this._tree,e);return s.set(D,t(s.get(D))),this}fetch(e,t){if(typeof e!="string")throw new Error("key must be a string");this._size=void 0;const s=De(this._tree,e);let n=s.get(D);return n===void 0&&s.set(D,n=t()),n}values(){return new Le(this,_t)}[Symbol.iterator](){return this.entries()}static from(e){const t=new X;for(const[s,n]of e)t.set(s,n);return t}static fromObject(e){return X.from(Object.entries(e))}}const Re=(a,e,t=[])=>{if(e.length===0||a==null)return[a,t];for(const s of a.keys())if(s!==D&&e.startsWith(s))return t.push([a,s]),Re(a.get(s),e.slice(s.length),t);return t.push([a,e]),Re(void 0,"",t)},We=(a,e)=>{if(e.length===0||a==null)return a;for(const t of a.keys())if(t!==D&&e.startsWith(t))return We(a.get(t),e.slice(t.length))},De=(a,e)=>{const t=e.length;e:for(let s=0;a&&s{const[t,s]=Re(a,e);if(t!==void 0){if(t.delete(D),t.size===0)Et(s);else if(t.size===1){const[n,r]=t.entries().next().value;Tt(s,n,r)}}},Et=a=>{if(a.length===0)return;const[e,t]=qe(a);if(e.delete(t),e.size===0)Et(a.slice(0,-1));else if(e.size===1){const[s,n]=e.entries().next().value;s!==D&&Tt(a.slice(0,-1),s,n)}},Tt=(a,e,t)=>{if(a.length===0)return;const[s,n]=qe(a);s.set(n+e,t),s.delete(n)},qe=a=>a[a.length-1],Ue="or",It="and",Bs="and_not";class ue{constructor(e){if((e==null?void 0:e.fields)==null)throw new Error('MiniSearch: option "fields" must be provided');const t=e.autoVacuum==null||e.autoVacuum===!0?Ve:e.autoVacuum;this._options={...Pe,...e,autoVacuum:t,searchOptions:{...dt,...e.searchOptions||{}},autoSuggestOptions:{...Us,...e.autoSuggestOptions||{}}},this._index=new X,this._documentCount=0,this._documentIds=new Map,this._idToShortId=new Map,this._fieldIds={},this._fieldLength=new Map,this._avgFieldLength=[],this._nextId=0,this._storedFields=new Map,this._dirtCount=0,this._currentVacuum=null,this._enqueuedVacuum=null,this._enqueuedVacuumConditions=Je,this.addFields(this._options.fields)}add(e){const{extractField:t,tokenize:s,processTerm:n,fields:r,idField:i}=this._options,o=t(e,i);if(o==null)throw new Error(`MiniSearch: document does not have ID field "${i}"`);if(this._idToShortId.has(o))throw new Error(`MiniSearch: duplicate ID ${o}`);const l=this.addDocumentId(o);this.saveStoredFields(l,e);for(const c of r){const h=t(e,c);if(h==null)continue;const m=s(h.toString(),c),f=this._fieldIds[c],b=new Set(m).size;this.addFieldLength(l,f,this._documentCount-1,b);for(const y of m){const x=n(y,c);if(Array.isArray(x))for(const w of x)this.addTerm(f,l,w);else x&&this.addTerm(f,l,x)}}}addAll(e){for(const t of e)this.add(t)}addAllAsync(e,t={}){const{chunkSize:s=10}=t,n={chunk:[],promise:Promise.resolve()},{chunk:r,promise:i}=e.reduce(({chunk:o,promise:l},c,h)=>(o.push(c),(h+1)%s===0?{chunk:[],promise:l.then(()=>new Promise(m=>setTimeout(m,0))).then(()=>this.addAll(o))}:{chunk:o,promise:l}),n);return i.then(()=>this.addAll(r))}remove(e){const{tokenize:t,processTerm:s,extractField:n,fields:r,idField:i}=this._options,o=n(e,i);if(o==null)throw new Error(`MiniSearch: document does not have ID field "${i}"`);const l=this._idToShortId.get(o);if(l==null)throw new Error(`MiniSearch: cannot remove document with ID ${o}: it is not in the index`);for(const c of r){const h=n(e,c);if(h==null)continue;const m=t(h.toString(),c),f=this._fieldIds[c],b=new Set(m).size;this.removeFieldLength(l,f,this._documentCount,b);for(const y of m){const x=s(y,c);if(Array.isArray(x))for(const w of x)this.removeTerm(f,l,w);else x&&this.removeTerm(f,l,x)}}this._storedFields.delete(l),this._documentIds.delete(l),this._idToShortId.delete(o),this._fieldLength.delete(l),this._documentCount-=1}removeAll(e){if(e)for(const t of e)this.remove(t);else{if(arguments.length>0)throw new Error("Expected documents to be present. Omit the argument to remove all documents.");this._index=new X,this._documentCount=0,this._documentIds=new Map,this._idToShortId=new Map,this._fieldLength=new Map,this._avgFieldLength=[],this._storedFields=new Map,this._nextId=0}}discard(e){const t=this._idToShortId.get(e);if(t==null)throw new Error(`MiniSearch: cannot discard document with ID ${e}: it is not in the index`);this._idToShortId.delete(e),this._documentIds.delete(t),this._storedFields.delete(t),(this._fieldLength.get(t)||[]).forEach((s,n)=>{this.removeFieldLength(t,n,this._documentCount,s)}),this._fieldLength.delete(t),this._documentCount-=1,this._dirtCount+=1,this.maybeAutoVacuum()}maybeAutoVacuum(){if(this._options.autoVacuum===!1)return;const{minDirtFactor:e,minDirtCount:t,batchSize:s,batchWait:n}=this._options.autoVacuum;this.conditionalVacuum({batchSize:s,batchWait:n},{minDirtCount:t,minDirtFactor:e})}discardAll(e){const t=this._options.autoVacuum;try{this._options.autoVacuum=!1;for(const s of e)this.discard(s)}finally{this._options.autoVacuum=t}this.maybeAutoVacuum()}replace(e){const{idField:t,extractField:s}=this._options,n=s(e,t);this.discard(n),this.add(e)}vacuum(e={}){return this.conditionalVacuum(e)}conditionalVacuum(e,t){return this._currentVacuum?(this._enqueuedVacuumConditions=this._enqueuedVacuumConditions&&t,this._enqueuedVacuum!=null?this._enqueuedVacuum:(this._enqueuedVacuum=this._currentVacuum.then(()=>{const s=this._enqueuedVacuumConditions;return this._enqueuedVacuumConditions=Je,this.performVacuuming(e,s)}),this._enqueuedVacuum)):this.vacuumConditionsMet(t)===!1?Promise.resolve():(this._currentVacuum=this.performVacuuming(e),this._currentVacuum)}async performVacuuming(e,t){const s=this._dirtCount;if(this.vacuumConditionsMet(t)){const n=e.batchSize||Ke.batchSize,r=e.batchWait||Ke.batchWait;let i=1;for(const[o,l]of this._index){for(const[c,h]of l)for(const[m]of h)this._documentIds.has(m)||(h.size<=1?l.delete(c):h.delete(m));this._index.get(o).size===0&&this._index.delete(o),i%n===0&&await new Promise(c=>setTimeout(c,r)),i+=1}this._dirtCount-=s}await null,this._currentVacuum=this._enqueuedVacuum,this._enqueuedVacuum=null}vacuumConditionsMet(e){if(e==null)return!0;let{minDirtCount:t,minDirtFactor:s}=e;return t=t||Ve.minDirtCount,s=s||Ve.minDirtFactor,this.dirtCount>=t&&this.dirtFactor>=s}get isVacuuming(){return this._currentVacuum!=null}get dirtCount(){return this._dirtCount}get dirtFactor(){return this._dirtCount/(1+this._documentCount+this._dirtCount)}has(e){return this._idToShortId.has(e)}getStoredFields(e){const t=this._idToShortId.get(e);if(t!=null)return this._storedFields.get(t)}search(e,t={}){const{searchOptions:s}=this._options,n={...s,...t},r=this.executeQuery(e,t),i=[];for(const[o,{score:l,terms:c,match:h}]of r){const m=c.length||1,f={id:this._documentIds.get(o),score:l*m,terms:Object.keys(h),queryTerms:c,match:h};Object.assign(f,this._storedFields.get(o)),(n.filter==null||n.filter(f))&&i.push(f)}return e===ue.wildcard&&n.boostDocument==null||i.sort(ft),i}autoSuggest(e,t={}){t={...this._options.autoSuggestOptions,...t};const s=new Map;for(const{score:r,terms:i}of this.search(e,t)){const o=i.join(" "),l=s.get(o);l!=null?(l.score+=r,l.count+=1):s.set(o,{score:r,terms:i,count:1})}const n=[];for(const[r,{score:i,terms:o,count:l}]of s)n.push({suggestion:r,terms:o,score:i/l});return n.sort(ft),n}get documentCount(){return this._documentCount}get termCount(){return this._index.size}static loadJSON(e,t){if(t==null)throw new Error("MiniSearch: loadJSON should be given the same options used when serializing the index");return this.loadJS(JSON.parse(e),t)}static async loadJSONAsync(e,t){if(t==null)throw new Error("MiniSearch: loadJSON should be given the same options used when serializing the index");return this.loadJSAsync(JSON.parse(e),t)}static getDefault(e){if(Pe.hasOwnProperty(e))return ze(Pe,e);throw new Error(`MiniSearch: unknown option "${e}"`)}static loadJS(e,t){const{index:s,documentIds:n,fieldLength:r,storedFields:i,serializationVersion:o}=e,l=this.instantiateMiniSearch(e,t);l._documentIds=Te(n),l._fieldLength=Te(r),l._storedFields=Te(i);for(const[c,h]of l._documentIds)l._idToShortId.set(h,c);for(const[c,h]of s){const m=new Map;for(const f of Object.keys(h)){let b=h[f];o===1&&(b=b.ds),m.set(parseInt(f,10),Te(b))}l._index.set(c,m)}return l}static async loadJSAsync(e,t){const{index:s,documentIds:n,fieldLength:r,storedFields:i,serializationVersion:o}=e,l=this.instantiateMiniSearch(e,t);l._documentIds=await Ie(n),l._fieldLength=await Ie(r),l._storedFields=await Ie(i);for(const[h,m]of l._documentIds)l._idToShortId.set(m,h);let c=0;for(const[h,m]of s){const f=new Map;for(const b of Object.keys(m)){let y=m[b];o===1&&(y=y.ds),f.set(parseInt(b,10),await Ie(y))}++c%1e3===0&&await kt(0),l._index.set(h,f)}return l}static instantiateMiniSearch(e,t){const{documentCount:s,nextId:n,fieldIds:r,averageFieldLength:i,dirtCount:o,serializationVersion:l}=e;if(l!==1&&l!==2)throw new Error("MiniSearch: cannot deserialize an index created with an incompatible version");const c=new ue(t);return c._documentCount=s,c._nextId=n,c._idToShortId=new Map,c._fieldIds=r,c._avgFieldLength=i,c._dirtCount=o||0,c._index=new X,c}executeQuery(e,t={}){if(e===ue.wildcard)return this.executeWildcardQuery(t);if(typeof e!="string"){const f={...t,...e,queries:void 0},b=e.queries.map(y=>this.executeQuery(y,f));return this.combineResults(b,f.combineWith)}const{tokenize:s,processTerm:n,searchOptions:r}=this._options,i={tokenize:s,processTerm:n,...r,...t},{tokenize:o,processTerm:l}=i,m=o(e).flatMap(f=>l(f)).filter(f=>!!f).map(qs(i)).map(f=>this.executeQuerySpec(f,i));return this.combineResults(m,i.combineWith)}executeQuerySpec(e,t){const s={...this._options.searchOptions,...t},n=(s.fields||this._options.fields).reduce((x,w)=>({...x,[w]:ze(s.boost,w)||1}),{}),{boostDocument:r,weights:i,maxFuzzy:o,bm25:l}=s,{fuzzy:c,prefix:h}={...dt.weights,...i},m=this._index.get(e.term),f=this.termResults(e.term,e.term,1,e.termBoost,m,n,r,l);let b,y;if(e.prefix&&(b=this._index.atPrefix(e.term)),e.fuzzy){const x=e.fuzzy===!0?.2:e.fuzzy,w=x<1?Math.min(o,Math.round(e.term.length*x)):x;w&&(y=this._index.fuzzyGet(e.term,w))}if(b)for(const[x,w]of b){const C=x.length-e.term.length;if(!C)continue;y==null||y.delete(x);const A=h*x.length/(x.length+.3*C);this.termResults(e.term,x,A,e.termBoost,w,n,r,l,f)}if(y)for(const x of y.keys()){const[w,C]=y.get(x);if(!C)continue;const A=c*x.length/(x.length+C);this.termResults(e.term,x,A,e.termBoost,w,n,r,l,f)}return f}executeWildcardQuery(e){const t=new Map,s={...this._options.searchOptions,...e};for(const[n,r]of this._documentIds){const i=s.boostDocument?s.boostDocument(r,"",this._storedFields.get(n)):1;t.set(n,{score:i,terms:[],match:{}})}return t}combineResults(e,t=Ue){if(e.length===0)return new Map;const s=t.toLowerCase(),n=Ws[s];if(!n)throw new Error(`Invalid combination operator: ${t}`);return e.reduce(n)||new Map}toJSON(){const e=[];for(const[t,s]of this._index){const n={};for(const[r,i]of s)n[r]=Object.fromEntries(i);e.push([t,n])}return{documentCount:this._documentCount,nextId:this._nextId,documentIds:Object.fromEntries(this._documentIds),fieldIds:this._fieldIds,fieldLength:Object.fromEntries(this._fieldLength),averageFieldLength:this._avgFieldLength,storedFields:Object.fromEntries(this._storedFields),dirtCount:this._dirtCount,index:e,serializationVersion:2}}termResults(e,t,s,n,r,i,o,l,c=new Map){if(r==null)return c;for(const h of Object.keys(i)){const m=i[h],f=this._fieldIds[h],b=r.get(f);if(b==null)continue;let y=b.size;const x=this._avgFieldLength[f];for(const w of b.keys()){if(!this._documentIds.has(w)){this.removeTerm(f,w,t),y-=1;continue}const C=o?o(this._documentIds.get(w),t,this._storedFields.get(w)):1;if(!C)continue;const A=b.get(w),J=this._fieldLength.get(w)[f],Q=Js(A,y,this._documentCount,J,x,l),W=s*n*m*C*Q,$=c.get(w);if($){$.score+=W,Gs($.terms,e);const j=ze($.match,t);j?j.push(h):$.match[t]=[h]}else c.set(w,{score:W,terms:[e],match:{[t]:[h]}})}}return c}addTerm(e,t,s){const n=this._index.fetch(s,pt);let r=n.get(e);if(r==null)r=new Map,r.set(t,1),n.set(e,r);else{const i=r.get(t);r.set(t,(i||0)+1)}}removeTerm(e,t,s){if(!this._index.has(s)){this.warnDocumentChanged(t,e,s);return}const n=this._index.fetch(s,pt),r=n.get(e);r==null||r.get(t)==null?this.warnDocumentChanged(t,e,s):r.get(t)<=1?r.size<=1?n.delete(e):r.delete(t):r.set(t,r.get(t)-1),this._index.get(s).size===0&&this._index.delete(s)}warnDocumentChanged(e,t,s){for(const n of Object.keys(this._fieldIds))if(this._fieldIds[n]===t){this._options.logger("warn",`MiniSearch: document with ID ${this._documentIds.get(e)} has changed before removal: term "${s}" was not present in field "${n}". Removing a document after it has changed can corrupt the index!`,"version_conflict");return}}addDocumentId(e){const t=this._nextId;return this._idToShortId.set(e,t),this._documentIds.set(t,e),this._documentCount+=1,this._nextId+=1,t}addFields(e){for(let t=0;tObject.prototype.hasOwnProperty.call(a,e)?a[e]:void 0,Ws={[Ue]:(a,e)=>{for(const t of e.keys()){const s=a.get(t);if(s==null)a.set(t,e.get(t));else{const{score:n,terms:r,match:i}=e.get(t);s.score=s.score+n,s.match=Object.assign(s.match,i),ht(s.terms,r)}}return a},[It]:(a,e)=>{const t=new Map;for(const s of e.keys()){const n=a.get(s);if(n==null)continue;const{score:r,terms:i,match:o}=e.get(s);ht(n.terms,i),t.set(s,{score:n.score+r,terms:n.terms,match:Object.assign(n.match,o)})}return t},[Bs]:(a,e)=>{for(const t of e.keys())a.delete(t);return a}},Ks={k:1.2,b:.7,d:.5},Js=(a,e,t,s,n,r)=>{const{k:i,b:o,d:l}=r;return Math.log(1+(t-e+.5)/(e+.5))*(l+a*(i+1)/(a+i*(1-o+o*s/n)))},qs=a=>(e,t,s)=>{const n=typeof a.fuzzy=="function"?a.fuzzy(e,t,s):a.fuzzy||!1,r=typeof a.prefix=="function"?a.prefix(e,t,s):a.prefix===!0,i=typeof a.boostTerm=="function"?a.boostTerm(e,t,s):1;return{term:e,fuzzy:n,prefix:r,termBoost:i}},Pe={idField:"id",extractField:(a,e)=>a[e],tokenize:a=>a.split(Hs),processTerm:a=>a.toLowerCase(),fields:void 0,searchOptions:void 0,storeFields:[],logger:(a,e)=>{typeof(console==null?void 0:console[a])=="function"&&console[a](e)},autoVacuum:!0},dt={combineWith:Ue,prefix:!1,fuzzy:!1,maxFuzzy:6,boost:{},weights:{fuzzy:.45,prefix:.375},bm25:Ks},Us={combineWith:It,prefix:(a,e,t)=>e===t.length-1},Ke={batchSize:1e3,batchWait:10},Je={minDirtFactor:.1,minDirtCount:20},Ve={...Ke,...Je},Gs=(a,e)=>{a.includes(e)||a.push(e)},ht=(a,e)=>{for(const t of e)a.includes(t)||a.push(t)},ft=({score:a},{score:e})=>e-a,pt=()=>new Map,Te=a=>{const e=new Map;for(const t of Object.keys(a))e.set(parseInt(t,10),a[t]);return e},Ie=async a=>{const e=new Map;let t=0;for(const s of Object.keys(a))e.set(parseInt(s,10),a[s]),++t%1e3===0&&await kt(0);return e},kt=a=>new Promise(e=>setTimeout(e,a)),Hs=/[\n\r\p{Z}\p{P}]+/u;class Qs{constructor(e=10){Ce(this,"max");Ce(this,"cache");this.max=e,this.cache=new Map}get(e){let t=this.cache.get(e);return t!==void 0&&(this.cache.delete(e),this.cache.set(e,t)),t}set(e,t){this.cache.has(e)?this.cache.delete(e):this.cache.size===this.max&&this.cache.delete(this.first()),this.cache.set(e,t)}first(){return this.cache.keys().next().value}clear(){this.cache.clear()}}const Ys=["aria-owns"],Zs={class:"shell"},Xs=["title"],en={class:"search-actions before"},tn=["title"],sn=["aria-activedescendant","aria-controls","placeholder"],nn={class:"search-actions"},rn=["title"],an=["disabled","title"],on=["id","role","aria-labelledby"],ln=["id","aria-selected"],cn=["href","aria-label","onMouseenter","onFocusin","data-index"],un={class:"titles"},dn=["innerHTML"],hn={class:"title main"},fn=["innerHTML"],pn={key:0,class:"excerpt-wrapper"},vn={key:0,class:"excerpt",inert:""},mn=["innerHTML"],gn={key:0,class:"no-results"},bn={class:"search-keyboard-shortcuts"},yn=["aria-label"],wn=["aria-label"],xn=["aria-label"],_n=["aria-label"],Sn=Lt({__name:"VPLocalSearchBox",emits:["close"],setup(a,{emit:e}){var S,R;const t=e,s=le(),n=le(),r=le(is),i=ss(),{activate:o}=Ds(s,{immediate:!0,allowOutsideClick:!0,clickOutsideDeactivates:!0,escapeDeactivates:!0}),{localeIndex:l,theme:c}=i,h=tt(async()=>{var v,p,I,O,z,P,V,k,K;return rt(ue.loadJSON((I=await((p=(v=r.value)[l.value])==null?void 0:p.call(v)))==null?void 0:I.default,{fields:["title","titles","text"],storeFields:["title","titles"],searchOptions:{fuzzy:.2,prefix:!0,boost:{title:4,text:2,titles:1},...((O=c.value.search)==null?void 0:O.provider)==="local"&&((P=(z=c.value.search.options)==null?void 0:z.miniSearch)==null?void 0:P.searchOptions)},...((V=c.value.search)==null?void 0:V.provider)==="local"&&((K=(k=c.value.search.options)==null?void 0:k.miniSearch)==null?void 0:K.options)}))}),f=ge(()=>{var v,p;return((v=c.value.search)==null?void 0:v.provider)==="local"&&((p=c.value.search.options)==null?void 0:p.disableQueryPersistence)===!0}).value?he(""):Dt("vitepress:local-search-filter",""),b=zt("vitepress:local-search-detailed-list",((S=c.value.search)==null?void 0:S.provider)==="local"&&((R=c.value.search.options)==null?void 0:R.detailedView)===!0),y=ge(()=>{var v,p,I;return((v=c.value.search)==null?void 0:v.provider)==="local"&&(((p=c.value.search.options)==null?void 0:p.disableDetailedView)===!0||((I=c.value.search.options)==null?void 0:I.detailedView)===!1)}),x=ge(()=>{var p,I,O,z,P,V,k;const v=((p=c.value.search)==null?void 0:p.options)??c.value.algolia;return((P=(z=(O=(I=v==null?void 0:v.locales)==null?void 0:I[l.value])==null?void 0:O.translations)==null?void 0:z.button)==null?void 0:P.buttonText)||((k=(V=v==null?void 0:v.translations)==null?void 0:V.button)==null?void 0:k.buttonText)||"Search"});Pt(()=>{y.value&&(b.value=!1)});const w=le([]),C=he(!1);$e(f,()=>{C.value=!1});const A=tt(async()=>{if(n.value)return rt(new Ps(n.value))},null),J=new Qs(16);Vt(()=>[h.value,f.value,b.value],async([v,p,I],O,z)=>{var ee,we,Ge,He;(O==null?void 0:O[0])!==v&&J.clear();let P=!1;if(z(()=>{P=!0}),!v)return;w.value=v.search(p).slice(0,16),C.value=!0;const V=I?await Promise.all(w.value.map(B=>Q(B.id))):[];if(P)return;for(const{id:B,mod:te}of V){const se=B.slice(0,B.indexOf("#"));let Y=J.get(se);if(Y)continue;Y=new Map,J.set(se,Y);const G=te.default??te;if(G!=null&&G.render||G!=null&&G.setup){const ne=Yt(G);ne.config.warnHandler=()=>{},ne.provide(Zt,i),Object.defineProperties(ne.config.globalProperties,{$frontmatter:{get(){return i.frontmatter.value}},$params:{get(){return i.page.value.params}}});const Qe=document.createElement("div");ne.mount(Qe),Qe.querySelectorAll("h1, h2, h3, h4, h5, h6").forEach(de=>{var Xe;const xe=(Xe=de.querySelector("a"))==null?void 0:Xe.getAttribute("href"),Ye=(xe==null?void 0:xe.startsWith("#"))&&xe.slice(1);if(!Ye)return;let Ze="";for(;(de=de.nextElementSibling)&&!/^h[1-6]$/i.test(de.tagName);)Ze+=de.outerHTML;Y.set(Ye,Ze)}),ne.unmount()}if(P)return}const k=new Set;if(w.value=w.value.map(B=>{const[te,se]=B.id.split("#"),Y=J.get(te),G=(Y==null?void 0:Y.get(se))??"";for(const ne in B.match)k.add(ne);return{...B,text:G}}),await fe(),P)return;await new Promise(B=>{var te;(te=A.value)==null||te.unmark({done:()=>{var se;(se=A.value)==null||se.markRegExp(T(k),{done:B})}})});const K=((ee=s.value)==null?void 0:ee.querySelectorAll(".result .excerpt"))??[];for(const B of K)(we=B.querySelector('mark[data-markjs="true"]'))==null||we.scrollIntoView({block:"center"});(He=(Ge=n.value)==null?void 0:Ge.firstElementChild)==null||He.scrollIntoView({block:"start"})},{debounce:200,immediate:!0});async function Q(v){const p=Xt(v.slice(0,v.indexOf("#")));try{if(!p)throw new Error(`Cannot find file for id: ${v}`);return{id:v,mod:await import(p)}}catch(I){return console.error(I),{id:v,mod:{}}}}const W=he(),$=ge(()=>{var v;return((v=f.value)==null?void 0:v.length)<=0});function j(v=!0){var p,I;(p=W.value)==null||p.focus(),v&&((I=W.value)==null||I.select())}Ae(()=>{j()});function ye(v){v.pointerType==="mouse"&&j()}const M=he(-1),q=he(!0);$e(w,v=>{M.value=v.length?0:-1,U()});function U(){fe(()=>{const v=document.querySelector(".result.selected");v==null||v.scrollIntoView({block:"nearest"})})}_e("ArrowUp",v=>{v.preventDefault(),M.value--,M.value<0&&(M.value=w.value.length-1),q.value=!0,U()}),_e("ArrowDown",v=>{v.preventDefault(),M.value++,M.value>=w.value.length&&(M.value=0),q.value=!0,U()});const N=$t();_e("Enter",v=>{if(v.isComposing||v.target instanceof HTMLButtonElement&&v.target.type!=="submit")return;const p=w.value[M.value];if(v.target instanceof HTMLInputElement&&!p){v.preventDefault();return}p&&(N.go(p.id),t("close"))}),_e("Escape",()=>{t("close")});const d=ns({modal:{displayDetails:"Display detailed list",resetButtonTitle:"Reset search",backButtonTitle:"Close search",noResultsText:"No results for",footer:{selectText:"to select",selectKeyAriaLabel:"enter",navigateText:"to navigate",navigateUpKeyAriaLabel:"up arrow",navigateDownKeyAriaLabel:"down arrow",closeText:"to close",closeKeyAriaLabel:"escape"}}});Ae(()=>{window.history.pushState(null,"",null)}),jt("popstate",v=>{v.preventDefault(),t("close")});const g=Bt(Wt?document.body:null);Ae(()=>{fe(()=>{g.value=!0,fe().then(()=>o())})}),Kt(()=>{g.value=!1});function E(){f.value="",fe().then(()=>j(!1))}function T(v){return new RegExp([...v].sort((p,I)=>I.length-p.length).map(p=>`(${es(p)})`).join("|"),"gi")}function F(v){var O;if(!q.value)return;const p=(O=v.target)==null?void 0:O.closest(".result"),I=Number.parseInt(p==null?void 0:p.dataset.index);I>=0&&I!==M.value&&(M.value=I),q.value=!1}return(v,p)=>{var I,O,z,P,V;return H(),Jt(Qt,{to:"body"},[_("div",{ref_key:"el",ref:s,role:"button","aria-owns":(I=w.value)!=null&&I.length?"localsearch-list":void 0,"aria-expanded":"true","aria-haspopup":"listbox","aria-labelledby":"localsearch-label",class:"VPLocalSearchBox"},[_("div",{class:"backdrop",onClick:p[0]||(p[0]=k=>v.$emit("close"))}),_("div",Zs,[_("form",{class:"search-bar",onPointerup:p[4]||(p[4]=k=>ye(k)),onSubmit:p[5]||(p[5]=qt(()=>{},["prevent"]))},[_("label",{title:x.value,id:"localsearch-label",for:"localsearch-input"},p[7]||(p[7]=[_("span",{"aria-hidden":"true",class:"vpi-search search-icon local-search-icon"},null,-1)]),8,Xs),_("div",en,[_("button",{class:"back-button",title:L(d)("modal.backButtonTitle"),onClick:p[1]||(p[1]=k=>v.$emit("close"))},p[8]||(p[8]=[_("span",{class:"vpi-arrow-left local-search-icon"},null,-1)]),8,tn)]),Ut(_("input",{ref_key:"searchInput",ref:W,"onUpdate:modelValue":p[2]||(p[2]=k=>Ht(f)?f.value=k:null),"aria-activedescendant":M.value>-1?"localsearch-item-"+M.value:void 0,"aria-autocomplete":"both","aria-controls":(O=w.value)!=null&&O.length?"localsearch-list":void 0,"aria-labelledby":"localsearch-label",autocapitalize:"off",autocomplete:"off",autocorrect:"off",class:"search-input",id:"localsearch-input",enterkeyhint:"go",maxlength:"64",placeholder:x.value,spellcheck:"false",type:"search"},null,8,sn),[[Gt,L(f)]]),_("div",nn,[y.value?Se("",!0):(H(),Z("button",{key:0,class:st(["toggle-layout-button",{"detailed-list":L(b)}]),type:"button",title:L(d)("modal.displayDetails"),onClick:p[3]||(p[3]=k=>M.value>-1&&(b.value=!L(b)))},p[9]||(p[9]=[_("span",{class:"vpi-layout-list local-search-icon"},null,-1)]),10,rn)),_("button",{class:"clear-button",type:"reset",disabled:$.value,title:L(d)("modal.resetButtonTitle"),onClick:E},p[10]||(p[10]=[_("span",{class:"vpi-delete local-search-icon"},null,-1)]),8,an)])],32),_("ul",{ref_key:"resultsEl",ref:n,id:(z=w.value)!=null&&z.length?"localsearch-list":void 0,role:(P=w.value)!=null&&P.length?"listbox":void 0,"aria-labelledby":(V=w.value)!=null&&V.length?"localsearch-label":void 0,class:"results",onMousemove:F},[(H(!0),Z(it,null,nt(w.value,(k,K)=>(H(),Z("li",{key:k.id,id:"localsearch-item-"+K,"aria-selected":M.value===K?"true":"false",role:"option"},[_("a",{href:k.id,class:st(["result",{selected:M.value===K}]),"aria-label":[...k.titles,k.title].join(" > "),onMouseenter:ee=>!q.value&&(M.value=K),onFocusin:ee=>M.value=K,onClick:p[6]||(p[6]=ee=>v.$emit("close")),"data-index":K},[_("div",null,[_("div",un,[p[12]||(p[12]=_("span",{class:"title-icon"},"#",-1)),(H(!0),Z(it,null,nt(k.titles,(ee,we)=>(H(),Z("span",{key:we,class:"title"},[_("span",{class:"text",innerHTML:ee},null,8,dn),p[11]||(p[11]=_("span",{class:"vpi-chevron-right local-search-icon"},null,-1))]))),128)),_("span",hn,[_("span",{class:"text",innerHTML:k.title},null,8,fn)])]),L(b)?(H(),Z("div",pn,[k.text?(H(),Z("div",vn,[_("div",{class:"vp-doc",innerHTML:k.text},null,8,mn)])):Se("",!0),p[13]||(p[13]=_("div",{class:"excerpt-gradient-bottom"},null,-1)),p[14]||(p[14]=_("div",{class:"excerpt-gradient-top"},null,-1))])):Se("",!0)])],42,cn)],8,ln))),128)),L(f)&&!w.value.length&&C.value?(H(),Z("li",gn,[pe(ve(L(d)("modal.noResultsText"))+' "',1),_("strong",null,ve(L(f)),1),p[15]||(p[15]=pe('" ',-1))])):Se("",!0)],40,on),_("div",bn,[_("span",null,[_("kbd",{"aria-label":L(d)("modal.footer.navigateUpKeyAriaLabel")},p[16]||(p[16]=[_("span",{class:"vpi-arrow-up navigate-icon"},null,-1)]),8,yn),_("kbd",{"aria-label":L(d)("modal.footer.navigateDownKeyAriaLabel")},p[17]||(p[17]=[_("span",{class:"vpi-arrow-down navigate-icon"},null,-1)]),8,wn),pe(" "+ve(L(d)("modal.footer.navigateText")),1)]),_("span",null,[_("kbd",{"aria-label":L(d)("modal.footer.selectKeyAriaLabel")},p[18]||(p[18]=[_("span",{class:"vpi-corner-down-left navigate-icon"},null,-1)]),8,xn),pe(" "+ve(L(d)("modal.footer.selectText")),1)]),_("span",null,[_("kbd",{"aria-label":L(d)("modal.footer.closeKeyAriaLabel")},"esc",8,_n),pe(" "+ve(L(d)("modal.footer.closeText")),1)])])])],8,Ys)])}}}),Fn=ts(Sn,[["__scopeId","data-v-ce626c7c"]]);export{Fn as default};
diff --git a/assets/chunks/architectureDiagram-VXUJARFQ.CaSL3V8c.js b/assets/chunks/architectureDiagram-VXUJARFQ.CaSL3V8c.js
new file mode 100644
index 000000000..e23fcfe05
--- /dev/null
+++ b/assets/chunks/architectureDiagram-VXUJARFQ.CaSL3V8c.js
@@ -0,0 +1,36 @@
+import{aA as ye,aB as Ze,_ as dt,K as ke,a3 as qe,l as Re,b as Qe,a as Je,q as Ke,t as je,g as _e,s as tr,z as er,F as rr,G as ir,H as ar,c as Ee,ad as me,aC as ve,i as nr,d as or,y as sr,aD as hr,aE as lr}from"./theme.kqgpP4eL.js";import{p as fr}from"./chunk-4BX2VUAB.B6a8mhSC.js";import{p as cr}from"./treemap-KMMF4GRG.CcUr4GSN.js";import{c as Se}from"./cytoscape.esm.CyJtwmzi.js";import"./framework.CgT1UzWm.js";import"./min.fO5GJb76.js";import"./baseUniq.BHxmztwl.js";var Fe={exports:{}},ue={exports:{}},de={exports:{}},we;function gr(){return we||(we=1,function(I,D){(function(P,N){I.exports=N()})(ye,function(){return function(A){var P={};function N(u){if(P[u])return P[u].exports;var h=P[u]={i:u,l:!1,exports:{}};return A[u].call(h.exports,h,h.exports,N),h.l=!0,h.exports}return N.m=A,N.c=P,N.i=function(u){return u},N.d=function(u,h,a){N.o(u,h)||Object.defineProperty(u,h,{configurable:!1,enumerable:!0,get:a})},N.n=function(u){var h=u&&u.__esModule?function(){return u.default}:function(){return u};return N.d(h,"a",h),h},N.o=function(u,h){return Object.prototype.hasOwnProperty.call(u,h)},N.p="",N(N.s=28)}([function(A,P,N){function u(){}u.QUALITY=1,u.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,u.DEFAULT_INCREMENTAL=!1,u.DEFAULT_ANIMATION_ON_LAYOUT=!0,u.DEFAULT_ANIMATION_DURING_LAYOUT=!1,u.DEFAULT_ANIMATION_PERIOD=50,u.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,u.DEFAULT_GRAPH_MARGIN=15,u.NODE_DIMENSIONS_INCLUDE_LABELS=!1,u.SIMPLE_NODE_SIZE=40,u.SIMPLE_NODE_HALF_SIZE=u.SIMPLE_NODE_SIZE/2,u.EMPTY_COMPOUND_NODE_SIZE=40,u.MIN_EDGE_LENGTH=1,u.WORLD_BOUNDARY=1e6,u.INITIAL_WORLD_BOUNDARY=u.WORLD_BOUNDARY/1e3,u.WORLD_CENTER_X=1200,u.WORLD_CENTER_Y=900,A.exports=u},function(A,P,N){var u=N(2),h=N(8),a=N(9);function r(f,i,g){u.call(this,g),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=g,this.bendpoints=[],this.source=f,this.target=i}r.prototype=Object.create(u.prototype);for(var e in u)r[e]=u[e];r.prototype.getSource=function(){return this.source},r.prototype.getTarget=function(){return this.target},r.prototype.isInterGraph=function(){return this.isInterGraph},r.prototype.getLength=function(){return this.length},r.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},r.prototype.getBendpoints=function(){return this.bendpoints},r.prototype.getLca=function(){return this.lca},r.prototype.getSourceInLca=function(){return this.sourceInLca},r.prototype.getTargetInLca=function(){return this.targetInLca},r.prototype.getOtherEnd=function(f){if(this.source===f)return this.target;if(this.target===f)return this.source;throw"Node is not incident with this edge"},r.prototype.getOtherEndInGraph=function(f,i){for(var g=this.getOtherEnd(f),t=i.getGraphManager().getRoot();;){if(g.getOwner()==i)return g;if(g.getOwner()==t)break;g=g.getOwner().getParent()}return null},r.prototype.updateLength=function(){var f=new Array(4);this.isOverlapingSourceAndTarget=h.getIntersection(this.target.getRect(),this.source.getRect(),f),this.isOverlapingSourceAndTarget||(this.lengthX=f[0]-f[2],this.lengthY=f[1]-f[3],Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY))},r.prototype.updateLengthSimple=function(){this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1&&(this.lengthX=a.sign(this.lengthX)),Math.abs(this.lengthY)<1&&(this.lengthY=a.sign(this.lengthY)),this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},A.exports=r},function(A,P,N){function u(h){this.vGraphObject=h}A.exports=u},function(A,P,N){var u=N(2),h=N(10),a=N(13),r=N(0),e=N(16),f=N(5);function i(t,o,s,c){s==null&&c==null&&(c=o),u.call(this,c),t.graphManager!=null&&(t=t.graphManager),this.estimatedSize=h.MIN_VALUE,this.inclusionTreeDepth=h.MAX_VALUE,this.vGraphObject=c,this.edges=[],this.graphManager=t,s!=null&&o!=null?this.rect=new a(o.x,o.y,s.width,s.height):this.rect=new a}i.prototype=Object.create(u.prototype);for(var g in u)i[g]=u[g];i.prototype.getEdges=function(){return this.edges},i.prototype.getChild=function(){return this.child},i.prototype.getOwner=function(){return this.owner},i.prototype.getWidth=function(){return this.rect.width},i.prototype.setWidth=function(t){this.rect.width=t},i.prototype.getHeight=function(){return this.rect.height},i.prototype.setHeight=function(t){this.rect.height=t},i.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},i.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},i.prototype.getCenter=function(){return new f(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},i.prototype.getLocation=function(){return new f(this.rect.x,this.rect.y)},i.prototype.getRect=function(){return this.rect},i.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},i.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},i.prototype.setRect=function(t,o){this.rect.x=t.x,this.rect.y=t.y,this.rect.width=o.width,this.rect.height=o.height},i.prototype.setCenter=function(t,o){this.rect.x=t-this.rect.width/2,this.rect.y=o-this.rect.height/2},i.prototype.setLocation=function(t,o){this.rect.x=t,this.rect.y=o},i.prototype.moveBy=function(t,o){this.rect.x+=t,this.rect.y+=o},i.prototype.getEdgeListToNode=function(t){var o=[],s=this;return s.edges.forEach(function(c){if(c.target==t){if(c.source!=s)throw"Incorrect edge source!";o.push(c)}}),o},i.prototype.getEdgesBetween=function(t){var o=[],s=this;return s.edges.forEach(function(c){if(!(c.source==s||c.target==s))throw"Incorrect edge source and/or target";(c.target==t||c.source==t)&&o.push(c)}),o},i.prototype.getNeighborsList=function(){var t=new Set,o=this;return o.edges.forEach(function(s){if(s.source==o)t.add(s.target);else{if(s.target!=o)throw"Incorrect incidency!";t.add(s.source)}}),t},i.prototype.withChildren=function(){var t=new Set,o,s;if(t.add(this),this.child!=null)for(var c=this.child.getNodes(),l=0;lo?(this.rect.x-=(this.labelWidth-o)/2,this.setWidth(this.labelWidth)):this.labelPosHorizontal=="right"&&this.setWidth(o+this.labelWidth)),this.labelHeight&&(this.labelPosVertical=="top"?(this.rect.y-=this.labelHeight,this.setHeight(s+this.labelHeight)):this.labelPosVertical=="center"&&this.labelHeight>s?(this.rect.y-=(this.labelHeight-s)/2,this.setHeight(this.labelHeight)):this.labelPosVertical=="bottom"&&this.setHeight(s+this.labelHeight))}}},i.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==h.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},i.prototype.transform=function(t){var o=this.rect.x;o>r.WORLD_BOUNDARY?o=r.WORLD_BOUNDARY:o<-r.WORLD_BOUNDARY&&(o=-r.WORLD_BOUNDARY);var s=this.rect.y;s>r.WORLD_BOUNDARY?s=r.WORLD_BOUNDARY:s<-r.WORLD_BOUNDARY&&(s=-r.WORLD_BOUNDARY);var c=new f(o,s),l=t.inverseTransformPoint(c);this.setLocation(l.x,l.y)},i.prototype.getLeft=function(){return this.rect.x},i.prototype.getRight=function(){return this.rect.x+this.rect.width},i.prototype.getTop=function(){return this.rect.y},i.prototype.getBottom=function(){return this.rect.y+this.rect.height},i.prototype.getParent=function(){return this.owner==null?null:this.owner.getParent()},A.exports=i},function(A,P,N){var u=N(0);function h(){}for(var a in u)h[a]=u[a];h.MAX_ITERATIONS=2500,h.DEFAULT_EDGE_LENGTH=50,h.DEFAULT_SPRING_STRENGTH=.45,h.DEFAULT_REPULSION_STRENGTH=4500,h.DEFAULT_GRAVITY_STRENGTH=.4,h.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,h.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,h.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,h.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,h.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,h.DEFAULT_COOLING_FACTOR_INCREMENTAL=.3,h.COOLING_ADAPTATION_FACTOR=.33,h.ADAPTATION_LOWER_NODE_LIMIT=1e3,h.ADAPTATION_UPPER_NODE_LIMIT=5e3,h.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,h.MAX_NODE_DISPLACEMENT=h.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,h.MIN_REPULSION_DIST=h.DEFAULT_EDGE_LENGTH/10,h.CONVERGENCE_CHECK_PERIOD=100,h.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=.1,h.MIN_EDGE_LENGTH=1,h.GRID_CALCULATION_CHECK_PERIOD=10,A.exports=h},function(A,P,N){function u(h,a){h==null&&a==null?(this.x=0,this.y=0):(this.x=h,this.y=a)}u.prototype.getX=function(){return this.x},u.prototype.getY=function(){return this.y},u.prototype.setX=function(h){this.x=h},u.prototype.setY=function(h){this.y=h},u.prototype.getDifference=function(h){return new DimensionD(this.x-h.x,this.y-h.y)},u.prototype.getCopy=function(){return new u(this.x,this.y)},u.prototype.translate=function(h){return this.x+=h.width,this.y+=h.height,this},A.exports=u},function(A,P,N){var u=N(2),h=N(10),a=N(0),r=N(7),e=N(3),f=N(1),i=N(13),g=N(12),t=N(11);function o(c,l,T){u.call(this,T),this.estimatedSize=h.MIN_VALUE,this.margin=a.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=c,l!=null&&l instanceof r?this.graphManager=l:l!=null&&l instanceof Layout&&(this.graphManager=l.graphManager)}o.prototype=Object.create(u.prototype);for(var s in u)o[s]=u[s];o.prototype.getNodes=function(){return this.nodes},o.prototype.getEdges=function(){return this.edges},o.prototype.getGraphManager=function(){return this.graphManager},o.prototype.getParent=function(){return this.parent},o.prototype.getLeft=function(){return this.left},o.prototype.getRight=function(){return this.right},o.prototype.getTop=function(){return this.top},o.prototype.getBottom=function(){return this.bottom},o.prototype.isConnected=function(){return this.isConnected},o.prototype.add=function(c,l,T){if(l==null&&T==null){var d=c;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(d)>-1)throw"Node already in graph!";return d.owner=this,this.getNodes().push(d),d}else{var v=c;if(!(this.getNodes().indexOf(l)>-1&&this.getNodes().indexOf(T)>-1))throw"Source or target not in graph!";if(!(l.owner==T.owner&&l.owner==this))throw"Both owners must be this graph!";return l.owner!=T.owner?null:(v.source=l,v.target=T,v.isInterGraph=!1,this.getEdges().push(v),l.edges.push(v),T!=l&&T.edges.push(v),v)}},o.prototype.remove=function(c){var l=c;if(c instanceof e){if(l==null)throw"Node is null!";if(!(l.owner!=null&&l.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";for(var T=l.edges.slice(),d,v=T.length,L=0;L-1&&G>-1))throw"Source and/or target doesn't know this edge!";d.source.edges.splice(C,1),d.target!=d.source&&d.target.edges.splice(G,1);var S=d.source.owner.getEdges().indexOf(d);if(S==-1)throw"Not in owner's edge list!";d.source.owner.getEdges().splice(S,1)}},o.prototype.updateLeftTop=function(){for(var c=h.MAX_VALUE,l=h.MAX_VALUE,T,d,v,L=this.getNodes(),S=L.length,C=0;CT&&(c=T),l>d&&(l=d)}return c==h.MAX_VALUE?null:(L[0].getParent().paddingLeft!=null?v=L[0].getParent().paddingLeft:v=this.margin,this.left=l-v,this.top=c-v,new g(this.left,this.top))},o.prototype.updateBounds=function(c){for(var l=h.MAX_VALUE,T=-h.MAX_VALUE,d=h.MAX_VALUE,v=-h.MAX_VALUE,L,S,C,G,K,X=this.nodes,Q=X.length,O=0;OL&&(l=L),TC&&(d=C),vL&&(l=L),TC&&(d=C),v=this.nodes.length){var Q=0;T.forEach(function(O){O.owner==c&&Q++}),Q==this.nodes.length&&(this.isConnected=!0)}},A.exports=o},function(A,P,N){var u,h=N(1);function a(r){u=N(6),this.layout=r,this.graphs=[],this.edges=[]}a.prototype.addRoot=function(){var r=this.layout.newGraph(),e=this.layout.newNode(null),f=this.add(r,e);return this.setRootGraph(f),this.rootGraph},a.prototype.add=function(r,e,f,i,g){if(f==null&&i==null&&g==null){if(r==null)throw"Graph is null!";if(e==null)throw"Parent node is null!";if(this.graphs.indexOf(r)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(r),r.parent!=null)throw"Already has a parent!";if(e.child!=null)throw"Already has a child!";return r.parent=e,e.child=r,r}else{g=f,i=e,f=r;var t=i.getOwner(),o=g.getOwner();if(!(t!=null&&t.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(o!=null&&o.getGraphManager()==this))throw"Target not in this graph mgr!";if(t==o)return f.isInterGraph=!1,t.add(f,i,g);if(f.isInterGraph=!0,f.source=i,f.target=g,this.edges.indexOf(f)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(f),!(f.source!=null&&f.target!=null))throw"Edge source and/or target is null!";if(!(f.source.edges.indexOf(f)==-1&&f.target.edges.indexOf(f)==-1))throw"Edge already in source and/or target incidency list!";return f.source.edges.push(f),f.target.edges.push(f),f}},a.prototype.remove=function(r){if(r instanceof u){var e=r;if(e.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(e==this.rootGraph||e.parent!=null&&e.parent.graphManager==this))throw"Invalid parent node!";var f=[];f=f.concat(e.getEdges());for(var i,g=f.length,t=0;t=r.getRight()?e[0]+=Math.min(r.getX()-a.getX(),a.getRight()-r.getRight()):r.getX()<=a.getX()&&r.getRight()>=a.getRight()&&(e[0]+=Math.min(a.getX()-r.getX(),r.getRight()-a.getRight())),a.getY()<=r.getY()&&a.getBottom()>=r.getBottom()?e[1]+=Math.min(r.getY()-a.getY(),a.getBottom()-r.getBottom()):r.getY()<=a.getY()&&r.getBottom()>=a.getBottom()&&(e[1]+=Math.min(a.getY()-r.getY(),r.getBottom()-a.getBottom()));var g=Math.abs((r.getCenterY()-a.getCenterY())/(r.getCenterX()-a.getCenterX()));r.getCenterY()===a.getCenterY()&&r.getCenterX()===a.getCenterX()&&(g=1);var t=g*e[0],o=e[1]/g;e[0]t)return e[0]=f,e[1]=s,e[2]=g,e[3]=X,!1;if(ig)return e[0]=o,e[1]=i,e[2]=G,e[3]=t,!1;if(fg?(e[0]=l,e[1]=T,n=!0):(e[0]=c,e[1]=s,n=!0):p===y&&(f>g?(e[0]=o,e[1]=s,n=!0):(e[0]=d,e[1]=T,n=!0)),-E===y?g>f?(e[2]=K,e[3]=X,m=!0):(e[2]=G,e[3]=C,m=!0):E===y&&(g>f?(e[2]=S,e[3]=C,m=!0):(e[2]=Q,e[3]=X,m=!0)),n&&m)return!1;if(f>g?i>t?(R=this.getCardinalDirection(p,y,4),M=this.getCardinalDirection(E,y,2)):(R=this.getCardinalDirection(-p,y,3),M=this.getCardinalDirection(-E,y,1)):i>t?(R=this.getCardinalDirection(-p,y,1),M=this.getCardinalDirection(-E,y,3)):(R=this.getCardinalDirection(p,y,2),M=this.getCardinalDirection(E,y,4)),!n)switch(R){case 1:W=s,F=f+-L/y,e[0]=F,e[1]=W;break;case 2:F=d,W=i+v*y,e[0]=F,e[1]=W;break;case 3:W=T,F=f+L/y,e[0]=F,e[1]=W;break;case 4:F=l,W=i+-v*y,e[0]=F,e[1]=W;break}if(!m)switch(M){case 1:k=C,x=g+-rt/y,e[2]=x,e[3]=k;break;case 2:x=Q,k=t+O*y,e[2]=x,e[3]=k;break;case 3:k=X,x=g+rt/y,e[2]=x,e[3]=k;break;case 4:x=K,k=t+-O*y,e[2]=x,e[3]=k;break}}return!1},h.getCardinalDirection=function(a,r,e){return a>r?e:1+e%4},h.getIntersection=function(a,r,e,f){if(f==null)return this.getIntersection2(a,r,e);var i=a.x,g=a.y,t=r.x,o=r.y,s=e.x,c=e.y,l=f.x,T=f.y,d=void 0,v=void 0,L=void 0,S=void 0,C=void 0,G=void 0,K=void 0,X=void 0,Q=void 0;return L=o-g,C=i-t,K=t*g-i*o,S=T-c,G=s-l,X=l*c-s*T,Q=L*G-S*C,Q===0?null:(d=(C*X-G*K)/Q,v=(S*K-L*X)/Q,new u(d,v))},h.angleOfVector=function(a,r,e,f){var i=void 0;return a!==e?(i=Math.atan((f-r)/(e-a)),e=0){var T=(-s+Math.sqrt(s*s-4*o*c))/(2*o),d=(-s-Math.sqrt(s*s-4*o*c))/(2*o),v=null;return T>=0&&T<=1?[T]:d>=0&&d<=1?[d]:v}else return null},h.HALF_PI=.5*Math.PI,h.ONE_AND_HALF_PI=1.5*Math.PI,h.TWO_PI=2*Math.PI,h.THREE_PI=3*Math.PI,A.exports=h},function(A,P,N){function u(){}u.sign=function(h){return h>0?1:h<0?-1:0},u.floor=function(h){return h<0?Math.ceil(h):Math.floor(h)},u.ceil=function(h){return h<0?Math.floor(h):Math.ceil(h)},A.exports=u},function(A,P,N){function u(){}u.MAX_VALUE=2147483647,u.MIN_VALUE=-2147483648,A.exports=u},function(A,P,N){var u=function(){function i(g,t){for(var o=0;o"u"?"undefined":u(a);return a==null||r!="object"&&r!="function"},A.exports=h},function(A,P,N){function u(s){if(Array.isArray(s)){for(var c=0,l=Array(s.length);c0&&c;){for(L.push(C[0]);L.length>0&&c;){var G=L[0];L.splice(0,1),v.add(G);for(var K=G.getEdges(),d=0;d-1&&C.splice(rt,1)}v=new Set,S=new Map}}return s},o.prototype.createDummyNodesForBendpoints=function(s){for(var c=[],l=s.source,T=this.graphManager.calcLowestCommonAncestor(s.source,s.target),d=0;d0){for(var T=this.edgeToDummyNodes.get(l),d=0;d=0&&c.splice(X,1);var Q=S.getNeighborsList();Q.forEach(function(n){if(l.indexOf(n)<0){var m=T.get(n),p=m-1;p==1&&G.push(n),T.set(n,p)}})}l=l.concat(G),(c.length==1||c.length==2)&&(d=!0,v=c[0])}return v},o.prototype.setGraphManager=function(s){this.graphManager=s},A.exports=o},function(A,P,N){function u(){}u.seed=1,u.x=0,u.nextDouble=function(){return u.x=Math.sin(u.seed++)*1e4,u.x-Math.floor(u.x)},A.exports=u},function(A,P,N){var u=N(5);function h(a,r){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}h.prototype.getWorldOrgX=function(){return this.lworldOrgX},h.prototype.setWorldOrgX=function(a){this.lworldOrgX=a},h.prototype.getWorldOrgY=function(){return this.lworldOrgY},h.prototype.setWorldOrgY=function(a){this.lworldOrgY=a},h.prototype.getWorldExtX=function(){return this.lworldExtX},h.prototype.setWorldExtX=function(a){this.lworldExtX=a},h.prototype.getWorldExtY=function(){return this.lworldExtY},h.prototype.setWorldExtY=function(a){this.lworldExtY=a},h.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},h.prototype.setDeviceOrgX=function(a){this.ldeviceOrgX=a},h.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},h.prototype.setDeviceOrgY=function(a){this.ldeviceOrgY=a},h.prototype.getDeviceExtX=function(){return this.ldeviceExtX},h.prototype.setDeviceExtX=function(a){this.ldeviceExtX=a},h.prototype.getDeviceExtY=function(){return this.ldeviceExtY},h.prototype.setDeviceExtY=function(a){this.ldeviceExtY=a},h.prototype.transformX=function(a){var r=0,e=this.lworldExtX;return e!=0&&(r=this.ldeviceOrgX+(a-this.lworldOrgX)*this.ldeviceExtX/e),r},h.prototype.transformY=function(a){var r=0,e=this.lworldExtY;return e!=0&&(r=this.ldeviceOrgY+(a-this.lworldOrgY)*this.ldeviceExtY/e),r},h.prototype.inverseTransformX=function(a){var r=0,e=this.ldeviceExtX;return e!=0&&(r=this.lworldOrgX+(a-this.ldeviceOrgX)*this.lworldExtX/e),r},h.prototype.inverseTransformY=function(a){var r=0,e=this.ldeviceExtY;return e!=0&&(r=this.lworldOrgY+(a-this.ldeviceOrgY)*this.lworldExtY/e),r},h.prototype.inverseTransformPoint=function(a){var r=new u(this.inverseTransformX(a.x),this.inverseTransformY(a.y));return r},A.exports=h},function(A,P,N){function u(t){if(Array.isArray(t)){for(var o=0,s=Array(t.length);oa.ADAPTATION_LOWER_NODE_LIMIT&&(this.coolingFactor=Math.max(this.coolingFactor*a.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(t-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-a.COOLING_ADAPTATION_FACTOR))),this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT_INCREMENTAL):(t>a.ADAPTATION_LOWER_NODE_LIMIT?this.coolingFactor=Math.max(a.COOLING_ADAPTATION_FACTOR,1-(t-a.ADAPTATION_LOWER_NODE_LIMIT)/(a.ADAPTATION_UPPER_NODE_LIMIT-a.ADAPTATION_LOWER_NODE_LIMIT)*(1-a.COOLING_ADAPTATION_FACTOR)):this.coolingFactor=1,this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=a.MAX_NODE_DISPLACEMENT),this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*a.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},i.prototype.calcSpringForces=function(){for(var t=this.getAllEdges(),o,s=0;s0&&arguments[0]!==void 0?arguments[0]:!0,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,s,c,l,T,d=this.getAllNodes(),v;if(this.useFRGridVariant)for(this.totalIterations%a.GRID_CALCULATION_CHECK_PERIOD==1&&t&&this.updateGrid(),v=new Set,s=0;sL||v>L)&&(t.gravitationForceX=-this.gravityConstant*l,t.gravitationForceY=-this.gravityConstant*T)):(L=o.getEstimatedSize()*this.compoundGravityRangeFactor,(d>L||v>L)&&(t.gravitationForceX=-this.gravityConstant*l*this.compoundGravityConstant,t.gravitationForceY=-this.gravityConstant*T*this.compoundGravityConstant))},i.prototype.isConverged=function(){var t,o=!1;return this.totalIterations>this.maxIterations/3&&(o=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2),t=this.totalDisplacement=d.length||L>=d[0].length)){for(var S=0;Si}}]),e}();A.exports=r},function(A,P,N){function u(){}u.svd=function(h){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=h.length,this.n=h[0].length;var a=Math.min(this.m,this.n);this.s=function(Tt){for(var Ct=[];Tt-- >0;)Ct.push(0);return Ct}(Math.min(this.m+1,this.n)),this.U=function(Tt){var Ct=function Bt(bt){if(bt.length==0)return 0;for(var zt=[],St=0;St0;)Ct.push(0);return Ct}(this.n),e=function(Tt){for(var Ct=[];Tt-- >0;)Ct.push(0);return Ct}(this.m),f=!0,i=Math.min(this.m-1,this.n),g=Math.max(0,Math.min(this.n-2,this.m)),t=0;t=0;E--)if(this.s[E]!==0){for(var y=E+1;y=0;V--){if(function(Tt,Ct){return Tt&&Ct}(V0;){var q=void 0,It=void 0;for(q=n-2;q>=-1&&q!==-1;q--)if(Math.abs(r[q])<=ht+_*(Math.abs(this.s[q])+Math.abs(this.s[q+1]))){r[q]=0;break}if(q===n-2)It=4;else{var Nt=void 0;for(Nt=n-1;Nt>=q&&Nt!==q;Nt--){var vt=(Nt!==n?Math.abs(r[Nt]):0)+(Nt!==q+1?Math.abs(r[Nt-1]):0);if(Math.abs(this.s[Nt])<=ht+_*vt){this.s[Nt]=0;break}}Nt===q?It=3:Nt===n-1?It=1:(It=2,q=Nt)}switch(q++,It){case 1:{var it=r[n-2];r[n-2]=0;for(var gt=n-2;gt>=q;gt--){var mt=u.hypot(this.s[gt],it),At=this.s[gt]/mt,Ot=it/mt;this.s[gt]=mt,gt!==q&&(it=-Ot*r[gt-1],r[gt-1]=At*r[gt-1]);for(var Et=0;Et=this.s[q+1]);){var Lt=this.s[q];if(this.s[q]=this.s[q+1],this.s[q+1]=Lt,qMath.abs(a)?(r=a/h,r=Math.abs(h)*Math.sqrt(1+r*r)):a!=0?(r=h/a,r=Math.abs(a)*Math.sqrt(1+r*r)):r=0,r},A.exports=u},function(A,P,N){var u=function(){function r(e,f){for(var i=0;i2&&arguments[2]!==void 0?arguments[2]:1,g=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,t=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;h(this,r),this.sequence1=e,this.sequence2=f,this.match_score=i,this.mismatch_penalty=g,this.gap_penalty=t,this.iMax=e.length+1,this.jMax=f.length+1,this.grid=new Array(this.iMax);for(var o=0;o=0;e--){var f=this.listeners[e];f.event===a&&f.callback===r&&this.listeners.splice(e,1)}},h.emit=function(a,r){for(var e=0;e{var P={45:(a,r,e)=>{var f={};f.layoutBase=e(551),f.CoSEConstants=e(806),f.CoSEEdge=e(767),f.CoSEGraph=e(880),f.CoSEGraphManager=e(578),f.CoSELayout=e(765),f.CoSENode=e(991),f.ConstraintHandler=e(902),a.exports=f},806:(a,r,e)=>{var f=e(551).FDLayoutConstants;function i(){}for(var g in f)i[g]=f[g];i.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,i.DEFAULT_RADIAL_SEPARATION=f.DEFAULT_EDGE_LENGTH,i.DEFAULT_COMPONENT_SEPERATION=60,i.TILE=!0,i.TILING_PADDING_VERTICAL=10,i.TILING_PADDING_HORIZONTAL=10,i.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,i.ENFORCE_CONSTRAINTS=!0,i.APPLY_LAYOUT=!0,i.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,i.TREE_REDUCTION_ON_INCREMENTAL=!0,i.PURE_INCREMENTAL=i.DEFAULT_INCREMENTAL,a.exports=i},767:(a,r,e)=>{var f=e(551).FDLayoutEdge;function i(t,o,s){f.call(this,t,o,s)}i.prototype=Object.create(f.prototype);for(var g in f)i[g]=f[g];a.exports=i},880:(a,r,e)=>{var f=e(551).LGraph;function i(t,o,s){f.call(this,t,o,s)}i.prototype=Object.create(f.prototype);for(var g in f)i[g]=f[g];a.exports=i},578:(a,r,e)=>{var f=e(551).LGraphManager;function i(t){f.call(this,t)}i.prototype=Object.create(f.prototype);for(var g in f)i[g]=f[g];a.exports=i},765:(a,r,e)=>{var f=e(551).FDLayout,i=e(578),g=e(880),t=e(991),o=e(767),s=e(806),c=e(902),l=e(551).FDLayoutConstants,T=e(551).LayoutConstants,d=e(551).Point,v=e(551).PointD,L=e(551).DimensionD,S=e(551).Layout,C=e(551).Integer,G=e(551).IGeometry,K=e(551).LGraph,X=e(551).Transform,Q=e(551).LinkedList;function O(){f.call(this),this.toBeTiled={},this.constraints={}}O.prototype=Object.create(f.prototype);for(var rt in f)O[rt]=f[rt];O.prototype.newGraphManager=function(){var n=new i(this);return this.graphManager=n,n},O.prototype.newGraph=function(n){return new g(null,this.graphManager,n)},O.prototype.newNode=function(n){return new t(this.graphManager,n)},O.prototype.newEdge=function(n){return new o(null,null,n)},O.prototype.initParameters=function(){f.prototype.initParameters.call(this,arguments),this.isSubLayout||(s.DEFAULT_EDGE_LENGTH<10?this.idealEdgeLength=10:this.idealEdgeLength=s.DEFAULT_EDGE_LENGTH,this.useSmartIdealEdgeLengthCalculation=s.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=l.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=l.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=l.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1)},O.prototype.initSpringEmbedder=function(){f.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/l.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=.04,this.coolingAdjuster=1},O.prototype.layout=function(){var n=T.DEFAULT_CREATE_BENDS_AS_NEEDED;return n&&(this.createBendpoints(),this.graphManager.resetAllEdges()),this.level=0,this.classicLayout()},O.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),this.incremental){if(s.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var m=new Set(this.getAllNodes()),p=this.nodesWithGravity.filter(function(R){return m.has(R)});this.graphManager.setAllNodesToApplyGravitation(p)}}else{var n=this.getFlatForest();if(n.length>0)this.positionNodesRadially(n);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var m=new Set(this.getAllNodes()),p=this.nodesWithGravity.filter(function(E){return m.has(E)});this.graphManager.setAllNodesToApplyGravitation(p),this.positionNodesRandomly()}}return Object.keys(this.constraints).length>0&&(c.handleConstraints(this),this.initConstraintVariables()),this.initSpringEmbedder(),s.APPLY_LAYOUT&&this.runSpringEmbedder(),!0},O.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%l.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;this.coolingCycle++,this.layoutQuality==0?this.coolingAdjuster=this.coolingCycle:this.layoutQuality==1&&(this.coolingAdjuster=this.coolingCycle/3),this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var n=new Set(this.getAllNodes()),m=this.nodesWithGravity.filter(function(y){return n.has(y)});this.graphManager.setAllNodesToApplyGravitation(m),this.graphManager.updateBounds(),this.updateGrid(),s.PURE_INCREMENTAL?this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL/2:this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;this.afterGrowthIterations%10==0&&(this.graphManager.updateBounds(),this.updateGrid()),s.PURE_INCREMENTAL?this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100):this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var p=!this.isTreeGrowing&&!this.isGrowthFinished,E=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(p,E),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},O.prototype.getPositionsData=function(){for(var n=this.graphManager.getAllNodes(),m={},p=0;p0&&this.updateDisplacements();for(var p=0;p0&&(E.fixedNodeWeight=R)}}if(this.constraints.relativePlacementConstraint){var M=new Map,F=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(w){n.fixedNodesOnHorizontal.add(w),n.fixedNodesOnVertical.add(w)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var W=this.constraints.alignmentConstraint.vertical,p=0;p=2*w.length/3;_--)H=Math.floor(Math.random()*(_+1)),B=w[_],w[_]=w[H],w[H]=B;return w},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach(function(w){if(w.left){var H=M.has(w.left)?M.get(w.left):w.left,B=M.has(w.right)?M.get(w.right):w.right;n.nodesInRelativeHorizontal.includes(H)||(n.nodesInRelativeHorizontal.push(H),n.nodeToRelativeConstraintMapHorizontal.set(H,[]),n.dummyToNodeForVerticalAlignment.has(H)?n.nodeToTempPositionMapHorizontal.set(H,n.idToNodeMap.get(n.dummyToNodeForVerticalAlignment.get(H)[0]).getCenterX()):n.nodeToTempPositionMapHorizontal.set(H,n.idToNodeMap.get(H).getCenterX())),n.nodesInRelativeHorizontal.includes(B)||(n.nodesInRelativeHorizontal.push(B),n.nodeToRelativeConstraintMapHorizontal.set(B,[]),n.dummyToNodeForVerticalAlignment.has(B)?n.nodeToTempPositionMapHorizontal.set(B,n.idToNodeMap.get(n.dummyToNodeForVerticalAlignment.get(B)[0]).getCenterX()):n.nodeToTempPositionMapHorizontal.set(B,n.idToNodeMap.get(B).getCenterX())),n.nodeToRelativeConstraintMapHorizontal.get(H).push({right:B,gap:w.gap}),n.nodeToRelativeConstraintMapHorizontal.get(B).push({left:H,gap:w.gap})}else{var _=F.has(w.top)?F.get(w.top):w.top,ht=F.has(w.bottom)?F.get(w.bottom):w.bottom;n.nodesInRelativeVertical.includes(_)||(n.nodesInRelativeVertical.push(_),n.nodeToRelativeConstraintMapVertical.set(_,[]),n.dummyToNodeForHorizontalAlignment.has(_)?n.nodeToTempPositionMapVertical.set(_,n.idToNodeMap.get(n.dummyToNodeForHorizontalAlignment.get(_)[0]).getCenterY()):n.nodeToTempPositionMapVertical.set(_,n.idToNodeMap.get(_).getCenterY())),n.nodesInRelativeVertical.includes(ht)||(n.nodesInRelativeVertical.push(ht),n.nodeToRelativeConstraintMapVertical.set(ht,[]),n.dummyToNodeForHorizontalAlignment.has(ht)?n.nodeToTempPositionMapVertical.set(ht,n.idToNodeMap.get(n.dummyToNodeForHorizontalAlignment.get(ht)[0]).getCenterY()):n.nodeToTempPositionMapVertical.set(ht,n.idToNodeMap.get(ht).getCenterY())),n.nodeToRelativeConstraintMapVertical.get(_).push({bottom:ht,gap:w.gap}),n.nodeToRelativeConstraintMapVertical.get(ht).push({top:_,gap:w.gap})}});else{var k=new Map,V=new Map;this.constraints.relativePlacementConstraint.forEach(function(w){if(w.left){var H=M.has(w.left)?M.get(w.left):w.left,B=M.has(w.right)?M.get(w.right):w.right;k.has(H)?k.get(H).push(B):k.set(H,[B]),k.has(B)?k.get(B).push(H):k.set(B,[H])}else{var _=F.has(w.top)?F.get(w.top):w.top,ht=F.has(w.bottom)?F.get(w.bottom):w.bottom;V.has(_)?V.get(_).push(ht):V.set(_,[ht]),V.has(ht)?V.get(ht).push(_):V.set(ht,[_])}});var Y=function(H,B){var _=[],ht=[],q=new Q,It=new Set,Nt=0;return H.forEach(function(vt,it){if(!It.has(it)){_[Nt]=[],ht[Nt]=!1;var gt=it;for(q.push(gt),It.add(gt),_[Nt].push(gt);q.length!=0;){gt=q.shift(),B.has(gt)&&(ht[Nt]=!0);var mt=H.get(gt);mt.forEach(function(At){It.has(At)||(q.push(At),It.add(At),_[Nt].push(At))})}Nt++}}),{components:_,isFixed:ht}},et=Y(k,n.fixedNodesOnHorizontal);this.componentsOnHorizontal=et.components,this.fixedComponentsOnHorizontal=et.isFixed;var z=Y(V,n.fixedNodesOnVertical);this.componentsOnVertical=z.components,this.fixedComponentsOnVertical=z.isFixed}}},O.prototype.updateDisplacements=function(){var n=this;if(this.constraints.fixedNodeConstraint&&this.constraints.fixedNodeConstraint.forEach(function(z){var w=n.idToNodeMap.get(z.nodeId);w.displacementX=0,w.displacementY=0}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical)for(var m=this.constraints.alignmentConstraint.vertical,p=0;p1){var F;for(F=0;FE&&(E=Math.floor(M.y)),R=Math.floor(M.x+s.DEFAULT_COMPONENT_SEPERATION)}this.transform(new v(T.WORLD_CENTER_X-M.x/2,T.WORLD_CENTER_Y-M.y/2))},O.radialLayout=function(n,m,p){var E=Math.max(this.maxDiagonalInTree(n),s.DEFAULT_RADIAL_SEPARATION);O.branchRadialLayout(m,null,0,359,0,E);var y=K.calculateBounds(n),R=new X;R.setDeviceOrgX(y.getMinX()),R.setDeviceOrgY(y.getMinY()),R.setWorldOrgX(p.x),R.setWorldOrgY(p.y);for(var M=0;M1;){var B=H[0];H.splice(0,1);var _=V.indexOf(B);_>=0&&V.splice(_,1),z--,Y--}m!=null?w=(V.indexOf(H[0])+1)%z:w=0;for(var ht=Math.abs(E-p)/Y,q=w;et!=Y;q=++q%z){var It=V[q].getOtherEnd(n);if(It!=m){var Nt=(p+et*ht)%360,vt=(Nt+ht)%360;O.branchRadialLayout(It,n,Nt,vt,y+R,R),et++}}},O.maxDiagonalInTree=function(n){for(var m=C.MIN_VALUE,p=0;pm&&(m=y)}return m},O.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},O.prototype.groupZeroDegreeMembers=function(){var n=this,m={};this.memberGroups={},this.idToDummyNode={};for(var p=[],E=this.graphManager.getAllNodes(),y=0;y"u"&&(m[F]=[]),m[F]=m[F].concat(R)}Object.keys(m).forEach(function(W){if(m[W].length>1){var x="DummyCompound_"+W;n.memberGroups[x]=m[W];var k=m[W][0].getParent(),V=new t(n.graphManager);V.id=x,V.paddingLeft=k.paddingLeft||0,V.paddingRight=k.paddingRight||0,V.paddingBottom=k.paddingBottom||0,V.paddingTop=k.paddingTop||0,n.idToDummyNode[x]=V;var Y=n.getGraphManager().add(n.newGraph(),V),et=k.getChild();et.add(V);for(var z=0;zy?(E.rect.x-=(E.labelWidth-y)/2,E.setWidth(E.labelWidth),E.labelMarginLeft=(E.labelWidth-y)/2):E.labelPosHorizontal=="right"&&E.setWidth(y+E.labelWidth)),E.labelHeight&&(E.labelPosVertical=="top"?(E.rect.y-=E.labelHeight,E.setHeight(R+E.labelHeight),E.labelMarginTop=E.labelHeight):E.labelPosVertical=="center"&&E.labelHeight>R?(E.rect.y-=(E.labelHeight-R)/2,E.setHeight(E.labelHeight),E.labelMarginTop=(E.labelHeight-R)/2):E.labelPosVertical=="bottom"&&E.setHeight(R+E.labelHeight))}})},O.prototype.repopulateCompounds=function(){for(var n=this.compoundOrder.length-1;n>=0;n--){var m=this.compoundOrder[n],p=m.id,E=m.paddingLeft,y=m.paddingTop,R=m.labelMarginLeft,M=m.labelMarginTop;this.adjustLocations(this.tiledMemberPack[p],m.rect.x,m.rect.y,E,y,R,M)}},O.prototype.repopulateZeroDegreeMembers=function(){var n=this,m=this.tiledZeroDegreePack;Object.keys(m).forEach(function(p){var E=n.idToDummyNode[p],y=E.paddingLeft,R=E.paddingTop,M=E.labelMarginLeft,F=E.labelMarginTop;n.adjustLocations(m[p],E.rect.x,E.rect.y,y,R,M,F)})},O.prototype.getToBeTiled=function(n){var m=n.id;if(this.toBeTiled[m]!=null)return this.toBeTiled[m];var p=n.getChild();if(p==null)return this.toBeTiled[m]=!1,!1;for(var E=p.getNodes(),y=0;y0)return this.toBeTiled[m]=!1,!1;if(R.getChild()==null){this.toBeTiled[R.id]=!1;continue}if(!this.getToBeTiled(R))return this.toBeTiled[m]=!1,!1}return this.toBeTiled[m]=!0,!0},O.prototype.getNodeDegree=function(n){n.id;for(var m=n.getEdges(),p=0,E=0;Ek&&(k=Y.rect.height)}p+=k+n.verticalPadding}},O.prototype.tileCompoundMembers=function(n,m){var p=this;this.tiledMemberPack=[],Object.keys(n).forEach(function(E){var y=m[E];if(p.tiledMemberPack[E]=p.tileNodes(n[E],y.paddingLeft+y.paddingRight),y.rect.width=p.tiledMemberPack[E].width,y.rect.height=p.tiledMemberPack[E].height,y.setCenter(p.tiledMemberPack[E].centerX,p.tiledMemberPack[E].centerY),y.labelMarginLeft=0,y.labelMarginTop=0,s.NODE_DIMENSIONS_INCLUDE_LABELS){var R=y.rect.width,M=y.rect.height;y.labelWidth&&(y.labelPosHorizontal=="left"?(y.rect.x-=y.labelWidth,y.setWidth(R+y.labelWidth),y.labelMarginLeft=y.labelWidth):y.labelPosHorizontal=="center"&&y.labelWidth>R?(y.rect.x-=(y.labelWidth-R)/2,y.setWidth(y.labelWidth),y.labelMarginLeft=(y.labelWidth-R)/2):y.labelPosHorizontal=="right"&&y.setWidth(R+y.labelWidth)),y.labelHeight&&(y.labelPosVertical=="top"?(y.rect.y-=y.labelHeight,y.setHeight(M+y.labelHeight),y.labelMarginTop=y.labelHeight):y.labelPosVertical=="center"&&y.labelHeight>M?(y.rect.y-=(y.labelHeight-M)/2,y.setHeight(y.labelHeight),y.labelMarginTop=(y.labelHeight-M)/2):y.labelPosVertical=="bottom"&&y.setHeight(M+y.labelHeight))}})},O.prototype.tileNodes=function(n,m){var p=this.tileNodesByFavoringDim(n,m,!0),E=this.tileNodesByFavoringDim(n,m,!1),y=this.getOrgRatio(p),R=this.getOrgRatio(E),M;return RF&&(F=z.getWidth())});var W=R/y,x=M/y,k=Math.pow(p-E,2)+4*(W+E)*(x+p)*y,V=(E-p+Math.sqrt(k))/(2*(W+E)),Y;m?(Y=Math.ceil(V),Y==V&&Y++):Y=Math.floor(V);var et=Y*(W+E)-E;return F>et&&(et=F),et+=E*2,et},O.prototype.tileNodesByFavoringDim=function(n,m,p){var E=s.TILING_PADDING_VERTICAL,y=s.TILING_PADDING_HORIZONTAL,R=s.TILING_COMPARE_BY,M={rows:[],rowWidth:[],rowHeight:[],width:0,height:m,verticalPadding:E,horizontalPadding:y,centerX:0,centerY:0};R&&(M.idealRowWidth=this.calcIdealRowWidth(n,p));var F=function(w){return w.rect.width*w.rect.height},W=function(w,H){return F(H)-F(w)};n.sort(function(z,w){var H=W;return M.idealRowWidth?(H=R,H(z.id,w.id)):H(z,w)});for(var x=0,k=0,V=0;V0&&(M+=n.horizontalPadding),n.rowWidth[p]=M,n.width0&&(F+=n.verticalPadding);var W=0;F>n.rowHeight[p]&&(W=n.rowHeight[p],n.rowHeight[p]=F,W=n.rowHeight[p]-W),n.height+=W,n.rows[p].push(m)},O.prototype.getShortestRowIndex=function(n){for(var m=-1,p=Number.MAX_VALUE,E=0;Ep&&(m=E,p=n.rowWidth[E]);return m},O.prototype.canAddHorizontal=function(n,m,p){if(n.idealRowWidth){var E=n.rows.length-1,y=n.rowWidth[E];return y+m+n.horizontalPadding<=n.idealRowWidth}var R=this.getShortestRowIndex(n);if(R<0)return!0;var M=n.rowWidth[R];if(M+n.horizontalPadding+m<=n.width)return!0;var F=0;n.rowHeight[R]