diff --git a/MANIFEST.in b/MANIFEST.in deleted file mode 100644 index 6fd4b14..0000000 --- a/MANIFEST.in +++ /dev/null @@ -1,8 +0,0 @@ -include requirements.txt -prune tests -prune tools -prune docs -prune .vscode -prune .github -global-exclude .travis.yml .gitignore .drone.yml .dockerignore .coveragerc -global-exclude .codecov.yml requirements-dev.txt tox.ini Makefile .azure-piplines.yml diff --git a/Makefile b/Makefile index b3544d4..a6842b8 100644 --- a/Makefile +++ b/Makefile @@ -59,3 +59,4 @@ clean: benchmarks: PYTHONPATH=src python benches/large_resource_set.py TagAssetBenchmark + PYTHONPATH=src python benches/complex_expression.py diff --git a/benches/complex_expression.py b/benches/complex_expression.py new file mode 100644 index 0000000..7f1fc49 --- /dev/null +++ b/benches/complex_expression.py @@ -0,0 +1,457 @@ +""" +https://github.com/cloud-custodian/cel-python/issues/68 + +Performance of the given expression is perfectly awful. + +What can be done to make it better? +""" +import timeit +import cProfile +import pstats +from textwrap import dedent + +import celpy +import celpy.celtypes + +CEL_EXPRESSION_ORIGINAL = """ +( + ( + !has(class_a.property_a) ? + false : ("Linux" == class_a.property_a) + ) && + ( + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/o:centos:centos:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/o:centos:centos:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/a:centos:centos:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/a:centos:centos:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("p-os:/a:centos:centos:") + ) + ) +) ? +optional.of("Linux Team") : +( + ( + ( + !has(class_a.property_a) ? + false : ("Linux" == class_a.property_a) + ) && + ( + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/o:debian:debian_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/o:debian:debian_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/a:debian:debian:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/a:debian:debian:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("p-os:/a:debian:debian_linux:") + ) + ) + ) ? +optional.of("Linux Team") : +( + ( + ( + !has(class_a.property_a) ? + false : ("Linux" == class_a.property_a) + ) && + ( + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/o:fedoraproject:fedora:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/o:fedoraproject:fedora:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/a:fedoraproject:fedora:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/a:fedoraproject:fedora:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("p-os:/a:fedoraproject:fedora:") + ) + ) + ) ? +optional.of("Linux Team") : +( + ( + ( + !has(class_a.property_a) ? + false : ("Linux" == class_a.property_a) + ) && + ( + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/o:oracle:linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/o:oracle:linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/a:oracle:linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/a:oracle:linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("p-os:/a:oracle:linux:") + ) + ) + ) ? +optional.of("Linux Team") : +( + ( + ( + !has(class_a.property_a) ? + false : ("Linux" == class_a.property_a) + ) && + ( + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/o:redhat:enterprise_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/o:redhat:enterprise_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/a:redhat:enterprise_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/a:redhat:enterprise_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("p-os:/a:redhat:enterprise_linux:") + ) + ) +) ? +optional.of("Linux Team") : +( + ( + ( + !has(class_a.property_a) ? + false : ("Linux" == class_a.property_a) + ) && ( + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/o:novell:suse_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/o:novell:suse_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/a:novell:suse_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/a:novell:suse_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("p-os:/a:novell:suse_linux:") + ) + ) + ) ? +optional.of("Linux Team") : +( + ( + ( + !has(class_a.property_a) ? + false : ("Linux" == class_a.property_a) + ) && + ( + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/o:canonical:ubuntu_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/o:canonical:ubuntu_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/a:canonical:ubuntu_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/a:canonical:ubuntu_linux:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("p-os:/a:canonical:ubuntu_linux:") + ) + ) + ) ? +optional.of("Linux Team") : +( + ( + ( + !has(class_a.property_a) ? + false : ("Linux" == class_a.property_a) + ) && + ( + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/h:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/h:") + ) + ) + ) ? +optional.of("Linux Team") : +( + ( + ( + !has(class_a.property_a) ? + false : ("Windows Server" == class_a.property_a) + ) && + ( + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/o:microsoft:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/o:microsoft:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/a:microsoft:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/a:microsoft:") + ) + ) + ) ? +optional.of("Windows Team") : +( + ( + ( + !has(class_a.property_a) ? + false : ("Windows Server" == class_a.property_a) + ) && + ( + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/h:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/h:") + ) + ) + ) ? +optional.of("Windows Team") : +( + ( + ( + !has(class_a.property_a) ? + false : ("Linux" == class_a.property_a) + ) || + ( + !has(class_a.property_a) ? + false : ("Windows Server" == class_a.property_a) + ) + ) ? +optional.of("Unassigned") : +( + ( + ( + !has(class_a.property_a) ? + false : ("Windows Workstation" == class_a.property_a) + ) && + ( + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/o:microsoft:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/o:microsoft:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("os:/a:microsoft:") + ) || + ( + !has(class_b.property_b) ? + false : class_b.property_b.contains("x-os:/a:microsoft:") + ) + ) + ) ? +optional.of("Solutions Team") : +( + ( + !has(class_a.property_a) ? + false : ("Windows Workstation" == class_a.property_a) + ) ? +optional.of("End User") : optional.of("Unknown"))))))))))))) +""" + + +CEL_EXPRESSION_SHORT = """ + "bla bla" +""" + +CEL_EXPRESSION_MEDIUM = """ + (!has(class_b.integration_info.type) ? + false:("some value" == class_b.integration_info.type)) ? + optional.of("some value") : optional.of("some other value") +""" + +CEL_EXPRESSION_ORIGINAL_NO_OPTIONAL = """ +((!has(class_a.property_a) ? false : ("Linux" == class_a.property_a)) && ((!has(class_b.property_b) ? false : class_b.property_b.contains("os:/o:centos:centos:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/o:centos:centos:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("os:/a:centos:centos:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/a:centos:centos:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("p-os:/a:centos:centos:")))) ? "Linux Team" : (((!has(class_a.property_a) ? false : ("Linux" == class_a.property_a)) && ((!has(class_b.property_b) ? false : class_b.property_b.contains("os:/o:debian:debian_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/o:debian:debian_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("os:/a:debian:debian:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/a:debian:debian:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("p-os:/a:debian:debian_linux:")))) ? "Linux Team" : (((!has(class_a.property_a) ? false : ("Linux" == class_a.property_a)) && ((!has(class_b.property_b) ? false : class_b.property_b.contains("os:/o:fedoraproject:fedora:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/o:fedoraproject:fedora:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("os:/a:fedoraproject:fedora:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/a:fedoraproject:fedora:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("p-os:/a:fedoraproject:fedora:")))) ? "Linux Team" : (((!has(class_a.property_a) ? false : ("Linux" == class_a.property_a)) && ((!has(class_b.property_b) ? false : class_b.property_b.contains("os:/o:oracle:linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/o:oracle:linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("os:/a:oracle:linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/a:oracle:linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("p-os:/a:oracle:linux:")))) ? "Linux Team" : (((!has(class_a.property_a) ? false : ("Linux" == class_a.property_a)) && ((!has(class_b.property_b) ? false : class_b.property_b.contains("os:/o:redhat:enterprise_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/o:redhat:enterprise_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("os:/a:redhat:enterprise_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/a:redhat:enterprise_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("p-os:/a:redhat:enterprise_linux:")))) ? "Linux Team" : (((!has(class_a.property_a) ? false : ("Linux" == class_a.property_a)) && ((!has(class_b.property_b) ? false : class_b.property_b.contains("os:/o:novell:suse_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/o:novell:suse_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("os:/a:novell:suse_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/a:novell:suse_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("p-os:/a:novell:suse_linux:")))) ? "Linux Team" : (((!has(class_a.property_a) ? false : ("Linux" == class_a.property_a)) && ((!has(class_b.property_b) ? false : class_b.property_b.contains("os:/o:canonical:ubuntu_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/o:canonical:ubuntu_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("os:/a:canonical:ubuntu_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/a:canonical:ubuntu_linux:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("p-os:/a:canonical:ubuntu_linux:")))) ? "Linux Team" : (((!has(class_a.property_a) ? false : ("Linux" == class_a.property_a)) && ((!has(class_b.property_b) ? false : class_b.property_b.contains("os:/h:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/h:")))) ? "Linux Team" : (((!has(class_a.property_a) ? false : ("Windows Server" == class_a.property_a)) && ((!has(class_b.property_b) ? false : class_b.property_b.contains("os:/o:microsoft:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/o:microsoft:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("os:/a:microsoft:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/a:microsoft:")))) ? "Windows Team" : (((!has(class_a.property_a) ? false : ("Windows Server" == class_a.property_a)) && ((!has(class_b.property_b) ? false : class_b.property_b.contains("os:/h:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/h:")))) ? "Windows Team" : (((!has(class_a.property_a) ? false : ("Linux" == class_a.property_a)) || (!has(class_a.property_a) ? false : ("Windows Server" == class_a.property_a))) ? "Unassigned" : (((!has(class_a.property_a) ? false : ("Windows Workstation" == class_a.property_a)) && ((!has(class_b.property_b) ? false : class_b.property_b.contains("os:/o:microsoft:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/o:microsoft:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("os:/a:microsoft:")) || (!has(class_b.property_b) ? false : class_b.property_b.contains("x-os:/a:microsoft:")))) ? "Solutions Team" : ((!has(class_a.property_a) ? false : ("Windows Workstation" == class_a.property_a)) ? "End User" : "unknown")))))))))))) +""" + + +functions = { + "of": lambda optional, value: value, + "none": lambda optional, : None +} + +def simple_performance(): + env = celpy.Environment() + + number = 100 + compile = timeit.timeit( + stmt=dedent("""\ + env.compile(CEL_EXPRESSION_ORIGINAL_NO_OPTIONAL) + """), + globals={ + 'env': env, + 'CEL_EXPRESSION_ORIGINAL_NO_OPTIONAL': CEL_EXPRESSION_ORIGINAL_NO_OPTIONAL + }, + number=number + ) / number + print(f"Compile: {1_000 * compile:9.4f} ms") + + ast = env.compile(CEL_EXPRESSION_ORIGINAL_NO_OPTIONAL) + + number = 1_000 + prepare = timeit.timeit( + stmt=dedent("""\ + env.program(ast,functions=functions) + """), + globals={ + 'env': env, + 'ast': ast, + 'functions': functions + }, + number=number + ) / number + print(f"Prepare: {1_000 * prepare:9.4f} ms") + + program = env.program(ast, functions=functions) + + number = 1_000 + convert = timeit.timeit( + stmt=dedent(""" + { + "class_a": celpy.json_to_cel({"property_a": "something"}), + "class_b": celpy.json_to_cel( + {"title": "something else", "property_b": "some var", + "integration_info": {"type": "GitHub"}}), + "optional": celpy.json_to_cel({}) + } + """), + globals={'celpy': celpy}, + number=number + ) / number + print(f"Convert: {1_000 * convert:9.4f} ms") + + cel_context = { + "class_a": celpy.json_to_cel({"property_a": "something"}), + "class_b": celpy.json_to_cel( + {"title": "something else", "property_b": "some var", + "integration_info": {"type": "GitHub"}}), + "optional": celpy.json_to_cel({}) + } + + number = 100 + evaluation = timeit.timeit( + stmt=dedent(""" + program.evaluate(cel_context) + """), + globals = { + 'program': program, + 'cel_context': cel_context + }, + number=number + ) / number + print(f"Evaluate: {1_000 * evaluation:9.4f} ms") + + print() + + +def process(program: celpy.CompiledRunner, number: int = 100): + """A processing loop that prepares data and evaluates the CEL program.""" + for i in range(number): + cel_context = { + "class_a": celpy.json_to_cel({"property_a":"something"}), + "class_b": celpy.json_to_cel({"title":"something else","property_b":"some var","integration_info":{"type":"GitHub"}}), + "optional": celpy.json_to_cel({}) + } + result = program.evaluate(cel_context) + assert result == "unknown" + +def detailed_profile(): + env = celpy.Environment() + ast = env.compile(CEL_EXPRESSION_ORIGINAL_NO_OPTIONAL) + program = env.program(ast, functions=functions) + + pr = cProfile.Profile() + pr.enable() + process(program) + pr.disable() + + ps = pstats.Stats(pr).sort_stats(pstats.SortKey.TIME) + ps.print_stats() + +def main(): + simple_performance() + detailed_profile() + +if __name__ == "__main__": + main() diff --git a/docs/build/doctrees/api.doctree b/docs/build/doctrees/api.doctree index ef5d3c8..d90706d 100644 Binary files a/docs/build/doctrees/api.doctree and b/docs/build/doctrees/api.doctree differ diff --git a/docs/build/doctrees/configuration.doctree b/docs/build/doctrees/configuration.doctree index c131234..83b4843 100644 Binary files a/docs/build/doctrees/configuration.doctree and b/docs/build/doctrees/configuration.doctree differ diff --git a/docs/build/doctrees/environment.pickle b/docs/build/doctrees/environment.pickle index 0a536b9..7600c53 100644 Binary files a/docs/build/doctrees/environment.pickle and b/docs/build/doctrees/environment.pickle differ diff --git a/docs/build/html/_modules/celpy/__init__.html b/docs/build/html/_modules/celpy/__init__.html index aab45b9..24e928f 100644 --- a/docs/build/html/_modules/celpy/__init__.html +++ b/docs/build/html/_modules/celpy/__init__.html @@ -236,7 +236,7 @@
"""
Python compiled expression evaluator. Uses Python byte code and :py:func:`eval`.
- Given an AST, this evauates the AST in the context of a specific activation.
+ Given an AST, this evaluates the AST in the context of a specific activation.
Transform the AST into Python, uses :py:func:`compile` to create a code object.
Uses :py:func:`eval` to evaluate.
diff --git a/docs/build/html/_modules/celpy/evaluation.html b/docs/build/html/_modules/celpy/evaluation.html
index 60f6fed..98fba57 100644
--- a/docs/build/html/_modules/celpy/evaluation.html
+++ b/docs/build/html/_modules/celpy/evaluation.html
@@ -67,11 +67,18 @@ Source code for celpy.evaluation
The :py:class:`Resut` type hint is a union of the various values that are encountered
during evaluation. It's a union of the :py:class:`celpy.celtypes.CELTypes` type and the
:exc:`CELEvalError` exception.
+
+.. important:: Debugging
+
+ If the os environment variable ``CEL_TRACE`` is set, then detailed tracing of methods is made available.
+ To see the trace, set the logging level for ``celpy.Evaluator`` to ``logging.DEBUG``.
+
"""
import collections
import logging
import operator
+import os
import re
import sys
from functools import reduce, wraps
@@ -100,11 +107,11 @@ Source code for celpy.evaluation
import celpy.celtypes
from celpy.celparser import tree_dump
-_USE_RE2 = False
+_USE_RE2 = False # Used by the test suite.
try:
import re2
- _USE_RE2 = True
+ _USE_RE2 = True # Used by the test suite.
def function_matches(text: str, pattern: str) -> "Result":
try:
@@ -128,8 +135,7 @@ Source code for celpy.evaluation
-# A CEL type annotation. Used in an environment to describe objects as well as functions.
-# This is a list of types, plus Callable for conversion functions.
+# This annotation describes a union of types, functions, and function types.
Annotation = Union[
celpy.celtypes.CELType,
Callable[
@@ -330,9 +336,9 @@ Source code for celpy.evaluation
-# The interim results extends celtypes to include itermediate CELEvalError exception objects.
+# The interim results extend ``celtypes`` to include itermediate ``CELEvalError`` exception objects.
# These can be deferred as part of commutative logical_and and logical_or operations.
-# It includes the responses to type() queries, also.
+# It includes the responses to ``type()`` queries, also.
Result = Union[
celpy.celtypes.Value,
CELEvalError,
@@ -1310,18 +1316,22 @@ Source code for celpy.evaluation
) -> Callable[["Evaluator", lark.Tree], Any]:
"""
Decorator to create consistent evaluation trace logging.
- This only works for a class with a ``level`` attribute.
- This is generally applied to the methods matching rule names.
+ This is generally applied to the methods matching parse rule names.
+
+ This only works for a class with a ``level`` attribute, like :py:class:`Evaluator`.
"""
@wraps(method)
def concrete_method(self: "Evaluator", tree: lark.Tree) -> Any:
- self.logger.info("%s%r", self.level * "| ", tree)
+ self.logger.debug("%s%r", self.level * "| ", tree)
result = method(self, tree)
- self.logger.info("%s%s -> %r", self.level * "| ", tree.data, result)
+ self.logger.debug("%s%s -> %r", self.level * "| ", tree.data, result)
return result
- return concrete_method
+ if os.environ.get("CEL_TRACE"):
+ return concrete_method
+ else:
+ return method
diff --git a/docs/build/html/_sources/configuration.rst.txt b/docs/build/html/_sources/configuration.rst.txt
index b98402a..e029b5d 100644
--- a/docs/build/html/_sources/configuration.rst.txt
+++ b/docs/build/html/_sources/configuration.rst.txt
@@ -39,3 +39,12 @@ This paragraph can contain the parameters for logging configuration.
[logging.handlers.console]
class = "logging.StreamHandler"
formatter = "console"
+
+To enable very detailed debugging, do the following:
+
+- Set the ``CEL_TRACE`` environment variable to some non-empty value, like ``"true"``.
+ This enables a ``@trace`` decorator on some evaluation methods.
+
+- In a ``[logging.loggers.celpy.Evaluator]`` paragraph, set ``level = "DEBUG"``.
+
+- Set the ``[logging]`` paragraph, set ``root.level = "DEBUG"``.
diff --git a/docs/build/html/api.html b/docs/build/html/api.html
index b53736c..160caaf 100644
--- a/docs/build/html/api.html
+++ b/docs/build/html/api.html
@@ -154,7 +154,7 @@ Another Example
class celpy.__init__.CompiledRunner(environment: Environment, ast: Tree, functions: Dict[str, Callable[[...], BoolType | BytesType | DoubleType | DurationType | IntType | ListType | MapType | None | StringType | TimestampType | UintType | CELEvalError | Type[BoolType] | Type[BytesType] | Type[DoubleType] | Type[DurationType] | Type[IntType] | Type[ListType] | Type[MapType] | Callable[[...], None] | Type[StringType] | Type[TimestampType] | Type[TypeType] | Type[UintType] | Type[PackageType] | Type[MessageType]]] | None = None)[source]¶
Python compiled expression evaluator. Uses Python byte code and eval().
-Given an AST, this evauates the AST in the context of a specific activation.
+Given an AST, this evaluates the AST in the context of a specific activation.
Transform the AST into Python, uses compile() to create a code object.
Uses eval() to evaluate.
@@ -1617,6 +1617,12 @@ Timzone DetailsResut type hint is a union of the various values that are encountered
during evaluation. It’s a union of the celpy.celtypes.CELTypes type and the
CELEvalError exception.
+
+Important
+Debugging
+If the os environment variable CEL_TRACE is set, then detailed tracing of methods is made available.
+To see the trace, set the logging level for celpy.Evaluator to logging.DEBUG.
+
-
celpy.evaluation.function_matches(text: str, pattern: str) Result[source]¶
@@ -2304,8 +2310,8 @@ Timzone Details
celpy.evaluation.trace(method: Callable[[Evaluator, Tree], Any]) Callable[[Evaluator, Tree], Any][source]¶
Decorator to create consistent evaluation trace logging.
-This only works for a class with a level attribute.
-This is generally applied to the methods matching rule names.
+This is generally applied to the methods matching parse rule names.
+This only works for a class with a level attribute, like Evaluator.
diff --git a/docs/build/html/configuration.html b/docs/build/html/configuration.html
index f4a4f33..b2dcfbd 100644
--- a/docs/build/html/configuration.html
+++ b/docs/build/html/configuration.html
@@ -63,6 +63,13 @@ Configuration formatter = "console"
+To enable very detailed debugging, do the following:
+
+Set the CEL_TRACE environment variable to some non-empty value, like "true".
+This enables a @trace decorator on some evaluation methods.
+In a [logging.loggers.celpy.Evaluator] paragraph, set level = "DEBUG".
+Set the [logging] paragraph, set root.level = "DEBUG".
+
diff --git a/docs/build/html/searchindex.js b/docs/build/html/searchindex.js
index 29cb357..d20657c 100644
--- a/docs/build/html/searchindex.js
+++ b/docs/build/html/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles":{"Another Example":[[0,"another-example"]],"Application Integration":[[6,null]],"Arguments, Types, and Namespaces":[[0,"arguments-types-and-namespaces"]],"Baseline C7N Example":[[6,"baseline-c7n-example"]],"Bulk Filter Example":[[6,"bulk-filter-example"]],"C7N Cache":[[1,"c7n-cache"]],"C7N Context Object":[[1,"c7n-context-object"]],"C7N Filter and Resource Types":[[6,"c7n-filter-and-resource-types"]],"C7N Functions Required":[[1,null]],"CEL Types":[[7,"cel-types"]],"CEL-Py API":[[0,null]],"CELFilter Design":[[1,"celfilter-design"]],"CLI Use of CEL-Python":[[2,null]],"Cloud Custodian":[[6,"cloud-custodian"]],"Common C7N Constructs":[[1,"common-c7n-constructs"]],"Common/Boolean Filters":[[1,"common-boolean-filters"]],"Common/Non-Bool Filters":[[1,"common-non-bool-filters"]],"Configuration":[[3,null]],"Contents":[[1,"contents"]],"Contents:":[[4,null]],"Custom function on string type":[[6,"custom-function-on-string-type"]],"Data Structures":[[7,null]],"Define custom global function":[[6,"define-custom-global-function"]],"Design Principles":[[1,"design-principles"]],"Example":[[0,"example"]],"Examples from Go implementation":[[6,"examples-from-go-implementation"]],"Exceptions and Errors":[[6,"exceptions-and-errors"]],"Function Bindings":[[6,"function-bindings"]],"Indices and tables":[[4,"indices-and-tables"]],"Installation":[[5,null]],"Numeric Details":[[0,"numeric-details"]],"Pure Python Google Common Expression Language (CEL)":[[4,null]],"README":[[6,"readme"]],"Run-Time":[[7,"run-time"]],"SYNOPSIS":[[0,"synopsis"]],"Simple example using builtin operators":[[6,"simple-example-using-builtin-operators"]],"Singleton/Boolean Filters":[[1,"singleton-boolean-filters"]],"Singleton/Non-Bool Filters":[[1,"singleton-non-bool-filters"]],"Summary":[[1,"summary"]],"The Essentials":[[6,"the-essentials"]],"Timzone Details":[[0,"timzone-details"]],"Todo":[[0,"id1"],[0,"id2"],[0,"id3"],[0,"id4"],[0,"id5"],[0,"id6"],[0,"id7"],[0,"id8"],[0,"id9"],[0,"id10"],[0,"id11"],[0,"id12"],[0,"id13"],[6,"id1"]],"Type Adapter":[[0,"type-adapter"]],"Type Provider":[[0,"type-provider"]],"Types":[[0,"types"]],"__main__":[[0,"module-celpy.__main__"]],"access-key":[[1,"access-key"]],"age":[[1,"age"]],"bucket-encryption (no examples)":[[1,"bucket-encryption-no-examples"]],"bucket-notification (no examples)":[[1,"bucket-notification-no-examples"]],"capacity-delta":[[1,"capacity-delta"]],"celtypes":[[0,"module-celpy.celtypes"]],"check-cloudtrail":[[1,"check-cloudtrail"]],"check-config":[[1,"check-config"]],"config-compliance (no examples)":[[1,"config-compliance-no-examples"]],"credential":[[1,"credential"]],"cross-account":[[1,"cross-account"]],"data-events (no examples)":[[1,"data-events-no-examples"]],"db-parameter (no examples)":[[1,"db-parameter-no-examples"]],"default-vpc (no examples)":[[1,"default-vpc-no-examples"]],"dhcp-options (no examples)":[[1,"dhcp-options-no-examples"]],"diff (no examples)":[[1,"diff-no-examples"]],"ebs":[[1,"ebs"]],"egress":[[1,"egress"]],"ephemeral (no examples)":[[1,"ephemeral-no-examples"]],"evaluation":[[0,"module-celpy.evaluation"]],"event":[[1,"event"]],"event-source (no examples)":[[1,"event-source-no-examples"]],"fault-tolerant (no examples)":[[1,"fault-tolerant-no-examples"]],"finding (no examples)":[[1,"finding-no-examples"]],"flow-logs":[[1,"flow-logs"]],"global-grants":[[1,"global-grants"]],"grant-count":[[1,"grant-count"]],"group (no examples)":[[1,"group-no-examples"]],"has-allow-all (no examples)":[[1,"has-allow-all-no-examples"]],"has-inline-policy (no examples)":[[1,"has-inline-policy-no-examples"]],"has-specific-managed-policy (no examples)":[[1,"has-specific-managed-policy-no-examples"]],"has-statement":[[1,"has-statement"]],"has-users (no examples)":[[1,"has-users-no-examples"]],"has-virtual-mfa (no examples)":[[1,"has-virtual-mfa-no-examples"]],"health-event":[[1,"health-event"]],"healthcheck-protocol-mismatch (no examples)":[[1,"healthcheck-protocol-mismatch-no-examples"]],"iam-summary (no examples)":[[1,"iam-summary-no-examples"]],"image":[[1,"image"]],"image-age":[[1,"image-age"]],"ingress":[[1,"ingress"]],"instance (no examples)":[[1,"instance-no-examples"]],"instance-age":[[1,"instance-age"]],"instance-attribute (no examples)":[[1,"instance-attribute-no-examples"]],"instance-uptime":[[1,"instance-uptime"]],"invalid":[[1,"invalid"]],"inventory (no examples)":[[1,"inventory-no-examples"]],"is-log-target":[[1,"is-log-target"]],"is-logging":[[1,"is-logging"]],"is-not-logging":[[1,"is-not-logging"]],"is-shadow (no examples)":[[1,"is-shadow-no-examples"]],"is-ssl (no examples)":[[1,"is-ssl-no-examples"]],"key-rotation-status":[[1,"key-rotation-status"]],"kms-alias":[[1,"kms-alias"]],"kms-key":[[1,"kms-key"]],"last-write":[[1,"last-write"]],"latest":[[1,"latest"]],"launch-config":[[1,"launch-config"]],"lifecycle-rule (no examples)":[[1,"lifecycle-rule-no-examples"]],"listener":[[1,"listener"]],"locked (no examples)":[[1,"locked-no-examples"]],"marked-for-op":[[1,"marked-for-op"]],"metrics":[[1,"metrics"]],"mfa-device":[[1,"mfa-device"]],"mismatch-s3-origin":[[1,"mismatch-s3-origin"]],"missing":[[1,"missing"]],"missing-policy-statement":[[1,"missing-policy-statement"]],"missing-route (no examples)":[[1,"missing-route-no-examples"]],"modifyable (no examples)":[[1,"modifyable-no-examples"]],"network-location":[[1,"network-location"]],"no-encryption-statement (no examples)":[[1,"no-encryption-statement-no-examples"]],"no-specific-managed-policy (no examples)":[[1,"no-specific-managed-policy-no-examples"]],"not-encrypted":[[1,"not-encrypted"]],"offhour":[[1,"offhour"]],"onhour":[[1,"onhour"]],"op Implementations":[[1,"op-implementations"]],"param (no examples)":[[1,"param-no-examples"]],"parser":[[0,"module-celpy.celparser"]],"password-policy":[[1,"password-policy"]],"policy":[[1,"policy"]],"progagated-tags (no examples)":[[1,"progagated-tags-no-examples"]],"query-logging-enabled (no examples)":[[1,"query-logging-enabled-no-examples"]],"reserved-concurrency":[[1,"reserved-concurrency"]],"rest-integration (no examples)":[[1,"rest-integration-no-examples"]],"rest-method (no examples)":[[1,"rest-method-no-examples"]],"route (no examples)":[[1,"route-no-examples"]],"s3-cidr (no examples)":[[1,"s3-cidr-no-examples"]],"s3-public-block (no examples)":[[1,"s3-public-block-no-examples"]],"security-group":[[1,"security-group"]],"service-limit":[[1,"service-limit"]],"shield-enabled":[[1,"shield-enabled"]],"shield-metrics (no examples)":[[1,"shield-metrics-no-examples"]],"singleton (no examples)":[[1,"singleton-no-examples"]],"skip-ami-snapshots":[[1,"skip-ami-snapshots"]],"ssl-policy":[[1,"ssl-policy"]],"ssm (no examples)":[[1,"ssm-no-examples"]],"stale (no examples)":[[1,"stale-no-examples"]],"state-age":[[1,"state-age"]],"status (no examples)":[[1,"status-no-examples"]],"subnet":[[1,"subnet"]],"tag-count":[[1,"tag-count"]],"target-group (no examples)":[[1,"target-group-no-examples"]],"task-definition (no examples)":[[1,"task-definition-no-examples"]],"termination-protected (no examples)":[[1,"termination-protected-no-examples"]],"unused":[[1,"unused"]],"upgrade-available (no examples)":[[1,"upgrade-available-no-examples"]],"used":[[1,"used"]],"user-data (no examples)":[[1,"user-data-no-examples"]],"valid":[[1,"valid"]],"value":[[1,"value"]],"value_from External Data":[[1,"value-from-external-data"]],"value_type Conversions":[[1,"value-type-conversions"]],"vpc":[[1,"vpc"]],"vpc-attributes (no examples)":[[1,"vpc-attributes-no-examples"]],"vpc-id":[[1,"vpc-id"]],"waf-enabled":[[1,"waf-enabled"]],"xray-encrypt-key (no examples)":[[1,"xray-encrypt-key-no-examples"]]},"docnames":["api","c7n_functions","cli","configuration","index","installation","integration","structure"],"envversion":{"sphinx":65,"sphinx.domains.c":3,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":9,"sphinx.domains.index":1,"sphinx.domains.javascript":3,"sphinx.domains.math":2,"sphinx.domains.python":4,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.todo":2,"sphinx.ext.viewcode":1},"filenames":["api.rst","c7n_functions.rst","cli.rst","configuration.rst","index.rst","installation.rst","integration.rst","structure.rst"],"indexentries":{"__abstractmethods__ (celpy.evaluation.evaluator attribute)":[[0,"celpy.evaluation.Evaluator.__abstractmethods__",false]],"__add__() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.__add__",false]],"__add__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__add__",false]],"__add__() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.__add__",false]],"__add__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__add__",false]],"__add__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__add__",false]],"__call__() (celpy.celtypes.functiontype method)":[[0,"celpy.celtypes.FunctionType.__call__",false]],"__call__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__call__",false]],"__eq__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__eq__",false]],"__eq__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__eq__",false]],"__eq__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__eq__",false]],"__eq__() (celpy.celtypes.maptype method)":[[0,"celpy.celtypes.MapType.__eq__",false]],"__eq__() (celpy.celtypes.nulltype method)":[[0,"celpy.celtypes.NullType.__eq__",false]],"__eq__() (celpy.celtypes.stringtype method)":[[0,"celpy.celtypes.StringType.__eq__",false]],"__eq__() (celpy.celtypes.typetype method)":[[0,"celpy.celtypes.TypeType.__eq__",false]],"__eq__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__eq__",false]],"__eq__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__eq__",false]],"__floordiv__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__floordiv__",false]],"__floordiv__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__floordiv__",false]],"__floordiv__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__floordiv__",false]],"__ge__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__ge__",false]],"__ge__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__ge__",false]],"__getitem__() (celpy.celtypes.maptype method)":[[0,"celpy.celtypes.MapType.__getitem__",false]],"__gt__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__gt__",false]],"__gt__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__gt__",false]],"__hash__ (celpy.celtypes.listtype attribute)":[[0,"celpy.celtypes.ListType.__hash__",false]],"__hash__ (celpy.celtypes.maptype attribute)":[[0,"celpy.celtypes.MapType.__hash__",false]],"__hash__ (celpy.celtypes.nulltype attribute)":[[0,"celpy.celtypes.NullType.__hash__",false]],"__hash__ (celpy.celtypes.typetype attribute)":[[0,"celpy.celtypes.TypeType.__hash__",false]],"__hash__ (celpy.evaluation.celevalerror attribute)":[[0,"celpy.evaluation.CELEvalError.__hash__",false]],"__hash__() (celpy.celtypes.booltype method)":[[0,"celpy.celtypes.BoolType.__hash__",false]],"__hash__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__hash__",false]],"__hash__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__hash__",false]],"__hash__() (celpy.celtypes.stringtype method)":[[0,"celpy.celtypes.StringType.__hash__",false]],"__hash__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__hash__",false]],"__init__() (celpy.__init__.compiledrunner method)":[[0,"celpy.__init__.CompiledRunner.__init__",false]],"__init__() (celpy.__init__.environment method)":[[0,"celpy.__init__.Environment.__init__",false]],"__init__() (celpy.__init__.runner method)":[[0,"celpy.__init__.Runner.__init__",false]],"__init__() (celpy.celparser.celparseerror method)":[[0,"celpy.celparser.CELParseError.__init__",false]],"__init__() (celpy.celparser.celparser method)":[[0,"celpy.celparser.CELParser.__init__",false]],"__init__() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.__init__",false]],"__init__() (celpy.celtypes.maptype method)":[[0,"celpy.celtypes.MapType.__init__",false]],"__init__() (celpy.celtypes.messagetype method)":[[0,"celpy.celtypes.MessageType.__init__",false]],"__init__() (celpy.celtypes.typetype method)":[[0,"celpy.celtypes.TypeType.__init__",false]],"__init__() (celpy.evaluation.activation method)":[[0,"celpy.evaluation.Activation.__init__",false]],"__init__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__init__",false]],"__init__() (celpy.evaluation.celsyntaxerror method)":[[0,"celpy.evaluation.CELSyntaxError.__init__",false]],"__init__() (celpy.evaluation.celunsupportederror method)":[[0,"celpy.evaluation.CELUnsupportedError.__init__",false]],"__init__() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.__init__",false]],"__init__() (celpy.evaluation.findident method)":[[0,"celpy.evaluation.FindIdent.__init__",false]],"__init__() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.__init__",false]],"__init__() (celpy.evaluation.referent method)":[[0,"celpy.evaluation.Referent.__init__",false]],"__le__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__le__",false]],"__le__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__le__",false]],"__lt__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__lt__",false]],"__lt__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__lt__",false]],"__mod__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__mod__",false]],"__mod__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__mod__",false]],"__mod__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__mod__",false]],"__mod__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__mod__",false]],"__mul__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__mul__",false]],"__mul__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__mul__",false]],"__mul__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__mul__",false]],"__ne__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__ne__",false]],"__ne__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__ne__",false]],"__ne__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__ne__",false]],"__ne__() (celpy.celtypes.maptype method)":[[0,"celpy.celtypes.MapType.__ne__",false]],"__ne__() (celpy.celtypes.nulltype method)":[[0,"celpy.celtypes.NullType.__ne__",false]],"__ne__() (celpy.celtypes.stringtype method)":[[0,"celpy.celtypes.StringType.__ne__",false]],"__ne__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__ne__",false]],"__neg__() (celpy.celtypes.booltype method)":[[0,"celpy.celtypes.BoolType.__neg__",false]],"__neg__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__neg__",false]],"__neg__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__neg__",false]],"__neg__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__neg__",false]],"__neg__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__neg__",false]],"__new__() (celpy.__init__.int32value static method)":[[0,"celpy.__init__.Int32Value.__new__",false]],"__new__() (celpy.celtypes.booltype static method)":[[0,"celpy.celtypes.BoolType.__new__",false]],"__new__() (celpy.celtypes.bytestype static method)":[[0,"celpy.celtypes.BytesType.__new__",false]],"__new__() (celpy.celtypes.doubletype static method)":[[0,"celpy.celtypes.DoubleType.__new__",false]],"__new__() (celpy.celtypes.durationtype static method)":[[0,"celpy.celtypes.DurationType.__new__",false]],"__new__() (celpy.celtypes.inttype static method)":[[0,"celpy.celtypes.IntType.__new__",false]],"__new__() (celpy.celtypes.stringtype static method)":[[0,"celpy.celtypes.StringType.__new__",false]],"__new__() (celpy.celtypes.timestamptype static method)":[[0,"celpy.celtypes.TimestampType.__new__",false]],"__new__() (celpy.celtypes.uinttype static method)":[[0,"celpy.celtypes.UintType.__new__",false]],"__orig_bases__ (celpy.celtypes.listtype attribute)":[[0,"celpy.celtypes.ListType.__orig_bases__",false]],"__orig_bases__ (celpy.celtypes.maptype attribute)":[[0,"celpy.celtypes.MapType.__orig_bases__",false]],"__orig_bases__ (celpy.evaluation.namecontainer attribute)":[[0,"celpy.evaluation.NameContainer.__orig_bases__",false]],"__parameters__ (celpy.celparser.dumpast attribute)":[[0,"celpy.celparser.DumpAST.__parameters__",false]],"__parameters__ (celpy.celtypes.listtype attribute)":[[0,"celpy.celtypes.ListType.__parameters__",false]],"__parameters__ (celpy.celtypes.maptype attribute)":[[0,"celpy.celtypes.MapType.__parameters__",false]],"__parameters__ (celpy.celtypes.messagetype attribute)":[[0,"celpy.celtypes.MessageType.__parameters__",false]],"__parameters__ (celpy.celtypes.packagetype attribute)":[[0,"celpy.celtypes.PackageType.__parameters__",false]],"__parameters__ (celpy.evaluation.evaluator attribute)":[[0,"celpy.evaluation.Evaluator.__parameters__",false]],"__parameters__ (celpy.evaluation.findident attribute)":[[0,"celpy.evaluation.FindIdent.__parameters__",false]],"__parameters__ (celpy.evaluation.namecontainer attribute)":[[0,"celpy.evaluation.NameContainer.__parameters__",false]],"__pow__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__pow__",false]],"__radd__() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.__radd__",false]],"__radd__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__radd__",false]],"__radd__() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.__radd__",false]],"__radd__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__radd__",false]],"__radd__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__radd__",false]],"__repr__() (celpy.celtypes.booltype method)":[[0,"celpy.celtypes.BoolType.__repr__",false]],"__repr__() (celpy.celtypes.bytestype method)":[[0,"celpy.celtypes.BytesType.__repr__",false]],"__repr__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__repr__",false]],"__repr__() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.__repr__",false]],"__repr__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__repr__",false]],"__repr__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__repr__",false]],"__repr__() (celpy.celtypes.maptype method)":[[0,"celpy.celtypes.MapType.__repr__",false]],"__repr__() (celpy.celtypes.stringtype method)":[[0,"celpy.celtypes.StringType.__repr__",false]],"__repr__() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.__repr__",false]],"__repr__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__repr__",false]],"__repr__() (celpy.evaluation.activation method)":[[0,"celpy.evaluation.Activation.__repr__",false]],"__repr__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__repr__",false]],"__repr__() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.__repr__",false]],"__repr__() (celpy.evaluation.referent method)":[[0,"celpy.evaluation.Referent.__repr__",false]],"__rfloordiv__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__rfloordiv__",false]],"__rfloordiv__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__rfloordiv__",false]],"__rfloordiv__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rfloordiv__",false]],"__rmod__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__rmod__",false]],"__rmod__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__rmod__",false]],"__rmod__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__rmod__",false]],"__rmod__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rmod__",false]],"__rmul__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__rmul__",false]],"__rmul__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__rmul__",false]],"__rmul__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rmul__",false]],"__rpow__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rpow__",false]],"__rsub__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__rsub__",false]],"__rsub__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__rsub__",false]],"__rsub__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rsub__",false]],"__rtruediv__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__rtruediv__",false]],"__rtruediv__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__rtruediv__",false]],"__rtruediv__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__rtruediv__",false]],"__rtruediv__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rtruediv__",false]],"__str__() (celpy.celtypes.booltype method)":[[0,"celpy.celtypes.BoolType.__str__",false]],"__str__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__str__",false]],"__str__() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.__str__",false]],"__str__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__str__",false]],"__str__() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.__str__",false]],"__str__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__str__",false]],"__sub__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__sub__",false]],"__sub__() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.__sub__",false]],"__sub__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__sub__",false]],"__sub__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__sub__",false]],"__truediv__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__truediv__",false]],"__truediv__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__truediv__",false]],"__truediv__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__truediv__",false]],"__truediv__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__truediv__",false]],"activation (class in celpy.evaluation)":[[0,"celpy.evaluation.Activation",false]],"activation() (celpy.__init__.environment method)":[[0,"celpy.__init__.Environment.activation",false]],"addition() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.addition",false]],"addition() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.addition",false]],"addition_add() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.addition_add",false]],"addition_sub() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.addition_sub",false]],"ambiguous_literals() (celpy.celparser.celparser static method)":[[0,"celpy.celparser.CELParser.ambiguous_literals",false]],"arg_type_value() (in module celpy.__main__)":[[0,"celpy.__main__.arg_type_value",false]],"boolean() (in module celpy.evaluation)":[[0,"celpy.evaluation.boolean",false]],"booltype (class in celpy.celtypes)":[[0,"celpy.celtypes.BoolType",false]],"build_macro_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.build_macro_eval",false]],"build_reduce_macro_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.build_reduce_macro_eval",false]],"build_ss_macro_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.build_ss_macro_eval",false]],"bytestype (class in celpy.celtypes)":[[0,"celpy.celtypes.BytesType",false]],"cel_eval() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.cel_eval",false]],"cel_parser (celpy.celparser.celparser attribute)":[[0,"celpy.celparser.CELParser.CEL_PARSER",false]],"cel_repl (class in celpy.__main__)":[[0,"celpy.__main__.CEL_REPL",false]],"celbytes() (in module celpy.evaluation)":[[0,"celpy.evaluation.celbytes",false]],"celevalerror":[[0,"celpy.evaluation.CELEvalError",false]],"celparseerror":[[0,"celpy.celparser.CELParseError",false]],"celparser (class in celpy.celparser)":[[0,"celpy.celparser.CELParser",false]],"celpy.__init__":[[0,"module-celpy.__init__",false]],"celpy.__main__":[[0,"module-celpy.__main__",false]],"celpy.celparser":[[0,"module-celpy.celparser",false]],"celpy.celtypes":[[0,"module-celpy.celtypes",false]],"celpy.evaluation":[[0,"module-celpy.evaluation",false]],"celstr() (in module celpy.evaluation)":[[0,"celpy.evaluation.celstr",false]],"celsyntaxerror":[[0,"celpy.evaluation.CELSyntaxError",false]],"celunsupportederror":[[0,"celpy.evaluation.CELUnsupportedError",false]],"clone() (celpy.evaluation.activation method)":[[0,"celpy.evaluation.Activation.clone",false]],"clone() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.clone",false]],"clone() (celpy.evaluation.referent method)":[[0,"celpy.evaluation.Referent.clone",false]],"compile() (celpy.__init__.environment method)":[[0,"celpy.__init__.Environment.compile",false]],"compiledrunner (class in celpy.__init__)":[[0,"celpy.__init__.CompiledRunner",false]],"conditionaland() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.conditionaland",false]],"conditionaland() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.conditionaland",false]],"conditionalor() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.conditionalor",false]],"conditionalor() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.conditionalor",false]],"default() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.default",false]],"dict_find_name() (celpy.evaluation.namecontainer static method)":[[0,"celpy.evaluation.NameContainer.dict_find_name",false]],"display() (celpy.celparser.dumpast class method)":[[0,"celpy.celparser.DumpAST.display",false]],"do_bye() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.do_bye",false]],"do_exit() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.do_exit",false]],"do_quit() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.do_quit",false]],"do_set() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.do_set",false]],"do_show() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.do_show",false]],"dot_ident() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.dot_ident",false]],"dot_ident_arg() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.dot_ident_arg",false]],"doubletype (class in celpy.celtypes)":[[0,"celpy.celtypes.DoubleType",false]],"dumpast (class in celpy.celparser)":[[0,"celpy.celparser.DumpAST",false]],"durationtype (class in celpy.celtypes)":[[0,"celpy.celtypes.DurationType",false]],"environment (class in celpy.__init__)":[[0,"celpy.__init__.Environment",false]],"error_text() (celpy.celparser.celparser method)":[[0,"celpy.celparser.CELParser.error_text",false]],"eval_error() (in module celpy.evaluation)":[[0,"celpy.evaluation.eval_error",false]],"evaluate() (celpy.__init__.compiledrunner method)":[[0,"celpy.__init__.CompiledRunner.evaluate",false]],"evaluate() (celpy.__init__.interpretedrunner method)":[[0,"celpy.__init__.InterpretedRunner.evaluate",false]],"evaluate() (celpy.__init__.runner method)":[[0,"celpy.__init__.Runner.evaluate",false]],"evaluate() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.evaluate",false]],"evaluator (class in celpy.evaluation)":[[0,"celpy.evaluation.Evaluator",false]],"expr() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.expr",false]],"expr() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.expr",false]],"exprlist() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.exprlist",false]],"exprlist() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.exprlist",false]],"extended_name_path (celpy.evaluation.namecontainer attribute)":[[0,"celpy.evaluation.NameContainer.extended_name_path",false]],"fieldinits() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.fieldinits",false]],"fieldinits() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.fieldinits",false]],"find_name() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.find_name",false]],"findident (class in celpy.evaluation)":[[0,"celpy.evaluation.FindIdent",false]],"function_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.function_eval",false]],"function_matches() (in module celpy.evaluation)":[[0,"celpy.evaluation.function_matches",false]],"function_size() (in module celpy.evaluation)":[[0,"celpy.evaluation.function_size",false]],"functiontype (class in celpy.celtypes)":[[0,"celpy.celtypes.FunctionType",false]],"get_options() (in module celpy.__main__)":[[0,"celpy.__main__.get_options",false]],"getdate() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getDate",false]],"getdayofmonth() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getDayOfMonth",false]],"getdayofweek() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getDayOfWeek",false]],"getdayofyear() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getDayOfYear",false]],"getfullyear() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getFullYear",false]],"gethours() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.getHours",false]],"gethours() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getHours",false]],"getmilliseconds() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.getMilliseconds",false]],"getmilliseconds() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getMilliseconds",false]],"getminutes() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.getMinutes",false]],"getminutes() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getMinutes",false]],"getmonth() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getMonth",false]],"getseconds() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.getSeconds",false]],"getseconds() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getSeconds",false]],"ident() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.ident",false]],"ident() (celpy.evaluation.findident method)":[[0,"celpy.evaluation.FindIdent.ident",false]],"ident_arg() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.ident_arg",false]],"ident_pat (celpy.evaluation.namecontainer attribute)":[[0,"celpy.evaluation.NameContainer.ident_pat",false]],"ident_value() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.ident_value",false]],"in_tree() (celpy.evaluation.findident class method)":[[0,"celpy.evaluation.FindIdent.in_tree",false]],"int32value (class in celpy.__init__)":[[0,"celpy.__init__.Int32Value",false]],"int64() (in module celpy.celtypes)":[[0,"celpy.celtypes.int64",false]],"interpretedrunner (class in celpy.__init__)":[[0,"celpy.__init__.InterpretedRunner",false]],"intro (celpy.__main__.cel_repl attribute)":[[0,"celpy.__main__.CEL_REPL.intro",false]],"inttype (class in celpy.celtypes)":[[0,"celpy.celtypes.IntType",false]],"list_lit() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.list_lit",false]],"listtype (class in celpy.celtypes)":[[0,"celpy.celtypes.ListType",false]],"literal() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.literal",false]],"literal() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.literal",false]],"load_annotations() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.load_annotations",false]],"load_values() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.load_values",false]],"logger (celpy.__main__.cel_repl attribute)":[[0,"celpy.__main__.CEL_REPL.logger",false]],"logger (celpy.evaluation.evaluator attribute)":[[0,"celpy.evaluation.Evaluator.logger",false]],"logger (celpy.evaluation.namecontainer attribute)":[[0,"celpy.evaluation.NameContainer.logger",false]],"logical_and() (in module celpy.celtypes)":[[0,"celpy.celtypes.logical_and",false]],"logical_condition() (in module celpy.celtypes)":[[0,"celpy.celtypes.logical_condition",false]],"logical_not() (in module celpy.celtypes)":[[0,"celpy.celtypes.logical_not",false]],"logical_or() (in module celpy.celtypes)":[[0,"celpy.celtypes.logical_or",false]],"macro_has_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.macro_has_eval",false]],"main() (in module celpy.__main__)":[[0,"celpy.__main__.main",false]],"map_lit() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.map_lit",false]],"mapinits() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.mapinits",false]],"mapinits() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.mapinits",false]],"maptype (class in celpy.celtypes)":[[0,"celpy.celtypes.MapType",false]],"maxseconds (celpy.celtypes.durationtype attribute)":[[0,"celpy.celtypes.DurationType.MaxSeconds",false]],"member() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.member",false]],"member_dot() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.member_dot",false]],"member_dot() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.member_dot",false]],"member_dot_arg() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.member_dot_arg",false]],"member_dot_arg() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.member_dot_arg",false]],"member_index() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.member_index",false]],"member_index() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.member_index",false]],"member_object() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.member_object",false]],"member_object() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.member_object",false]],"messagetype (class in celpy.celtypes)":[[0,"celpy.celtypes.MessageType",false]],"method_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.method_eval",false]],"minseconds (celpy.celtypes.durationtype attribute)":[[0,"celpy.celtypes.DurationType.MinSeconds",false]],"module":[[0,"module-celpy.__init__",false],[0,"module-celpy.__main__",false],[0,"module-celpy.celparser",false],[0,"module-celpy.celtypes",false],[0,"module-celpy.evaluation",false]],"multiplication() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.multiplication",false]],"multiplication() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.multiplication",false]],"multiplication_div() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.multiplication_div",false]],"multiplication_mod() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.multiplication_mod",false]],"multiplication_mul() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.multiplication_mul",false]],"namecontainer (class in celpy.evaluation)":[[0,"celpy.evaluation.NameContainer",false]],"namecontainer.notfound":[[0,"celpy.evaluation.NameContainer.NotFound",false]],"nanosecondspersecond (celpy.celtypes.durationtype attribute)":[[0,"celpy.celtypes.DurationType.NanosecondsPerSecond",false]],"nested_activation() (celpy.evaluation.activation method)":[[0,"celpy.evaluation.Activation.nested_activation",false]],"new_activation() (celpy.__init__.runner method)":[[0,"celpy.__init__.Runner.new_activation",false]],"nulltype (class in celpy.celtypes)":[[0,"celpy.celtypes.NullType",false]],"operator_in() (in module celpy.evaluation)":[[0,"celpy.evaluation.operator_in",false]],"packagetype (class in celpy.celtypes)":[[0,"celpy.celtypes.PackageType",false]],"paren_expr() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.paren_expr",false]],"parent_iter() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.parent_iter",false]],"parse() (celpy.celparser.celparser method)":[[0,"celpy.celparser.CELParser.parse",false]],"preloop() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.preloop",false]],"primary() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.primary",false]],"process_json_doc() (in module celpy.__main__)":[[0,"celpy.__main__.process_json_doc",false]],"program() (celpy.__init__.environment method)":[[0,"celpy.__init__.Environment.program",false]],"prompt (celpy.__main__.cel_repl attribute)":[[0,"celpy.__main__.CEL_REPL.prompt",false]],"referent (class in celpy.evaluation)":[[0,"celpy.evaluation.Referent",false]],"relation() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation",false]],"relation() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.relation",false]],"relation_eq() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_eq",false]],"relation_ge() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_ge",false]],"relation_gt() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_gt",false]],"relation_in() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_in",false]],"relation_le() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_le",false]],"relation_lt() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_lt",false]],"relation_ne() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_ne",false]],"resolve_name() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.resolve_name",false]],"resolve_variable() (celpy.evaluation.activation method)":[[0,"celpy.evaluation.Activation.resolve_variable",false]],"runner (class in celpy.__init__)":[[0,"celpy.__init__.Runner",false]],"scale (celpy.celtypes.durationtype attribute)":[[0,"celpy.celtypes.DurationType.scale",false]],"set_activation() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.set_activation",false]],"stringtype (class in celpy.celtypes)":[[0,"celpy.celtypes.StringType",false]],"sub_evaluator() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.sub_evaluator",false]],"timestamptype (class in celpy.celtypes)":[[0,"celpy.celtypes.TimestampType",false]],"trace() (in module celpy.evaluation)":[[0,"celpy.evaluation.trace",false]],"tree_dump() (in module celpy.celparser)":[[0,"celpy.celparser.tree_dump",false]],"type_matched() (in module celpy.celtypes)":[[0,"celpy.celtypes.type_matched",false]],"type_name_mapping (celpy.celtypes.typetype attribute)":[[0,"celpy.celtypes.TypeType.type_name_mapping",false]],"typetype (class in celpy.celtypes)":[[0,"celpy.celtypes.TypeType",false]],"tz_aliases (celpy.celtypes.timestamptype attribute)":[[0,"celpy.celtypes.TimestampType.TZ_ALIASES",false]],"tz_name_lookup() (celpy.celtypes.timestamptype class method)":[[0,"celpy.celtypes.TimestampType.tz_name_lookup",false]],"tz_offset_parse() (celpy.celtypes.timestamptype class method)":[[0,"celpy.celtypes.TimestampType.tz_offset_parse",false]],"tz_parse() (celpy.celtypes.timestamptype static method)":[[0,"celpy.celtypes.TimestampType.tz_parse",false]],"uint64() (in module celpy.celtypes)":[[0,"celpy.celtypes.uint64",false]],"uinttype (class in celpy.celtypes)":[[0,"celpy.celtypes.UintType",false]],"unary() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.unary",false]],"unary() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.unary",false]],"unary_neg() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.unary_neg",false]],"unary_not() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.unary_not",false]],"valid_key_type() (celpy.celtypes.maptype static method)":[[0,"celpy.celtypes.MapType.valid_key_type",false]],"value (celpy.evaluation.referent property)":[[0,"celpy.evaluation.Referent.value",false]],"visit_children() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.visit_children",false]],"with_traceback() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.with_traceback",false]]},"objects":{"celpy":[[0,0,0,"-","__init__"],[0,0,0,"-","__main__"],[0,0,0,"-","celparser"],[0,0,0,"-","celtypes"],[0,0,0,"-","evaluation"]],"celpy.__init__":[[0,1,1,"","CompiledRunner"],[0,1,1,"","Environment"],[0,1,1,"","Int32Value"],[0,1,1,"","InterpretedRunner"],[0,1,1,"","Runner"]],"celpy.__init__.CompiledRunner":[[0,2,1,"","__init__"],[0,2,1,"","evaluate"]],"celpy.__init__.Environment":[[0,2,1,"","__init__"],[0,2,1,"","activation"],[0,2,1,"","compile"],[0,2,1,"","program"]],"celpy.__init__.Int32Value":[[0,2,1,"","__new__"]],"celpy.__init__.InterpretedRunner":[[0,2,1,"","evaluate"]],"celpy.__init__.Runner":[[0,2,1,"","__init__"],[0,2,1,"","evaluate"],[0,2,1,"","new_activation"]],"celpy.__main__":[[0,1,1,"","CEL_REPL"],[0,4,1,"","arg_type_value"],[0,4,1,"","get_options"],[0,4,1,"","main"],[0,4,1,"","process_json_doc"]],"celpy.__main__.CEL_REPL":[[0,2,1,"","cel_eval"],[0,2,1,"","default"],[0,2,1,"","do_bye"],[0,2,1,"","do_exit"],[0,2,1,"","do_quit"],[0,2,1,"","do_set"],[0,2,1,"","do_show"],[0,3,1,"","intro"],[0,3,1,"","logger"],[0,2,1,"","preloop"],[0,3,1,"","prompt"]],"celpy.celparser":[[0,5,1,"","CELParseError"],[0,1,1,"","CELParser"],[0,1,1,"","DumpAST"],[0,4,1,"","tree_dump"]],"celpy.celparser.CELParseError":[[0,2,1,"","__init__"]],"celpy.celparser.CELParser":[[0,3,1,"","CEL_PARSER"],[0,2,1,"","__init__"],[0,2,1,"","ambiguous_literals"],[0,2,1,"","error_text"],[0,2,1,"","parse"]],"celpy.celparser.DumpAST":[[0,2,1,"","__init__"],[0,3,1,"","__parameters__"],[0,2,1,"","addition"],[0,2,1,"","addition_add"],[0,2,1,"","addition_sub"],[0,2,1,"","conditionaland"],[0,2,1,"","conditionalor"],[0,2,1,"","display"],[0,2,1,"","dot_ident"],[0,2,1,"","dot_ident_arg"],[0,2,1,"","expr"],[0,2,1,"","exprlist"],[0,2,1,"","fieldinits"],[0,2,1,"","ident"],[0,2,1,"","ident_arg"],[0,2,1,"","list_lit"],[0,2,1,"","literal"],[0,2,1,"","map_lit"],[0,2,1,"","mapinits"],[0,2,1,"","member_dot"],[0,2,1,"","member_dot_arg"],[0,2,1,"","member_index"],[0,2,1,"","member_object"],[0,2,1,"","multiplication"],[0,2,1,"","multiplication_div"],[0,2,1,"","multiplication_mod"],[0,2,1,"","multiplication_mul"],[0,2,1,"","paren_expr"],[0,2,1,"","relation"],[0,2,1,"","relation_eq"],[0,2,1,"","relation_ge"],[0,2,1,"","relation_gt"],[0,2,1,"","relation_in"],[0,2,1,"","relation_le"],[0,2,1,"","relation_lt"],[0,2,1,"","relation_ne"],[0,2,1,"","unary"],[0,2,1,"","unary_neg"],[0,2,1,"","unary_not"]],"celpy.celtypes":[[0,1,1,"","BoolType"],[0,1,1,"","BytesType"],[0,1,1,"","DoubleType"],[0,1,1,"","DurationType"],[0,1,1,"","FunctionType"],[0,1,1,"","IntType"],[0,1,1,"","ListType"],[0,1,1,"","MapType"],[0,1,1,"","MessageType"],[0,1,1,"","NullType"],[0,1,1,"","PackageType"],[0,1,1,"","StringType"],[0,1,1,"","TimestampType"],[0,1,1,"","TypeType"],[0,1,1,"","UintType"],[0,4,1,"","int64"],[0,4,1,"","logical_and"],[0,4,1,"","logical_condition"],[0,4,1,"","logical_not"],[0,4,1,"","logical_or"],[0,4,1,"","type_matched"],[0,4,1,"","uint64"]],"celpy.celtypes.BoolType":[[0,2,1,"","__hash__"],[0,2,1,"","__neg__"],[0,2,1,"","__new__"],[0,2,1,"","__repr__"],[0,2,1,"","__str__"]],"celpy.celtypes.BytesType":[[0,2,1,"","__new__"],[0,2,1,"","__repr__"]],"celpy.celtypes.DoubleType":[[0,2,1,"","__eq__"],[0,2,1,"","__hash__"],[0,2,1,"","__mod__"],[0,2,1,"","__ne__"],[0,2,1,"","__neg__"],[0,2,1,"","__new__"],[0,2,1,"","__repr__"],[0,2,1,"","__rmod__"],[0,2,1,"","__rtruediv__"],[0,2,1,"","__str__"],[0,2,1,"","__truediv__"]],"celpy.celtypes.DurationType":[[0,3,1,"","MaxSeconds"],[0,3,1,"","MinSeconds"],[0,3,1,"","NanosecondsPerSecond"],[0,2,1,"","__add__"],[0,2,1,"","__new__"],[0,2,1,"","__radd__"],[0,2,1,"","__repr__"],[0,2,1,"","__str__"],[0,2,1,"","getHours"],[0,2,1,"","getMilliseconds"],[0,2,1,"","getMinutes"],[0,2,1,"","getSeconds"],[0,3,1,"","scale"]],"celpy.celtypes.FunctionType":[[0,2,1,"","__call__"]],"celpy.celtypes.IntType":[[0,2,1,"","__add__"],[0,2,1,"","__eq__"],[0,2,1,"","__floordiv__"],[0,2,1,"","__ge__"],[0,2,1,"","__gt__"],[0,2,1,"","__hash__"],[0,2,1,"","__le__"],[0,2,1,"","__lt__"],[0,2,1,"","__mod__"],[0,2,1,"","__mul__"],[0,2,1,"","__ne__"],[0,2,1,"","__neg__"],[0,2,1,"","__new__"],[0,2,1,"","__radd__"],[0,2,1,"","__repr__"],[0,2,1,"","__rfloordiv__"],[0,2,1,"","__rmod__"],[0,2,1,"","__rmul__"],[0,2,1,"","__rsub__"],[0,2,1,"","__rtruediv__"],[0,2,1,"","__str__"],[0,2,1,"","__sub__"],[0,2,1,"","__truediv__"]],"celpy.celtypes.ListType":[[0,2,1,"","__eq__"],[0,2,1,"","__ge__"],[0,2,1,"","__gt__"],[0,3,1,"","__hash__"],[0,2,1,"","__le__"],[0,2,1,"","__lt__"],[0,2,1,"","__ne__"],[0,3,1,"","__orig_bases__"],[0,3,1,"","__parameters__"],[0,2,1,"","__repr__"]],"celpy.celtypes.MapType":[[0,2,1,"","__eq__"],[0,2,1,"","__getitem__"],[0,3,1,"","__hash__"],[0,2,1,"","__init__"],[0,2,1,"","__ne__"],[0,3,1,"","__orig_bases__"],[0,3,1,"","__parameters__"],[0,2,1,"","__repr__"],[0,2,1,"","valid_key_type"]],"celpy.celtypes.MessageType":[[0,2,1,"","__init__"],[0,3,1,"","__parameters__"]],"celpy.celtypes.NullType":[[0,2,1,"","__eq__"],[0,3,1,"","__hash__"],[0,2,1,"","__ne__"]],"celpy.celtypes.PackageType":[[0,3,1,"","__parameters__"]],"celpy.celtypes.StringType":[[0,2,1,"","__eq__"],[0,2,1,"","__hash__"],[0,2,1,"","__ne__"],[0,2,1,"","__new__"],[0,2,1,"","__repr__"]],"celpy.celtypes.TimestampType":[[0,3,1,"","TZ_ALIASES"],[0,2,1,"","__add__"],[0,2,1,"","__new__"],[0,2,1,"","__radd__"],[0,2,1,"","__repr__"],[0,2,1,"","__str__"],[0,2,1,"","__sub__"],[0,2,1,"","getDate"],[0,2,1,"","getDayOfMonth"],[0,2,1,"","getDayOfWeek"],[0,2,1,"","getDayOfYear"],[0,2,1,"","getFullYear"],[0,2,1,"","getHours"],[0,2,1,"","getMilliseconds"],[0,2,1,"","getMinutes"],[0,2,1,"","getMonth"],[0,2,1,"","getSeconds"],[0,2,1,"","tz_name_lookup"],[0,2,1,"","tz_offset_parse"],[0,2,1,"","tz_parse"]],"celpy.celtypes.TypeType":[[0,2,1,"","__eq__"],[0,3,1,"","__hash__"],[0,2,1,"","__init__"],[0,3,1,"","type_name_mapping"]],"celpy.celtypes.UintType":[[0,2,1,"","__add__"],[0,2,1,"","__eq__"],[0,2,1,"","__floordiv__"],[0,2,1,"","__hash__"],[0,2,1,"","__mod__"],[0,2,1,"","__mul__"],[0,2,1,"","__ne__"],[0,2,1,"","__neg__"],[0,2,1,"","__new__"],[0,2,1,"","__radd__"],[0,2,1,"","__repr__"],[0,2,1,"","__rfloordiv__"],[0,2,1,"","__rmod__"],[0,2,1,"","__rmul__"],[0,2,1,"","__rsub__"],[0,2,1,"","__rtruediv__"],[0,2,1,"","__str__"],[0,2,1,"","__sub__"],[0,2,1,"","__truediv__"]],"celpy.evaluation":[[0,1,1,"","Activation"],[0,5,1,"","CELEvalError"],[0,5,1,"","CELSyntaxError"],[0,5,1,"","CELUnsupportedError"],[0,1,1,"","Evaluator"],[0,1,1,"","FindIdent"],[0,1,1,"","NameContainer"],[0,1,1,"","Referent"],[0,4,1,"","boolean"],[0,4,1,"","celbytes"],[0,4,1,"","celstr"],[0,4,1,"","eval_error"],[0,4,1,"","function_matches"],[0,4,1,"","function_size"],[0,4,1,"","operator_in"],[0,4,1,"","trace"]],"celpy.evaluation.Activation":[[0,2,1,"","__init__"],[0,2,1,"","__repr__"],[0,2,1,"","clone"],[0,2,1,"","nested_activation"],[0,2,1,"","resolve_variable"]],"celpy.evaluation.CELEvalError":[[0,2,1,"","__add__"],[0,2,1,"","__call__"],[0,2,1,"","__eq__"],[0,2,1,"","__floordiv__"],[0,3,1,"","__hash__"],[0,2,1,"","__init__"],[0,2,1,"","__mod__"],[0,2,1,"","__mul__"],[0,2,1,"","__neg__"],[0,2,1,"","__pow__"],[0,2,1,"","__radd__"],[0,2,1,"","__repr__"],[0,2,1,"","__rfloordiv__"],[0,2,1,"","__rmod__"],[0,2,1,"","__rmul__"],[0,2,1,"","__rpow__"],[0,2,1,"","__rsub__"],[0,2,1,"","__rtruediv__"],[0,2,1,"","__sub__"],[0,2,1,"","__truediv__"],[0,2,1,"","with_traceback"]],"celpy.evaluation.CELSyntaxError":[[0,2,1,"","__init__"]],"celpy.evaluation.CELUnsupportedError":[[0,2,1,"","__init__"]],"celpy.evaluation.Evaluator":[[0,3,1,"","__abstractmethods__"],[0,2,1,"","__init__"],[0,3,1,"","__parameters__"],[0,2,1,"","addition"],[0,2,1,"","build_macro_eval"],[0,2,1,"","build_reduce_macro_eval"],[0,2,1,"","build_ss_macro_eval"],[0,2,1,"","conditionaland"],[0,2,1,"","conditionalor"],[0,2,1,"","evaluate"],[0,2,1,"","expr"],[0,2,1,"","exprlist"],[0,2,1,"","fieldinits"],[0,2,1,"","function_eval"],[0,2,1,"","ident_value"],[0,2,1,"","literal"],[0,3,1,"","logger"],[0,2,1,"","macro_has_eval"],[0,2,1,"","mapinits"],[0,2,1,"","member"],[0,2,1,"","member_dot"],[0,2,1,"","member_dot_arg"],[0,2,1,"","member_index"],[0,2,1,"","member_object"],[0,2,1,"","method_eval"],[0,2,1,"","multiplication"],[0,2,1,"","primary"],[0,2,1,"","relation"],[0,2,1,"","set_activation"],[0,2,1,"","sub_evaluator"],[0,2,1,"","unary"],[0,2,1,"","visit_children"]],"celpy.evaluation.FindIdent":[[0,2,1,"","__init__"],[0,3,1,"","__parameters__"],[0,2,1,"","ident"],[0,2,1,"","in_tree"]],"celpy.evaluation.NameContainer":[[0,5,1,"","NotFound"],[0,2,1,"","__init__"],[0,3,1,"","__orig_bases__"],[0,3,1,"","__parameters__"],[0,2,1,"","__repr__"],[0,2,1,"","clone"],[0,2,1,"","dict_find_name"],[0,3,1,"","extended_name_path"],[0,2,1,"","find_name"],[0,3,1,"","ident_pat"],[0,2,1,"","load_annotations"],[0,2,1,"","load_values"],[0,3,1,"","logger"],[0,2,1,"","parent_iter"],[0,2,1,"","resolve_name"]],"celpy.evaluation.Referent":[[0,2,1,"","__init__"],[0,2,1,"","__repr__"],[0,2,1,"","clone"],[0,6,1,"","value"]]},"objnames":{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","attribute","Python attribute"],"4":["py","function","Python function"],"5":["py","exception","Python exception"],"6":["py","property","Python property"]},"objtypes":{"0":"py:module","1":"py:class","2":"py:method","3":"py:attribute","4":"py:function","5":"py:exception","6":"py:property"},"terms":{"":[0,1,2,3,6],"0":[0,1,2,6],"00":6,"001":0,"002":1,"01":1,"011":1,"01ab23cd":1,"02":[0,1],"03":1,"03t16":6,"03z":6,"04":[1,6],"05":1,"06":0,"06t05":6,"07":[1,6],"08":[1,6],"084":1,"09":0,"1":[0,1,2,3,6],"10":[0,1],"100":[1,2],"1000":1,"10000":1,"1000000000":0,"1004":1,"101":1,"1021":1,"1023":1,"10240":1,"1026":1,"103":1,"1034":1,"104":1,"1041":1,"1045":1,"105":1,"1057":1,"106":1,"1066":1,"108":1,"1080":1,"10am":1,"11":1,"111":1,"1124":1,"113":[0,2],"1144":1,"115":1,"116":1,"117":1,"1178":1,"1180":1,"1191":1,"12":1,"121":1,"1211":1,"122":1,"123":[0,1,6],"1232":1,"1234567890":0,"123u":0,"125":1,"127":[0,1],"128":1,"1295":1,"12ab34cd":1,"13":[2,5],"131":1,"132":1,"1333":1,"134":1,"136":1,"138":0,"13t23":0,"14":1,"140":6,"1410":1,"14159":0,"1415929203539825":2,"1437":1,"145":1,"147":1,"1474":1,"149":0,"1493":1,"15":[1,6],"1505":1,"1513":1,"154":1,"1584":1,"16":1,"161":1,"1613":1,"162":1,"167":1,"1686":1,"17":1,"1704":1,"171":1,"1728":1,"173":1,"1779":1,"178":1,"1787":1,"179":1,"1793":1,"1799":1,"18":1,"182":1,"183":1,"184":1,"18446744073709551615":0,"185":1,"189":1,"19":1,"190":1,"194":1,"1954":1,"196":1,"197":1,"198":1,"1e":0,"1st":[1,6],"1u":0,"2":[0,1,6],"20":1,"2009":0,"2012":1,"2016":1,"2017":1,"2018":6,"2019":1,"2020":1,"2021":1,"203":1,"2048":1,"205":1,"206":1,"21":[1,6],"212":1,"21d":1,"22":1,"223":1,"2242":1,"228":1,"2292":1,"23":[1,6],"232":1,"237":1,"238":1,"24":1,"24h":6,"24x5":1,"25":1,"250":1,"2500000":1,"257":1,"26":1,"262":1,"268":1,"27":[1,6],"273":1,"277":[0,1],"2788":1,"28":1,"285":0,"29":1,"293":1,"299":1,"2h45m":0,"2nd":6,"3":[0,1,2,5],"30":[0,1],"300m":0,"301":1,"305":1,"30z":0,"31":[0,2],"313":1,"314":1,"315576000000":0,"317":1,"318":1,"32":1,"325":1,"329":1,"34":1,"341":1,"345":1,"348":1,"35":1,"355":[0,2],"35dai":1,"36":1,"3600":0,"364":1,"37":1,"372":1,"373":1,"390":1,"3a":1,"4":[0,1],"40":[1,6],"400":1,"402":1,"408":1,"409":1,"41":1,"412":1,"413":1,"42":[0,1,2,3],"424":1,"429":1,"42u":0,"43":1,"431":1,"432u":0,"436":1,"438":1,"443":1,"448":1,"45":1,"453":1,"455":1,"456":0,"47":[1,6],"48":1,"485":1,"490":1,"493":1,"5":[0,1],"50":1,"500":6,"5000":1,"505":1,"5103":1,"512":1,"5120":1,"514":1,"516":1,"52":1,"54":1,"548":1,"549":1,"55":1,"556":1,"562":1,"563":1,"567":1,"569":1,"57":1,"575":1,"5759":6,"58":1,"592":1,"597":1,"5h":0,"6":[0,1,3],"60":[0,1],"600":6,"604":1,"608":1,"610":1,"612000":1,"615":1,"619":1,"622":1,"628":1,"63":0,"64":[1,6,7],"643":1,"644":1,"65":1,"656":1,"659":1,"66":1,"662":1,"666":1,"667":1,"676":1,"69":1,"692":1,"6am":1,"6hr":1,"6pm":1,"7":[1,3],"711":1,"720":1,"729":1,"739":1,"74":1,"744":1,"748":1,"758":1,"767":1,"78":1,"786":1,"791":1,"7am":1,"7pm":1,"8":[1,6],"80":1,"806":1,"8098":1,"81":1,"812":1,"826":1,"829":1,"830985915492956":2,"842":1,"845":1,"86":1,"86400":[0,1],"87":1,"88":1,"8x5":1,"9":[0,1],"90":1,"92":1,"9223372036854775807":0,"9223372036854775808":0,"93":1,"932":1,"934":1,"94":1,"97":1,"98":1,"987":1,"988":1,"99":1,"9pm":1,"A":[0,1,6,7],"AND":0,"And":[0,2],"As":6,"At":0,"But":0,"By":0,"For":[0,1,2,5,6],"If":[0,1,3,6],"In":[0,1,5,6],"It":[0,1,2,6,7],"NOT":[0,1],"No":[0,1,6],"Not":[0,1],"Of":1,"On":[1,6],"One":[0,1],"Or":0,"That":0,"The":[0,1,2,3,4,5,7],"Then":[1,6,7],"There":[0,1,2,4,6,7],"These":[0,1,6],"To":[0,6],"With":[0,1],"_":[0,6],"__abstractmethods__":0,"__add__":0,"__call__":[0,6],"__eq__":0,"__floordiv__":0,"__ge__":0,"__getitem__":0,"__gt__":0,"__hash__":0,"__init__":[0,1,6],"__isinstance__":0,"__le__":0,"__lt__":0,"__main__":4,"__mod__":0,"__mul__":0,"__ne__":0,"__neg__":0,"__new__":0,"__orig_bases__":0,"__parameters__":0,"__pow__":0,"__radd__":0,"__repr__":0,"__rfloordiv__":0,"__rmod__":0,"__rmul__":0,"__rpow__":0,"__rsub__":0,"__rtruediv__":0,"__str__":0,"__sub__":0,"__traceback__":0,"__truediv__":0,"_a":0,"_pull_ami_snapshot":1,"_pull_asg_imag":1,"_pull_asg_snapshot":1,"_pull_ec2_imag":1,"ab":0,"abandond":1,"abc":1,"abil":2,"abl":[0,1],"about":[1,4,6],"abov":[0,1,6],"absenc":1,"absent":1,"absolut":0,"abstract":0,"accept":[0,1],"access":0,"access_kei":1,"accesskeysperuserquota":1,"accesslog":1,"account":6,"account_id":1,"account_shield_subscript":1,"accountaccesskeyspres":1,"accountcredentialreport":1,"accountmfaen":1,"accountnumb":1,"accountpasswordpolici":1,"accounts_url":1,"accountsigningcertificatespres":1,"achiev":0,"acl":1,"aclawss3cidr":1,"aclsubnetfilt":1,"acm":[1,6],"acquir":1,"across":[1,4],"act":1,"action":[1,6],"action_d":1,"activ":[0,1,6,7],"actual":0,"ad":[0,1],"adapt":[6,7],"add":[0,1,5,7],"addit":[0,1,6,7],"addition":[0,1,7],"addition_add":0,"addition_sub":0,"additionalproperti":1,"addr":1,"address":1,"adher":1,"admin":1,"administratoraccess":1,"advanc":1,"advantag":2,"advisor":1,"aes128":1,"aes256":1,"after":[0,1],"ag":6,"again":0,"against":1,"agefilt":1,"agre":0,"alarm":1,"alb":1,"alblog":1,"alert":1,"alia":0,"alias":[0,1],"aliasnam":1,"all":[0,6],"all_dbsubenet_group":1,"all_imag":1,"all_instance_profil":1,"all_launch_configuration_nam":1,"all_scan_group":1,"all_service_rol":1,"all_snapshot":1,"all_valu":1,"alloc":1,"allocatedstorag":1,"allow":[0,6],"allow_websit":1,"allowalliampolici":1,"alon":1,"along":[0,1],"alreadi":6,"also":[0,1,2,6,7],"altern":[0,1,6],"alwai":[0,1],"amazon":1,"amazonaw":1,"amazons3":1,"ambigu":0,"ambiguous_liter":0,"america":1,"amicrossaccountfilt":1,"among":1,"an":[0,1,6,7],"analysi":1,"analyt":1,"ancient":1,"ani":[0,1,6],"annot":[0,1,6],"anoth":[1,4],"anyof":1,"ap":1,"api":[1,4],"apigw":1,"apikeyrequir":1,"app":[1,7],"appear":[0,1,6],"appelb":1,"appelbdefaultvpcfilt":1,"appelbhealthcheckprotocolmismatchfilt":1,"appelblistenerfilt":1,"appelbmetr":1,"appelbtargetgroup":1,"appelbtargetgroupdefaultvpcfilt":1,"appelbtargetgroupfilt":1,"append":0,"appid":1,"appli":[0,1,6],"applic":[0,1,3,4],"applicationnam":1,"approach":[0,6],"approxim":0,"ar":[0,1,3,4,6,7],"architectur":5,"aren":[0,1],"arg":[0,3,6],"arg_name_arg":6,"arg_type_valu":0,"argtyp":6,"argument":[3,6],"argv":0,"arithmetic_oper":0,"aritmet":2,"arm64":5,"arn":1,"arn_split":1,"around":1,"arrai":[0,1],"arriv":[1,6],"asg":1,"assert":[1,6],"assign":[0,1],"assoc":1,"associ":[0,1],"associatepublicipaddress":1,"assum":[0,1],"assumerolepolicysizequota":1,"assumpt":1,"assur":0,"ast":[0,6,7],"ast2":0,"asv":1,"asvredact":1,"atm":1,"atom":6,"atot":2,"attach":[0,1],"attachedinstancefilt":1,"attachedpoliciespergroupquota":1,"attachedpoliciesperrolequota":1,"attachedpoliciesperuserquota":1,"attachedvolum":1,"attachmentcount":1,"attack":1,"attempt":[0,1],"attr":1,"attribit":1,"attribut":[0,6],"attributesfilt":1,"audit":1,"augment":1,"aurora":1,"auth":6,"author":6,"auto":1,"automat":1,"autosc":1,"autoscal":1,"avail":[0,3,6],"aval":1,"averag":1,"avoid":1,"aw":1,"aws_ebs_degraded_ebs_volume_perform":1,"aws_ebs_volume_lost":1,"awsec2":1,"awslambda":1,"ax":2,"az1":1,"azr":1,"azur":1,"b":[0,2,6],"ba":1,"back":[0,1],"backoff":1,"backup":1,"bad1":6,"bad2":6,"balanc":[1,6],"base":[0,1,4,6],"base_funct":0,"baseexcept":0,"baselin":1,"basi":1,"basic":1,"batch":1,"baz":0,"bc":0,"becaus":[0,1,6],"becom":[0,1],"been":[0,1,7],"befor":[0,1],"behav":0,"behavior":[0,1],"being":1,"below":0,"better":[0,1],"between":[0,1],"beyond":0,"big":6,"binari":[0,6],"bind":[0,3,4,7],"bit":[1,2,7],"blacklist":1,"blob":[0,1,6],"blockdevicemap":1,"bool":[0,4,6],"bool_valu":0,"boolean":[0,4,6],"boolean_to_statu":0,"booleangroupfilt":6,"booltyp":[0,6,7],"boolvalu":0,"both":[0,1],"boto3":1,"bottl":0,"bottom":0,"bound":0,"bracket":1,"breakdown":6,"bring":1,"broken":1,"broker":1,"bucketencrypt":1,"bucketnotificationfilt":1,"buffer":0,"build":[0,1,6,7],"build_macro_ev":0,"build_reduce_macro_ev":0,"build_ss_macro_ev":0,"buildsecuritygroupfilt":1,"buildsubnetfilt":1,"buildvpcfilt":1,"built":[0,1,2,6,7],"bulki":1,"bunch":1,"byol":1,"byt":0,"byte":[0,7],"bytes_valu":0,"bytestyp":[0,7],"bytesvalu":0,"c":[0,2,6],"c7n":[0,4],"c7n_interpreted_runn":1,"c7n_s3_policy_requir":1,"c7ncontext":1,"c7nlib":1,"cach":4,"calcul":2,"call":[0,1],"callabl":0,"can":[0,1,2,3,4,5,6,7],"cannot":[0,1],"capabl":1,"capacitydelta":1,"capitalon":1,"capon":1,"captur":0,"cardda_tagcompli":1,"cardin":1,"case":[0,1,5,6],"categori":[1,6],"caught":0,"causesresourc":1,"cbhfqv":1,"cbr":1,"cde":1,"cel":[1,5,6],"cel_activ":1,"cel_ast":1,"cel_env":1,"cel_ev":0,"cel_funct":6,"cel_pars":0,"cel_program":6,"cel_repl":0,"cel_sourc":6,"cel_test":6,"celbyt":0,"celevalerror":0,"celfilt":[4,6],"celfunct":0,"celpars":0,"celparseerror":0,"celpi":[0,1,2,3,6,7],"celstr":0,"celsyntaxerror":0,"celtyp":[1,4,6,7],"celunsupportederror":0,"central":[0,6],"cert":1,"certain":[1,6],"certif":1,"cet":0,"cf":1,"cfn":1,"chain":[0,7],"chainmap":[0,7],"chang":1,"char":6,"check":[0,6],"check_custom_origin":1,"checker":6,"child":0,"childnr":0,"children":0,"choci":0,"choic":6,"choos":0,"chunk":1,"ci":1,"cidr_siz":1,"cidrblock":1,"cipher":1,"circuit":[0,6],"cl":0,"claim":6,"class":[0,1,3,6],"classic":1,"classmethod":0,"claus":[1,6],"clean":1,"clear":[1,6],"cli":[0,3,4],"client":[0,1,7],"clock":1,"clone":0,"close":[0,1,6],"cloud":[1,4],"cloudform":1,"cloudfront":1,"cloudhsm":1,"cloudsearch":1,"cloudtrailen":1,"cloudwatch":1,"cluster":1,"cm":1,"cm6aws11":1,"cmdbenviron":1,"cmdloop":0,"cml":1,"co":6,"code":[0,1,6],"codebuild":1,"codebuildproject":1,"codecommit":1,"codepipelin":1,"coercion":[0,6],"collect":1,"collis":1,"color":1,"column":[0,1],"com":[0,1,6],"combin":[0,1,6],"come":[0,1,6],"command":[0,2,3,5,7],"comment":1,"common":[0,2,6],"commun":1,"commut":0,"compar":1,"comparablevers":1,"comparison":[0,1,6],"compat":0,"compil":[0,1,5,6,7],"compiledrunn":[0,4,7],"complement":1,"complet":6,"completekei":0,"complex":[0,1,4,6],"compli":1,"compliant":[1,6],"complic":6,"compon":[0,1],"compons":6,"compos":1,"composit":1,"comput":[1,6],"computeenviron":1,"computesgfilt":1,"computesubnetfilt":1,"conceal":1,"concept":0,"concern":[0,2,6],"concret":0,"condit":[0,1],"conditionaland":0,"conditionalor":0,"configen":1,"configrul":1,"configur":[1,4,5],"confus":6,"connect":1,"connectionsecuritygroupfilt":1,"connectionsubnetfilt":1,"consid":[0,1,7],"consider":1,"consist":0,"consol":3,"consolid":0,"constant":0,"constraint":7,"construct":[0,4,6],"constructor":0,"contain":[0,1,3,6,7],"containerdefinit":1,"content":0,"context":[0,2,4],"continu":6,"control":1,"convers":[0,6,7],"convert":[0,1,6],"copi":[0,1],"core":[0,1],"correct":1,"could":[0,6],"count":6,"countnumb":1,"cours":0,"cover":0,"cpp":0,"cpu":1,"cpuutil":1,"crash":6,"creat":[0,1,6,7],"created":1,"createdtim":1,"creation":[0,1],"creationd":1,"creationtimestamp":6,"credentialreport":1,"credentialreportmixin":1,"crossaccountaccess":1,"crossaccountaccessfilt":1,"crossaccountaccessmixin":1,"crossaccountfilt":1,"crossaccountp":1,"crossregiontransf":1,"crypto":1,"csv":[0,1],"csv2dict":1,"ct":1,"ctl":1,"current":[0,1,6,7],"custodian":[1,4],"custodian_asv":1,"custodian_cleanup":1,"custodian_downtim":1,"custodian_invalid":1,"custodian_invalid_asg":1,"custodian_rds_offhours_ct":1,"custodian_rds_offhours_et":1,"custodian_rds_offhours_pt":1,"custodian_res":1,"custodian_s3_ns_templ":1,"custodian_snapshot":1,"custodian_statu":1,"custodian_stop":1,"custodian_tag":1,"custom":1,"cw":1,"d":[0,1,2,3,6],"dai":1,"daili":1,"darwin":5,"data":[0,2,4,6],"databas":[0,1],"databaseconnect":1,"dataev":1,"datapipelin":1,"datapoint":1,"date":1,"datetim":[0,1,6,7],"dateutil":0,"dax":1,"daxsecuritygroupfilt":1,"daxsubnetfilt":1,"daylight":1,"dbclusteridentifi":1,"dbsubnetgroup":1,"dbsubnetgroupnam":1,"dd":1,"deal":[0,6],"decid":6,"decim":0,"decis":1,"decl":[0,1,6],"declar":[0,1,6],"decompos":0,"decor":0,"deep":0,"deepli":0,"def":[1,6],"default":[0,6,7],"default_tz":1,"default_vpc":1,"defaultvpc":1,"defin":[0,1,2,7],"definit":[0,2,6],"deleg":0,"delet":[1,7],"deleteprotect":6,"delimit":1,"deliv":1,"demand":1,"deni":1,"denial":1,"depend":[0,1,4,5,7],"deprec":[1,7],"descend":0,"describ":[0,1,6],"describe_db_snapshot_attribut":1,"describe_subscription_filt":1,"descript":[0,1],"design":4,"desir":[0,1],"desk":2,"destin":1,"detail":[1,3,6],"detect":1,"determin":[1,6],"dev":[1,6],"develop":0,"dhcpoptionsfilt":1,"dhe":1,"dict":[0,1,7],"dict_find_nam":0,"dictionari":[0,1],"did":0,"differ":[0,1,4,6],"difficult":1,"digest":1,"digit":0,"dimens":1,"directconnect":1,"directli":[0,1,2],"directori":[1,3],"directorysecuritygroupfilt":1,"directorysubnetfilt":1,"directoryvpcfilt":1,"disabl":[0,1],"disableapitermin":1,"discard":0,"discov":0,"dispatch":6,"displai":0,"displaynam":1,"distinct":0,"distinguish":0,"distribut":1,"diverg":1,"divid":0,"dividebyzeroerror":6,"divis":0,"dlm":1,"dm":1,"dn":1,"dnshostnam":1,"dnsname":1,"dnssupport":1,"do":[0,1,2,6],"do_by":0,"do_exit":0,"do_quit":0,"do_set":0,"do_show":0,"doc":[0,1],"document":[0,1,6],"doe":[0,1,2,6,7],"doesn":[0,1,6],"doin":0,"domain":[0,1],"don":[0,1,2,6],"done":[0,1],"dot_id":0,"dot_ident_arg":0,"doubl":[0,2],"double_valu":0,"doubletyp":[0,7],"doublevalu":0,"down":[0,1,6],"dpb":0,"dsl":1,"due":1,"dump":0,"dumpast":0,"duplic":0,"durat":[0,1,6],"durationtyp":[0,1,7],"dure":[0,1,5],"dyn":0,"dynamodb":1,"dynamodbacceler":1,"e":[0,1],"e1":0,"e2":0,"each":[0,1,6],"easier":1,"easili":4,"east":1,"east1":6,"eastern":1,"ebsoptim":1,"ec":1,"ec2":[1,6],"ec2_userdata_stop":1,"ecdh":1,"ecdsa":1,"echo":2,"ecr":1,"ecrcrossaccountaccessfilt":1,"ecsclust":1,"ecsmetr":1,"ef":1,"effect":[0,1],"egress_viol":1,"eip":1,"either":[0,1],"ek":1,"ekssgfilt":1,"ekssubnetfilt":1,"eksvpcfilt":1,"elast":1,"elasticach":1,"elasticachesnapshot":1,"elasticachesnapshotag":1,"elasticbeanstalk":1,"elasticfilesystemmounttarget":1,"elasticmapreduc":1,"elasticsearch":1,"elasticsearchdomain":1,"elb":1,"elblog":1,"elbsecuritypolici":1,"elem":0,"element":[1,6],"elif":0,"elimin":0,"els":0,"email":[1,6],"email_verifi":6,"emb":2,"embed":[0,4,6],"emit":7,"emmo":1,"emphat":6,"empti":[0,1,7],"emr":1,"emrclust":1,"emrmetr":1,"enabl":[0,4,6],"enasupport":1,"encount":0,"encryptionenabledfilt":1,"end":[0,1,7],"endpoint":1,"endpointcrossaccountfilt":1,"endpointsecuritygroupfilt":1,"endpointsubnetfilt":1,"endpointvpcfilt":1,"engin":[0,1],"eni":1,"ensur":[1,6],"ent":1,"enter":0,"enterpris":1,"entir":0,"enum":[0,1],"enumtyp":0,"env":[0,1,6],"environ":[0,1,3,4,5,6,7],"environment":0,"eof":2,"ephemeralinstancefilt":1,"eq":1,"eq_test":0,"equal":[0,1],"equival":0,"err":[0,6],"erron":0,"error":[0,4],"error_text":0,"escap":0,"eschew":1,"essenc":6,"essenti":[0,1,4],"est":1,"establish":0,"et":1,"etc":[0,1],"eu":1,"europ":0,"eustac":0,"eval":[0,6,7],"eval_error":0,"eval_filt":1,"evalerror":6,"evalu":[1,2,4,6,7],"evauat":0,"even":[0,1,6],"event":0,"eventrul":1,"eventrulemetr":1,"eventruletarget":1,"eventu":6,"ever":6,"everi":[0,1],"everydai":1,"everyone_onli":1,"everyth":0,"evluat":6,"ex":[0,6],"exact":1,"exactli":6,"examin":[1,6],"exampl":[2,3,4],"exc_class":0,"exceed":1,"except":[0,1,4,7],"exceptionmanualsnapshot":1,"exclud":1,"exclude_imag":1,"exclus":6,"exec":2,"execut":[0,1,6],"exempt":1,"exist":[0,1,3],"exit":0,"expand":0,"expans":0,"expcept":0,"expect":[0,1],"expir":1,"explicit":[0,1],"explicitli":[0,1],"export":3,"expos":[0,1,6],"expost":0,"expostur":6,"expr":[0,1,2,6],"express":[0,1,2,5,6,7],"exprlist":0,"exprpb":6,"extant":1,"extend":[0,1,6],"extended_name_path":0,"extens":[0,1,6,7],"extent":[0,1,6],"extern":[0,7],"extra":1,"extract":[0,1],"f":[0,1,6],"factfind":1,"factori":0,"fail":[0,1],"failur":[0,1],"fairli":0,"fall":0,"fallback":0,"fals":[0,1,2,6],"far":0,"fargat":1,"fatalf":[0,6],"fatalln":[0,6],"faulttolerantsnapshot":1,"favor":0,"featur":[0,1],"fetch":1,"few":[0,1,6],"ffffffff":1,"field":[0,1,6],"fieldinit":0,"file":[0,1,3],"filter":[0,4],"filter_inst":6,"filter_registri":1,"filter_resource_statist":1,"filterrestintegr":1,"filterrestmethod":1,"final":[0,1,6,7],"find":0,"find_nam":0,"findid":0,"firehos":1,"first":[0,6],"fit":1,"fix":[0,1,6],"fixedint":0,"fixedtz":0,"fklter":1,"flag":1,"flat":0,"flavor":0,"fleet":1,"float":[0,2,7],"floatvalu":0,"flow_log":1,"flowlogfilt":1,"fmt":[0,6],"fnmatch":1,"focus":1,"follow":[0,1,6,7],"foo":1,"foobar":1,"forbidden":1,"form":[0,1,6],"formal":[0,6],"format":[0,1,3,6],"formatt":3,"formerli":0,"forwardref":0,"found":[0,1],"four":[0,1],"fraction":0,"frame":0,"framework":[6,7],"fri":1,"friendli":0,"from":[0,1,2,3,4,7],"fromport":1,"front":0,"frozenset":0,"fs_analytical_dev":1,"fs_analytical_qa":1,"fs_core_cas_qa":1,"fs_custodian_tag":1,"fs_manual_ebs_snapshot_expir":1,"fs_manual_rds_snapshot_expir":1,"fsx":1,"fulfil":0,"full_control":1,"fulli":0,"func":[0,6],"function":[0,2,4,7],"function_ev":0,"function_match":0,"function_s":0,"functiontyp":[0,6],"further":0,"futur":0,"g":[0,1],"g4":0,"gamelift":1,"gatewai":1,"gather":[0,1,6],"gb":1,"gc":1,"gcm":1,"ge":1,"gen":0,"gener":[0,1,6],"geograph":1,"get":[0,1],"get_access_log":1,"get_account":1,"get_credential_report":1,"get_dbsubnet_group_us":1,"get_endpoint":1,"get_flow_log":1,"get_health_ev":1,"get_instance_imag":1,"get_key_polici":1,"get_launch_configuration_nam":1,"get_load_balanc":1,"get_matching_alias":1,"get_metr":1,"get_metric_statist":1,"get_model":1,"get_opt":0,"get_orgid":1,"get_protocol":1,"get_raw_health_ev":1,"get_raw_metr":1,"get_rel":1,"get_related_id":1,"get_resource_polici":1,"get_resource_statist":1,"get_resource_valu":1,"get_type_protect":1,"get_vpc":1,"getdat":[0,1],"getdayofmonth":0,"getdayofweek":[0,1],"getdayofyear":0,"getfullyear":0,"gethour":[0,1],"getmillisecond":0,"getminut":0,"getmonth":0,"getsecond":0,"gettz":0,"gib":1,"github":[0,1,6],"give":6,"given":[0,1,6,7],"gl":1,"glacier":1,"glaciercrossaccountaccessfilt":1,"glob":1,"global":0,"globalgrantsfilt":1,"glue":1,"glueconnect":1,"go":[0,1,4],"go_mod":0,"goal":0,"golang":0,"goo":1,"good":[1,6],"googl":[0,1,2,6],"gracefulli":0,"grai":1,"grammar":0,"grantcount":1,"great":6,"greater":1,"greet":6,"greetfunc":6,"group":6,"groupid":1,"groupmembership":1,"groupnam":1,"grouppolicysizequota":1,"groupset":1,"groupsperuserquota":1,"groupsquota":1,"gt":[0,1],"gte":1,"h":[0,1],"ha":[0,2,4,6,7],"had":1,"hand":6,"handl":[0,1,6,7],"handler":3,"hapg":1,"happen":0,"hash":0,"hashabl":0,"hasn":7,"hasstatementfilt":1,"hasvirtualmfa":1,"have":[0,1,3,4,6],"haven":1,"head":1,"header":[1,6],"healtch":1,"health_ev":1,"healthcheckprotocolmismatch":1,"healthev":1,"healtheventfilt":1,"healthfilt":1,"heavi":1,"hello":[0,6],"help":[0,1,2,6],"here":[0,1,6],"heredoc":2,"hexadecim":0,"hh":0,"hidden":0,"higher":1,"highli":1,"hint":[0,7],"hit":1,"holidai":1,"home":[1,3],"hook":0,"host":[0,1],"hostedzon":1,"hostnam":1,"hour":[0,1],"hourli":1,"housekeep_unused_sg":1,"how":[1,6],"howev":[0,1,6],"hsm":1,"html":[0,1],"http":[0,1,4,6],"i":[0,2,4,5,6,7],"iamaccessfilt":1,"iamgroupinlinepolici":1,"iamgroupus":1,"iaminstanceprofil":1,"iamroleinlinepolici":1,"iamroleusag":1,"iamroleusagemixin":1,"iamsummari":1,"iamuserinlinepolici":1,"iana":[0,1],"idea":0,"ideal":0,"ident":[0,1],"ident_arg":0,"ident_pat":0,"ident_valu":0,"identif":0,"identifi":[0,1],"ie":1,"ietf":0,"ifi":0,"ignor":[0,1,6],"imageag":1,"imageagefilt":1,"imagefilt":1,"imageid":1,"imagenam":1,"imagesunusedmixin":1,"imageunusedfilt":1,"immedi":1,"implement":[0,2,4,7],"implent":1,"impli":[0,1],"implicit":1,"implicitli":1,"import":[0,1,2,4,6],"in_tre":0,"includ":[0,1,6,7],"incomplet":0,"incorrect":1,"incorrectlambda":1,"increas":0,"inde":6,"index":[0,4],"indexerror":0,"indic":0,"individu":[0,1],"infer":1,"infin":0,"info":1,"inform":[1,3],"infrastructur":4,"init":0,"initi":[0,7],"inject":0,"input":[0,6],"insid":0,"instal":[0,4],"instanc":[0,6],"instance_profile_usag":1,"instanceagefilt":1,"instanceattribut":1,"instancecreatetim":1,"instanceimag":1,"instanceimagebas":1,"instanceimagemixin":1,"instanceinitiatedshutdownbehavior":1,"instanceoffhour":1,"instanceonhour":1,"instanceprofil":1,"instanceprofilenam":1,"instanceprofilesquota":1,"instances":6,"instancestorag":1,"instancetyp":1,"instead":[0,1],"insufficient_data":1,"int":[0,1,2,3,7],"int32":0,"int32valu":[0,4],"int64":0,"int64_overflow_neg":0,"int64_overflow_posit":0,"int64_valu":0,"int64valu":0,"integ":[0,1],"integer_math":0,"integr":[4,7],"intend":0,"intent":[1,2,4],"interest":4,"interfac":[0,1,6],"interfacesecuritygroupfilt":1,"interfacesubnetfilt":1,"interfacevpcfilt":1,"intermedi":6,"intern":[0,1,7],"internet":1,"interoper":4,"interpret":0,"interpretedrunn":[0,4,7],"intersect":1,"intiial":0,"intoper":0,"intro":0,"introduc":0,"introspect":6,"inttyp":[0,7],"invalidconfigfilt":1,"invers":1,"invis":1,"involv":0,"io":0,"iop":1,"iot":1,"ip":1,"ippermiss":1,"ippermissionegress":1,"is_log":[],"islog":1,"isloggingfilt":1,"isn":[0,1,3,4],"isnotloggingfilt":1,"isqueryloggingen":1,"isrm":1,"iss":[0,6],"isshadow":1,"isshieldprotect":1,"isshieldprotectedmixin":1,"issslfilt":1,"issu":[0,1,6],"iswafen":1,"item":[0,1,6],"iter":[0,1],"its":[0,1,6],"itself":0,"iunjpz":1,"jmes_path":1,"jmes_path_map":1,"jmespath":1,"job":[0,1],"joda":0,"jq":[0,2],"json":[0,1,2,6],"json_to_cel":[1,6],"jsonlin":0,"just":1,"kai":0,"keep":[0,1],"kei":[0,4,6,7],"kernel":1,"key_valu":1,"keyalia":1,"keyerror":0,"keyid":1,"keynam":1,"keyrotationen":1,"keyrotationstatu":1,"kind":[0,1,6,7],"kinesi":1,"kms_alia":1,"kms_kei":1,"kmsfilter":1,"kmskeyalia":1,"known":0,"kwarg":0,"laast":0,"lambda":[0,1],"lambdacrossaccountaccessfilt":1,"lambdaeventsourc":1,"lambdalayervers":1,"langdef":[0,1],"languag":[0,1],"larg":1,"large_instance_typ":1,"lark":[0,7],"last":0,"last_rot":1,"last_used_d":1,"last_used_region":1,"last_used_servic":1,"lastrot":1,"lastupdatedtim":1,"lastwritedai":1,"later":[0,1],"latestsnapshot":1,"launchconfig":1,"launchconfigag":1,"launchconfigfilt":1,"launchconfigurationnam":1,"launchtyp":1,"layer":[1,7],"layercrossaccount":1,"lc_userdata":1,"le":1,"lead":[0,1,6],"least":[0,1],"leav":1,"left":[0,1],"legaci":1,"len":[0,1],"length":0,"less":[0,1,6],"let":6,"level":[0,1,3],"levelnam":3,"leverag":0,"lexic":0,"lh":6,"librari":[0,1,6],"licens":1,"life":[0,1],"lifecyclerul":1,"like":[0,1,2,6],"likewis":1,"limit":0,"line":[0,1,3,7],"lineno":3,"linkag":1,"list":[0,1,6,7],"list_lit":0,"list_typ":0,"listtyp":[0,7],"listvalu":0,"liter":[0,1],"littl":0,"ll":[0,6],"load":[0,1],"load_annot":0,"load_valu":0,"local":[0,1,3,7],"localized_ev":0,"locat":0,"log":[0,3,6],"logcrossaccountfilt":1,"logg":1,"logger":0,"loggroup":1,"logic":[0,2,6],"logical_and":0,"logical_condit":0,"logical_not":0,"logical_or":0,"logtarget":1,"long":[0,1],"longer":1,"longest":0,"longtz":0,"look":[0,1,6],"lookup":0,"loos":6,"los_angel":1,"loss":1,"lot":0,"lower":1,"lowercas":0,"lt":[0,1],"lte":1,"m":[0,1,2,5,6],"m1":6,"m3":1,"machin":1,"machineri":6,"macro":[0,1,7],"macro_has_ev":0,"made":1,"magnet":1,"magnitud":0,"mai":[0,1,5,6,7],"maid":1,"maid_offhour":1,"maid_statu":1,"main":0,"major":1,"make":[0,1,2,6],"mani":[0,1],"manual":1,"map":[0,1,6],"map_lit":0,"map_typ":0,"mapinit":0,"mapkeytyp":7,"mappubliciponlaunch":1,"maptyp":[0,1,6,7],"march":0,"mark":0,"marked_kei":1,"markedforop":1,"mask":6,"master":[0,1,6],"match":[0,1,5,6],"matchabl":1,"math":[0,2],"matter":0,"max":1,"maximum":1,"maxproperti":1,"maxsecond":0,"mayb":0,"mccarthi":0,"md":[0,1,6],"me":6,"mean":[0,1],"meaning":0,"medium":1,"meet":6,"member":[0,1],"member_dot":0,"member_dot_arg":0,"member_index":0,"member_item":0,"member_object":0,"mere":0,"messag":[0,1,2,3,6],"message_liter":0,"messagebrok":1,"messagetyp":0,"method":[0,6],"method_ev":0,"method_id":0,"metricsfilt":1,"mfa_act":1,"mfadevic":1,"mfadevicesinus":1,"mi":1,"middl":0,"might":[0,6],"mimic":2,"min":1,"minim":[3,4],"minimum":[0,1],"minimumpasswordlength":1,"minproperti":1,"minsecond":0,"minut":[0,1],"mismatch":0,"mismatchs3origin":1,"miss":0,"missingrout":1,"mistak":1,"mix":0,"mixin":1,"ml":1,"mm":[0,1],"mock":1,"mod":[0,1],"mode":0,"model":[0,1,6],"modern":1,"modif":1,"modifi":1,"modifyablevolum":1,"modul":[0,1,3,4],"modulo":0,"modulu":0,"moment":1,"mon":1,"monitor":1,"monthli":1,"more":[0,1,2,4,6],"morn":1,"most":[0,1,2,7],"mount":1,"mq":1,"mqmetric":1,"mqsgfilter":1,"mqsubnetfilt":1,"mssage":1,"multi":1,"multipl":[0,1,6],"multipli":1,"multiplication_div":0,"multiplication_mod":0,"multiplication_mul":0,"must":[0,1,3,6],"my":1,"my_extens":6,"my_extns":6,"mydata":1,"n":[0,2,3,6],"nacl":1,"name":[0,1,3,6,7],"name1":0,"name2":0,"name_arg":6,"name_token":0,"namecontain":0,"namespac":1,"nano":0,"nanosecondspersecond":0,"narrowli":1,"nat":1,"nativ":[0,1],"navgiat":0,"navig":0,"nc":[0,1],"nc1":0,"nc2":0,"ndjson":0,"ne":1,"necessari":6,"necessarili":0,"need":[0,1,4,6,7],"needless":0,"neg":0,"nest":[0,6],"nested_activ":0,"net":[0,1],"networkacl":1,"networkin":1,"networkinterfac":1,"networkloc":1,"networkout":1,"new":[0,1],"new_activ":0,"new_text":0,"newenv":[0,6],"newer":6,"newfunct":6,"newinstanceoverload":6,"newli":1,"newoverload":6,"newvar":[0,6],"next":[0,1,6,7],"ni":1,"nice":[0,6],"nightli":1,"nil":[0,6],"no_such_field":0,"node":0,"nodesnaphot":1,"nomin":0,"non":[0,4,6],"non_compli":1,"none":[0,1,6],"nonetyp":0,"nonpubl":1,"noreturn":0,"normal":[0,1],"nospecificiamrolemanagedpolici":1,"not_applic":1,"not_nul":1,"notabl":2,"notact":1,"note":[0,1,6],"notebook":1,"notebookinst":1,"notebooksecuritygroupfilt":1,"notebooksubnetfilt":1,"notencryptedfilt":1,"notfound":0,"noth":[0,1,6],"notifi":1,"notimplementederror":6,"notprincip":1,"notresourc":1,"nov":1,"now":[0,1,6],"nsj7vg":1,"ntp":1,"null":[0,1],"null_typ":0,"null_valu":0,"nulltyp":[0,7],"nullvalu":0,"number":[0,1,6,7],"number_valu":0,"o":[1,3],"object":[0,2,4,6],"obscur":1,"obsolet":0,"obvers":1,"occur":[1,6],"octal":0,"odd":0,"off":[0,1],"offer":[0,1],"offhours_except":1,"offset":[0,1],"often":[0,7],"ok":1,"old":1,"older":1,"omit":1,"onc":[0,1],"one":[0,1,4,6],"oneof":[0,1],"onli":[0,1,3],"onlin":1,"onlyport":1,"oop":[0,6],"op":6,"op_name_map":0,"opa":1,"open":[1,6],"openpolicyag":1,"opensourc":4,"oper":[0,1],"operand":[0,1],"operator_in":0,"opswork":1,"opt":1,"optim":[1,6],"option":[0,2,3,5],"order":[0,1,6],"ordinari":0,"oreo":1,"org":[0,1],"organ":[1,4],"organiz":1,"origin":0,"other":[0,1,2,5,6,7],"otherwis":0,"out":[0,1,6],"outlin":1,"output":[0,6],"outsid":[0,1,6],"over":[0,1,2],"overal":0,"overdraftlimit":6,"overdraftprotect":6,"overflow":0,"overlap":0,"overload":[0,6,7],"overloadd":0,"overrid":[0,1],"overridden":0,"overwhelm":1,"own":[0,1,6],"owner":[1,6],"ownercontact":1,"ownereid":1,"p":0,"paackag":0,"pacif":1,"packag":[0,5,6,7],"packagetyp":0,"page":4,"pair":[0,1],"paragraph":3,"param":0,"paramet":[0,3,6],"parameterfilt":1,"paren_expr":0,"parent":[0,1],"parent_it":0,"pari":0,"pars":[0,1],"parse_cidr":1,"parse_d":1,"parse_text":1,"parser":[1,4],"part":[0,1,4,6,7],"partial":[0,6],"particular":[1,2],"particularli":[1,2],"pass":[1,6],"password_en":1,"password_last_chang":1,"password_last_us":1,"password_next_rot":1,"passwordpolicyconfigur":1,"past":1,"patch":1,"path":[0,1],"pattern":[0,1],"payload":0,"peer":1,"peeringconnect":1,"pendulum":[0,1],"per":1,"percent":1,"perfectli":1,"perform":[0,1],"perhap":0,"period":[0,1],"permiss":1,"permissionsboundaryusagecount":1,"permit":[0,1,6,7],"pg":1,"pgm":1,"phase":0,"phd":1,"pick":0,"piec":1,"pingstatu":1,"pip":5,"place":[0,1],"plan":[0,1],"platform":[1,4,5],"platformnam":1,"platformvers":1,"pleas":1,"plu":[0,1],"pluck":0,"pm":1,"poetri":5,"point":[0,1,2],"polici":[4,6],"policiesquota":1,"policyassign":1,"policynam":1,"policysizequota":1,"policyversionsinus":1,"policyversionsinusequota":1,"polit":0,"pool":1,"pop":0,"popul":0,"popular":1,"port":1,"possibl":[0,1],"possibli":[0,1,6],"post":1,"power":2,"pragmat":6,"prcess":1,"precis":0,"prefer":0,"prefix":[0,1],"prefixlen":1,"preloop":0,"prepar":1,"prepare_queri":1,"presenc":[0,1],"present":1,"preserv":1,"pretti":0,"prevent":[0,1],"previou":[0,1],"previous":1,"prg":[0,6],"prgm":[0,6],"primari":0,"primarili":0,"primit":1,"princip":1,"principl":4,"print":0,"println":[0,6],"prior":6,"probabl":1,"problem":[0,1,6],"process":[0,1,6],"process_json_doc":0,"process_resource_set":1,"process_value_typ":1,"prod":6,"prodlog":1,"produc":0,"product":0,"productcod":1,"profil":1,"program":[0,1,4,6,7],"programopt":6,"progress":0,"project":[0,1,4,6],"promot":1,"prompt":0,"propag":1,"proper":[1,6],"properli":[5,6],"properti":[0,1],"propog":0,"propos":1,"proto":[0,6],"proto3pb":0,"protobuf":[0,1,2],"protobuf_typ":0,"protobyf":0,"protocol":[0,4],"protubuf":0,"provid":[1,2,3,6,7],"provis":1,"proxi":1,"pst":1,"pt":1,"pubfac":1,"public":0,"pull":[1,6],"purchas":1,"pure":0,"purpos":1,"push":0,"put":1,"py":[1,4],"pypi":0,"python":[0,1,5,6,7],"pythonpath":2,"qa":1,"qualifi":0,"qualified_identifier_resolution_uncheck":0,"queue":1,"quickli":4,"quietli":0,"quit":0,"quot":0,"quota":1,"quux":0,"r":[0,6],"r53domain":1,"radisti":1,"raft":1,"rais":[0,2,6],"ramdisk":1,"rang":[0,7],"rank":1,"rare":[0,1],"raw":1,"rd":1,"rdscluster":1,"rdsclustersnapshot":1,"rdsoffhour":1,"rdsonhour":1,"rdssnapshot":1,"rdssnapshotag":1,"rdssnapshotonhour":1,"rdssubnetgroup":1,"rdt":1,"re":[0,1,6],"re2":5,"reach":1,"read":[0,1,2],"read_acp":1,"readm":0,"readonli":1,"readonlyrootfilesystem":1,"readreplicadbinstanceidentifi":1,"readreplicasourcedbinstanceidentifi":1,"real":0,"realli":[0,2],"reason":[1,4],"receiv":6,"recent":[0,1],"recogn":0,"recommend":1,"recov":1,"recurs":0,"redact":1,"redshift":1,"redshiftsnapshot":1,"redshiftsnapshotag":1,"redshiftsnapshotcrossaccount":1,"reduc":[0,1],"ref":[0,1,6],"ref_to":0,"refactirubg":1,"refactor":[0,1],"refer":[0,1],"referenc":1,"reflect":[0,6],"refractor":0,"refresh_period":1,"refus":0,"regex":[0,1],"region":1,"regist":[0,1],"registri":[0,1],"regular":[1,5],"rehydr":1,"reject":1,"rel":0,"relat":[0,1,6],"relatedresourcefilt":1,"relatedresourcemixin":1,"relation_eq":0,"relation_g":0,"relation_gt":0,"relation_in":0,"relation_l":0,"relation_lt":0,"relation_n":0,"relationshiup":1,"releas":1,"reli":[0,1,6],"remain":1,"remaind":0,"remot":0,"remov":[1,7],"renam":1,"reorder":1,"repeat":0,"repeatedli":1,"repl":0,"replac":[0,1,6],"replicationinst":1,"report":1,"report_delai":1,"report_gener":1,"report_max_ag":1,"repr":0,"repres":[0,1],"represent":1,"request":[0,1,6],"requie":6,"requir":[0,4,6],"require_ssl":1,"requiredencryptedputobject":1,"requireencryptedputobject":1,"requirelowercasecharact":1,"requirenumb":1,"requiresslaccessrdt":1,"requiresymbol":1,"requireuppercasecharact":1,"rerefer":0,"reservedconcurr":1,"resili":1,"resiz":1,"resize_config":1,"resolut":[0,6,7],"resolv":[0,6],"resolve_nam":0,"resolve_vari":0,"resourc":[0,1],"resource_count":1,"resource_list":6,"resource_schedul":1,"resource_typ":[1,6],"resourcekmskeyalia":1,"resourcekmskeyaliasmixin":1,"respect":0,"restapi":1,"restapicrossaccount":1,"restor":[0,1],"restresourc":1,"restrict":1,"result":[0,1,6,7],"result_funct":0,"resum":1,"resut":0,"return":[0,1,6],"reus":1,"revers":[0,1],"revis":1,"rework":1,"rewrit":6,"rewritten":0,"rfc":0,"rfc3339":0,"rh":6,"rhymjmbbe2":1,"rich":0,"right":0,"role":1,"rolecrossaccountaccess":1,"rolenam":1,"rolepolicysizequota":1,"rolesquota":1,"root":[0,1,3],"root_scop":0,"rootdevicenam":1,"route53":1,"routet":1,"rrset":1,"rsa":1,"rule":[0,6,7],"rulestatu":1,"run":[0,1,4,6],"runnabl":7,"runner":[0,4,7],"runner_class":[0,1],"runtim":0,"s3bucketnam":1,"s3crossaccountfilt":1,"s3metric":1,"s3publicblock":1,"sagemak":1,"sai":[0,1],"said":0,"same":[0,1],"samplecount":1,"save":[0,1],"sc":1,"scale":[0,1],"scan":1,"scan_group":1,"scatter":1,"scenario":0,"schedul":1,"schedulepars":1,"schema":[1,6],"scope":0,"se":1,"search":[0,1,4],"searchabl":0,"sechema":1,"second":[0,1],"secondari":1,"secondarili":0,"secret":[1,6],"secretsmanag":1,"section":1,"secur":4,"securetransport":1,"security_group":1,"securitygroup":1,"securitygroupdifffilt":1,"securitygroupfilt":1,"securitygrouplockedfilt":1,"see":[0,1,6],"seem":[0,1,7],"select":[0,1],"selector":1,"selector_valu":1,"self":[0,1,6],"selfrefer":1,"semant":[0,1,4,7],"semicolon":1,"send":1,"sens":3,"sensibl":1,"sentinel":1,"separ":[0,1],"seper":1,"sequenc":[0,1,6],"serial":0,"serv":0,"server":1,"servercertif":1,"servercertificatesquota":1,"service_role_usag":1,"servicelimit":1,"servicemetr":1,"servicetaskdefinitionfilt":1,"sessioncontext":1,"sessionissu":1,"set":[0,1,2],"set_activ":0,"set_annot":1,"setup":1,"sever":[0,1,6],"sg":1,"sg_unus":1,"sgdefaultvpc":1,"sgusag":1,"sgusagemixin":1,"sha256":1,"sha384":1,"shadow":0,"shake":6,"shake_hand":6,"shake_hands_string_str":6,"shakefunc":6,"share":1,"shell":0,"shield_protect":1,"shield_subscript":1,"shielden":1,"shieldenabledmixin":1,"shop":1,"short":[0,6],"shorthand":1,"should":[0,1,6,7],"show":0,"shown":0,"shrink":1,"si":1,"sid":1,"sign":[0,7],"signifi":1,"significantli":5,"signingcertificatesperuserquota":1,"silenc":[0,1,6],"silent":[0,6],"similar":[0,1],"similarli":[0,1,6],"simpl":0,"simple_test":0,"simpledb":1,"simpler":1,"simpli":0,"simplifi":[0,6],"sinc":1,"singl":[0,1,6],"single_bool":0,"single_byt":0,"single_doubl":0,"single_dur":0,"single_fixed32":0,"single_fixed64":0,"single_float":0,"single_int32":0,"single_int64":0,"single_sfixed32":0,"single_sfixed64":0,"single_sint32":0,"single_sint64":0,"single_str":0,"single_timestamp":0,"single_uint32":0,"single_uint32_wrapp":0,"single_uint64":0,"singleton":[0,4,6],"singletonfilt":1,"singular":0,"situat":1,"size":[0,1,6],"size_parse_cidr":1,"skew":1,"skew_hour":1,"skier":1,"skip":0,"slice":6,"slight":1,"slightli":[0,1],"slighyli":6,"slower":1,"slurp":0,"sm":1,"smaller":0,"smi":1,"sn":1,"snapshotag":1,"snapshotcreatetim":1,"snapshotcrossaccountaccess":1,"snapshotid":1,"snapshotskipamisnapshot":1,"snapshottyp":1,"snapshotunusedfilt":1,"snapshotunusedmixin":1,"snowbal":1,"snscrossaccount":1,"snscrossaccountmixin":1,"so":[0,6],"some":[0,1,6,7],"some_dict":0,"someparam":1,"someth":[0,1],"sometim":0,"somev":1,"somewhat":6,"sophist":0,"sort":6,"sourc":0,"sourcedestcheck":1,"sourceforg":0,"span":1,"sparingli":1,"spawn":1,"spec":[0,1],"special":[0,1,6],"specif":[0,4,6],"specifi":1,"specificiamrolemanagedpolici":1,"speed":5,"spell":1,"spin":1,"spite":6,"spread":0,"sprintf":6,"sq":1,"sql":1,"sqlserveraudit":1,"sqscrossaccount":1,"squar":1,"src":2,"sriovnetsupport":1,"ssd":1,"ssh":1,"sslnegot":1,"sslpolici":1,"sslpolicyfilt":1,"sslv2":1,"sslv3":1,"ssmstatu":1,"st":1,"stack":[0,1],"stage":1,"stand":[0,1],"standard":[0,1,6],"start":[0,1,6],"startswith":6,"starttim":1,"state":6,"statement_id":1,"statetransitionag":1,"static":0,"statist":1,"statu":0,"status":1,"stdin":[0,2],"stdout":0,"step":[0,1,6],"stick":0,"stop":1,"storag":1,"store":1,"str":[0,1,7],"stream":[0,1],"streamhandl":3,"strictli":0,"string":[0,1,3],"string_greet_str":6,"string_valu":0,"stringtyp":[0,6,7],"stringvalu":0,"strip":[0,1],"strong":1,"strongli":1,"struct":0,"structpb":0,"structur":[0,1,4,6],"studi":1,"stuff":6,"sub":[0,1,6],"sub_activ":0,"sub_ev":0,"sub_eval_parti":0,"sub_evalu":0,"subclass":[0,1,6],"sublanguag":1,"subnetfilt":1,"subnetid":1,"subnetrout":1,"subscript":1,"subsequ":[0,1],"subset":7,"subst":1,"succesfulli":1,"success":[0,1,6],"suffic":1,"suffix":[0,1],"sugar":0,"suggest":1,"suit":1,"suitabl":1,"sum":1,"summari":4,"sun":1,"super":1,"superclass":[0,1],"suppli":0,"support":[0,1],"sure":1,"survei":1,"suspend":1,"suspendedprocess":1,"swallow":0,"swap":1,"syntact":0,"syntax":[0,1,6],"system":[0,4],"t":[0,1,2,3,4,6,7],"tab":0,"tabl":1,"tag":6,"tag_polici":6,"tag_policy_filt":6,"tagstatu":1,"take":1,"take_act":6,"taken":[1,6],"target":0,"target_engin":1,"targetfunc":0,"targetgroup":1,"tasktaskdefinitionfilt":1,"tb":0,"team_nam":1,"tech":1,"techniqu":6,"temp":1,"templat":1,"temporari":0,"ten":7,"tend":0,"ters":1,"tertiari":0,"test":[0,1,2,6],"test_all_typ":0,"testabl":1,"testalltyp":0,"text":[0,1],"text2":0,"text_from":1,"textproto_to_gherkin":[],"than":[0,1,6],"the_filt":1,"thei":[0,1,6],"them":[0,1],"thi":[0,1,2,3,4,5,6,7],"thing":[0,1],"think":0,"thirti":1,"those":[0,1,6],"three":[0,1,4],"threshold":1,"through":[0,1,6],"tidyup":1,"time":[0,1,4,6],"timedelta":[0,1,7],"timestamp":[0,1,6],"timestamptyp":[0,1,6,7],"timezon":[0,1,6],"tini":2,"titl":1,"titlecas":0,"tl":1,"tlq9fr":1,"tls12":1,"tlsv1":1,"todo":1,"token":0,"toler":[0,6],"toml":3,"tool":[4,5],"top":[0,1,7],"topic":[1,4],"tot":2,"total":1,"toward":0,"tpb":0,"trace":0,"traceback":[0,6],"track":[0,6],"tradit":0,"traffic":1,"trail":1,"transact":6,"transform":[0,1,6,7],"transient":[0,7],"transit":1,"translat":1,"transpar":0,"travers":1,"treat":0,"tree":[0,6],"tree_dump":0,"tree_for_express":0,"tree_for_vari":0,"tri":1,"trigger":1,"trim":1,"tripl":0,"trivial":[0,1,4],"troublingli":1,"true":[0,1,6],"truncat":0,"trust":1,"try":[0,6],"tupl":0,"turn":[0,1],"tweet":6,"two":[0,1,6,7],"txt":[0,1],"type":[1,2,3,4],"type_match":0,"type_nam":0,"type_name_map":0,"type_schema":1,"typeerror":0,"typetyp":0,"tz":[0,1,6],"tz_alias":[0,1],"tz_name":0,"tz_name_lookup":0,"tz_offset_pars":0,"tz_pars":0,"tzinfo":[0,1],"tzutc":1,"u":[0,1,6],"u0001f431":0,"u270c":0,"ubuntu":1,"uint":0,"uint32":0,"uint32valu":0,"uint64":0,"uint64_overflow_neg":0,"uint64_overflow_posit":0,"uint64_valu":0,"uint64valu":0,"uinttyp":[0,6,7],"uk":1,"unari":0,"unary_minus_no_overload":0,"unary_neg":0,"unary_not":0,"unchosen":0,"uncomput":6,"undecid":0,"under":1,"underli":6,"underutil":1,"unencrypt":1,"unifi":[0,1],"union":[0,1],"uniqu":[1,7],"unique_s":1,"unit":0,"unless":1,"unlik":0,"unmark":1,"unmodifi":1,"unoptim":1,"unsign":[0,7],"unsupport":0,"untag":1,"until":0,"unusediampolici":1,"unusediamrol":1,"unusedinstanceprofil":1,"unusedlaunchconfig":1,"unusedrdssubnetgroup":1,"unusedsecuritygroup":1,"unusu":1,"unwieldi":1,"up":[0,1,5],"upcom":1,"updat":[0,1],"upgradeavail":1,"upper":0,"uptimefilt":1,"url":1,"us":[0,3,4,5,7],"usag":1,"usediampolici":1,"usediamrol":1,"usedinstanceprofil":1,"usedsecuritygroup":1,"user":3,"user_creation_tim":1,"useraccesskei":1,"userag":1,"usercredentialreport":1,"userdata":1,"userdatafilt":1,"userguid":1,"userident":1,"usermfadevic":1,"usernam":1,"userpolici":1,"userpolicysizequota":1,"usersquota":1,"usual":[0,3],"utc":[0,6],"utcnow":1,"util":1,"uv":5,"v":0,"val":6,"valid":0,"valid_key_typ":0,"validconfigfilt":1,"valu":[0,3,6,7],"valueerror":0,"valuefilt":1,"valuekv":1,"values_from":1,"var":[0,6],"vari":1,"variabl":[0,1,2,3,6,7],"variant":[0,1,6],"variat":1,"varieti":0,"variou":[0,1,6],"vault":1,"veri":[0,1],"verifi":1,"version":[0,1,3,6],"versionsperpolicyquota":1,"via":[0,1,6],"viabl":0,"virtual":5,"visibl":[0,6],"visit":0,"visit_children":0,"visual":6,"vm":1,"vol":1,"volum":1,"volumeid":1,"vpcconfig":1,"vpcendpoint":1,"vpcfilter":1,"vpcid":1,"vpcidfilt":1,"vpclink":1,"vpcsecuritygroupfilt":1,"vpn":1,"w":1,"wa":[0,1,6],"wafen":1,"wai":[0,1,6],"wait":1,"walk":[0,7],"want":[0,1,2,6],"warn":[0,1,3],"watch":1,"we":[0,1,2,6],"web":1,"web_acl":1,"webacl":1,"week":1,"weekdai":1,"weekend":1,"weekli":1,"well":[0,1],"west":1,"what":[0,2,6],"when":[0,1,5,7],"where":[0,1,2,5],"whether":[0,1,6],"which":[0,1,6],"while":[0,1,3],"whitelist":1,"whitelist_condit":1,"whitelist_endpoint":1,"whitelist_endpoints_from":1,"whitelist_from":1,"whitelist_orgid":1,"whitelist_orgids_from":1,"whitelist_protocol":1,"whitelist_protocols_from":1,"whitelist_vpc":1,"whitelist_vpc_from":1,"whitelist_vpce_from":1,"who":1,"whole":[4,6],"whose":1,"why":0,"wide":1,"win":1,"window":[1,6],"wire":1,"with_traceback":0,"withdraw":6,"within":[0,1],"without":[0,1,6],"won":0,"work":[0,1,6],"workabl":1,"worker":1,"workflow":1,"world":[0,6],"would":[0,1,6],"wrap":[0,6,7],"wrapper":0,"wrapperspb":0,"write":6,"write_acp":1,"writen":1,"wrt":1,"www":[0,1],"x":[0,1,2,3],"x_sign":0,"xrayencrypt":1,"xyz":1,"y":[0,1,3],"ye":[1,2],"yeah":0,"yet":7,"yield":[0,1],"you":[1,2,6],"your":1,"yyyi":1,"z":[0,1],"z0":0,"za":[0,1],"zero":0,"zerodivisionerror":0,"zone":[0,1,6],"\u00b5":0},"titles":["CEL-Py API","C7N Functions Required","CLI Use of CEL-Python","Configuration","Pure Python Google Common Expression Language (CEL)","Installation","Application Integration","Data Structures"],"titleterms":{"The":6,"__main__":0,"access":1,"account":1,"adapt":0,"ag":1,"alia":1,"all":1,"allow":1,"ami":1,"anoth":0,"api":0,"applic":6,"argument":0,"attribut":1,"avail":1,"baselin":6,"bind":6,"block":1,"bool":1,"boolean":1,"bucket":1,"builtin":6,"bulk":6,"c7n":[1,6],"cach":1,"capac":1,"cel":[0,2,4,7],"celfilt":1,"celtyp":0,"check":1,"cidr":1,"cli":2,"cloud":6,"cloudtrail":1,"common":[1,4],"complianc":1,"concurr":1,"config":1,"configur":3,"construct":1,"content":[1,4],"context":1,"convers":1,"count":1,"credenti":1,"cross":1,"custodian":6,"custom":6,"data":[1,7],"db":1,"default":1,"defin":6,"definit":1,"delta":1,"design":1,"detail":0,"devic":1,"dhcp":1,"diff":1,"eb":1,"egress":1,"enabl":1,"encrypt":1,"ephemer":1,"error":6,"essenti":6,"evalu":0,"event":1,"exampl":[0,1,6],"except":6,"express":4,"extern":1,"fault":1,"filter":[1,6],"find":1,"flow":1,"from":6,"function":[1,6],"global":[1,6],"go":6,"googl":4,"grant":1,"group":1,"ha":1,"health":1,"healthcheck":1,"i":1,"iam":1,"id":1,"imag":1,"implement":[1,6],"indic":4,"ingress":1,"inlin":1,"instal":5,"instanc":1,"integr":[1,6],"invalid":1,"inventori":1,"kei":1,"km":1,"languag":4,"last":1,"latest":1,"launch":1,"lifecycl":1,"limit":1,"listen":1,"locat":1,"lock":1,"log":1,"manag":1,"mark":1,"method":1,"metric":1,"mfa":1,"mismatch":1,"miss":1,"modify":1,"namespac":0,"network":1,"non":1,"notif":1,"numer":0,"object":1,"offhour":1,"onhour":1,"op":1,"oper":6,"option":1,"origin":1,"param":1,"paramet":1,"parser":0,"password":1,"polici":1,"principl":1,"progag":1,"protect":1,"protocol":1,"provid":0,"public":1,"pure":4,"py":0,"python":[2,4],"queri":1,"readm":6,"requir":1,"reserv":1,"resourc":6,"rest":1,"rotat":1,"rout":1,"rule":1,"run":7,"s3":1,"secur":1,"servic":1,"shadow":1,"shield":1,"simpl":6,"singleton":1,"skip":1,"snapshot":1,"sourc":1,"specif":1,"ssl":1,"ssm":1,"stale":1,"state":1,"statement":1,"statu":1,"string":6,"structur":7,"subnet":1,"summari":1,"synopsi":0,"tabl":4,"tag":1,"target":1,"task":1,"termin":1,"textproto_to_gherkin":[],"time":7,"timzon":0,"todo":[0,6],"toler":1,"tool":[],"type":[0,6,7],"unus":1,"upgrad":1,"uptim":1,"us":[1,2,6],"user":1,"valid":1,"valu":1,"value_from":1,"value_typ":1,"virtual":1,"vpc":1,"waf":1,"write":1,"xrai":1}})
\ No newline at end of file
+Search.setIndex({"alltitles":{"Another Example":[[0,"another-example"]],"Application Integration":[[6,null]],"Arguments, Types, and Namespaces":[[0,"arguments-types-and-namespaces"]],"Baseline C7N Example":[[6,"baseline-c7n-example"]],"Bulk Filter Example":[[6,"bulk-filter-example"]],"C7N Cache":[[1,"c7n-cache"]],"C7N Context Object":[[1,"c7n-context-object"]],"C7N Filter and Resource Types":[[6,"c7n-filter-and-resource-types"]],"C7N Functions Required":[[1,null]],"CEL Types":[[7,"cel-types"]],"CEL-Py API":[[0,null]],"CELFilter Design":[[1,"celfilter-design"]],"CLI Use of CEL-Python":[[2,null]],"Cloud Custodian":[[6,"cloud-custodian"]],"Common C7N Constructs":[[1,"common-c7n-constructs"]],"Common/Boolean Filters":[[1,"common-boolean-filters"]],"Common/Non-Bool Filters":[[1,"common-non-bool-filters"]],"Configuration":[[3,null]],"Contents":[[1,"contents"]],"Contents:":[[4,null]],"Custom function on string type":[[6,"custom-function-on-string-type"]],"Data Structures":[[7,null]],"Define custom global function":[[6,"define-custom-global-function"]],"Design Principles":[[1,"design-principles"]],"Example":[[0,"example"]],"Examples from Go implementation":[[6,"examples-from-go-implementation"]],"Exceptions and Errors":[[6,"exceptions-and-errors"]],"Function Bindings":[[6,"function-bindings"]],"Indices and tables":[[4,"indices-and-tables"]],"Installation":[[5,null]],"Numeric Details":[[0,"numeric-details"]],"Pure Python Google Common Expression Language (CEL)":[[4,null]],"README":[[6,"readme"]],"Run-Time":[[7,"run-time"]],"SYNOPSIS":[[0,"synopsis"]],"Simple example using builtin operators":[[6,"simple-example-using-builtin-operators"]],"Singleton/Boolean Filters":[[1,"singleton-boolean-filters"]],"Singleton/Non-Bool Filters":[[1,"singleton-non-bool-filters"]],"Summary":[[1,"summary"]],"The Essentials":[[6,"the-essentials"]],"Timzone Details":[[0,"timzone-details"]],"Todo":[[0,"id1"],[0,"id2"],[0,"id3"],[0,"id4"],[0,"id5"],[0,"id6"],[0,"id7"],[0,"id8"],[0,"id9"],[0,"id10"],[0,"id11"],[0,"id12"],[0,"id13"],[6,"id1"]],"Type Adapter":[[0,"type-adapter"]],"Type Provider":[[0,"type-provider"]],"Types":[[0,"types"]],"__main__":[[0,"module-celpy.__main__"]],"access-key":[[1,"access-key"]],"age":[[1,"age"]],"bucket-encryption (no examples)":[[1,"bucket-encryption-no-examples"]],"bucket-notification (no examples)":[[1,"bucket-notification-no-examples"]],"capacity-delta":[[1,"capacity-delta"]],"celtypes":[[0,"module-celpy.celtypes"]],"check-cloudtrail":[[1,"check-cloudtrail"]],"check-config":[[1,"check-config"]],"config-compliance (no examples)":[[1,"config-compliance-no-examples"]],"credential":[[1,"credential"]],"cross-account":[[1,"cross-account"]],"data-events (no examples)":[[1,"data-events-no-examples"]],"db-parameter (no examples)":[[1,"db-parameter-no-examples"]],"default-vpc (no examples)":[[1,"default-vpc-no-examples"]],"dhcp-options (no examples)":[[1,"dhcp-options-no-examples"]],"diff (no examples)":[[1,"diff-no-examples"]],"ebs":[[1,"ebs"]],"egress":[[1,"egress"]],"ephemeral (no examples)":[[1,"ephemeral-no-examples"]],"evaluation":[[0,"module-celpy.evaluation"]],"event":[[1,"event"]],"event-source (no examples)":[[1,"event-source-no-examples"]],"fault-tolerant (no examples)":[[1,"fault-tolerant-no-examples"]],"finding (no examples)":[[1,"finding-no-examples"]],"flow-logs":[[1,"flow-logs"]],"global-grants":[[1,"global-grants"]],"grant-count":[[1,"grant-count"]],"group (no examples)":[[1,"group-no-examples"]],"has-allow-all (no examples)":[[1,"has-allow-all-no-examples"]],"has-inline-policy (no examples)":[[1,"has-inline-policy-no-examples"]],"has-specific-managed-policy (no examples)":[[1,"has-specific-managed-policy-no-examples"]],"has-statement":[[1,"has-statement"]],"has-users (no examples)":[[1,"has-users-no-examples"]],"has-virtual-mfa (no examples)":[[1,"has-virtual-mfa-no-examples"]],"health-event":[[1,"health-event"]],"healthcheck-protocol-mismatch (no examples)":[[1,"healthcheck-protocol-mismatch-no-examples"]],"iam-summary (no examples)":[[1,"iam-summary-no-examples"]],"image":[[1,"image"]],"image-age":[[1,"image-age"]],"ingress":[[1,"ingress"]],"instance (no examples)":[[1,"instance-no-examples"]],"instance-age":[[1,"instance-age"]],"instance-attribute (no examples)":[[1,"instance-attribute-no-examples"]],"instance-uptime":[[1,"instance-uptime"]],"invalid":[[1,"invalid"]],"inventory (no examples)":[[1,"inventory-no-examples"]],"is-log-target":[[1,"is-log-target"]],"is-logging":[[1,"is-logging"]],"is-not-logging":[[1,"is-not-logging"]],"is-shadow (no examples)":[[1,"is-shadow-no-examples"]],"is-ssl (no examples)":[[1,"is-ssl-no-examples"]],"key-rotation-status":[[1,"key-rotation-status"]],"kms-alias":[[1,"kms-alias"]],"kms-key":[[1,"kms-key"]],"last-write":[[1,"last-write"]],"latest":[[1,"latest"]],"launch-config":[[1,"launch-config"]],"lifecycle-rule (no examples)":[[1,"lifecycle-rule-no-examples"]],"listener":[[1,"listener"]],"locked (no examples)":[[1,"locked-no-examples"]],"marked-for-op":[[1,"marked-for-op"]],"metrics":[[1,"metrics"]],"mfa-device":[[1,"mfa-device"]],"mismatch-s3-origin":[[1,"mismatch-s3-origin"]],"missing":[[1,"missing"]],"missing-policy-statement":[[1,"missing-policy-statement"]],"missing-route (no examples)":[[1,"missing-route-no-examples"]],"modifyable (no examples)":[[1,"modifyable-no-examples"]],"network-location":[[1,"network-location"]],"no-encryption-statement (no examples)":[[1,"no-encryption-statement-no-examples"]],"no-specific-managed-policy (no examples)":[[1,"no-specific-managed-policy-no-examples"]],"not-encrypted":[[1,"not-encrypted"]],"offhour":[[1,"offhour"]],"onhour":[[1,"onhour"]],"op Implementations":[[1,"op-implementations"]],"param (no examples)":[[1,"param-no-examples"]],"parser":[[0,"module-celpy.celparser"]],"password-policy":[[1,"password-policy"]],"policy":[[1,"policy"]],"progagated-tags (no examples)":[[1,"progagated-tags-no-examples"]],"query-logging-enabled (no examples)":[[1,"query-logging-enabled-no-examples"]],"reserved-concurrency":[[1,"reserved-concurrency"]],"rest-integration (no examples)":[[1,"rest-integration-no-examples"]],"rest-method (no examples)":[[1,"rest-method-no-examples"]],"route (no examples)":[[1,"route-no-examples"]],"s3-cidr (no examples)":[[1,"s3-cidr-no-examples"]],"s3-public-block (no examples)":[[1,"s3-public-block-no-examples"]],"security-group":[[1,"security-group"]],"service-limit":[[1,"service-limit"]],"shield-enabled":[[1,"shield-enabled"]],"shield-metrics (no examples)":[[1,"shield-metrics-no-examples"]],"singleton (no examples)":[[1,"singleton-no-examples"]],"skip-ami-snapshots":[[1,"skip-ami-snapshots"]],"ssl-policy":[[1,"ssl-policy"]],"ssm (no examples)":[[1,"ssm-no-examples"]],"stale (no examples)":[[1,"stale-no-examples"]],"state-age":[[1,"state-age"]],"status (no examples)":[[1,"status-no-examples"]],"subnet":[[1,"subnet"]],"tag-count":[[1,"tag-count"]],"target-group (no examples)":[[1,"target-group-no-examples"]],"task-definition (no examples)":[[1,"task-definition-no-examples"]],"termination-protected (no examples)":[[1,"termination-protected-no-examples"]],"unused":[[1,"unused"]],"upgrade-available (no examples)":[[1,"upgrade-available-no-examples"]],"used":[[1,"used"]],"user-data (no examples)":[[1,"user-data-no-examples"]],"valid":[[1,"valid"]],"value":[[1,"value"]],"value_from External Data":[[1,"value-from-external-data"]],"value_type Conversions":[[1,"value-type-conversions"]],"vpc":[[1,"vpc"]],"vpc-attributes (no examples)":[[1,"vpc-attributes-no-examples"]],"vpc-id":[[1,"vpc-id"]],"waf-enabled":[[1,"waf-enabled"]],"xray-encrypt-key (no examples)":[[1,"xray-encrypt-key-no-examples"]]},"docnames":["api","c7n_functions","cli","configuration","index","installation","integration","structure"],"envversion":{"sphinx":65,"sphinx.domains.c":3,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":9,"sphinx.domains.index":1,"sphinx.domains.javascript":3,"sphinx.domains.math":2,"sphinx.domains.python":4,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.todo":2,"sphinx.ext.viewcode":1},"filenames":["api.rst","c7n_functions.rst","cli.rst","configuration.rst","index.rst","installation.rst","integration.rst","structure.rst"],"indexentries":{"__abstractmethods__ (celpy.evaluation.evaluator attribute)":[[0,"celpy.evaluation.Evaluator.__abstractmethods__",false]],"__add__() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.__add__",false]],"__add__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__add__",false]],"__add__() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.__add__",false]],"__add__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__add__",false]],"__add__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__add__",false]],"__call__() (celpy.celtypes.functiontype method)":[[0,"celpy.celtypes.FunctionType.__call__",false]],"__call__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__call__",false]],"__eq__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__eq__",false]],"__eq__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__eq__",false]],"__eq__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__eq__",false]],"__eq__() (celpy.celtypes.maptype method)":[[0,"celpy.celtypes.MapType.__eq__",false]],"__eq__() (celpy.celtypes.nulltype method)":[[0,"celpy.celtypes.NullType.__eq__",false]],"__eq__() (celpy.celtypes.stringtype method)":[[0,"celpy.celtypes.StringType.__eq__",false]],"__eq__() (celpy.celtypes.typetype method)":[[0,"celpy.celtypes.TypeType.__eq__",false]],"__eq__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__eq__",false]],"__eq__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__eq__",false]],"__floordiv__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__floordiv__",false]],"__floordiv__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__floordiv__",false]],"__floordiv__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__floordiv__",false]],"__ge__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__ge__",false]],"__ge__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__ge__",false]],"__getitem__() (celpy.celtypes.maptype method)":[[0,"celpy.celtypes.MapType.__getitem__",false]],"__gt__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__gt__",false]],"__gt__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__gt__",false]],"__hash__ (celpy.celtypes.listtype attribute)":[[0,"celpy.celtypes.ListType.__hash__",false]],"__hash__ (celpy.celtypes.maptype attribute)":[[0,"celpy.celtypes.MapType.__hash__",false]],"__hash__ (celpy.celtypes.nulltype attribute)":[[0,"celpy.celtypes.NullType.__hash__",false]],"__hash__ (celpy.celtypes.typetype attribute)":[[0,"celpy.celtypes.TypeType.__hash__",false]],"__hash__ (celpy.evaluation.celevalerror attribute)":[[0,"celpy.evaluation.CELEvalError.__hash__",false]],"__hash__() (celpy.celtypes.booltype method)":[[0,"celpy.celtypes.BoolType.__hash__",false]],"__hash__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__hash__",false]],"__hash__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__hash__",false]],"__hash__() (celpy.celtypes.stringtype method)":[[0,"celpy.celtypes.StringType.__hash__",false]],"__hash__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__hash__",false]],"__init__() (celpy.__init__.compiledrunner method)":[[0,"celpy.__init__.CompiledRunner.__init__",false]],"__init__() (celpy.__init__.environment method)":[[0,"celpy.__init__.Environment.__init__",false]],"__init__() (celpy.__init__.runner method)":[[0,"celpy.__init__.Runner.__init__",false]],"__init__() (celpy.celparser.celparseerror method)":[[0,"celpy.celparser.CELParseError.__init__",false]],"__init__() (celpy.celparser.celparser method)":[[0,"celpy.celparser.CELParser.__init__",false]],"__init__() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.__init__",false]],"__init__() (celpy.celtypes.maptype method)":[[0,"celpy.celtypes.MapType.__init__",false]],"__init__() (celpy.celtypes.messagetype method)":[[0,"celpy.celtypes.MessageType.__init__",false]],"__init__() (celpy.celtypes.typetype method)":[[0,"celpy.celtypes.TypeType.__init__",false]],"__init__() (celpy.evaluation.activation method)":[[0,"celpy.evaluation.Activation.__init__",false]],"__init__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__init__",false]],"__init__() (celpy.evaluation.celsyntaxerror method)":[[0,"celpy.evaluation.CELSyntaxError.__init__",false]],"__init__() (celpy.evaluation.celunsupportederror method)":[[0,"celpy.evaluation.CELUnsupportedError.__init__",false]],"__init__() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.__init__",false]],"__init__() (celpy.evaluation.findident method)":[[0,"celpy.evaluation.FindIdent.__init__",false]],"__init__() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.__init__",false]],"__init__() (celpy.evaluation.referent method)":[[0,"celpy.evaluation.Referent.__init__",false]],"__le__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__le__",false]],"__le__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__le__",false]],"__lt__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__lt__",false]],"__lt__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__lt__",false]],"__mod__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__mod__",false]],"__mod__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__mod__",false]],"__mod__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__mod__",false]],"__mod__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__mod__",false]],"__mul__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__mul__",false]],"__mul__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__mul__",false]],"__mul__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__mul__",false]],"__ne__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__ne__",false]],"__ne__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__ne__",false]],"__ne__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__ne__",false]],"__ne__() (celpy.celtypes.maptype method)":[[0,"celpy.celtypes.MapType.__ne__",false]],"__ne__() (celpy.celtypes.nulltype method)":[[0,"celpy.celtypes.NullType.__ne__",false]],"__ne__() (celpy.celtypes.stringtype method)":[[0,"celpy.celtypes.StringType.__ne__",false]],"__ne__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__ne__",false]],"__neg__() (celpy.celtypes.booltype method)":[[0,"celpy.celtypes.BoolType.__neg__",false]],"__neg__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__neg__",false]],"__neg__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__neg__",false]],"__neg__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__neg__",false]],"__neg__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__neg__",false]],"__new__() (celpy.__init__.int32value static method)":[[0,"celpy.__init__.Int32Value.__new__",false]],"__new__() (celpy.celtypes.booltype static method)":[[0,"celpy.celtypes.BoolType.__new__",false]],"__new__() (celpy.celtypes.bytestype static method)":[[0,"celpy.celtypes.BytesType.__new__",false]],"__new__() (celpy.celtypes.doubletype static method)":[[0,"celpy.celtypes.DoubleType.__new__",false]],"__new__() (celpy.celtypes.durationtype static method)":[[0,"celpy.celtypes.DurationType.__new__",false]],"__new__() (celpy.celtypes.inttype static method)":[[0,"celpy.celtypes.IntType.__new__",false]],"__new__() (celpy.celtypes.stringtype static method)":[[0,"celpy.celtypes.StringType.__new__",false]],"__new__() (celpy.celtypes.timestamptype static method)":[[0,"celpy.celtypes.TimestampType.__new__",false]],"__new__() (celpy.celtypes.uinttype static method)":[[0,"celpy.celtypes.UintType.__new__",false]],"__orig_bases__ (celpy.celtypes.listtype attribute)":[[0,"celpy.celtypes.ListType.__orig_bases__",false]],"__orig_bases__ (celpy.celtypes.maptype attribute)":[[0,"celpy.celtypes.MapType.__orig_bases__",false]],"__orig_bases__ (celpy.evaluation.namecontainer attribute)":[[0,"celpy.evaluation.NameContainer.__orig_bases__",false]],"__parameters__ (celpy.celparser.dumpast attribute)":[[0,"celpy.celparser.DumpAST.__parameters__",false]],"__parameters__ (celpy.celtypes.listtype attribute)":[[0,"celpy.celtypes.ListType.__parameters__",false]],"__parameters__ (celpy.celtypes.maptype attribute)":[[0,"celpy.celtypes.MapType.__parameters__",false]],"__parameters__ (celpy.celtypes.messagetype attribute)":[[0,"celpy.celtypes.MessageType.__parameters__",false]],"__parameters__ (celpy.celtypes.packagetype attribute)":[[0,"celpy.celtypes.PackageType.__parameters__",false]],"__parameters__ (celpy.evaluation.evaluator attribute)":[[0,"celpy.evaluation.Evaluator.__parameters__",false]],"__parameters__ (celpy.evaluation.findident attribute)":[[0,"celpy.evaluation.FindIdent.__parameters__",false]],"__parameters__ (celpy.evaluation.namecontainer attribute)":[[0,"celpy.evaluation.NameContainer.__parameters__",false]],"__pow__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__pow__",false]],"__radd__() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.__radd__",false]],"__radd__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__radd__",false]],"__radd__() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.__radd__",false]],"__radd__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__radd__",false]],"__radd__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__radd__",false]],"__repr__() (celpy.celtypes.booltype method)":[[0,"celpy.celtypes.BoolType.__repr__",false]],"__repr__() (celpy.celtypes.bytestype method)":[[0,"celpy.celtypes.BytesType.__repr__",false]],"__repr__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__repr__",false]],"__repr__() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.__repr__",false]],"__repr__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__repr__",false]],"__repr__() (celpy.celtypes.listtype method)":[[0,"celpy.celtypes.ListType.__repr__",false]],"__repr__() (celpy.celtypes.maptype method)":[[0,"celpy.celtypes.MapType.__repr__",false]],"__repr__() (celpy.celtypes.stringtype method)":[[0,"celpy.celtypes.StringType.__repr__",false]],"__repr__() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.__repr__",false]],"__repr__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__repr__",false]],"__repr__() (celpy.evaluation.activation method)":[[0,"celpy.evaluation.Activation.__repr__",false]],"__repr__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__repr__",false]],"__repr__() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.__repr__",false]],"__repr__() (celpy.evaluation.referent method)":[[0,"celpy.evaluation.Referent.__repr__",false]],"__rfloordiv__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__rfloordiv__",false]],"__rfloordiv__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__rfloordiv__",false]],"__rfloordiv__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rfloordiv__",false]],"__rmod__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__rmod__",false]],"__rmod__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__rmod__",false]],"__rmod__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__rmod__",false]],"__rmod__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rmod__",false]],"__rmul__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__rmul__",false]],"__rmul__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__rmul__",false]],"__rmul__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rmul__",false]],"__rpow__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rpow__",false]],"__rsub__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__rsub__",false]],"__rsub__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__rsub__",false]],"__rsub__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rsub__",false]],"__rtruediv__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__rtruediv__",false]],"__rtruediv__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__rtruediv__",false]],"__rtruediv__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__rtruediv__",false]],"__rtruediv__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__rtruediv__",false]],"__str__() (celpy.celtypes.booltype method)":[[0,"celpy.celtypes.BoolType.__str__",false]],"__str__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__str__",false]],"__str__() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.__str__",false]],"__str__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__str__",false]],"__str__() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.__str__",false]],"__str__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__str__",false]],"__sub__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__sub__",false]],"__sub__() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.__sub__",false]],"__sub__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__sub__",false]],"__sub__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__sub__",false]],"__truediv__() (celpy.celtypes.doubletype method)":[[0,"celpy.celtypes.DoubleType.__truediv__",false]],"__truediv__() (celpy.celtypes.inttype method)":[[0,"celpy.celtypes.IntType.__truediv__",false]],"__truediv__() (celpy.celtypes.uinttype method)":[[0,"celpy.celtypes.UintType.__truediv__",false]],"__truediv__() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.__truediv__",false]],"activation (class in celpy.evaluation)":[[0,"celpy.evaluation.Activation",false]],"activation() (celpy.__init__.environment method)":[[0,"celpy.__init__.Environment.activation",false]],"addition() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.addition",false]],"addition() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.addition",false]],"addition_add() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.addition_add",false]],"addition_sub() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.addition_sub",false]],"ambiguous_literals() (celpy.celparser.celparser static method)":[[0,"celpy.celparser.CELParser.ambiguous_literals",false]],"arg_type_value() (in module celpy.__main__)":[[0,"celpy.__main__.arg_type_value",false]],"boolean() (in module celpy.evaluation)":[[0,"celpy.evaluation.boolean",false]],"booltype (class in celpy.celtypes)":[[0,"celpy.celtypes.BoolType",false]],"build_macro_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.build_macro_eval",false]],"build_reduce_macro_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.build_reduce_macro_eval",false]],"build_ss_macro_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.build_ss_macro_eval",false]],"bytestype (class in celpy.celtypes)":[[0,"celpy.celtypes.BytesType",false]],"cel_eval() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.cel_eval",false]],"cel_parser (celpy.celparser.celparser attribute)":[[0,"celpy.celparser.CELParser.CEL_PARSER",false]],"cel_repl (class in celpy.__main__)":[[0,"celpy.__main__.CEL_REPL",false]],"celbytes() (in module celpy.evaluation)":[[0,"celpy.evaluation.celbytes",false]],"celevalerror":[[0,"celpy.evaluation.CELEvalError",false]],"celparseerror":[[0,"celpy.celparser.CELParseError",false]],"celparser (class in celpy.celparser)":[[0,"celpy.celparser.CELParser",false]],"celpy.__init__":[[0,"module-celpy.__init__",false]],"celpy.__main__":[[0,"module-celpy.__main__",false]],"celpy.celparser":[[0,"module-celpy.celparser",false]],"celpy.celtypes":[[0,"module-celpy.celtypes",false]],"celpy.evaluation":[[0,"module-celpy.evaluation",false]],"celstr() (in module celpy.evaluation)":[[0,"celpy.evaluation.celstr",false]],"celsyntaxerror":[[0,"celpy.evaluation.CELSyntaxError",false]],"celunsupportederror":[[0,"celpy.evaluation.CELUnsupportedError",false]],"clone() (celpy.evaluation.activation method)":[[0,"celpy.evaluation.Activation.clone",false]],"clone() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.clone",false]],"clone() (celpy.evaluation.referent method)":[[0,"celpy.evaluation.Referent.clone",false]],"compile() (celpy.__init__.environment method)":[[0,"celpy.__init__.Environment.compile",false]],"compiledrunner (class in celpy.__init__)":[[0,"celpy.__init__.CompiledRunner",false]],"conditionaland() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.conditionaland",false]],"conditionaland() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.conditionaland",false]],"conditionalor() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.conditionalor",false]],"conditionalor() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.conditionalor",false]],"default() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.default",false]],"dict_find_name() (celpy.evaluation.namecontainer static method)":[[0,"celpy.evaluation.NameContainer.dict_find_name",false]],"display() (celpy.celparser.dumpast class method)":[[0,"celpy.celparser.DumpAST.display",false]],"do_bye() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.do_bye",false]],"do_exit() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.do_exit",false]],"do_quit() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.do_quit",false]],"do_set() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.do_set",false]],"do_show() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.do_show",false]],"dot_ident() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.dot_ident",false]],"dot_ident_arg() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.dot_ident_arg",false]],"doubletype (class in celpy.celtypes)":[[0,"celpy.celtypes.DoubleType",false]],"dumpast (class in celpy.celparser)":[[0,"celpy.celparser.DumpAST",false]],"durationtype (class in celpy.celtypes)":[[0,"celpy.celtypes.DurationType",false]],"environment (class in celpy.__init__)":[[0,"celpy.__init__.Environment",false]],"error_text() (celpy.celparser.celparser method)":[[0,"celpy.celparser.CELParser.error_text",false]],"eval_error() (in module celpy.evaluation)":[[0,"celpy.evaluation.eval_error",false]],"evaluate() (celpy.__init__.compiledrunner method)":[[0,"celpy.__init__.CompiledRunner.evaluate",false]],"evaluate() (celpy.__init__.interpretedrunner method)":[[0,"celpy.__init__.InterpretedRunner.evaluate",false]],"evaluate() (celpy.__init__.runner method)":[[0,"celpy.__init__.Runner.evaluate",false]],"evaluate() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.evaluate",false]],"evaluator (class in celpy.evaluation)":[[0,"celpy.evaluation.Evaluator",false]],"expr() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.expr",false]],"expr() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.expr",false]],"exprlist() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.exprlist",false]],"exprlist() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.exprlist",false]],"extended_name_path (celpy.evaluation.namecontainer attribute)":[[0,"celpy.evaluation.NameContainer.extended_name_path",false]],"fieldinits() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.fieldinits",false]],"fieldinits() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.fieldinits",false]],"find_name() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.find_name",false]],"findident (class in celpy.evaluation)":[[0,"celpy.evaluation.FindIdent",false]],"function_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.function_eval",false]],"function_matches() (in module celpy.evaluation)":[[0,"celpy.evaluation.function_matches",false]],"function_size() (in module celpy.evaluation)":[[0,"celpy.evaluation.function_size",false]],"functiontype (class in celpy.celtypes)":[[0,"celpy.celtypes.FunctionType",false]],"get_options() (in module celpy.__main__)":[[0,"celpy.__main__.get_options",false]],"getdate() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getDate",false]],"getdayofmonth() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getDayOfMonth",false]],"getdayofweek() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getDayOfWeek",false]],"getdayofyear() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getDayOfYear",false]],"getfullyear() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getFullYear",false]],"gethours() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.getHours",false]],"gethours() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getHours",false]],"getmilliseconds() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.getMilliseconds",false]],"getmilliseconds() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getMilliseconds",false]],"getminutes() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.getMinutes",false]],"getminutes() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getMinutes",false]],"getmonth() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getMonth",false]],"getseconds() (celpy.celtypes.durationtype method)":[[0,"celpy.celtypes.DurationType.getSeconds",false]],"getseconds() (celpy.celtypes.timestamptype method)":[[0,"celpy.celtypes.TimestampType.getSeconds",false]],"ident() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.ident",false]],"ident() (celpy.evaluation.findident method)":[[0,"celpy.evaluation.FindIdent.ident",false]],"ident_arg() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.ident_arg",false]],"ident_pat (celpy.evaluation.namecontainer attribute)":[[0,"celpy.evaluation.NameContainer.ident_pat",false]],"ident_value() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.ident_value",false]],"in_tree() (celpy.evaluation.findident class method)":[[0,"celpy.evaluation.FindIdent.in_tree",false]],"int32value (class in celpy.__init__)":[[0,"celpy.__init__.Int32Value",false]],"int64() (in module celpy.celtypes)":[[0,"celpy.celtypes.int64",false]],"interpretedrunner (class in celpy.__init__)":[[0,"celpy.__init__.InterpretedRunner",false]],"intro (celpy.__main__.cel_repl attribute)":[[0,"celpy.__main__.CEL_REPL.intro",false]],"inttype (class in celpy.celtypes)":[[0,"celpy.celtypes.IntType",false]],"list_lit() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.list_lit",false]],"listtype (class in celpy.celtypes)":[[0,"celpy.celtypes.ListType",false]],"literal() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.literal",false]],"literal() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.literal",false]],"load_annotations() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.load_annotations",false]],"load_values() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.load_values",false]],"logger (celpy.__main__.cel_repl attribute)":[[0,"celpy.__main__.CEL_REPL.logger",false]],"logger (celpy.evaluation.evaluator attribute)":[[0,"celpy.evaluation.Evaluator.logger",false]],"logger (celpy.evaluation.namecontainer attribute)":[[0,"celpy.evaluation.NameContainer.logger",false]],"logical_and() (in module celpy.celtypes)":[[0,"celpy.celtypes.logical_and",false]],"logical_condition() (in module celpy.celtypes)":[[0,"celpy.celtypes.logical_condition",false]],"logical_not() (in module celpy.celtypes)":[[0,"celpy.celtypes.logical_not",false]],"logical_or() (in module celpy.celtypes)":[[0,"celpy.celtypes.logical_or",false]],"macro_has_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.macro_has_eval",false]],"main() (in module celpy.__main__)":[[0,"celpy.__main__.main",false]],"map_lit() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.map_lit",false]],"mapinits() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.mapinits",false]],"mapinits() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.mapinits",false]],"maptype (class in celpy.celtypes)":[[0,"celpy.celtypes.MapType",false]],"maxseconds (celpy.celtypes.durationtype attribute)":[[0,"celpy.celtypes.DurationType.MaxSeconds",false]],"member() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.member",false]],"member_dot() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.member_dot",false]],"member_dot() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.member_dot",false]],"member_dot_arg() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.member_dot_arg",false]],"member_dot_arg() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.member_dot_arg",false]],"member_index() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.member_index",false]],"member_index() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.member_index",false]],"member_object() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.member_object",false]],"member_object() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.member_object",false]],"messagetype (class in celpy.celtypes)":[[0,"celpy.celtypes.MessageType",false]],"method_eval() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.method_eval",false]],"minseconds (celpy.celtypes.durationtype attribute)":[[0,"celpy.celtypes.DurationType.MinSeconds",false]],"module":[[0,"module-celpy.__init__",false],[0,"module-celpy.__main__",false],[0,"module-celpy.celparser",false],[0,"module-celpy.celtypes",false],[0,"module-celpy.evaluation",false]],"multiplication() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.multiplication",false]],"multiplication() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.multiplication",false]],"multiplication_div() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.multiplication_div",false]],"multiplication_mod() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.multiplication_mod",false]],"multiplication_mul() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.multiplication_mul",false]],"namecontainer (class in celpy.evaluation)":[[0,"celpy.evaluation.NameContainer",false]],"namecontainer.notfound":[[0,"celpy.evaluation.NameContainer.NotFound",false]],"nanosecondspersecond (celpy.celtypes.durationtype attribute)":[[0,"celpy.celtypes.DurationType.NanosecondsPerSecond",false]],"nested_activation() (celpy.evaluation.activation method)":[[0,"celpy.evaluation.Activation.nested_activation",false]],"new_activation() (celpy.__init__.runner method)":[[0,"celpy.__init__.Runner.new_activation",false]],"nulltype (class in celpy.celtypes)":[[0,"celpy.celtypes.NullType",false]],"operator_in() (in module celpy.evaluation)":[[0,"celpy.evaluation.operator_in",false]],"packagetype (class in celpy.celtypes)":[[0,"celpy.celtypes.PackageType",false]],"paren_expr() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.paren_expr",false]],"parent_iter() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.parent_iter",false]],"parse() (celpy.celparser.celparser method)":[[0,"celpy.celparser.CELParser.parse",false]],"preloop() (celpy.__main__.cel_repl method)":[[0,"celpy.__main__.CEL_REPL.preloop",false]],"primary() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.primary",false]],"process_json_doc() (in module celpy.__main__)":[[0,"celpy.__main__.process_json_doc",false]],"program() (celpy.__init__.environment method)":[[0,"celpy.__init__.Environment.program",false]],"prompt (celpy.__main__.cel_repl attribute)":[[0,"celpy.__main__.CEL_REPL.prompt",false]],"referent (class in celpy.evaluation)":[[0,"celpy.evaluation.Referent",false]],"relation() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation",false]],"relation() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.relation",false]],"relation_eq() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_eq",false]],"relation_ge() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_ge",false]],"relation_gt() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_gt",false]],"relation_in() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_in",false]],"relation_le() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_le",false]],"relation_lt() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_lt",false]],"relation_ne() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.relation_ne",false]],"resolve_name() (celpy.evaluation.namecontainer method)":[[0,"celpy.evaluation.NameContainer.resolve_name",false]],"resolve_variable() (celpy.evaluation.activation method)":[[0,"celpy.evaluation.Activation.resolve_variable",false]],"runner (class in celpy.__init__)":[[0,"celpy.__init__.Runner",false]],"scale (celpy.celtypes.durationtype attribute)":[[0,"celpy.celtypes.DurationType.scale",false]],"set_activation() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.set_activation",false]],"stringtype (class in celpy.celtypes)":[[0,"celpy.celtypes.StringType",false]],"sub_evaluator() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.sub_evaluator",false]],"timestamptype (class in celpy.celtypes)":[[0,"celpy.celtypes.TimestampType",false]],"trace() (in module celpy.evaluation)":[[0,"celpy.evaluation.trace",false]],"tree_dump() (in module celpy.celparser)":[[0,"celpy.celparser.tree_dump",false]],"type_matched() (in module celpy.celtypes)":[[0,"celpy.celtypes.type_matched",false]],"type_name_mapping (celpy.celtypes.typetype attribute)":[[0,"celpy.celtypes.TypeType.type_name_mapping",false]],"typetype (class in celpy.celtypes)":[[0,"celpy.celtypes.TypeType",false]],"tz_aliases (celpy.celtypes.timestamptype attribute)":[[0,"celpy.celtypes.TimestampType.TZ_ALIASES",false]],"tz_name_lookup() (celpy.celtypes.timestamptype class method)":[[0,"celpy.celtypes.TimestampType.tz_name_lookup",false]],"tz_offset_parse() (celpy.celtypes.timestamptype class method)":[[0,"celpy.celtypes.TimestampType.tz_offset_parse",false]],"tz_parse() (celpy.celtypes.timestamptype static method)":[[0,"celpy.celtypes.TimestampType.tz_parse",false]],"uint64() (in module celpy.celtypes)":[[0,"celpy.celtypes.uint64",false]],"uinttype (class in celpy.celtypes)":[[0,"celpy.celtypes.UintType",false]],"unary() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.unary",false]],"unary() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.unary",false]],"unary_neg() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.unary_neg",false]],"unary_not() (celpy.celparser.dumpast method)":[[0,"celpy.celparser.DumpAST.unary_not",false]],"valid_key_type() (celpy.celtypes.maptype static method)":[[0,"celpy.celtypes.MapType.valid_key_type",false]],"value (celpy.evaluation.referent property)":[[0,"celpy.evaluation.Referent.value",false]],"visit_children() (celpy.evaluation.evaluator method)":[[0,"celpy.evaluation.Evaluator.visit_children",false]],"with_traceback() (celpy.evaluation.celevalerror method)":[[0,"celpy.evaluation.CELEvalError.with_traceback",false]]},"objects":{"celpy":[[0,0,0,"-","__init__"],[0,0,0,"-","__main__"],[0,0,0,"-","celparser"],[0,0,0,"-","celtypes"],[0,0,0,"-","evaluation"]],"celpy.__init__":[[0,1,1,"","CompiledRunner"],[0,1,1,"","Environment"],[0,1,1,"","Int32Value"],[0,1,1,"","InterpretedRunner"],[0,1,1,"","Runner"]],"celpy.__init__.CompiledRunner":[[0,2,1,"","__init__"],[0,2,1,"","evaluate"]],"celpy.__init__.Environment":[[0,2,1,"","__init__"],[0,2,1,"","activation"],[0,2,1,"","compile"],[0,2,1,"","program"]],"celpy.__init__.Int32Value":[[0,2,1,"","__new__"]],"celpy.__init__.InterpretedRunner":[[0,2,1,"","evaluate"]],"celpy.__init__.Runner":[[0,2,1,"","__init__"],[0,2,1,"","evaluate"],[0,2,1,"","new_activation"]],"celpy.__main__":[[0,1,1,"","CEL_REPL"],[0,4,1,"","arg_type_value"],[0,4,1,"","get_options"],[0,4,1,"","main"],[0,4,1,"","process_json_doc"]],"celpy.__main__.CEL_REPL":[[0,2,1,"","cel_eval"],[0,2,1,"","default"],[0,2,1,"","do_bye"],[0,2,1,"","do_exit"],[0,2,1,"","do_quit"],[0,2,1,"","do_set"],[0,2,1,"","do_show"],[0,3,1,"","intro"],[0,3,1,"","logger"],[0,2,1,"","preloop"],[0,3,1,"","prompt"]],"celpy.celparser":[[0,5,1,"","CELParseError"],[0,1,1,"","CELParser"],[0,1,1,"","DumpAST"],[0,4,1,"","tree_dump"]],"celpy.celparser.CELParseError":[[0,2,1,"","__init__"]],"celpy.celparser.CELParser":[[0,3,1,"","CEL_PARSER"],[0,2,1,"","__init__"],[0,2,1,"","ambiguous_literals"],[0,2,1,"","error_text"],[0,2,1,"","parse"]],"celpy.celparser.DumpAST":[[0,2,1,"","__init__"],[0,3,1,"","__parameters__"],[0,2,1,"","addition"],[0,2,1,"","addition_add"],[0,2,1,"","addition_sub"],[0,2,1,"","conditionaland"],[0,2,1,"","conditionalor"],[0,2,1,"","display"],[0,2,1,"","dot_ident"],[0,2,1,"","dot_ident_arg"],[0,2,1,"","expr"],[0,2,1,"","exprlist"],[0,2,1,"","fieldinits"],[0,2,1,"","ident"],[0,2,1,"","ident_arg"],[0,2,1,"","list_lit"],[0,2,1,"","literal"],[0,2,1,"","map_lit"],[0,2,1,"","mapinits"],[0,2,1,"","member_dot"],[0,2,1,"","member_dot_arg"],[0,2,1,"","member_index"],[0,2,1,"","member_object"],[0,2,1,"","multiplication"],[0,2,1,"","multiplication_div"],[0,2,1,"","multiplication_mod"],[0,2,1,"","multiplication_mul"],[0,2,1,"","paren_expr"],[0,2,1,"","relation"],[0,2,1,"","relation_eq"],[0,2,1,"","relation_ge"],[0,2,1,"","relation_gt"],[0,2,1,"","relation_in"],[0,2,1,"","relation_le"],[0,2,1,"","relation_lt"],[0,2,1,"","relation_ne"],[0,2,1,"","unary"],[0,2,1,"","unary_neg"],[0,2,1,"","unary_not"]],"celpy.celtypes":[[0,1,1,"","BoolType"],[0,1,1,"","BytesType"],[0,1,1,"","DoubleType"],[0,1,1,"","DurationType"],[0,1,1,"","FunctionType"],[0,1,1,"","IntType"],[0,1,1,"","ListType"],[0,1,1,"","MapType"],[0,1,1,"","MessageType"],[0,1,1,"","NullType"],[0,1,1,"","PackageType"],[0,1,1,"","StringType"],[0,1,1,"","TimestampType"],[0,1,1,"","TypeType"],[0,1,1,"","UintType"],[0,4,1,"","int64"],[0,4,1,"","logical_and"],[0,4,1,"","logical_condition"],[0,4,1,"","logical_not"],[0,4,1,"","logical_or"],[0,4,1,"","type_matched"],[0,4,1,"","uint64"]],"celpy.celtypes.BoolType":[[0,2,1,"","__hash__"],[0,2,1,"","__neg__"],[0,2,1,"","__new__"],[0,2,1,"","__repr__"],[0,2,1,"","__str__"]],"celpy.celtypes.BytesType":[[0,2,1,"","__new__"],[0,2,1,"","__repr__"]],"celpy.celtypes.DoubleType":[[0,2,1,"","__eq__"],[0,2,1,"","__hash__"],[0,2,1,"","__mod__"],[0,2,1,"","__ne__"],[0,2,1,"","__neg__"],[0,2,1,"","__new__"],[0,2,1,"","__repr__"],[0,2,1,"","__rmod__"],[0,2,1,"","__rtruediv__"],[0,2,1,"","__str__"],[0,2,1,"","__truediv__"]],"celpy.celtypes.DurationType":[[0,3,1,"","MaxSeconds"],[0,3,1,"","MinSeconds"],[0,3,1,"","NanosecondsPerSecond"],[0,2,1,"","__add__"],[0,2,1,"","__new__"],[0,2,1,"","__radd__"],[0,2,1,"","__repr__"],[0,2,1,"","__str__"],[0,2,1,"","getHours"],[0,2,1,"","getMilliseconds"],[0,2,1,"","getMinutes"],[0,2,1,"","getSeconds"],[0,3,1,"","scale"]],"celpy.celtypes.FunctionType":[[0,2,1,"","__call__"]],"celpy.celtypes.IntType":[[0,2,1,"","__add__"],[0,2,1,"","__eq__"],[0,2,1,"","__floordiv__"],[0,2,1,"","__ge__"],[0,2,1,"","__gt__"],[0,2,1,"","__hash__"],[0,2,1,"","__le__"],[0,2,1,"","__lt__"],[0,2,1,"","__mod__"],[0,2,1,"","__mul__"],[0,2,1,"","__ne__"],[0,2,1,"","__neg__"],[0,2,1,"","__new__"],[0,2,1,"","__radd__"],[0,2,1,"","__repr__"],[0,2,1,"","__rfloordiv__"],[0,2,1,"","__rmod__"],[0,2,1,"","__rmul__"],[0,2,1,"","__rsub__"],[0,2,1,"","__rtruediv__"],[0,2,1,"","__str__"],[0,2,1,"","__sub__"],[0,2,1,"","__truediv__"]],"celpy.celtypes.ListType":[[0,2,1,"","__eq__"],[0,2,1,"","__ge__"],[0,2,1,"","__gt__"],[0,3,1,"","__hash__"],[0,2,1,"","__le__"],[0,2,1,"","__lt__"],[0,2,1,"","__ne__"],[0,3,1,"","__orig_bases__"],[0,3,1,"","__parameters__"],[0,2,1,"","__repr__"]],"celpy.celtypes.MapType":[[0,2,1,"","__eq__"],[0,2,1,"","__getitem__"],[0,3,1,"","__hash__"],[0,2,1,"","__init__"],[0,2,1,"","__ne__"],[0,3,1,"","__orig_bases__"],[0,3,1,"","__parameters__"],[0,2,1,"","__repr__"],[0,2,1,"","valid_key_type"]],"celpy.celtypes.MessageType":[[0,2,1,"","__init__"],[0,3,1,"","__parameters__"]],"celpy.celtypes.NullType":[[0,2,1,"","__eq__"],[0,3,1,"","__hash__"],[0,2,1,"","__ne__"]],"celpy.celtypes.PackageType":[[0,3,1,"","__parameters__"]],"celpy.celtypes.StringType":[[0,2,1,"","__eq__"],[0,2,1,"","__hash__"],[0,2,1,"","__ne__"],[0,2,1,"","__new__"],[0,2,1,"","__repr__"]],"celpy.celtypes.TimestampType":[[0,3,1,"","TZ_ALIASES"],[0,2,1,"","__add__"],[0,2,1,"","__new__"],[0,2,1,"","__radd__"],[0,2,1,"","__repr__"],[0,2,1,"","__str__"],[0,2,1,"","__sub__"],[0,2,1,"","getDate"],[0,2,1,"","getDayOfMonth"],[0,2,1,"","getDayOfWeek"],[0,2,1,"","getDayOfYear"],[0,2,1,"","getFullYear"],[0,2,1,"","getHours"],[0,2,1,"","getMilliseconds"],[0,2,1,"","getMinutes"],[0,2,1,"","getMonth"],[0,2,1,"","getSeconds"],[0,2,1,"","tz_name_lookup"],[0,2,1,"","tz_offset_parse"],[0,2,1,"","tz_parse"]],"celpy.celtypes.TypeType":[[0,2,1,"","__eq__"],[0,3,1,"","__hash__"],[0,2,1,"","__init__"],[0,3,1,"","type_name_mapping"]],"celpy.celtypes.UintType":[[0,2,1,"","__add__"],[0,2,1,"","__eq__"],[0,2,1,"","__floordiv__"],[0,2,1,"","__hash__"],[0,2,1,"","__mod__"],[0,2,1,"","__mul__"],[0,2,1,"","__ne__"],[0,2,1,"","__neg__"],[0,2,1,"","__new__"],[0,2,1,"","__radd__"],[0,2,1,"","__repr__"],[0,2,1,"","__rfloordiv__"],[0,2,1,"","__rmod__"],[0,2,1,"","__rmul__"],[0,2,1,"","__rsub__"],[0,2,1,"","__rtruediv__"],[0,2,1,"","__str__"],[0,2,1,"","__sub__"],[0,2,1,"","__truediv__"]],"celpy.evaluation":[[0,1,1,"","Activation"],[0,5,1,"","CELEvalError"],[0,5,1,"","CELSyntaxError"],[0,5,1,"","CELUnsupportedError"],[0,1,1,"","Evaluator"],[0,1,1,"","FindIdent"],[0,1,1,"","NameContainer"],[0,1,1,"","Referent"],[0,4,1,"","boolean"],[0,4,1,"","celbytes"],[0,4,1,"","celstr"],[0,4,1,"","eval_error"],[0,4,1,"","function_matches"],[0,4,1,"","function_size"],[0,4,1,"","operator_in"],[0,4,1,"","trace"]],"celpy.evaluation.Activation":[[0,2,1,"","__init__"],[0,2,1,"","__repr__"],[0,2,1,"","clone"],[0,2,1,"","nested_activation"],[0,2,1,"","resolve_variable"]],"celpy.evaluation.CELEvalError":[[0,2,1,"","__add__"],[0,2,1,"","__call__"],[0,2,1,"","__eq__"],[0,2,1,"","__floordiv__"],[0,3,1,"","__hash__"],[0,2,1,"","__init__"],[0,2,1,"","__mod__"],[0,2,1,"","__mul__"],[0,2,1,"","__neg__"],[0,2,1,"","__pow__"],[0,2,1,"","__radd__"],[0,2,1,"","__repr__"],[0,2,1,"","__rfloordiv__"],[0,2,1,"","__rmod__"],[0,2,1,"","__rmul__"],[0,2,1,"","__rpow__"],[0,2,1,"","__rsub__"],[0,2,1,"","__rtruediv__"],[0,2,1,"","__sub__"],[0,2,1,"","__truediv__"],[0,2,1,"","with_traceback"]],"celpy.evaluation.CELSyntaxError":[[0,2,1,"","__init__"]],"celpy.evaluation.CELUnsupportedError":[[0,2,1,"","__init__"]],"celpy.evaluation.Evaluator":[[0,3,1,"","__abstractmethods__"],[0,2,1,"","__init__"],[0,3,1,"","__parameters__"],[0,2,1,"","addition"],[0,2,1,"","build_macro_eval"],[0,2,1,"","build_reduce_macro_eval"],[0,2,1,"","build_ss_macro_eval"],[0,2,1,"","conditionaland"],[0,2,1,"","conditionalor"],[0,2,1,"","evaluate"],[0,2,1,"","expr"],[0,2,1,"","exprlist"],[0,2,1,"","fieldinits"],[0,2,1,"","function_eval"],[0,2,1,"","ident_value"],[0,2,1,"","literal"],[0,3,1,"","logger"],[0,2,1,"","macro_has_eval"],[0,2,1,"","mapinits"],[0,2,1,"","member"],[0,2,1,"","member_dot"],[0,2,1,"","member_dot_arg"],[0,2,1,"","member_index"],[0,2,1,"","member_object"],[0,2,1,"","method_eval"],[0,2,1,"","multiplication"],[0,2,1,"","primary"],[0,2,1,"","relation"],[0,2,1,"","set_activation"],[0,2,1,"","sub_evaluator"],[0,2,1,"","unary"],[0,2,1,"","visit_children"]],"celpy.evaluation.FindIdent":[[0,2,1,"","__init__"],[0,3,1,"","__parameters__"],[0,2,1,"","ident"],[0,2,1,"","in_tree"]],"celpy.evaluation.NameContainer":[[0,5,1,"","NotFound"],[0,2,1,"","__init__"],[0,3,1,"","__orig_bases__"],[0,3,1,"","__parameters__"],[0,2,1,"","__repr__"],[0,2,1,"","clone"],[0,2,1,"","dict_find_name"],[0,3,1,"","extended_name_path"],[0,2,1,"","find_name"],[0,3,1,"","ident_pat"],[0,2,1,"","load_annotations"],[0,2,1,"","load_values"],[0,3,1,"","logger"],[0,2,1,"","parent_iter"],[0,2,1,"","resolve_name"]],"celpy.evaluation.Referent":[[0,2,1,"","__init__"],[0,2,1,"","__repr__"],[0,2,1,"","clone"],[0,6,1,"","value"]]},"objnames":{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","attribute","Python attribute"],"4":["py","function","Python function"],"5":["py","exception","Python exception"],"6":["py","property","Python property"]},"objtypes":{"0":"py:module","1":"py:class","2":"py:method","3":"py:attribute","4":"py:function","5":"py:exception","6":"py:property"},"terms":{"":[0,1,2,3,6],"0":[0,1,2,6],"00":6,"001":0,"002":1,"01":1,"011":1,"01ab23cd":1,"02":[0,1],"03":1,"03t16":6,"03z":6,"04":[1,6],"05":1,"06":0,"06t05":6,"07":[1,6],"08":[1,6],"084":1,"09":0,"1":[0,1,2,3,6],"10":[0,1],"100":[1,2],"1000":1,"10000":1,"1000000000":0,"1004":1,"101":1,"1021":1,"1023":1,"10240":1,"1026":1,"103":1,"1034":1,"104":1,"1041":1,"1045":1,"105":1,"1057":1,"106":1,"1066":1,"108":1,"1080":1,"10am":1,"11":1,"111":1,"1124":1,"113":[0,2],"1144":1,"115":1,"116":1,"117":1,"1178":1,"1180":1,"1191":1,"12":1,"121":1,"1211":1,"122":1,"123":[0,1,6],"1232":1,"1234567890":0,"123u":0,"125":1,"127":[0,1],"128":1,"1295":1,"12ab34cd":1,"13":[2,5],"131":1,"132":1,"1333":1,"134":1,"136":1,"138":0,"13t23":0,"14":1,"140":6,"1410":1,"14159":0,"1415929203539825":2,"1437":1,"145":1,"147":1,"1474":1,"149":0,"1493":1,"15":[1,6],"1505":1,"1513":1,"154":1,"1584":1,"16":1,"161":1,"1613":1,"162":1,"167":1,"1686":1,"17":1,"1704":1,"171":1,"1728":1,"173":1,"1779":1,"178":1,"1787":1,"179":1,"1793":1,"1799":1,"18":1,"182":1,"183":1,"184":1,"18446744073709551615":0,"185":1,"189":1,"19":1,"190":1,"194":1,"1954":1,"196":1,"197":1,"198":1,"1e":0,"1st":[1,6],"1u":0,"2":[0,1,6],"20":1,"2009":0,"2012":1,"2016":1,"2017":1,"2018":6,"2019":1,"2020":1,"2021":1,"203":1,"2048":1,"205":1,"206":1,"21":[1,6],"212":1,"21d":1,"22":1,"223":1,"2242":1,"228":1,"2292":1,"23":[1,6],"232":1,"237":1,"238":1,"24":1,"24h":6,"24x5":1,"25":1,"250":1,"2500000":1,"257":1,"26":1,"262":1,"268":1,"27":[1,6],"273":1,"277":[0,1],"2788":1,"28":1,"285":0,"29":1,"293":1,"299":1,"2h45m":0,"2nd":6,"3":[0,1,2,5],"30":[0,1],"300m":0,"301":1,"305":1,"30z":0,"31":[0,2],"313":1,"314":1,"315576000000":0,"317":1,"318":1,"32":1,"325":1,"329":1,"34":1,"341":1,"345":1,"348":1,"35":1,"355":[0,2],"35dai":1,"36":1,"3600":0,"364":1,"37":1,"372":1,"373":1,"390":1,"3a":1,"4":[0,1],"40":[1,6],"400":1,"402":1,"408":1,"409":1,"41":1,"412":1,"413":1,"42":[0,1,2,3],"424":1,"429":1,"42u":0,"43":1,"431":1,"432u":0,"436":1,"438":1,"443":1,"448":1,"45":1,"453":1,"455":1,"456":0,"47":[1,6],"48":1,"485":1,"490":1,"493":1,"5":[0,1],"50":1,"500":6,"5000":1,"505":1,"5103":1,"512":1,"5120":1,"514":1,"516":1,"52":1,"54":1,"548":1,"549":1,"55":1,"556":1,"562":1,"563":1,"567":1,"569":1,"57":1,"575":1,"5759":6,"58":1,"592":1,"597":1,"5h":0,"6":[0,1,3],"60":[0,1],"600":6,"604":1,"608":1,"610":1,"612000":1,"615":1,"619":1,"622":1,"628":1,"63":0,"64":[1,6,7],"643":1,"644":1,"65":1,"656":1,"659":1,"66":1,"662":1,"666":1,"667":1,"676":1,"69":1,"692":1,"6am":1,"6hr":1,"6pm":1,"7":[1,3],"711":1,"720":1,"729":1,"739":1,"74":1,"744":1,"748":1,"758":1,"767":1,"78":1,"786":1,"791":1,"7am":1,"7pm":1,"8":[1,6],"80":1,"806":1,"8098":1,"81":1,"812":1,"826":1,"829":1,"830985915492956":2,"842":1,"845":1,"86":1,"86400":[0,1],"87":1,"88":1,"8x5":1,"9":[0,1],"90":1,"92":1,"9223372036854775807":0,"9223372036854775808":0,"93":1,"932":1,"934":1,"94":1,"97":1,"98":1,"987":1,"988":1,"99":1,"9pm":1,"A":[0,1,6,7],"AND":0,"And":[0,2],"As":6,"At":0,"But":0,"By":0,"For":[0,1,2,5,6],"If":[0,1,3,6],"In":[0,1,3,5,6],"It":[0,1,2,6,7],"NOT":[0,1],"No":[0,1,6],"Not":[0,1],"Of":1,"On":[1,6],"One":[0,1],"Or":0,"That":0,"The":[0,1,2,3,4,5,7],"Then":[1,6,7],"There":[0,1,2,4,6,7],"These":[0,1,6],"To":[0,3,6],"With":[0,1],"_":[0,6],"__abstractmethods__":0,"__add__":0,"__call__":[0,6],"__eq__":0,"__floordiv__":0,"__ge__":0,"__getitem__":0,"__gt__":0,"__hash__":0,"__init__":[0,1,6],"__isinstance__":0,"__le__":0,"__lt__":0,"__main__":4,"__mod__":0,"__mul__":0,"__ne__":0,"__neg__":0,"__new__":0,"__orig_bases__":0,"__parameters__":0,"__pow__":0,"__radd__":0,"__repr__":0,"__rfloordiv__":0,"__rmod__":0,"__rmul__":0,"__rpow__":0,"__rsub__":0,"__rtruediv__":0,"__str__":0,"__sub__":0,"__traceback__":0,"__truediv__":0,"_a":0,"_pull_ami_snapshot":1,"_pull_asg_imag":1,"_pull_asg_snapshot":1,"_pull_ec2_imag":1,"ab":0,"abandond":1,"abc":1,"abil":2,"abl":[0,1],"about":[1,4,6],"abov":[0,1,6],"absenc":1,"absent":1,"absolut":0,"abstract":0,"accept":[0,1],"access":0,"access_kei":1,"accesskeysperuserquota":1,"accesslog":1,"account":6,"account_id":1,"account_shield_subscript":1,"accountaccesskeyspres":1,"accountcredentialreport":1,"accountmfaen":1,"accountnumb":1,"accountpasswordpolici":1,"accounts_url":1,"accountsigningcertificatespres":1,"achiev":0,"acl":1,"aclawss3cidr":1,"aclsubnetfilt":1,"acm":[1,6],"acquir":1,"across":[1,4],"act":1,"action":[1,6],"action_d":1,"activ":[0,1,6,7],"actual":0,"ad":[0,1],"adapt":[6,7],"add":[0,1,5,7],"addit":[0,1,6,7],"addition":[0,1,7],"addition_add":0,"addition_sub":0,"additionalproperti":1,"addr":1,"address":1,"adher":1,"admin":1,"administratoraccess":1,"advanc":1,"advantag":2,"advisor":1,"aes128":1,"aes256":1,"after":[0,1],"ag":6,"again":0,"against":1,"agefilt":1,"agre":0,"alarm":1,"alb":1,"alblog":1,"alert":1,"alia":0,"alias":[0,1],"aliasnam":1,"all":[0,6],"all_dbsubenet_group":1,"all_imag":1,"all_instance_profil":1,"all_launch_configuration_nam":1,"all_scan_group":1,"all_service_rol":1,"all_snapshot":1,"all_valu":1,"alloc":1,"allocatedstorag":1,"allow":[0,6],"allow_websit":1,"allowalliampolici":1,"alon":1,"along":[0,1],"alreadi":6,"also":[0,1,2,6,7],"altern":[0,1,6],"alwai":[0,1],"amazon":1,"amazonaw":1,"amazons3":1,"ambigu":0,"ambiguous_liter":0,"america":1,"amicrossaccountfilt":1,"among":1,"an":[0,1,6,7],"analysi":1,"analyt":1,"ancient":1,"ani":[0,1,6],"annot":[0,1,6],"anoth":[1,4],"anyof":1,"ap":1,"api":[1,4],"apigw":1,"apikeyrequir":1,"app":[1,7],"appear":[0,1,6],"appelb":1,"appelbdefaultvpcfilt":1,"appelbhealthcheckprotocolmismatchfilt":1,"appelblistenerfilt":1,"appelbmetr":1,"appelbtargetgroup":1,"appelbtargetgroupdefaultvpcfilt":1,"appelbtargetgroupfilt":1,"append":0,"appid":1,"appli":[0,1,6],"applic":[0,1,3,4],"applicationnam":1,"approach":[0,6],"approxim":0,"ar":[0,1,3,4,6,7],"architectur":5,"aren":[0,1],"arg":[0,3,6],"arg_name_arg":6,"arg_type_valu":0,"argtyp":6,"argument":[3,6],"argv":0,"arithmetic_oper":0,"aritmet":2,"arm64":5,"arn":1,"arn_split":1,"around":1,"arrai":[0,1],"arriv":[1,6],"asg":1,"assert":[1,6],"assign":[0,1],"assoc":1,"associ":[0,1],"associatepublicipaddress":1,"assum":[0,1],"assumerolepolicysizequota":1,"assumpt":1,"assur":0,"ast":[0,6,7],"ast2":0,"asv":1,"asvredact":1,"atm":1,"atom":6,"atot":2,"attach":[0,1],"attachedinstancefilt":1,"attachedpoliciespergroupquota":1,"attachedpoliciesperrolequota":1,"attachedpoliciesperuserquota":1,"attachedvolum":1,"attachmentcount":1,"attack":1,"attempt":[0,1],"attr":1,"attribit":1,"attribut":[0,6],"attributesfilt":1,"audit":1,"augment":1,"aurora":1,"auth":6,"author":6,"auto":1,"automat":1,"autosc":1,"autoscal":1,"avail":[0,3,6],"aval":1,"averag":1,"avoid":1,"aw":1,"aws_ebs_degraded_ebs_volume_perform":1,"aws_ebs_volume_lost":1,"awsec2":1,"awslambda":1,"ax":2,"az1":1,"azr":1,"azur":1,"b":[0,2,6],"ba":1,"back":[0,1],"backoff":1,"backup":1,"bad1":6,"bad2":6,"balanc":[1,6],"base":[0,1,4,6],"base_funct":0,"baseexcept":0,"baselin":1,"basi":1,"basic":1,"batch":1,"baz":0,"bc":0,"becaus":[0,1,6],"becom":[0,1],"been":[0,1,7],"befor":[0,1],"behav":0,"behavior":[0,1],"being":1,"below":0,"better":[0,1],"between":[0,1],"beyond":0,"big":6,"binari":[0,6],"bind":[0,3,4,7],"bit":[1,2,7],"blacklist":1,"blob":[0,1,6],"blockdevicemap":1,"bool":[0,4,6],"bool_valu":0,"boolean":[0,4,6],"boolean_to_statu":0,"booleangroupfilt":6,"booltyp":[0,6,7],"boolvalu":0,"both":[0,1],"boto3":1,"bottl":0,"bottom":0,"bound":0,"bracket":1,"breakdown":6,"bring":1,"broken":1,"broker":1,"bucketencrypt":1,"bucketnotificationfilt":1,"buffer":0,"build":[0,1,6,7],"build_macro_ev":0,"build_reduce_macro_ev":0,"build_ss_macro_ev":0,"buildsecuritygroupfilt":1,"buildsubnetfilt":1,"buildvpcfilt":1,"built":[0,1,2,6,7],"bulki":1,"bunch":1,"byol":1,"byt":0,"byte":[0,7],"bytes_valu":0,"bytestyp":[0,7],"bytesvalu":0,"c":[0,2,6],"c7n":[0,4],"c7n_interpreted_runn":1,"c7n_s3_policy_requir":1,"c7ncontext":1,"c7nlib":1,"cach":4,"calcul":2,"call":[0,1],"callabl":0,"can":[0,1,2,3,4,5,6,7],"cannot":[0,1],"capabl":1,"capacitydelta":1,"capitalon":1,"capon":1,"captur":0,"cardda_tagcompli":1,"cardin":1,"case":[0,1,5,6],"categori":[1,6],"caught":0,"causesresourc":1,"cbhfqv":1,"cbr":1,"cde":1,"cel":[1,5,6],"cel_activ":1,"cel_ast":1,"cel_env":1,"cel_ev":0,"cel_funct":6,"cel_pars":0,"cel_program":6,"cel_repl":0,"cel_sourc":6,"cel_test":6,"cel_trac":[0,3],"celbyt":0,"celevalerror":0,"celfilt":[4,6],"celfunct":0,"celpars":0,"celparseerror":0,"celpi":[0,1,2,3,6,7],"celstr":0,"celsyntaxerror":0,"celtyp":[1,4,6,7],"celunsupportederror":0,"central":[0,6],"cert":1,"certain":[1,6],"certif":1,"cet":0,"cf":1,"cfn":1,"chain":[0,7],"chainmap":[0,7],"chang":1,"char":6,"check":[0,6],"check_custom_origin":1,"checker":6,"child":0,"childnr":0,"children":0,"choci":0,"choic":6,"choos":0,"chunk":1,"ci":1,"cidr_siz":1,"cidrblock":1,"cipher":1,"circuit":[0,6],"cl":0,"claim":6,"class":[0,1,3,6],"classic":1,"classmethod":0,"claus":[1,6],"clean":1,"clear":[1,6],"cli":[0,3,4],"client":[0,1,7],"clock":1,"clone":0,"close":[0,1,6],"cloud":[1,4],"cloudform":1,"cloudfront":1,"cloudhsm":1,"cloudsearch":1,"cloudtrailen":1,"cloudwatch":1,"cluster":1,"cm":1,"cm6aws11":1,"cmdbenviron":1,"cmdloop":0,"cml":1,"co":6,"code":[0,1,6],"codebuild":1,"codebuildproject":1,"codecommit":1,"codepipelin":1,"coercion":[0,6],"collect":1,"collis":1,"color":1,"column":[0,1],"com":[0,1,6],"combin":[0,1,6],"come":[0,1,6],"command":[0,2,3,5,7],"comment":1,"common":[0,2,6],"commun":1,"commut":0,"compar":1,"comparablevers":1,"comparison":[0,1,6],"compat":0,"compil":[0,1,5,6,7],"compiledrunn":[0,4,7],"complement":1,"complet":6,"completekei":0,"complex":[0,1,4,6],"compli":1,"compliant":[1,6],"complic":6,"compon":[0,1],"compons":6,"compos":1,"composit":1,"comput":[1,6],"computeenviron":1,"computesgfilt":1,"computesubnetfilt":1,"conceal":1,"concept":0,"concern":[0,2,6],"concret":0,"condit":[0,1],"conditionaland":0,"conditionalor":0,"configen":1,"configrul":1,"configur":[1,4,5],"confus":6,"connect":1,"connectionsecuritygroupfilt":1,"connectionsubnetfilt":1,"consid":[0,1,7],"consider":1,"consist":0,"consol":3,"consolid":0,"constant":0,"constraint":7,"construct":[0,4,6],"constructor":0,"contain":[0,1,3,6,7],"containerdefinit":1,"content":0,"context":[0,2,4],"continu":6,"control":1,"convers":[0,6,7],"convert":[0,1,6],"copi":[0,1],"core":[0,1],"correct":1,"could":[0,6],"count":6,"countnumb":1,"cours":0,"cover":0,"cpp":0,"cpu":1,"cpuutil":1,"crash":6,"creat":[0,1,6,7],"created":1,"createdtim":1,"creation":[0,1],"creationd":1,"creationtimestamp":6,"credentialreport":1,"credentialreportmixin":1,"crossaccountaccess":1,"crossaccountaccessfilt":1,"crossaccountaccessmixin":1,"crossaccountfilt":1,"crossaccountp":1,"crossregiontransf":1,"crypto":1,"csv":[0,1],"csv2dict":1,"ct":1,"ctl":1,"current":[0,1,6,7],"custodian":[1,4],"custodian_asv":1,"custodian_cleanup":1,"custodian_downtim":1,"custodian_invalid":1,"custodian_invalid_asg":1,"custodian_rds_offhours_ct":1,"custodian_rds_offhours_et":1,"custodian_rds_offhours_pt":1,"custodian_res":1,"custodian_s3_ns_templ":1,"custodian_snapshot":1,"custodian_statu":1,"custodian_stop":1,"custodian_tag":1,"custom":1,"cw":1,"d":[0,1,2,3,6],"dai":1,"daili":1,"darwin":5,"data":[0,2,4,6],"databas":[0,1],"databaseconnect":1,"dataev":1,"datapipelin":1,"datapoint":1,"date":1,"datetim":[0,1,6,7],"dateutil":0,"dax":1,"daxsecuritygroupfilt":1,"daxsubnetfilt":1,"daylight":1,"dbclusteridentifi":1,"dbsubnetgroup":1,"dbsubnetgroupnam":1,"dd":1,"deal":[0,6],"debug":[0,3],"decid":6,"decim":0,"decis":1,"decl":[0,1,6],"declar":[0,1,6],"decompos":0,"decor":[0,3],"deep":0,"deepli":0,"def":[1,6],"default":[0,6,7],"default_tz":1,"default_vpc":1,"defaultvpc":1,"defin":[0,1,2,7],"definit":[0,2,6],"deleg":0,"delet":[1,7],"deleteprotect":6,"delimit":1,"deliv":1,"demand":1,"deni":1,"denial":1,"depend":[0,1,4,5,7],"deprec":[1,7],"descend":0,"describ":[0,1,6],"describe_db_snapshot_attribut":1,"describe_subscription_filt":1,"descript":[0,1],"design":4,"desir":[0,1],"desk":2,"destin":1,"detail":[1,3,6],"detect":1,"determin":[1,6],"dev":[1,6],"develop":0,"dhcpoptionsfilt":1,"dhe":1,"dict":[0,1,7],"dict_find_nam":0,"dictionari":[0,1],"did":0,"differ":[0,1,4,6],"difficult":1,"digest":1,"digit":0,"dimens":1,"directconnect":1,"directli":[0,1,2],"directori":[1,3],"directorysecuritygroupfilt":1,"directorysubnetfilt":1,"directoryvpcfilt":1,"disabl":[0,1],"disableapitermin":1,"discard":0,"discov":0,"dispatch":6,"displai":0,"displaynam":1,"distinct":0,"distinguish":0,"distribut":1,"diverg":1,"divid":0,"dividebyzeroerror":6,"divis":0,"dlm":1,"dm":1,"dn":1,"dnshostnam":1,"dnsname":1,"dnssupport":1,"do":[0,1,2,3,6],"do_by":0,"do_exit":0,"do_quit":0,"do_set":0,"do_show":0,"doc":[0,1],"document":[0,1,6],"doe":[0,1,2,6,7],"doesn":[0,1,6],"doin":0,"domain":[0,1],"don":[0,1,2,6],"done":[0,1],"dot_id":0,"dot_ident_arg":0,"doubl":[0,2],"double_valu":0,"doubletyp":[0,7],"doublevalu":0,"down":[0,1,6],"dpb":0,"dsl":1,"due":1,"dump":0,"dumpast":0,"duplic":0,"durat":[0,1,6],"durationtyp":[0,1,7],"dure":[0,1,5],"dyn":0,"dynamodb":1,"dynamodbacceler":1,"e":[0,1],"e1":0,"e2":0,"each":[0,1,6],"easier":1,"easili":4,"east":1,"east1":6,"eastern":1,"ebsoptim":1,"ec":1,"ec2":[1,6],"ec2_userdata_stop":1,"ecdh":1,"ecdsa":1,"echo":2,"ecr":1,"ecrcrossaccountaccessfilt":1,"ecsclust":1,"ecsmetr":1,"ef":1,"effect":[0,1],"egress_viol":1,"eip":1,"either":[0,1],"ek":1,"ekssgfilt":1,"ekssubnetfilt":1,"eksvpcfilt":1,"elast":1,"elasticach":1,"elasticachesnapshot":1,"elasticachesnapshotag":1,"elasticbeanstalk":1,"elasticfilesystemmounttarget":1,"elasticmapreduc":1,"elasticsearch":1,"elasticsearchdomain":1,"elb":1,"elblog":1,"elbsecuritypolici":1,"elem":0,"element":[1,6],"elif":0,"elimin":0,"els":0,"email":[1,6],"email_verifi":6,"emb":2,"embed":[0,4,6],"emit":7,"emmo":1,"emphat":6,"empti":[0,1,3,7],"emr":1,"emrclust":1,"emrmetr":1,"enabl":[0,3,4,6],"enasupport":1,"encount":0,"encryptionenabledfilt":1,"end":[0,1,7],"endpoint":1,"endpointcrossaccountfilt":1,"endpointsecuritygroupfilt":1,"endpointsubnetfilt":1,"endpointvpcfilt":1,"engin":[0,1],"eni":1,"ensur":[1,6],"ent":1,"enter":0,"enterpris":1,"entir":0,"enum":[0,1],"enumtyp":0,"env":[0,1,6],"environ":[0,1,3,4,5,6,7],"environment":0,"eof":2,"ephemeralinstancefilt":1,"eq":1,"eq_test":0,"equal":[0,1],"equival":0,"err":[0,6],"erron":0,"error":[0,4],"error_text":0,"escap":0,"eschew":1,"essenc":6,"essenti":[0,1,4],"est":1,"establish":0,"et":1,"etc":[0,1],"eu":1,"europ":0,"eustac":0,"eval":[0,6,7],"eval_error":0,"eval_filt":1,"evalerror":6,"evalu":[1,2,3,4,6,7],"evauat":0,"even":[0,1,6],"event":0,"eventrul":1,"eventrulemetr":1,"eventruletarget":1,"eventu":6,"ever":6,"everi":[0,1],"everydai":1,"everyone_onli":1,"everyth":0,"evluat":6,"ex":[0,6],"exact":1,"exactli":6,"examin":[1,6],"exampl":[2,3,4],"exc_class":0,"exceed":1,"except":[0,1,4,7],"exceptionmanualsnapshot":1,"exclud":1,"exclude_imag":1,"exclus":6,"exec":2,"execut":[0,1,6],"exempt":1,"exist":[0,1,3],"exit":0,"expand":0,"expans":0,"expcept":0,"expect":[0,1],"expir":1,"explicit":[0,1],"explicitli":[0,1],"export":3,"expos":[0,1,6],"expost":0,"expostur":6,"expr":[0,1,2,6],"express":[0,1,2,5,6,7],"exprlist":0,"exprpb":6,"extant":1,"extend":[0,1,6],"extended_name_path":0,"extens":[0,1,6,7],"extent":[0,1,6],"extern":[0,7],"extra":1,"extract":[0,1],"f":[0,1,6],"factfind":1,"factori":0,"fail":[0,1],"failur":[0,1],"fairli":0,"fall":0,"fallback":0,"fals":[0,1,2,6],"far":0,"fargat":1,"fatalf":[0,6],"fatalln":[0,6],"faulttolerantsnapshot":1,"favor":0,"featur":[0,1],"fetch":1,"few":[0,1,6],"ffffffff":1,"field":[0,1,6],"fieldinit":0,"file":[0,1,3],"filter":[0,4],"filter_inst":6,"filter_registri":1,"filter_resource_statist":1,"filterrestintegr":1,"filterrestmethod":1,"final":[0,1,6,7],"find":0,"find_nam":0,"findid":0,"firehos":1,"first":[0,6],"fit":1,"fix":[0,1,6],"fixedint":0,"fixedtz":0,"fklter":1,"flag":1,"flat":0,"flavor":0,"fleet":1,"float":[0,2,7],"floatvalu":0,"flow_log":1,"flowlogfilt":1,"fmt":[0,6],"fnmatch":1,"focus":1,"follow":[0,1,3,6,7],"foo":1,"foobar":1,"forbidden":1,"form":[0,1,6],"formal":[0,6],"format":[0,1,3,6],"formatt":3,"formerli":0,"forwardref":0,"found":[0,1],"four":[0,1],"fraction":0,"frame":0,"framework":[6,7],"fri":1,"friendli":0,"from":[0,1,2,3,4,7],"fromport":1,"front":0,"frozenset":0,"fs_analytical_dev":1,"fs_analytical_qa":1,"fs_core_cas_qa":1,"fs_custodian_tag":1,"fs_manual_ebs_snapshot_expir":1,"fs_manual_rds_snapshot_expir":1,"fsx":1,"fulfil":0,"full_control":1,"fulli":0,"func":[0,6],"function":[0,2,4,7],"function_ev":0,"function_match":0,"function_s":0,"functiontyp":[0,6],"further":0,"futur":0,"g":[0,1],"g4":0,"gamelift":1,"gatewai":1,"gather":[0,1,6],"gb":1,"gc":1,"gcm":1,"ge":1,"gen":0,"gener":[0,1,6],"geograph":1,"get":[0,1],"get_access_log":1,"get_account":1,"get_credential_report":1,"get_dbsubnet_group_us":1,"get_endpoint":1,"get_flow_log":1,"get_health_ev":1,"get_instance_imag":1,"get_key_polici":1,"get_launch_configuration_nam":1,"get_load_balanc":1,"get_matching_alias":1,"get_metr":1,"get_metric_statist":1,"get_model":1,"get_opt":0,"get_orgid":1,"get_protocol":1,"get_raw_health_ev":1,"get_raw_metr":1,"get_rel":1,"get_related_id":1,"get_resource_polici":1,"get_resource_statist":1,"get_resource_valu":1,"get_type_protect":1,"get_vpc":1,"getdat":[0,1],"getdayofmonth":0,"getdayofweek":[0,1],"getdayofyear":0,"getfullyear":0,"gethour":[0,1],"getmillisecond":0,"getminut":0,"getmonth":0,"getsecond":0,"gettz":0,"gib":1,"github":[0,1,6],"give":6,"given":[0,1,6,7],"gl":1,"glacier":1,"glaciercrossaccountaccessfilt":1,"glob":1,"global":0,"globalgrantsfilt":1,"glue":1,"glueconnect":1,"go":[0,1,4],"go_mod":0,"goal":0,"golang":0,"goo":1,"good":[1,6],"googl":[0,1,2,6],"gracefulli":0,"grai":1,"grammar":0,"grantcount":1,"great":6,"greater":1,"greet":6,"greetfunc":6,"group":6,"groupid":1,"groupmembership":1,"groupnam":1,"grouppolicysizequota":1,"groupset":1,"groupsperuserquota":1,"groupsquota":1,"gt":[0,1],"gte":1,"h":[0,1],"ha":[0,2,4,6,7],"had":1,"hand":6,"handl":[0,1,6,7],"handler":3,"hapg":1,"happen":0,"hash":0,"hashabl":0,"hasn":7,"hasstatementfilt":1,"hasvirtualmfa":1,"have":[0,1,3,4,6],"haven":1,"head":1,"header":[1,6],"healtch":1,"health_ev":1,"healthcheckprotocolmismatch":1,"healthev":1,"healtheventfilt":1,"healthfilt":1,"heavi":1,"hello":[0,6],"help":[0,1,2,6],"here":[0,1,6],"heredoc":2,"hexadecim":0,"hh":0,"hidden":0,"higher":1,"highli":1,"hint":[0,7],"hit":1,"holidai":1,"home":[1,3],"hook":0,"host":[0,1],"hostedzon":1,"hostnam":1,"hour":[0,1],"hourli":1,"housekeep_unused_sg":1,"how":[1,6],"howev":[0,1,6],"hsm":1,"html":[0,1],"http":[0,1,4,6],"i":[0,2,4,5,6,7],"iamaccessfilt":1,"iamgroupinlinepolici":1,"iamgroupus":1,"iaminstanceprofil":1,"iamroleinlinepolici":1,"iamroleusag":1,"iamroleusagemixin":1,"iamsummari":1,"iamuserinlinepolici":1,"iana":[0,1],"idea":0,"ideal":0,"ident":[0,1],"ident_arg":0,"ident_pat":0,"ident_valu":0,"identif":0,"identifi":[0,1],"ie":1,"ietf":0,"ifi":0,"ignor":[0,1,6],"imageag":1,"imageagefilt":1,"imagefilt":1,"imageid":1,"imagenam":1,"imagesunusedmixin":1,"imageunusedfilt":1,"immedi":1,"implement":[0,2,4,7],"implent":1,"impli":[0,1],"implicit":1,"implicitli":1,"import":[0,1,2,4,6],"in_tre":0,"includ":[0,1,6,7],"incomplet":0,"incorrect":1,"incorrectlambda":1,"increas":0,"inde":6,"index":[0,4],"indexerror":0,"indic":0,"individu":[0,1],"infer":1,"infin":0,"info":1,"inform":[1,3],"infrastructur":4,"init":0,"initi":[0,7],"inject":0,"input":[0,6],"insid":0,"instal":[0,4],"instanc":[0,6],"instance_profile_usag":1,"instanceagefilt":1,"instanceattribut":1,"instancecreatetim":1,"instanceimag":1,"instanceimagebas":1,"instanceimagemixin":1,"instanceinitiatedshutdownbehavior":1,"instanceoffhour":1,"instanceonhour":1,"instanceprofil":1,"instanceprofilenam":1,"instanceprofilesquota":1,"instances":6,"instancestorag":1,"instancetyp":1,"instead":[0,1],"insufficient_data":1,"int":[0,1,2,3,7],"int32":0,"int32valu":[0,4],"int64":0,"int64_overflow_neg":0,"int64_overflow_posit":0,"int64_valu":0,"int64valu":0,"integ":[0,1],"integer_math":0,"integr":[4,7],"intend":0,"intent":[1,2,4],"interest":4,"interfac":[0,1,6],"interfacesecuritygroupfilt":1,"interfacesubnetfilt":1,"interfacevpcfilt":1,"intermedi":6,"intern":[0,1,7],"internet":1,"interoper":4,"interpret":0,"interpretedrunn":[0,4,7],"intersect":1,"intiial":0,"intoper":0,"intro":0,"introduc":0,"introspect":6,"inttyp":[0,7],"invalidconfigfilt":1,"invers":1,"invis":1,"involv":0,"io":0,"iop":1,"iot":1,"ip":1,"ippermiss":1,"ippermissionegress":1,"is_log":[],"islog":1,"isloggingfilt":1,"isn":[0,1,3,4],"isnotloggingfilt":1,"isqueryloggingen":1,"isrm":1,"iss":[0,6],"isshadow":1,"isshieldprotect":1,"isshieldprotectedmixin":1,"issslfilt":1,"issu":[0,1,6],"iswafen":1,"item":[0,1,6],"iter":[0,1],"its":[0,1,6],"itself":0,"iunjpz":1,"jmes_path":1,"jmes_path_map":1,"jmespath":1,"job":[0,1],"joda":0,"jq":[0,2],"json":[0,1,2,6],"json_to_cel":[1,6],"jsonlin":0,"just":1,"kai":0,"keep":[0,1],"kei":[0,4,6,7],"kernel":1,"key_valu":1,"keyalia":1,"keyerror":0,"keyid":1,"keynam":1,"keyrotationen":1,"keyrotationstatu":1,"kind":[0,1,6,7],"kinesi":1,"kms_alia":1,"kms_kei":1,"kmsfilter":1,"kmskeyalia":1,"known":0,"kwarg":0,"laast":0,"lambda":[0,1],"lambdacrossaccountaccessfilt":1,"lambdaeventsourc":1,"lambdalayervers":1,"langdef":[0,1],"languag":[0,1],"larg":1,"large_instance_typ":1,"lark":[0,7],"last":0,"last_rot":1,"last_used_d":1,"last_used_region":1,"last_used_servic":1,"lastrot":1,"lastupdatedtim":1,"lastwritedai":1,"later":[0,1],"latestsnapshot":1,"launchconfig":1,"launchconfigag":1,"launchconfigfilt":1,"launchconfigurationnam":1,"launchtyp":1,"layer":[1,7],"layercrossaccount":1,"lc_userdata":1,"le":1,"lead":[0,1,6],"least":[0,1],"leav":1,"left":[0,1],"legaci":1,"len":[0,1],"length":0,"less":[0,1,6],"let":6,"level":[0,1,3],"levelnam":3,"leverag":0,"lexic":0,"lh":6,"librari":[0,1,6],"licens":1,"life":[0,1],"lifecyclerul":1,"like":[0,1,2,3,6],"likewis":1,"limit":0,"line":[0,1,3,7],"lineno":3,"linkag":1,"list":[0,1,6,7],"list_lit":0,"list_typ":0,"listtyp":[0,7],"listvalu":0,"liter":[0,1],"littl":0,"ll":[0,6],"load":[0,1],"load_annot":0,"load_valu":0,"local":[0,1,3,7],"localized_ev":0,"locat":0,"log":[0,3,6],"logcrossaccountfilt":1,"logg":1,"logger":[0,3],"loggroup":1,"logic":[0,2,6],"logical_and":0,"logical_condit":0,"logical_not":0,"logical_or":0,"logtarget":1,"long":[0,1],"longer":1,"longest":0,"longtz":0,"look":[0,1,6],"lookup":0,"loos":6,"los_angel":1,"loss":1,"lot":0,"lower":1,"lowercas":0,"lt":[0,1],"lte":1,"m":[0,1,2,5,6],"m1":6,"m3":1,"machin":1,"machineri":6,"macro":[0,1,7],"macro_has_ev":0,"made":[0,1],"magnet":1,"magnitud":0,"mai":[0,1,5,6,7],"maid":1,"maid_offhour":1,"maid_statu":1,"main":0,"major":1,"make":[0,1,2,6],"mani":[0,1],"manual":1,"map":[0,1,6],"map_lit":0,"map_typ":0,"mapinit":0,"mapkeytyp":7,"mappubliciponlaunch":1,"maptyp":[0,1,6,7],"march":0,"mark":0,"marked_kei":1,"markedforop":1,"mask":6,"master":[0,1,6],"match":[0,1,5,6],"matchabl":1,"math":[0,2],"matter":0,"max":1,"maximum":1,"maxproperti":1,"maxsecond":0,"mayb":0,"mccarthi":0,"md":[0,1,6],"me":6,"mean":[0,1],"meaning":0,"medium":1,"meet":6,"member":[0,1],"member_dot":0,"member_dot_arg":0,"member_index":0,"member_item":0,"member_object":0,"mere":0,"messag":[0,1,2,3,6],"message_liter":0,"messagebrok":1,"messagetyp":0,"method":[0,3,6],"method_ev":0,"method_id":0,"metricsfilt":1,"mfa_act":1,"mfadevic":1,"mfadevicesinus":1,"mi":1,"middl":0,"might":[0,6],"mimic":2,"min":1,"minim":[3,4],"minimum":[0,1],"minimumpasswordlength":1,"minproperti":1,"minsecond":0,"minut":[0,1],"mismatch":0,"mismatchs3origin":1,"miss":0,"missingrout":1,"mistak":1,"mix":0,"mixin":1,"ml":1,"mm":[0,1],"mock":1,"mod":[0,1],"mode":0,"model":[0,1,6],"modern":1,"modif":1,"modifi":1,"modifyablevolum":1,"modul":[0,1,3,4],"modulo":0,"modulu":0,"moment":1,"mon":1,"monitor":1,"monthli":1,"more":[0,1,2,4,6],"morn":1,"most":[0,1,2,7],"mount":1,"mq":1,"mqmetric":1,"mqsgfilter":1,"mqsubnetfilt":1,"mssage":1,"multi":1,"multipl":[0,1,6],"multipli":1,"multiplication_div":0,"multiplication_mod":0,"multiplication_mul":0,"must":[0,1,3,6],"my":1,"my_extens":6,"my_extns":6,"mydata":1,"n":[0,2,3,6],"nacl":1,"name":[0,1,3,6,7],"name1":0,"name2":0,"name_arg":6,"name_token":0,"namecontain":0,"namespac":1,"nano":0,"nanosecondspersecond":0,"narrowli":1,"nat":1,"nativ":[0,1],"navgiat":0,"navig":0,"nc":[0,1],"nc1":0,"nc2":0,"ndjson":0,"ne":1,"necessari":6,"necessarili":0,"need":[0,1,4,6,7],"needless":0,"neg":0,"nest":[0,6],"nested_activ":0,"net":[0,1],"networkacl":1,"networkin":1,"networkinterfac":1,"networkloc":1,"networkout":1,"new":[0,1],"new_activ":0,"new_text":0,"newenv":[0,6],"newer":6,"newfunct":6,"newinstanceoverload":6,"newli":1,"newoverload":6,"newvar":[0,6],"next":[0,1,6,7],"ni":1,"nice":[0,6],"nightli":1,"nil":[0,6],"no_such_field":0,"node":0,"nodesnaphot":1,"nomin":0,"non":[0,3,4,6],"non_compli":1,"none":[0,1,6],"nonetyp":0,"nonpubl":1,"noreturn":0,"normal":[0,1],"nospecificiamrolemanagedpolici":1,"not_applic":1,"not_nul":1,"notabl":2,"notact":1,"note":[0,1,6],"notebook":1,"notebookinst":1,"notebooksecuritygroupfilt":1,"notebooksubnetfilt":1,"notencryptedfilt":1,"notfound":0,"noth":[0,1,6],"notifi":1,"notimplementederror":6,"notprincip":1,"notresourc":1,"nov":1,"now":[0,1,6],"nsj7vg":1,"ntp":1,"null":[0,1],"null_typ":0,"null_valu":0,"nulltyp":[0,7],"nullvalu":0,"number":[0,1,6,7],"number_valu":0,"o":[0,1,3],"object":[0,2,4,6],"obscur":1,"obsolet":0,"obvers":1,"occur":[1,6],"octal":0,"odd":0,"off":[0,1],"offer":[0,1],"offhours_except":1,"offset":[0,1],"often":[0,7],"ok":1,"old":1,"older":1,"omit":1,"onc":[0,1],"one":[0,1,4,6],"oneof":[0,1],"onli":[0,1,3],"onlin":1,"onlyport":1,"oop":[0,6],"op":6,"op_name_map":0,"opa":1,"open":[1,6],"openpolicyag":1,"opensourc":4,"oper":[0,1],"operand":[0,1],"operator_in":0,"opswork":1,"opt":1,"optim":[1,6],"option":[0,2,3,5],"order":[0,1,6],"ordinari":0,"oreo":1,"org":[0,1],"organ":[1,4],"organiz":1,"origin":0,"other":[0,1,2,5,6,7],"otherwis":0,"out":[0,1,6],"outlin":1,"output":[0,6],"outsid":[0,1,6],"over":[0,1,2],"overal":0,"overdraftlimit":6,"overdraftprotect":6,"overflow":0,"overlap":0,"overload":[0,6,7],"overloadd":0,"overrid":[0,1],"overridden":0,"overwhelm":1,"own":[0,1,6],"owner":[1,6],"ownercontact":1,"ownereid":1,"p":0,"paackag":0,"pacif":1,"packag":[0,5,6,7],"packagetyp":0,"page":4,"pair":[0,1],"paragraph":3,"param":0,"paramet":[0,3,6],"parameterfilt":1,"paren_expr":0,"parent":[0,1],"parent_it":0,"pari":0,"pars":[0,1],"parse_cidr":1,"parse_d":1,"parse_text":1,"parser":[1,4],"part":[0,1,4,6,7],"partial":[0,6],"particular":[1,2],"particularli":[1,2],"pass":[1,6],"password_en":1,"password_last_chang":1,"password_last_us":1,"password_next_rot":1,"passwordpolicyconfigur":1,"past":1,"patch":1,"path":[0,1],"pattern":[0,1],"payload":0,"peer":1,"peeringconnect":1,"pendulum":[0,1],"per":1,"percent":1,"perfectli":1,"perform":[0,1],"perhap":0,"period":[0,1],"permiss":1,"permissionsboundaryusagecount":1,"permit":[0,1,6,7],"pg":1,"pgm":1,"phase":0,"phd":1,"pick":0,"piec":1,"pingstatu":1,"pip":5,"place":[0,1],"plan":[0,1],"platform":[1,4,5],"platformnam":1,"platformvers":1,"pleas":1,"plu":[0,1],"pluck":0,"pm":1,"poetri":5,"point":[0,1,2],"polici":[4,6],"policiesquota":1,"policyassign":1,"policynam":1,"policysizequota":1,"policyversionsinus":1,"policyversionsinusequota":1,"polit":0,"pool":1,"pop":0,"popul":0,"popular":1,"port":1,"possibl":[0,1],"possibli":[0,1,6],"post":1,"power":2,"pragmat":6,"prcess":1,"precis":0,"prefer":0,"prefix":[0,1],"prefixlen":1,"preloop":0,"prepar":1,"prepare_queri":1,"presenc":[0,1],"present":1,"preserv":1,"pretti":0,"prevent":[0,1],"previou":[0,1],"previous":1,"prg":[0,6],"prgm":[0,6],"primari":0,"primarili":0,"primit":1,"princip":1,"principl":4,"print":0,"println":[0,6],"prior":6,"probabl":1,"problem":[0,1,6],"process":[0,1,6],"process_json_doc":0,"process_resource_set":1,"process_value_typ":1,"prod":6,"prodlog":1,"produc":0,"product":0,"productcod":1,"profil":1,"program":[0,1,4,6,7],"programopt":6,"progress":0,"project":[0,1,4,6],"promot":1,"prompt":0,"propag":1,"proper":[1,6],"properli":[5,6],"properti":[0,1],"propog":0,"propos":1,"proto":[0,6],"proto3pb":0,"protobuf":[0,1,2],"protobuf_typ":0,"protobyf":0,"protocol":[0,4],"protubuf":0,"provid":[1,2,3,6,7],"provis":1,"proxi":1,"pst":1,"pt":1,"pubfac":1,"public":0,"pull":[1,6],"purchas":1,"pure":0,"purpos":1,"push":0,"put":1,"py":[1,4],"pypi":0,"python":[0,1,5,6,7],"pythonpath":2,"qa":1,"qualifi":0,"qualified_identifier_resolution_uncheck":0,"queue":1,"quickli":4,"quietli":0,"quit":0,"quot":0,"quota":1,"quux":0,"r":[0,6],"r53domain":1,"radisti":1,"raft":1,"rais":[0,2,6],"ramdisk":1,"rang":[0,7],"rank":1,"rare":[0,1],"raw":1,"rd":1,"rdscluster":1,"rdsclustersnapshot":1,"rdsoffhour":1,"rdsonhour":1,"rdssnapshot":1,"rdssnapshotag":1,"rdssnapshotonhour":1,"rdssubnetgroup":1,"rdt":1,"re":[0,1,6],"re2":5,"reach":1,"read":[0,1,2],"read_acp":1,"readm":0,"readonli":1,"readonlyrootfilesystem":1,"readreplicadbinstanceidentifi":1,"readreplicasourcedbinstanceidentifi":1,"real":0,"realli":[0,2],"reason":[1,4],"receiv":6,"recent":[0,1],"recogn":0,"recommend":1,"recov":1,"recurs":0,"redact":1,"redshift":1,"redshiftsnapshot":1,"redshiftsnapshotag":1,"redshiftsnapshotcrossaccount":1,"reduc":[0,1],"ref":[0,1,6],"ref_to":0,"refactirubg":1,"refactor":[0,1],"refer":[0,1],"referenc":1,"reflect":[0,6],"refractor":0,"refresh_period":1,"refus":0,"regex":[0,1],"region":1,"regist":[0,1],"registri":[0,1],"regular":[1,5],"rehydr":1,"reject":1,"rel":0,"relat":[0,1,6],"relatedresourcefilt":1,"relatedresourcemixin":1,"relation_eq":0,"relation_g":0,"relation_gt":0,"relation_in":0,"relation_l":0,"relation_lt":0,"relation_n":0,"relationshiup":1,"releas":1,"reli":[0,1,6],"remain":1,"remaind":0,"remot":0,"remov":[1,7],"renam":1,"reorder":1,"repeat":0,"repeatedli":1,"repl":0,"replac":[0,1,6],"replicationinst":1,"report":1,"report_delai":1,"report_gener":1,"report_max_ag":1,"repr":0,"repres":[0,1],"represent":1,"request":[0,1,6],"requie":6,"requir":[0,4,6],"require_ssl":1,"requiredencryptedputobject":1,"requireencryptedputobject":1,"requirelowercasecharact":1,"requirenumb":1,"requiresslaccessrdt":1,"requiresymbol":1,"requireuppercasecharact":1,"rerefer":0,"reservedconcurr":1,"resili":1,"resiz":1,"resize_config":1,"resolut":[0,6,7],"resolv":[0,6],"resolve_nam":0,"resolve_vari":0,"resourc":[0,1],"resource_count":1,"resource_list":6,"resource_schedul":1,"resource_typ":[1,6],"resourcekmskeyalia":1,"resourcekmskeyaliasmixin":1,"respect":0,"restapi":1,"restapicrossaccount":1,"restor":[0,1],"restresourc":1,"restrict":1,"result":[0,1,6,7],"result_funct":0,"resum":1,"resut":0,"return":[0,1,6],"reus":1,"revers":[0,1],"revis":1,"rework":1,"rewrit":6,"rewritten":0,"rfc":0,"rfc3339":0,"rh":6,"rhymjmbbe2":1,"rich":0,"right":0,"role":1,"rolecrossaccountaccess":1,"rolenam":1,"rolepolicysizequota":1,"rolesquota":1,"root":[0,1,3],"root_scop":0,"rootdevicenam":1,"route53":1,"routet":1,"rrset":1,"rsa":1,"rule":[0,6,7],"rulestatu":1,"run":[0,1,4,6],"runnabl":7,"runner":[0,4,7],"runner_class":[0,1],"runtim":0,"s3bucketnam":1,"s3crossaccountfilt":1,"s3metric":1,"s3publicblock":1,"sagemak":1,"sai":[0,1],"said":0,"same":[0,1],"samplecount":1,"save":[0,1],"sc":1,"scale":[0,1],"scan":1,"scan_group":1,"scatter":1,"scenario":0,"schedul":1,"schedulepars":1,"schema":[1,6],"scope":0,"se":1,"search":[0,1,4],"searchabl":0,"sechema":1,"second":[0,1],"secondari":1,"secondarili":0,"secret":[1,6],"secretsmanag":1,"section":1,"secur":4,"securetransport":1,"security_group":1,"securitygroup":1,"securitygroupdifffilt":1,"securitygroupfilt":1,"securitygrouplockedfilt":1,"see":[0,1,6],"seem":[0,1,7],"select":[0,1],"selector":1,"selector_valu":1,"self":[0,1,6],"selfrefer":1,"semant":[0,1,4,7],"semicolon":1,"send":1,"sens":3,"sensibl":1,"sentinel":1,"separ":[0,1],"seper":1,"sequenc":[0,1,6],"serial":0,"serv":0,"server":1,"servercertif":1,"servercertificatesquota":1,"service_role_usag":1,"servicelimit":1,"servicemetr":1,"servicetaskdefinitionfilt":1,"sessioncontext":1,"sessionissu":1,"set":[0,1,2,3],"set_activ":0,"set_annot":1,"setup":1,"sever":[0,1,6],"sg":1,"sg_unus":1,"sgdefaultvpc":1,"sgusag":1,"sgusagemixin":1,"sha256":1,"sha384":1,"shadow":0,"shake":6,"shake_hand":6,"shake_hands_string_str":6,"shakefunc":6,"share":1,"shell":0,"shield_protect":1,"shield_subscript":1,"shielden":1,"shieldenabledmixin":1,"shop":1,"short":[0,6],"shorthand":1,"should":[0,1,6,7],"show":0,"shown":0,"shrink":1,"si":1,"sid":1,"sign":[0,7],"signifi":1,"significantli":5,"signingcertificatesperuserquota":1,"silenc":[0,1,6],"silent":[0,6],"similar":[0,1],"similarli":[0,1,6],"simpl":0,"simple_test":0,"simpledb":1,"simpler":1,"simpli":0,"simplifi":[0,6],"sinc":1,"singl":[0,1,6],"single_bool":0,"single_byt":0,"single_doubl":0,"single_dur":0,"single_fixed32":0,"single_fixed64":0,"single_float":0,"single_int32":0,"single_int64":0,"single_sfixed32":0,"single_sfixed64":0,"single_sint32":0,"single_sint64":0,"single_str":0,"single_timestamp":0,"single_uint32":0,"single_uint32_wrapp":0,"single_uint64":0,"singleton":[0,4,6],"singletonfilt":1,"singular":0,"situat":1,"size":[0,1,6],"size_parse_cidr":1,"skew":1,"skew_hour":1,"skier":1,"skip":0,"slice":6,"slight":1,"slightli":[0,1],"slighyli":6,"slower":1,"slurp":0,"sm":1,"smaller":0,"smi":1,"sn":1,"snapshotag":1,"snapshotcreatetim":1,"snapshotcrossaccountaccess":1,"snapshotid":1,"snapshotskipamisnapshot":1,"snapshottyp":1,"snapshotunusedfilt":1,"snapshotunusedmixin":1,"snowbal":1,"snscrossaccount":1,"snscrossaccountmixin":1,"so":[0,6],"some":[0,1,3,6,7],"some_dict":0,"someparam":1,"someth":[0,1],"sometim":0,"somev":1,"somewhat":6,"sophist":0,"sort":6,"sourc":0,"sourcedestcheck":1,"sourceforg":0,"span":1,"sparingli":1,"spawn":1,"spec":[0,1],"special":[0,1,6],"specif":[0,4,6],"specifi":1,"specificiamrolemanagedpolici":1,"speed":5,"spell":1,"spin":1,"spite":6,"spread":0,"sprintf":6,"sq":1,"sql":1,"sqlserveraudit":1,"sqscrossaccount":1,"squar":1,"src":2,"sriovnetsupport":1,"ssd":1,"ssh":1,"sslnegot":1,"sslpolici":1,"sslpolicyfilt":1,"sslv2":1,"sslv3":1,"ssmstatu":1,"st":1,"stack":[0,1],"stage":1,"stand":[0,1],"standard":[0,1,6],"start":[0,1,6],"startswith":6,"starttim":1,"state":6,"statement_id":1,"statetransitionag":1,"static":0,"statist":1,"statu":0,"status":1,"stdin":[0,2],"stdout":0,"step":[0,1,6],"stick":0,"stop":1,"storag":1,"store":1,"str":[0,1,7],"stream":[0,1],"streamhandl":3,"strictli":0,"string":[0,1,3],"string_greet_str":6,"string_valu":0,"stringtyp":[0,6,7],"stringvalu":0,"strip":[0,1],"strong":1,"strongli":1,"struct":0,"structpb":0,"structur":[0,1,4,6],"studi":1,"stuff":6,"sub":[0,1,6],"sub_activ":0,"sub_ev":0,"sub_eval_parti":0,"sub_evalu":0,"subclass":[0,1,6],"sublanguag":1,"subnetfilt":1,"subnetid":1,"subnetrout":1,"subscript":1,"subsequ":[0,1],"subset":7,"subst":1,"succesfulli":1,"success":[0,1,6],"suffic":1,"suffix":[0,1],"sugar":0,"suggest":1,"suit":1,"suitabl":1,"sum":1,"summari":4,"sun":1,"super":1,"superclass":[0,1],"suppli":0,"support":[0,1],"sure":1,"survei":1,"suspend":1,"suspendedprocess":1,"swallow":0,"swap":1,"syntact":0,"syntax":[0,1,6],"system":[0,4],"t":[0,1,2,3,4,6,7],"tab":0,"tabl":1,"tag":6,"tag_polici":6,"tag_policy_filt":6,"tagstatu":1,"take":1,"take_act":6,"taken":[1,6],"target":0,"target_engin":1,"targetfunc":0,"targetgroup":1,"tasktaskdefinitionfilt":1,"tb":0,"team_nam":1,"tech":1,"techniqu":6,"temp":1,"templat":1,"temporari":0,"ten":7,"tend":0,"ters":1,"tertiari":0,"test":[0,1,2,6],"test_all_typ":0,"testabl":1,"testalltyp":0,"text":[0,1],"text2":0,"text_from":1,"textproto_to_gherkin":[],"than":[0,1,6],"the_filt":1,"thei":[0,1,6],"them":[0,1],"thi":[0,1,2,3,4,5,6,7],"thing":[0,1],"think":0,"thirti":1,"those":[0,1,6],"three":[0,1,4],"threshold":1,"through":[0,1,6],"tidyup":1,"time":[0,1,4,6],"timedelta":[0,1,7],"timestamp":[0,1,6],"timestamptyp":[0,1,6,7],"timezon":[0,1,6],"tini":2,"titl":1,"titlecas":0,"tl":1,"tlq9fr":1,"tls12":1,"tlsv1":1,"todo":1,"token":0,"toler":[0,6],"toml":3,"tool":[4,5],"top":[0,1,7],"topic":[1,4],"tot":2,"total":1,"toward":0,"tpb":0,"trace":[0,3],"traceback":[0,6],"track":[0,6],"tradit":0,"traffic":1,"trail":1,"transact":6,"transform":[0,1,6,7],"transient":[0,7],"transit":1,"translat":1,"transpar":0,"travers":1,"treat":0,"tree":[0,6],"tree_dump":0,"tree_for_express":0,"tree_for_vari":0,"tri":1,"trigger":1,"trim":1,"tripl":0,"trivial":[0,1,4],"troublingli":1,"true":[0,1,3,6],"truncat":0,"trust":1,"try":[0,6],"tupl":0,"turn":[0,1],"tweet":6,"two":[0,1,6,7],"txt":[0,1],"type":[1,2,3,4],"type_match":0,"type_nam":0,"type_name_map":0,"type_schema":1,"typeerror":0,"typetyp":0,"tz":[0,1,6],"tz_alias":[0,1],"tz_name":0,"tz_name_lookup":0,"tz_offset_pars":0,"tz_pars":0,"tzinfo":[0,1],"tzutc":1,"u":[0,1,6],"u0001f431":0,"u270c":0,"ubuntu":1,"uint":0,"uint32":0,"uint32valu":0,"uint64":0,"uint64_overflow_neg":0,"uint64_overflow_posit":0,"uint64_valu":0,"uint64valu":0,"uinttyp":[0,6,7],"uk":1,"unari":0,"unary_minus_no_overload":0,"unary_neg":0,"unary_not":0,"unchosen":0,"uncomput":6,"undecid":0,"under":1,"underli":6,"underutil":1,"unencrypt":1,"unifi":[0,1],"union":[0,1],"uniqu":[1,7],"unique_s":1,"unit":0,"unless":1,"unlik":0,"unmark":1,"unmodifi":1,"unoptim":1,"unsign":[0,7],"unsupport":0,"untag":1,"until":0,"unusediampolici":1,"unusediamrol":1,"unusedinstanceprofil":1,"unusedlaunchconfig":1,"unusedrdssubnetgroup":1,"unusedsecuritygroup":1,"unusu":1,"unwieldi":1,"up":[0,1,5],"upcom":1,"updat":[0,1],"upgradeavail":1,"upper":0,"uptimefilt":1,"url":1,"us":[0,3,4,5,7],"usag":1,"usediampolici":1,"usediamrol":1,"usedinstanceprofil":1,"usedsecuritygroup":1,"user":3,"user_creation_tim":1,"useraccesskei":1,"userag":1,"usercredentialreport":1,"userdata":1,"userdatafilt":1,"userguid":1,"userident":1,"usermfadevic":1,"usernam":1,"userpolici":1,"userpolicysizequota":1,"usersquota":1,"usual":[0,3],"utc":[0,6],"utcnow":1,"util":1,"uv":5,"v":0,"val":6,"valid":0,"valid_key_typ":0,"validconfigfilt":1,"valu":[0,3,6,7],"valueerror":0,"valuefilt":1,"valuekv":1,"values_from":1,"var":[0,6],"vari":1,"variabl":[0,1,2,3,6,7],"variant":[0,1,6],"variat":1,"varieti":0,"variou":[0,1,6],"vault":1,"veri":[0,1,3],"verifi":1,"version":[0,1,3,6],"versionsperpolicyquota":1,"via":[0,1,6],"viabl":0,"virtual":5,"visibl":[0,6],"visit":0,"visit_children":0,"visual":6,"vm":1,"vol":1,"volum":1,"volumeid":1,"vpcconfig":1,"vpcendpoint":1,"vpcfilter":1,"vpcid":1,"vpcidfilt":1,"vpclink":1,"vpcsecuritygroupfilt":1,"vpn":1,"w":1,"wa":[0,1,6],"wafen":1,"wai":[0,1,6],"wait":1,"walk":[0,7],"want":[0,1,2,6],"warn":[0,1,3],"watch":1,"we":[0,1,2,6],"web":1,"web_acl":1,"webacl":1,"week":1,"weekdai":1,"weekend":1,"weekli":1,"well":[0,1],"west":1,"what":[0,2,6],"when":[0,1,5,7],"where":[0,1,2,5],"whether":[0,1,6],"which":[0,1,6],"while":[0,1,3],"whitelist":1,"whitelist_condit":1,"whitelist_endpoint":1,"whitelist_endpoints_from":1,"whitelist_from":1,"whitelist_orgid":1,"whitelist_orgids_from":1,"whitelist_protocol":1,"whitelist_protocols_from":1,"whitelist_vpc":1,"whitelist_vpc_from":1,"whitelist_vpce_from":1,"who":1,"whole":[4,6],"whose":1,"why":0,"wide":1,"win":1,"window":[1,6],"wire":1,"with_traceback":0,"withdraw":6,"within":[0,1],"without":[0,1,6],"won":0,"work":[0,1,6],"workabl":1,"worker":1,"workflow":1,"world":[0,6],"would":[0,1,6],"wrap":[0,6,7],"wrapper":0,"wrapperspb":0,"write":6,"write_acp":1,"writen":1,"wrt":1,"www":[0,1],"x":[0,1,2,3],"x_sign":0,"xrayencrypt":1,"xyz":1,"y":[0,1,3],"ye":[1,2],"yeah":0,"yet":7,"yield":[0,1],"you":[1,2,6],"your":1,"yyyi":1,"z":[0,1],"z0":0,"za":[0,1],"zero":0,"zerodivisionerror":0,"zone":[0,1,6],"\u00b5":0},"titles":["CEL-Py API","C7N Functions Required","CLI Use of CEL-Python","Configuration","Pure Python Google Common Expression Language (CEL)","Installation","Application Integration","Data Structures"],"titleterms":{"The":6,"__main__":0,"access":1,"account":1,"adapt":0,"ag":1,"alia":1,"all":1,"allow":1,"ami":1,"anoth":0,"api":0,"applic":6,"argument":0,"attribut":1,"avail":1,"baselin":6,"bind":6,"block":1,"bool":1,"boolean":1,"bucket":1,"builtin":6,"bulk":6,"c7n":[1,6],"cach":1,"capac":1,"cel":[0,2,4,7],"celfilt":1,"celtyp":0,"check":1,"cidr":1,"cli":2,"cloud":6,"cloudtrail":1,"common":[1,4],"complianc":1,"concurr":1,"config":1,"configur":3,"construct":1,"content":[1,4],"context":1,"convers":1,"count":1,"credenti":1,"cross":1,"custodian":6,"custom":6,"data":[1,7],"db":1,"default":1,"defin":6,"definit":1,"delta":1,"design":1,"detail":0,"devic":1,"dhcp":1,"diff":1,"eb":1,"egress":1,"enabl":1,"encrypt":1,"ephemer":1,"error":6,"essenti":6,"evalu":0,"event":1,"exampl":[0,1,6],"except":6,"express":4,"extern":1,"fault":1,"filter":[1,6],"find":1,"flow":1,"from":6,"function":[1,6],"global":[1,6],"go":6,"googl":4,"grant":1,"group":1,"ha":1,"health":1,"healthcheck":1,"i":1,"iam":1,"id":1,"imag":1,"implement":[1,6],"indic":4,"ingress":1,"inlin":1,"instal":5,"instanc":1,"integr":[1,6],"invalid":1,"inventori":1,"kei":1,"km":1,"languag":4,"last":1,"latest":1,"launch":1,"lifecycl":1,"limit":1,"listen":1,"locat":1,"lock":1,"log":1,"manag":1,"mark":1,"method":1,"metric":1,"mfa":1,"mismatch":1,"miss":1,"modify":1,"namespac":0,"network":1,"non":1,"notif":1,"numer":0,"object":1,"offhour":1,"onhour":1,"op":1,"oper":6,"option":1,"origin":1,"param":1,"paramet":1,"parser":0,"password":1,"polici":1,"principl":1,"progag":1,"protect":1,"protocol":1,"provid":0,"public":1,"pure":4,"py":0,"python":[2,4],"queri":1,"readm":6,"requir":1,"reserv":1,"resourc":6,"rest":1,"rotat":1,"rout":1,"rule":1,"run":7,"s3":1,"secur":1,"servic":1,"shadow":1,"shield":1,"simpl":6,"singleton":1,"skip":1,"snapshot":1,"sourc":1,"specif":1,"ssl":1,"ssm":1,"stale":1,"state":1,"statement":1,"statu":1,"string":6,"structur":7,"subnet":1,"summari":1,"synopsi":0,"tabl":4,"tag":1,"target":1,"task":1,"termin":1,"textproto_to_gherkin":[],"time":7,"timzon":0,"todo":[0,6],"toler":1,"tool":[],"type":[0,6,7],"unus":1,"upgrad":1,"uptim":1,"us":[1,2,6],"user":1,"valid":1,"valu":1,"value_from":1,"value_typ":1,"virtual":1,"vpc":1,"waf":1,"write":1,"xrai":1}})
\ No newline at end of file
diff --git a/docs/source/configuration.rst b/docs/source/configuration.rst
index b98402a..e029b5d 100644
--- a/docs/source/configuration.rst
+++ b/docs/source/configuration.rst
@@ -39,3 +39,12 @@ This paragraph can contain the parameters for logging configuration.
[logging.handlers.console]
class = "logging.StreamHandler"
formatter = "console"
+
+To enable very detailed debugging, do the following:
+
+- Set the ``CEL_TRACE`` environment variable to some non-empty value, like ``"true"``.
+ This enables a ``@trace`` decorator on some evaluation methods.
+
+- In a ``[logging.loggers.celpy.Evaluator]`` paragraph, set ``level = "DEBUG"``.
+
+- Set the ``[logging]`` paragraph, set ``root.level = "DEBUG"``.
diff --git a/src/celpy/__init__.py b/src/celpy/__init__.py
index 9c58104..031f6d2 100644
--- a/src/celpy/__init__.py
+++ b/src/celpy/__init__.py
@@ -183,7 +183,7 @@ class CompiledRunner(Runner):
"""
Python compiled expression evaluator. Uses Python byte code and :py:func:`eval`.
- Given an AST, this evauates the AST in the context of a specific activation.
+ Given an AST, this evaluates the AST in the context of a specific activation.
Transform the AST into Python, uses :py:func:`compile` to create a code object.
Uses :py:func:`eval` to evaluate.
diff --git a/src/celpy/evaluation.py b/src/celpy/evaluation.py
index 781a129..d9d40ff 100644
--- a/src/celpy/evaluation.py
+++ b/src/celpy/evaluation.py
@@ -34,11 +34,18 @@
The :py:class:`Resut` type hint is a union of the various values that are encountered
during evaluation. It's a union of the :py:class:`celpy.celtypes.CELTypes` type and the
:exc:`CELEvalError` exception.
+
+.. important:: Debugging
+
+ If the os environment variable ``CEL_TRACE`` is set, then detailed tracing of methods is made available.
+ To see the trace, set the logging level for ``celpy.Evaluator`` to ``logging.DEBUG``.
+
"""
import collections
import logging
import operator
+import os
import re
import sys
from functools import reduce, wraps
@@ -67,11 +74,11 @@
import celpy.celtypes
from celpy.celparser import tree_dump
-_USE_RE2 = False
+_USE_RE2 = False # Used by the test suite.
try:
import re2
- _USE_RE2 = True
+ _USE_RE2 = True # Used by the test suite.
def function_matches(text: str, pattern: str) -> "Result":
try:
@@ -92,8 +99,7 @@ def function_matches(text: str, pattern: str) -> "Result":
return celpy.celtypes.BoolType(m is not None)
-# A CEL type annotation. Used in an environment to describe objects as well as functions.
-# This is a list of types, plus Callable for conversion functions.
+# This annotation describes a union of types, functions, and function types.
Annotation = Union[
celpy.celtypes.CELType,
Callable[
@@ -219,9 +225,9 @@ def __call__(self, *args: Any) -> "CELEvalError":
return self
-# The interim results extends celtypes to include itermediate CELEvalError exception objects.
+# The interim results extend ``celtypes`` to include itermediate ``CELEvalError`` exception objects.
# These can be deferred as part of commutative logical_and and logical_or operations.
-# It includes the responses to type() queries, also.
+# It includes the responses to ``type()`` queries, also.
Result = Union[
celpy.celtypes.Value,
CELEvalError,
@@ -1110,18 +1116,22 @@ def trace(
) -> Callable[["Evaluator", lark.Tree], Any]:
"""
Decorator to create consistent evaluation trace logging.
- This only works for a class with a ``level`` attribute.
- This is generally applied to the methods matching rule names.
+ This is generally applied to the methods matching parse rule names.
+
+ This only works for a class with a ``level`` attribute, like :py:class:`Evaluator`.
"""
@wraps(method)
def concrete_method(self: "Evaluator", tree: lark.Tree) -> Any:
- self.logger.info("%s%r", self.level * "| ", tree)
+ self.logger.debug("%s%r", self.level * "| ", tree)
result = method(self, tree)
- self.logger.info("%s%s -> %r", self.level * "| ", tree.data, result)
+ self.logger.debug("%s%s -> %r", self.level * "| ", tree.data, result)
return result
- return concrete_method
+ if os.environ.get("CEL_TRACE"):
+ return concrete_method
+ else:
+ return method
class Evaluator(lark.visitors.Interpreter[Result]):
diff --git a/tests/test_evaluation.py b/tests/test_evaluation.py
index cb30328..6b0927d 100644
--- a/tests/test_evaluation.py
+++ b/tests/test_evaluation.py
@@ -30,11 +30,16 @@
"""
from unittest.mock import Mock, call, sentinel
+import os
import lark
import pytest
-import celpy.evaluation # For monkeypatching
+# IMPORTANT: Enables the `@trace` decorator.
+# Must be set prior to import.
+os.environ["CEL_TRACE"] = "true"
+
+import celpy.evaluation # Expose the name for monkeypatching
from celpy import celparser, celtypes
from celpy.evaluation import *
@@ -366,7 +371,7 @@ def method(self, tree):
result = e.method(mock_tree)
assert result == sentinel.result
- assert e.logger.info.mock_calls == [
+ assert e.logger.debug.mock_calls == [
call('%s%r', '| ', mock_tree),
call('%s%s -> %r', '| ', 'ident', sentinel.result)
]
diff --git a/type_check/lineprecision.txt b/type_check/lineprecision.txt
index 1a4aa5e..94950e0 100644
--- a/type_check/lineprecision.txt
+++ b/type_check/lineprecision.txt
@@ -6,6 +6,6 @@ celpy.adapter 141 34 3 9 89 6
celpy.c7nlib 1663 349 16 149 1149 0
celpy.celparser 390 137 67 23 163 0
celpy.celtypes 1504 417 14 224 812 37
-celpy.evaluation 2593 658 234 198 1489 14
+celpy.evaluation 2603 661 234 198 1496 14
xlate 0 0 0 0 0 0
xlate.c7n_to_cel 1755 395 103 146 1105 6