omnata-plugin-devkit 0.10.15a113__tar.gz → 0.10.15a114__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.
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/PKG-INFO +1 -1
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/pyproject.toml +1 -1
- omnata_plugin_devkit-0.10.15a113/src/omnata_plugin_devkit/jinja_templates/CREATE_EXTERNAL_ACCESS_INTEGRATION.sql.jinja +0 -52
- omnata_plugin_devkit-0.10.15a113/src/omnata_plugin_devkit/jinja_templates/DROP_EXTERNAL_ACCESS_OBJECTS.sql.jinja +0 -82
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/LICENSE +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/README.md +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/__init__.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/airbyte_wrapper.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/cli/__init__.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/development.ipynb +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/development_session.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/initialiser.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/API_LIMITS.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/ASSIGN_OUTBOUND_TARGET_TYPE.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/CONFIGURATION_FORM.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/CONFIGURE_APIS.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/CONNECTION_FORM.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/CONNECTION_TEST.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/CONSTRUCT_FORM_OPTION.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/CREATE_BILLING_EVENTS.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/CREATE_GENERIC_SECRET_OBJECT.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/CREATE_GENERIC_SECRET_OBJECT_FROM_EXISTING.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/CREATE_NETWORK_RULE_OBJECT.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/CREATE_NETWORK_RULE_OBJECT_FROM_EXISTING.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/CREATE_OAUTH_SECRET_OBJECT.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/INBOUND_LIST_STREAMS.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/LIST_STAGES.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/NETWORK_ADDRESSES.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/NGROK_POST_TUNNEL_FIELDS.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/OUTBOUND_RECORD_VALIDATOR.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/PENDING_API_CONFIGURATION.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/POST_INSTALL_ACTIONS.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/RENAME_CONNECTION_METHODS.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/RETRIEVE_NETWORK_RULE_OBJECT.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/RETRIEVE_SECRETS.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/RETRIEVE_SECRETS_UDF.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/SYNC.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/TEST_CALLBACK.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/TEST_OAUTH_TOKEN_EXISTS.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/TUNNEL_TEST.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/UPDATE_API_CONFIGURATION.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/UPDATE_GENERIC_SECRET_OBJECT.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/UPDATE_GENERIC_SECRET_OBJECT_OLD.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/UPDATE_NETWORK_RULE_OBJECT.sql.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/jinja_templates/manifest.yml.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/native_app_packaging.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/plugin_registration.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/plugin_template/icon.svg +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/plugin_template/plugin.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/plugin_template/plugin_development.ipynb +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/plugin_template/requirements.txt +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/plugin_uploader.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/__init__.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/__init__.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/api/__init__.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/api/config.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/api/constants.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/api/exceptions.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/api/secure_path.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/api/secure_utils.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/api/utils/__init__.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/api/utils/types.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/app/__init__.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/app/snow_connector.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/plugins/__init__.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/__init__.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/models.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/package/__init__.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/package_utils.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/snowpark_shared.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/venv.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/plugins/snowpark/zipper.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/snowcli/cli/templates/environment.yml.jinja +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/streamlit/plugin_configuration.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/test_step_definitions.py +0 -0
- {omnata_plugin_devkit-0.10.15a113 → omnata_plugin_devkit-0.10.15a114}/src/omnata_plugin_devkit/utils.py +0 -0
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
create or replace procedure PLUGIN.CREATE_EXTERNAL_ACCESS_INTEGRATION(
|
|
2
|
-
EAI_NAME varchar,
|
|
3
|
-
SECRET_NAMES ARRAY,
|
|
4
|
-
NETWORK_RULE_NAMES ARRAY)
|
|
5
|
-
returns object
|
|
6
|
-
language javascript
|
|
7
|
-
COMMENT = $$
|
|
8
|
-
Creates an external access integration, bound to the provided secret(s) and network rule(s)
|
|
9
|
-
$$
|
|
10
|
-
execute as owner
|
|
11
|
-
as
|
|
12
|
-
$$
|
|
13
|
-
try{
|
|
14
|
-
if (SECRET_NAMES === null || SECRET_NAMES === undefined || SECRET_NAMES.length==0){
|
|
15
|
-
throw new Error('Secret names parameter must contain at least one secret');
|
|
16
|
-
}
|
|
17
|
-
if (NETWORK_RULE_NAMES === null || NETWORK_RULE_NAMES === undefined || NETWORK_RULE_NAMES.length==0){
|
|
18
|
-
throw new Error('Network rule names parameter must contain at least one secret');
|
|
19
|
-
}
|
|
20
|
-
var bindings = [EAI_NAME];
|
|
21
|
-
const secretNamesClauses = SECRET_NAMES.map((s)=>{return `'${s}'`}).join(',');
|
|
22
|
-
const networkRuleNamesClauses = NETWORK_RULE_NAMES.map((n)=>{return `'${n}'`}).join(',');
|
|
23
|
-
snowflake.createStatement( {
|
|
24
|
-
sqlText: `CREATE OR REPLACE EXTERNAL ACCESS INTEGRATION IDENTIFIER(?)
|
|
25
|
-
ALLOWED_NETWORK_RULES = (${networkRuleNamesClauses})
|
|
26
|
-
ALLOWED_AUTHENTICATION_SECRETS = (${secretNamesClauses})
|
|
27
|
-
ENABLED = true`,
|
|
28
|
-
binds:bindings
|
|
29
|
-
} ).execute();
|
|
30
|
-
snowflake.createStatement( {
|
|
31
|
-
sqlText: `GRANT USAGE ON INTEGRATION IDENTIFIER(?) TO APPLICATION ROLE OMNATA_MANAGEMENT`,
|
|
32
|
-
binds:[EAI_NAME]
|
|
33
|
-
} ).execute();
|
|
34
|
-
return {
|
|
35
|
-
"success": true,
|
|
36
|
-
"data": null
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
catch(e){
|
|
40
|
-
if (String(e).indexOf('Insufficient privileges to operate on account') > -1){
|
|
41
|
-
e = 'You must grant the plugin application the CREATE EXTERNAL ACCESS INTEGRATION privilege in order to proceed';
|
|
42
|
-
}
|
|
43
|
-
return {
|
|
44
|
-
"success": false,
|
|
45
|
-
"error": `CREATE_EXTERNAL_ACCESS_INTEGRATION: ${String(e)}`
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
$$
|
|
49
|
-
;
|
|
50
|
-
|
|
51
|
-
grant usage on procedure PLUGIN.CREATE_EXTERNAL_ACCESS_INTEGRATION(VARCHAR,ARRAY,ARRAY)
|
|
52
|
-
to application role OMNATA_MANAGEMENT;
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
create or replace procedure PLUGIN.DROP_EXTERNAL_ACCESS_OBJECTS(
|
|
2
|
-
EAI_NAME varchar,
|
|
3
|
-
SECRET_NAMES ARRAY,
|
|
4
|
-
NETWORK_RULE_NAMES ARRAY)
|
|
5
|
-
returns object
|
|
6
|
-
language javascript
|
|
7
|
-
COMMENT = $$
|
|
8
|
-
Drops an external access integration, and associated secrets/network rules.
|
|
9
|
-
Due to Snowflake privilege model changes over time, this is an opportunistic deletion.
|
|
10
|
-
Instead of erroring it will create event log
|
|
11
|
-
errors and provide successflags back to the caller.
|
|
12
|
-
$$
|
|
13
|
-
execute as owner
|
|
14
|
-
as
|
|
15
|
-
$$
|
|
16
|
-
try{
|
|
17
|
-
var droppedEai = false;
|
|
18
|
-
try{
|
|
19
|
-
snowflake.createStatement( {
|
|
20
|
-
sqlText: `DROP EXTERNAL ACCESS INTEGRATION IDENTIFIER(?)`,
|
|
21
|
-
binds:[EAI_NAME]
|
|
22
|
-
} ).execute();
|
|
23
|
-
droppedEai = true;
|
|
24
|
-
}
|
|
25
|
-
catch(e){
|
|
26
|
-
snowflake.log("error", e.message);
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
var droppedSecrets = false;
|
|
30
|
-
try{
|
|
31
|
-
if (SECRET_NAMES !== null && SECRET_NAMES !== undefined && SECRET_NAMES.length > 0){
|
|
32
|
-
for (let i = 0; i < SECRET_NAMES.length; i++) {
|
|
33
|
-
const secretName = SECRET_NAMES[i];
|
|
34
|
-
snowflake.createStatement( {
|
|
35
|
-
sqlText: `DROP SECRET IDENTIFIER(?)`,
|
|
36
|
-
binds:[secretName]
|
|
37
|
-
} ).execute();
|
|
38
|
-
}
|
|
39
|
-
droppedSecrets = true;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
catch(e){
|
|
43
|
-
snowflake.log("error", e.message);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
var droppedNetworkRules=false;
|
|
47
|
-
try{
|
|
48
|
-
if (NETWORK_RULE_NAMES !== null && NETWORK_RULE_NAMES !== undefined && NETWORK_RULE_NAMES.length > 0){
|
|
49
|
-
for (let i = 0; i < NETWORK_RULE_NAMES.length; i++) {
|
|
50
|
-
const ruleName = NETWORK_RULE_NAMES[i];
|
|
51
|
-
snowflake.createStatement( {
|
|
52
|
-
sqlText: `DROP NETWORK RULE IDENTIFIER(?)`,
|
|
53
|
-
binds:[ruleName]
|
|
54
|
-
} ).execute();
|
|
55
|
-
}
|
|
56
|
-
droppedNetworkRules = true;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
catch(e){
|
|
60
|
-
snowflake.log("error", e.message);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
return {
|
|
64
|
-
"success": true,
|
|
65
|
-
"data": {
|
|
66
|
-
"droppedEai":droppedEai,
|
|
67
|
-
"droppedSecrets":droppedSecrets,
|
|
68
|
-
"droppedNetworkRules": droppedNetworkRules
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
catch(e){
|
|
73
|
-
return {
|
|
74
|
-
"success": false,
|
|
75
|
-
"error": `DROP_EXTERNAL_ACCESS_OBJECTS: ${String(e)}`
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
$$
|
|
79
|
-
;
|
|
80
|
-
|
|
81
|
-
grant usage on procedure PLUGIN.DROP_EXTERNAL_ACCESS_OBJECTS(VARCHAR,ARRAY,ARRAY)
|
|
82
|
-
to application role OMNATA_MANAGEMENT;
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|