ignition-api 8.3.6.post2__tar.gz → 8.3.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/CHANGELOG.md +10 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/PKG-INFO +1 -1
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/setup.cfg +1 -1
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/script/abc/__init__.py +15 -0
- ignition_api-8.3.7/src/com/inductiveautomation/ignition/common/secrets/__init__.py +66 -0
- ignition_api-8.3.7/src/com/inductiveautomation/ignition/gateway/secrets/__init__.py +37 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/ignition_api.egg-info/PKG-INFO +1 -1
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/ignition_api.egg-info/SOURCES.txt +3 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/db.py +0 -47
- ignition_api-8.3.7/src/system/secrets.py +113 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/LICENSE +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/MANIFEST.in +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/README.md +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/pyproject.toml +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/setup.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/ch/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/ch/qos/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/ch/qos/logback/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/ch/qos/logback/classic/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/codahale/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/codahale/metrics/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/google/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/google/common/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/google/common/collect/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/google/common/eventbus/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/google/common/util/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/google/common/util/concurrent/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/factorypmi/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/factorypmi/application/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/factorypmi/application/binding/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/factorypmi/application/components/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/factorypmi/application/model/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/factorypmi/application/script/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/factorypmi/application/script/builtin/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/factorypmi/application/sqltags/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/factorypmi/application/sqltags/project/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/historian/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/historian/common/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/historian/common/model/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/historian/common/model/data/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/alarming/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/alarming/common/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/alarming/common/rosters/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/client/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/client/launch/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/client/model/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/client/util/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/client/util/gui/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/client/util/gui/progress/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/client/util/gui/scheduling/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/alarming/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/alarming/evaluation/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/alarming/query/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/binding/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/browsing/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/config/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/db/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/db/namedquery/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/document/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/execution/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/expressions/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/expressions/functions/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/functional/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/gson/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/gson/reflect/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/gson/stream/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/gui/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/gui/progress/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/i18n/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/i18n/keyboard/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/i18n/translation/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/jsonschema/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/licensing/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/logging/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/messages/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/model/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/model/values/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/modules/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/opc/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/project/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/project/resource/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/script/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/script/adapters/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/script/builtin/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/script/builtin/http/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/script/builtin/ialabs/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/script/hints/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/script/message/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/sqltags/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/sqltags/history/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/sqltags/history/annotations/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/sqltags/model/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/sqltags/model/types/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/tags/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/tags/config/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/tags/config/types/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/tags/model/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/tags/paths/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/tags/paths/parser/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/tags/tagpaths/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/user/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/user/schedule/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/util/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/xmlserialization/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/xmlserialization/deserialization/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/xmlserialization/encoding/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/xmlserialization/serialization/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/common/xmlserialization/serialization/equalitydelegates/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/gateway/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/gateway/project/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/modules/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/modules/serial/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/modules/serial/scripting/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/opccom/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/opccom/hda/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/perspective/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/perspective/common/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/reporting/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/reporting/common/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/reporting/common/api/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/sfc/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/sfc/api/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/vision/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/vision/api/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/vision/api/client/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/vision/api/client/components/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/vision/api/client/components/model/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/palantir/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/palantir/ptoss/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/palantir/ptoss/cinch/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/palantir/ptoss/cinch/core/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/twilio/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/twilio/base/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/twilio/http/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/twilio/rest/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/twilio/rest/api/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/twilio/rest/api/v2010/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/twilio/rest/api/v2010/account/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/twilio/type/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/ignition_api.egg-info/dependency_links.txt +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/ignition_api.egg-info/requires.txt +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/ignition_api.egg-info/top_level.txt +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/commons/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/commons/lang3/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/commons/lang3/builder/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/commons/math3/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/commons/math3/exception/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/commons/math3/exception/util/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/log4j/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/log4j/spi/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/common/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/common/usermodel/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/hpsf/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/poifs/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/poifs/filesystem/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/ss/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/ss/formula/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/ss/formula/eval/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/ss/formula/functions/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/ss/formula/ptg/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/ss/formula/udf/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/ss/usermodel/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/ss/util/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/apache/poi/util/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/bson/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/bson/codecs/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/bson/codecs/configuration/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/bson/types/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/joda/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/joda/time/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/joda/time/base/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/joda/time/field/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/joda/time/format/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/joda/time/tz/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/json/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/python/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/python/core/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/python/expose/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/slf4j/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/org/slf4j/event/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/__version__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/alarm.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/bacnet/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/bacnet/enumerated.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/bacnet/enums.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/dataset.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/date.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/device.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/dnp.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/dnp3.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/eam.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/eventstream.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/file.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/groups.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/historian/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/historian/types.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/iec61850.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/kafka.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/math.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/mongodb/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/mongodb/types.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/net.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/opc.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/opchda.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/opcua.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/perspective/__init__.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/perspective/workstation.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/print.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/project.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/report.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/roster.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/secsgem.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/security.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/serial.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/sfc.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/tag.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/twilio.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/user.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/util.py +0 -0
- {ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/system/vision.py +0 -0
|
@@ -5,6 +5,7 @@ __all__ = [
|
|
|
5
5
|
"AbstractJythonSequence",
|
|
6
6
|
"AbstractMutableJythonMap",
|
|
7
7
|
"AbstractMutableJythonSequence",
|
|
8
|
+
"ContextManager",
|
|
8
9
|
"JythonMap",
|
|
9
10
|
"JythonSequence",
|
|
10
11
|
"MutableJythonMap",
|
|
@@ -280,3 +281,17 @@ class AbstractMutableJythonSequence(AbstractJythonSequence, MutableJythonSequenc
|
|
|
280
281
|
def sort(self, *args, **kwargs):
|
|
281
282
|
# type: (*Any, **Union[str, unicode]) -> None
|
|
282
283
|
pass
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
class ContextManager(PyObject):
|
|
287
|
+
def __init__(self):
|
|
288
|
+
# type: () -> None
|
|
289
|
+
super(ContextManager, self).__init__()
|
|
290
|
+
|
|
291
|
+
def __enter__(self):
|
|
292
|
+
# type: () -> None
|
|
293
|
+
print("Enter")
|
|
294
|
+
|
|
295
|
+
def __exit__(self, exc_type, exc_val, exc_tb):
|
|
296
|
+
# type: (object, object, object) -> None
|
|
297
|
+
print("Exit")
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
from __future__ import print_function
|
|
2
|
+
|
|
3
|
+
from typing import Union
|
|
4
|
+
|
|
5
|
+
from java.lang import Record
|
|
6
|
+
|
|
7
|
+
from com.inductiveautomation.ignition.common.script.abc import ContextManager
|
|
8
|
+
from com.inductiveautomation.ignition.gateway.secrets import Plaintext
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class PyPlaintext(ContextManager):
|
|
12
|
+
def __init__(self, plaintext):
|
|
13
|
+
# type: (Plaintext) -> None
|
|
14
|
+
super(PyPlaintext, self).__init__()
|
|
15
|
+
|
|
16
|
+
def clear(self):
|
|
17
|
+
# type: () -> None
|
|
18
|
+
pass
|
|
19
|
+
|
|
20
|
+
def getSecretsAsBytes(self):
|
|
21
|
+
# type: () -> bytearray
|
|
22
|
+
pass
|
|
23
|
+
|
|
24
|
+
def getSecretsAsString(self, charsetName=None):
|
|
25
|
+
# type: (Union[str, unicode, None]) -> Union[str, unicode]
|
|
26
|
+
pass
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class SecretMeta(Record):
|
|
30
|
+
def __init__(
|
|
31
|
+
self,
|
|
32
|
+
name, # type: Union[str, unicode]
|
|
33
|
+
):
|
|
34
|
+
# type: (...) -> None
|
|
35
|
+
super(SecretMeta, self).__init__()
|
|
36
|
+
self._name = name
|
|
37
|
+
|
|
38
|
+
def name(self):
|
|
39
|
+
# type: () -> Union[str, unicode]
|
|
40
|
+
return self._name
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
class SecretProviderMeta(Record):
|
|
44
|
+
def __init__(
|
|
45
|
+
self,
|
|
46
|
+
name, # type: Union[str, unicode]
|
|
47
|
+
description, # type: Union[str, unicode]
|
|
48
|
+
type_, # type: Union[str, unicode]
|
|
49
|
+
):
|
|
50
|
+
# type: (...) -> None
|
|
51
|
+
super(SecretProviderMeta, self).__init__()
|
|
52
|
+
self._name = name
|
|
53
|
+
self._description = description
|
|
54
|
+
self._type = type_
|
|
55
|
+
|
|
56
|
+
def description(self):
|
|
57
|
+
# type: () -> Union[str, unicode]
|
|
58
|
+
return self._description
|
|
59
|
+
|
|
60
|
+
def name(self):
|
|
61
|
+
# type: () -> Union[str, unicode]
|
|
62
|
+
return self._name
|
|
63
|
+
|
|
64
|
+
def type(self):
|
|
65
|
+
# type: () -> Union[str, unicode]
|
|
66
|
+
return self._type
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
from typing import Optional, Union
|
|
2
|
+
|
|
3
|
+
from java.io import Closeable
|
|
4
|
+
from java.lang import Object
|
|
5
|
+
from java.nio.charset import Charset
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class Plaintext(Object, Closeable):
|
|
9
|
+
def __init__(self):
|
|
10
|
+
# type: () -> None
|
|
11
|
+
super(Plaintext, self).__init__()
|
|
12
|
+
|
|
13
|
+
def clear(self):
|
|
14
|
+
# type: () -> None
|
|
15
|
+
pass
|
|
16
|
+
|
|
17
|
+
def close(self):
|
|
18
|
+
# type: () -> None
|
|
19
|
+
pass
|
|
20
|
+
|
|
21
|
+
@staticmethod
|
|
22
|
+
def fromBytes(bytes):
|
|
23
|
+
# type: (bytearray) -> Plaintext
|
|
24
|
+
return Plaintext()
|
|
25
|
+
|
|
26
|
+
@staticmethod
|
|
27
|
+
def fromString(str, charset=None):
|
|
28
|
+
# type: (Union[str, unicode], Optional[Charset]) -> Plaintext
|
|
29
|
+
return Plaintext()
|
|
30
|
+
|
|
31
|
+
def getAsString(self):
|
|
32
|
+
# type: () -> Union[str, unicode]
|
|
33
|
+
pass
|
|
34
|
+
|
|
35
|
+
def getBytes(self):
|
|
36
|
+
# type: () -> bytearray
|
|
37
|
+
pass
|
|
@@ -83,6 +83,7 @@ src/com/inductiveautomation/ignition/common/script/builtin/http/__init__.py
|
|
|
83
83
|
src/com/inductiveautomation/ignition/common/script/builtin/ialabs/__init__.py
|
|
84
84
|
src/com/inductiveautomation/ignition/common/script/hints/__init__.py
|
|
85
85
|
src/com/inductiveautomation/ignition/common/script/message/__init__.py
|
|
86
|
+
src/com/inductiveautomation/ignition/common/secrets/__init__.py
|
|
86
87
|
src/com/inductiveautomation/ignition/common/sqltags/__init__.py
|
|
87
88
|
src/com/inductiveautomation/ignition/common/sqltags/history/__init__.py
|
|
88
89
|
src/com/inductiveautomation/ignition/common/sqltags/history/annotations/__init__.py
|
|
@@ -105,6 +106,7 @@ src/com/inductiveautomation/ignition/common/xmlserialization/serialization/__ini
|
|
|
105
106
|
src/com/inductiveautomation/ignition/common/xmlserialization/serialization/equalitydelegates/__init__.py
|
|
106
107
|
src/com/inductiveautomation/ignition/gateway/__init__.py
|
|
107
108
|
src/com/inductiveautomation/ignition/gateway/project/__init__.py
|
|
109
|
+
src/com/inductiveautomation/ignition/gateway/secrets/__init__.py
|
|
108
110
|
src/com/inductiveautomation/ignition/modules/__init__.py
|
|
109
111
|
src/com/inductiveautomation/ignition/modules/serial/__init__.py
|
|
110
112
|
src/com/inductiveautomation/ignition/modules/serial/scripting/__init__.py
|
|
@@ -204,6 +206,7 @@ src/system/print.py
|
|
|
204
206
|
src/system/project.py
|
|
205
207
|
src/system/report.py
|
|
206
208
|
src/system/roster.py
|
|
209
|
+
src/system/secrets.py
|
|
207
210
|
src/system/secsgem.py
|
|
208
211
|
src/system/security.py
|
|
209
212
|
src/system/serial.py
|
|
@@ -68,7 +68,6 @@ __all__ = [
|
|
|
68
68
|
"runPrepUpdate",
|
|
69
69
|
"runSFPrepUpdate",
|
|
70
70
|
"runScalarPrepQuery",
|
|
71
|
-
"runUpdateQuery",
|
|
72
71
|
"setDatasourceConnectURL",
|
|
73
72
|
"setDatasourceEnabled",
|
|
74
73
|
"setDatasourceMaxConnections",
|
|
@@ -714,52 +713,6 @@ def runScalarPrepQuery(
|
|
|
714
713
|
return 42
|
|
715
714
|
|
|
716
715
|
|
|
717
|
-
def runUpdateQuery(
|
|
718
|
-
query, # type: Union[str, unicode]
|
|
719
|
-
database="", # type: Union[str, unicode]
|
|
720
|
-
tx=None, # type: Union[str, unicode, None]
|
|
721
|
-
getKey=False, # type: bool
|
|
722
|
-
skipAudit=True, # type: bool
|
|
723
|
-
):
|
|
724
|
-
# type: (...) -> int
|
|
725
|
-
"""Runs a query against a database connection, returning the number
|
|
726
|
-
of rows affected.
|
|
727
|
-
|
|
728
|
-
Typically this is an UPDATE, INSERT, or DELETE query. If no database
|
|
729
|
-
is specified, or the database is the empty-string "", then the
|
|
730
|
-
current project's default database connection will be used.
|
|
731
|
-
|
|
732
|
-
Note:
|
|
733
|
-
You may want to use the runPrepUpdate query if your query is
|
|
734
|
-
constructed with user input (to avoid the user's input from
|
|
735
|
-
breaking your syntax) or if you need to insert binary or BLOB
|
|
736
|
-
data.
|
|
737
|
-
|
|
738
|
-
Args:
|
|
739
|
-
query: A SQL query, usually an INSERT, UPDATE, or DELETE query,
|
|
740
|
-
to run.
|
|
741
|
-
database: The name of the database connection to execute
|
|
742
|
-
against. If omitted or "", the project's default database
|
|
743
|
-
connection will be used.
|
|
744
|
-
tx: A transaction identifier. If omitted, the update will be
|
|
745
|
-
executed in its own transaction.
|
|
746
|
-
getKey: A flag indicating whether or not the result should be
|
|
747
|
-
the number of rows returned (getKey=0) or the newly
|
|
748
|
-
generated key value that was created as a result of the
|
|
749
|
-
update (getKey=1). Not all databases support automatic
|
|
750
|
-
retrieval of generated keys.
|
|
751
|
-
skipAudit: A flag which, if set to True, will cause the update
|
|
752
|
-
query to skip the audit system. Useful for some queries that
|
|
753
|
-
have fields which won't fit into the audit log.
|
|
754
|
-
|
|
755
|
-
Returns:
|
|
756
|
-
The number of rows affected by the query, or the key value that
|
|
757
|
-
was generated, depending on the value of the getKey flag.
|
|
758
|
-
"""
|
|
759
|
-
print(query, database, tx, getKey, skipAudit)
|
|
760
|
-
return 1
|
|
761
|
-
|
|
762
|
-
|
|
763
716
|
def setDatasourceConnectURL(name, connectUrl):
|
|
764
717
|
# type: (Union[str, unicode], Union[str, unicode]) -> None
|
|
765
718
|
"""Changes the connect URL for a given database connection.
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
"""Secrets Functions.
|
|
2
|
+
|
|
3
|
+
The following functions are used to interact with encrypted secrets for
|
|
4
|
+
Secret Providers on the Gateway.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from __future__ import print_function
|
|
8
|
+
|
|
9
|
+
__all__ = [
|
|
10
|
+
"decrypt",
|
|
11
|
+
"encrypt",
|
|
12
|
+
"getProviders",
|
|
13
|
+
"getSecrets",
|
|
14
|
+
"readSecretValue",
|
|
15
|
+
]
|
|
16
|
+
|
|
17
|
+
from typing import Any, Dict, List, Union
|
|
18
|
+
|
|
19
|
+
from com.inductiveautomation.ignition.common.secrets import (
|
|
20
|
+
PyPlaintext,
|
|
21
|
+
SecretMeta,
|
|
22
|
+
SecretProviderMeta,
|
|
23
|
+
)
|
|
24
|
+
from com.inductiveautomation.ignition.gateway.secrets import Plaintext
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
def decrypt(json):
|
|
28
|
+
# type: (Any) -> PyPlaintext
|
|
29
|
+
"""Decrypts the given JSON object containing an encrypted secret
|
|
30
|
+
using the system encryption service.
|
|
31
|
+
|
|
32
|
+
Args:
|
|
33
|
+
json: The JSON object containing the encrypted secret to
|
|
34
|
+
decrypt.
|
|
35
|
+
|
|
36
|
+
Returns:
|
|
37
|
+
The decrypted value of the JSON string.
|
|
38
|
+
"""
|
|
39
|
+
return PyPlaintext(Plaintext.fromString(json))
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def encrypt(*args):
|
|
43
|
+
# type: (*Any) -> Dict[Union[str, unicode], Any]
|
|
44
|
+
"""Encrypts supplied data using the Secrets Management system
|
|
45
|
+
encryption service and returns a JSON object containing the
|
|
46
|
+
encrypted secret.
|
|
47
|
+
|
|
48
|
+
Args:
|
|
49
|
+
*args: Variable length argument list.
|
|
50
|
+
|
|
51
|
+
Returns:
|
|
52
|
+
A PyDictionary containing the encrypted secret or None if the
|
|
53
|
+
JSON is empty.
|
|
54
|
+
"""
|
|
55
|
+
return {
|
|
56
|
+
"ciphertext": None,
|
|
57
|
+
"encrypted_key": None,
|
|
58
|
+
"iv": None,
|
|
59
|
+
"protected": True,
|
|
60
|
+
"tag": None,
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
def getProviders():
|
|
65
|
+
# type: () -> List[SecretProviderMeta]
|
|
66
|
+
"""Returns a list of Secret Providers configured in the Secrets
|
|
67
|
+
Management system on the Gateway. Each list entry includes the name,
|
|
68
|
+
description, and type of the provider.
|
|
69
|
+
|
|
70
|
+
Returns:
|
|
71
|
+
A List of SecretProviderMeta instances that represent all of
|
|
72
|
+
the Secret Providers.
|
|
73
|
+
"""
|
|
74
|
+
return [
|
|
75
|
+
SecretProviderMeta(
|
|
76
|
+
"SecretProviderName", "SecretProviderDescription", "SecretProviderType"
|
|
77
|
+
)
|
|
78
|
+
]
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
def getSecrets(providerName):
|
|
82
|
+
# type: (Union[str, unicode]) -> List[SecretMeta]
|
|
83
|
+
"""Returns a list of objects representing all secrets available for
|
|
84
|
+
the named Secret Provider.
|
|
85
|
+
|
|
86
|
+
Each list entry includes the name of the secret.
|
|
87
|
+
|
|
88
|
+
Args:
|
|
89
|
+
providerName: The name of the Secret Provider to fetch secrets
|
|
90
|
+
from.
|
|
91
|
+
|
|
92
|
+
Returns:
|
|
93
|
+
A list of SecretMeta instances that represent all secret names.
|
|
94
|
+
"""
|
|
95
|
+
print(providerName)
|
|
96
|
+
return [SecretMeta("SecretName")]
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
def readSecretValue(providerName, secretName):
|
|
100
|
+
# type: (Union[str, unicode], Union[str, unicode]) -> PyPlaintext
|
|
101
|
+
"""Reads the plaintext value of a secret given the name of the
|
|
102
|
+
Secret Provider and the name of the secret.
|
|
103
|
+
|
|
104
|
+
Args:
|
|
105
|
+
providerName: The name of the Secret Provider to read the secret
|
|
106
|
+
from.
|
|
107
|
+
secretName: The name of the secret to read.
|
|
108
|
+
|
|
109
|
+
Returns:
|
|
110
|
+
A PyPlaintext instance that contains the secret.
|
|
111
|
+
"""
|
|
112
|
+
print(providerName, secretName)
|
|
113
|
+
return PyPlaintext(Plaintext())
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/google/common/util/concurrent/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/factorypmi/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/historian/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ignition_api-8.3.6.post2 → ignition_api-8.3.7}/src/com/inductiveautomation/ignition/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|