cid-cmd 4.3.2__tar.gz → 4.3.3__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.
- {cid_cmd-4.3.2/cid_cmd.egg-info → cid_cmd-4.3.3}/PKG-INFO +1 -1
- cid_cmd-4.3.3/cid/_version.py +2 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/common.py +3 -2
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/quicksight/dashboard_patching.py +4 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3/cid_cmd.egg-info}/PKG-INFO +1 -1
- cid_cmd-4.3.2/cid/_version.py +0 -2
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/LICENSE +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/MANIFEST.in +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/README.md +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/__init__.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/base.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/__init__.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/__init__.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/cid/compute.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/cid/ec2_running_cost.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/cid/s3_view.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/cid/summary_view.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/co/dataset.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/cudos/hourly_view.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/cudos/resource_view.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/kpi/kpi_ebs_snap.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/kpi/kpi_ebs_storage_all.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/kpi/kpi_instance_all.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/kpi/kpi_s3_storage_all.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/kpi/kpi_tracker.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/shared/customer_all.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/tao/dataset.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/trends/daily_anomaly_detection.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/trends/monthly_anomaly_detection.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/trends/monthly_bill_by_account.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/permissions/dashboard_permissions.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/permissions/dashboard_permissions_namespace.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/permissions/data_set_permissions.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/permissions/data_set_rls_permissions.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/permissions/data_source_permissions.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/permissions/folder_permissions.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/cid/compute_savings_plan_eligible_spend.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/cid/ec2_running_cost.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/cid/ri_sp_mapping.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/cid/s3.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/cid/summary_view.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/all_options.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/auto_scale.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/auto_scale_options.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/ebs_volume.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/ebs_volume_options.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/ec2_instance.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/ec2_instance_options.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/ecs_service.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/ecs_service_options.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/idle.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/idle_options.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/lambda.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/lambda_options.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/license.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/license_options.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/rds_database.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/rds_instance_options.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/co/rds_storage_options.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/cudos/hourly_view.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/cudos/resource_view.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/kpi/first_kpi_instance_mapping_view.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/kpi/kpi_ebs_snap_view.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/kpi/kpi_ebs_storage_view.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/kpi/kpi_instance_all_view.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/kpi/kpi_s3_storage_view.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/kpi/last_kpi_tracker_view.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/account_map.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/account_map_cur2.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/account_map_dummy.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/aws_accounts.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/aws_regions.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/aws_service_category_map.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/business_units_map.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/cur.yaml +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/customer_all_unlimited.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/payer_account_name_map.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/ta_descriptions.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/tao/glue_table.json +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/tao/ta_org_view.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/trends/daily_anomaly_detection.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/trends/monthly_anomaly_detection.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/trends/monthly_bill_by_account.sql +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/resources.yaml +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/cli.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/commands/__init__.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/commands/command_base.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/commands/init_qs.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/exceptions.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/export.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/__init__.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/account_map.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/athena.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/cloudformation.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/csv2view.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/cur.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/cur_proxy.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/diff.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/glue.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/iam.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/organizations.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/parameter_store.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/quicksight/__init__.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/quicksight/dashboard.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/quicksight/dataset.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/quicksight/datasource.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/quicksight/definition.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/quicksight/resource.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/quicksight/template.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/quicksight/version.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/randtime.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/s3.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/helpers/timezone.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/logger.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/plugin.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/test/python/test_csv2view.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/test/python/test_isolated_parameters.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/test/python/test_merge.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/utils.py +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid_cmd.egg-info/SOURCES.txt +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid_cmd.egg-info/dependency_links.txt +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid_cmd.egg-info/entry_points.txt +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid_cmd.egg-info/requires.txt +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid_cmd.egg-info/top_level.txt +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/pyproject.toml +0 -0
- {cid_cmd-4.3.2 → cid_cmd-4.3.3}/setup.cfg +0 -0
|
@@ -391,6 +391,7 @@ class Cid():
|
|
|
391
391
|
def get_template_parameters(self, parameters: dict, param_prefix: str='', others: dict=None):
|
|
392
392
|
""" Get template parameters. """
|
|
393
393
|
params = get_parameters()
|
|
394
|
+
others = others or {}
|
|
394
395
|
for key, value in parameters.items():
|
|
395
396
|
logger.debug(f'reading template parameter: {key} / {value}')
|
|
396
397
|
prefix = '' if value.get('global') else param_prefix
|
|
@@ -1295,7 +1296,7 @@ class Cid():
|
|
|
1295
1296
|
|
|
1296
1297
|
# get rls status of existing datasets
|
|
1297
1298
|
found_dataset_objects = [self.qs.describe_dataset(ds_id) for ds_id in found_datasets]
|
|
1298
|
-
rls_dataset_arns = [ds.rls_arn for ds in found_dataset_objects if ds.rls_arn]
|
|
1299
|
+
rls_dataset_arns = [ds.rls_arn for ds in found_dataset_objects if ds and ds.rls_arn]
|
|
1299
1300
|
if rls_dataset_arns:
|
|
1300
1301
|
rls_dataset_arn = max(set(rls_dataset_arns), key=rls_dataset_arns.count) #get the most frequent
|
|
1301
1302
|
if not get_parameters().get('rls-dataset-id') and not get_parameters().get('rls'):
|
|
@@ -1624,7 +1625,7 @@ class Cid():
|
|
|
1624
1625
|
except (KeyError, TypeError, AttributeError):
|
|
1625
1626
|
tags_type = None
|
|
1626
1627
|
try:
|
|
1627
|
-
param_res_tag = self.resources['views'][dep_view_name]['parameters']['
|
|
1628
|
+
param_res_tag = self.resources['views'][dep_view_name]['parameters']['resource_tags']
|
|
1628
1629
|
except (KeyError, TypeError, AttributeError):
|
|
1629
1630
|
param_res_tag = None
|
|
1630
1631
|
if tags_type == 'json' or param_res_tag:
|
|
@@ -31,7 +31,11 @@ def format_field_name(field_name: str, ignore_prefix: bool=False) -> str:
|
|
|
31
31
|
assert format_field_name('a_c_r_o_n_y_m') == 'ACRONYM'
|
|
32
32
|
assert format_field_name('tag_a_c_r_o_n_y_m') == 'Tag ACRONYM'
|
|
33
33
|
assert format_field_name('tag_service') == 'Tag Service'
|
|
34
|
+
assert format_field_name('ServiceCode') == 'Service Code'
|
|
34
35
|
"""
|
|
36
|
+
# First, handle camelCase by inserting underscores before uppercase letters
|
|
37
|
+
field_name = re.sub(r'([a-z])([A-Z])', r'\1_\2', field_name) # This converts "ServiceCode" to "Service_Code"
|
|
38
|
+
field_name = field_name.lower()
|
|
35
39
|
parts = field_name.split('_')
|
|
36
40
|
result = []
|
|
37
41
|
i = 0
|
cid_cmd-4.3.2/cid/_version.py
DELETED
|
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
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/trends/daily_anomaly_detection.json
RENAMED
|
File without changes
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/trends/monthly_anomaly_detection.json
RENAMED
|
File without changes
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/datasets/trends/monthly_bill_by_account.json
RENAMED
|
File without changes
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/permissions/dashboard_permissions.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/permissions/data_set_rls_permissions.json
RENAMED
|
File without changes
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/permissions/data_source_permissions.json
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
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/aws_service_category_map.sql
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/customer_all_unlimited.sql
RENAMED
|
File without changes
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/shared/payer_account_name_map.sql
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/trends/daily_anomaly_detection.sql
RENAMED
|
File without changes
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/trends/monthly_anomaly_detection.sql
RENAMED
|
File without changes
|
{cid_cmd-4.3.2 → cid_cmd-4.3.3}/cid/builtin/core/data/queries/trends/monthly_bill_by_account.sql
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
|