antioch-py 2.0.5__tar.gz → 2.0.6__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.
Potentially problematic release.
This version of antioch-py might be problematic. Click here for more details.
- {antioch_py-2.0.5/antioch_py.egg-info → antioch_py-2.0.6}/PKG-INFO +1 -1
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/scene.py +27 -6
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/pir_sensor.py +1 -1
- {antioch_py-2.0.5 → antioch_py-2.0.6/antioch_py.egg-info}/PKG-INFO +1 -1
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/pir.py +2 -1
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/pir_sensor.py +17 -6
- {antioch_py-2.0.5 → antioch_py-2.0.6}/pyproject.toml +1 -1
- {antioch_py-2.0.5 → antioch_py-2.0.6}/MANIFEST.in +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/README.md +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/README.pypi.md +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/message.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/module/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/module/clock.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/module/execution.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/module/input.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/module/module.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/module/node.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/module/token.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/ark.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/asset.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/error.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/record.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/session.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/task.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/animation.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/articulation.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/basis_curve.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/camera.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/collision.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/geometry.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/ground_plane.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/imu.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/joint.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/light.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/radar.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/rigid_body.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch/session/views/xform.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch_py.egg-info/SOURCES.txt +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch_py.egg-info/dependency_links.txt +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch_py.egg-info/entry_points.txt +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch_py.egg-info/requires.txt +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/antioch_py.egg-info/top_level.txt +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/ark/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/ark/ark.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/ark/hardware.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/ark/kinematics.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/ark/module.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/ark/node.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/ark/scheduler.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/ark/sim.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/assets/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/constants.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/core/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/core/agent.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/core/auth.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/core/registry.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/core/task.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/annotation.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/array.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/base.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/camera.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/color.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/frame.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/image.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/imu.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/joint.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/log.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/point.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/point_cloud.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/pose.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/quaternion.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/radar.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/types.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/message/vector.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/rome/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/rome/client.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/rome/error.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/environment.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/sim.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/animation.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/articulation.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/basis_curve.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/camera.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/collision.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/geometry.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/ground_plane.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/imu.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/joint.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/light.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/radar.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/rigid_body.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/viewport.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/session/views/xform.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/utils/__init__.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/utils/comms.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/utils/logger.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/utils/time.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/common/utils/usd.py +0 -0
- {antioch_py-2.0.5 → antioch_py-2.0.6}/setup.cfg +0 -0
|
@@ -1334,21 +1334,28 @@ class Scene(SessionContainer):
|
|
|
1334
1334
|
max_range: float = 12.0,
|
|
1335
1335
|
horiz_fov_deg: float = 90.0,
|
|
1336
1336
|
vert_fov_deg: float = 60.0,
|
|
1337
|
-
num_elements: int = 2,
|
|
1338
1337
|
rays_per_h: int = 64,
|
|
1339
1338
|
rays_per_v: int = 16,
|
|
1340
1339
|
gain: float = 0.01,
|
|
1341
1340
|
hp_corner_hz: float = 0.1,
|
|
1342
|
-
lp_corner_hz: float =
|
|
1341
|
+
lp_corner_hz: float = 3.0,
|
|
1343
1342
|
threshold: float | None = None,
|
|
1344
1343
|
threshold_scale: float = 1.0,
|
|
1345
1344
|
hold_time_s: float = 2.0,
|
|
1346
1345
|
lens_transmission: float = 0.9,
|
|
1347
|
-
lens_segments_h: int =
|
|
1346
|
+
lens_segments_h: int = 6,
|
|
1347
|
+
vertical_gain_falloff: float = 0.5,
|
|
1348
|
+
element_fov_overlap_deg: float = 20.0,
|
|
1349
|
+
element_scatter_gain: float = 0.1,
|
|
1350
|
+
element_fov_transition_deg: float = 15.0,
|
|
1348
1351
|
ambient_temp_c: float = 20.0,
|
|
1352
|
+
thermal_time_constant_s: float = 0.2,
|
|
1353
|
+
pyro_responsivity: float = 1.0,
|
|
1354
|
+
noise_amplitude: float = 0.0,
|
|
1349
1355
|
target_delta_t: float = 10.0,
|
|
1350
1356
|
target_distance: float = 5.0,
|
|
1351
1357
|
target_emissivity: float = 0.98,
|
|
1358
|
+
target_velocity_mps: float = 1.0,
|
|
1352
1359
|
world_pose: Pose | dict | None = None,
|
|
1353
1360
|
local_pose: Pose | dict | None = None,
|
|
1354
1361
|
) -> PirSensor:
|
|
@@ -1364,7 +1371,6 @@ class Scene(SessionContainer):
|
|
|
1364
1371
|
:param max_range: Maximum detection range in meters.
|
|
1365
1372
|
:param horiz_fov_deg: Horizontal field of view in degrees.
|
|
1366
1373
|
:param vert_fov_deg: Vertical field of view in degrees.
|
|
1367
|
-
:param num_elements: Number of sensing elements (typically 2).
|
|
1368
1374
|
:param rays_per_h: Number of rays in horizontal direction.
|
|
1369
1375
|
:param rays_per_v: Number of rays in vertical direction.
|
|
1370
1376
|
:param gain: Amplifier gain.
|
|
@@ -1374,11 +1380,19 @@ class Scene(SessionContainer):
|
|
|
1374
1380
|
:param threshold_scale: Scale factor applied to auto-calibrated threshold.
|
|
1375
1381
|
:param hold_time_s: Detection hold time in seconds.
|
|
1376
1382
|
:param lens_transmission: Lens transmission coefficient (0-1).
|
|
1377
|
-
:param lens_segments_h: Number of horizontal lens segments
|
|
1383
|
+
:param lens_segments_h: Number of horizontal lens segments (sinusoidal sensitivity peaks).
|
|
1384
|
+
:param vertical_gain_falloff: Exponent for elevation-based gain reduction (0=uniform).
|
|
1385
|
+
:param element_fov_overlap_deg: Half-angle of center region where both elements see well (degrees).
|
|
1386
|
+
:param element_scatter_gain: Minimum gain for blocked element due to scatter/reflections (0-1).
|
|
1387
|
+
:param element_fov_transition_deg: Width of soft transition from full gain to scatter gain (degrees).
|
|
1378
1388
|
:param ambient_temp_c: Ambient temperature in Celsius.
|
|
1389
|
+
:param thermal_time_constant_s: Pyroelectric element thermal time constant in seconds.
|
|
1390
|
+
:param pyro_responsivity: Pyroelectric responsivity scaling factor.
|
|
1391
|
+
:param noise_amplitude: Thermal/electronic noise amplitude.
|
|
1379
1392
|
:param target_delta_t: Target temperature difference for threshold calibration in Celsius.
|
|
1380
1393
|
:param target_distance: Target distance for threshold calibration in meters.
|
|
1381
1394
|
:param target_emissivity: Target emissivity for threshold calibration.
|
|
1395
|
+
:param target_velocity_mps: Target velocity for threshold calibration in m/s.
|
|
1382
1396
|
:param world_pose: Optional world pose.
|
|
1383
1397
|
:param local_pose: Optional local pose.
|
|
1384
1398
|
:return: The PIR sensor instance.
|
|
@@ -1390,7 +1404,6 @@ class Scene(SessionContainer):
|
|
|
1390
1404
|
max_range=max_range,
|
|
1391
1405
|
horiz_fov_deg=horiz_fov_deg,
|
|
1392
1406
|
vert_fov_deg=vert_fov_deg,
|
|
1393
|
-
num_elements=num_elements,
|
|
1394
1407
|
rays_per_h=rays_per_h,
|
|
1395
1408
|
rays_per_v=rays_per_v,
|
|
1396
1409
|
gain=gain,
|
|
@@ -1401,10 +1414,18 @@ class Scene(SessionContainer):
|
|
|
1401
1414
|
hold_time_s=hold_time_s,
|
|
1402
1415
|
lens_transmission=lens_transmission,
|
|
1403
1416
|
lens_segments_h=lens_segments_h,
|
|
1417
|
+
vertical_gain_falloff=vertical_gain_falloff,
|
|
1418
|
+
element_fov_overlap_deg=element_fov_overlap_deg,
|
|
1419
|
+
element_scatter_gain=element_scatter_gain,
|
|
1420
|
+
element_fov_transition_deg=element_fov_transition_deg,
|
|
1404
1421
|
ambient_temp_c=ambient_temp_c,
|
|
1422
|
+
thermal_time_constant_s=thermal_time_constant_s,
|
|
1423
|
+
pyro_responsivity=pyro_responsivity,
|
|
1424
|
+
noise_amplitude=noise_amplitude,
|
|
1405
1425
|
target_delta_t=target_delta_t,
|
|
1406
1426
|
target_distance=target_distance,
|
|
1407
1427
|
target_emissivity=target_emissivity,
|
|
1428
|
+
target_velocity_mps=target_velocity_mps,
|
|
1408
1429
|
)
|
|
1409
1430
|
|
|
1410
1431
|
return PirSensor.add(
|
|
@@ -81,7 +81,7 @@ class PirSensor(SessionContainer):
|
|
|
81
81
|
"""
|
|
82
82
|
Get current detection status.
|
|
83
83
|
|
|
84
|
-
:return: Detection status with is_detected, signal_strength, threshold, and
|
|
84
|
+
:return: Detection status with is_detected, signal_strength, threshold, element_flux, and element_signal.
|
|
85
85
|
"""
|
|
86
86
|
|
|
87
87
|
status = self._session.query_sim_rpc(
|
|
@@ -12,4 +12,5 @@ class PirStatus(Message):
|
|
|
12
12
|
is_detected: bool = Field(description="Whether motion is currently detected")
|
|
13
13
|
signal_strength: float = Field(description="Current analog signal value after filtering")
|
|
14
14
|
threshold: float = Field(description="Current detection threshold")
|
|
15
|
-
|
|
15
|
+
element_flux: list[float] = Field(default_factory=list, description="Raw accumulated IR flux per element")
|
|
16
|
+
element_signal: list[float] = Field(default_factory=list, description="Pyroelectric voltage signal per element (proportional to dT/dt)")
|
|
@@ -12,28 +12,33 @@ class PirSensorConfig(Message):
|
|
|
12
12
|
"""
|
|
13
13
|
|
|
14
14
|
# Core sensor parameters
|
|
15
|
-
update_rate_hz: float = Field(default=
|
|
15
|
+
update_rate_hz: float = Field(default=60.0, description="Sensor update frequency in Hz")
|
|
16
16
|
max_range: float = Field(default=12.0, description="Maximum detection range in meters")
|
|
17
17
|
|
|
18
18
|
# Field of view
|
|
19
19
|
horiz_fov_deg: float = Field(default=90.0, description="Horizontal field of view in degrees")
|
|
20
20
|
vert_fov_deg: float = Field(default=60.0, description="Vertical field of view in degrees")
|
|
21
21
|
|
|
22
|
-
#
|
|
23
|
-
|
|
24
|
-
rays_per_h: int = Field(default=64, description="Number of rays in horizontal direction")
|
|
22
|
+
# Ray configuration
|
|
23
|
+
rays_per_h: int = Field(default=128, description="Number of rays in horizontal direction")
|
|
25
24
|
rays_per_v: int = Field(default=16, description="Number of rays in vertical direction")
|
|
26
25
|
|
|
27
26
|
# DSP / electronics parameters
|
|
28
27
|
gain: float = Field(default=0.01, description="Amplifier gain")
|
|
29
28
|
hp_corner_hz: float = Field(default=0.1, description="High-pass filter corner frequency in Hz")
|
|
30
|
-
lp_corner_hz: float = Field(default=
|
|
29
|
+
lp_corner_hz: float = Field(default=1.0, description="Low-pass filter corner frequency in Hz")
|
|
31
30
|
|
|
32
31
|
hold_time_s: float = Field(default=2.0, description="Detection hold time in seconds")
|
|
33
32
|
|
|
34
33
|
# Lens parameters
|
|
35
34
|
lens_transmission: float = Field(default=0.9, description="Lens transmission coefficient (0-1)")
|
|
36
|
-
lens_segments_h: int = Field(default=
|
|
35
|
+
lens_segments_h: int = Field(default=6, description="Number of horizontal lens segments (facets)")
|
|
36
|
+
vertical_gain_falloff: float = Field(default=0.5, description="Exponent for elevation-based gain reduction (0=uniform)")
|
|
37
|
+
|
|
38
|
+
# Element vignetting parameters (models window blocking effect)
|
|
39
|
+
element_fov_overlap_deg: float = Field(default=20.0, description="Half-angle of center region where both elements see well (degrees)")
|
|
40
|
+
element_scatter_gain: float = Field(default=0.1, description="Minimum gain for blocked element due to scatter/reflections (0-1)")
|
|
41
|
+
element_fov_transition_deg: float = Field(default=15.0, description="Width of soft transition from full gain to scatter gain (degrees)")
|
|
37
42
|
|
|
38
43
|
# Environment parameters
|
|
39
44
|
ambient_temp_c: float = Field(default=20.0, description="Ambient temperature in Celsius")
|
|
@@ -42,10 +47,16 @@ class PirSensorConfig(Message):
|
|
|
42
47
|
threshold: float | None = Field(default=None, description="Detection threshold (auto-calibrated if None)")
|
|
43
48
|
threshold_scale: float = Field(default=1.0, description="Scale factor applied to auto-calibrated threshold")
|
|
44
49
|
|
|
50
|
+
# Pyroelectric element parameters
|
|
51
|
+
thermal_time_constant_s: float = Field(default=0.2, description="Element thermal time constant in seconds")
|
|
52
|
+
pyro_responsivity: float = Field(default=1.0, description="Pyroelectric responsivity scaling factor")
|
|
53
|
+
noise_amplitude: float = Field(default=0.0, description="Thermal/electronic noise amplitude")
|
|
54
|
+
|
|
45
55
|
# Auto-threshold calibration parameters
|
|
46
56
|
target_delta_t: float = Field(default=10.0, description="Target temperature difference for threshold calibration in Celsius")
|
|
47
57
|
target_distance: float = Field(default=5.0, description="Target distance for threshold calibration in meters")
|
|
48
58
|
target_emissivity: float = Field(default=0.98, description="Target emissivity for threshold calibration")
|
|
59
|
+
target_velocity_mps: float = Field(default=1.0, description="Target velocity for threshold calibration in m/s")
|
|
49
60
|
|
|
50
61
|
|
|
51
62
|
class GetPirSensor(Message):
|
|
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
|
|
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
|