current-cli 0.1.62__tar.gz → 0.1.64__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.
- {current_cli-0.1.62 → current_cli-0.1.64}/PKG-INFO +1 -1
- {current_cli-0.1.62 → current_cli-0.1.64}/current_cli/docs.py +2 -1
- {current_cli-0.1.62 → current_cli-0.1.64}/current_cli/schema.yml +346 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/llms.txt +38 -1
- {current_cli-0.1.62 → current_cli-0.1.64}/pyproject.toml +1 -1
- {current_cli-0.1.62 → current_cli-0.1.64}/tests/test_docs.py +13 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/.gitignore +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/README.md +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/current_cli/__init__.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/current_cli/build.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/current_cli/config.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/current_cli/http.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/current_cli/main.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/current_cli/schema.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/scripts/bump_version.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/tests/__init__.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/tests/conftest.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/tests/test_auth.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/tests/test_bump_version.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/tests/test_command_tree.py +0 -0
- {current_cli-0.1.62 → current_cli-0.1.64}/tests/test_requests.py +0 -0
|
@@ -7,6 +7,7 @@ is stale. Regenerate with: uv run python -m current_cli.docs > llms.txt
|
|
|
7
7
|
from __future__ import annotations
|
|
8
8
|
|
|
9
9
|
from collections.abc import Iterator
|
|
10
|
+
from inspect import cleandoc
|
|
10
11
|
|
|
11
12
|
import click
|
|
12
13
|
|
|
@@ -70,7 +71,7 @@ def render_docs(root: click.Group) -> str:
|
|
|
70
71
|
lines = [f"### {usage}"]
|
|
71
72
|
if command.help:
|
|
72
73
|
lines.append("")
|
|
73
|
-
lines.append(command.help
|
|
74
|
+
lines.append(cleandoc(command.help))
|
|
74
75
|
if options:
|
|
75
76
|
lines.append("")
|
|
76
77
|
lines.append("Options:")
|
|
@@ -250,6 +250,149 @@ paths:
|
|
|
250
250
|
schema:
|
|
251
251
|
$ref: '#/components/schemas/VerifyMagicLinkResponse'
|
|
252
252
|
description: ''
|
|
253
|
+
/api/accounts/credential-requests/:
|
|
254
|
+
get:
|
|
255
|
+
operationId: accounts_credential_requests_list
|
|
256
|
+
tags:
|
|
257
|
+
- accounts
|
|
258
|
+
security:
|
|
259
|
+
- MessagingJobTokenAuth: []
|
|
260
|
+
- tokenAuth: []
|
|
261
|
+
responses:
|
|
262
|
+
'200':
|
|
263
|
+
content:
|
|
264
|
+
application/json:
|
|
265
|
+
schema:
|
|
266
|
+
type: array
|
|
267
|
+
items:
|
|
268
|
+
$ref: '#/components/schemas/CredentialRequestList'
|
|
269
|
+
description: ''
|
|
270
|
+
post:
|
|
271
|
+
operationId: accounts_credential_requests_create
|
|
272
|
+
tags:
|
|
273
|
+
- accounts
|
|
274
|
+
requestBody:
|
|
275
|
+
content:
|
|
276
|
+
application/json:
|
|
277
|
+
schema:
|
|
278
|
+
$ref: '#/components/schemas/CreateCredentialRequestRequest'
|
|
279
|
+
application/x-www-form-urlencoded:
|
|
280
|
+
schema:
|
|
281
|
+
$ref: '#/components/schemas/CreateCredentialRequestRequest'
|
|
282
|
+
multipart/form-data:
|
|
283
|
+
schema:
|
|
284
|
+
$ref: '#/components/schemas/CreateCredentialRequestRequest'
|
|
285
|
+
required: true
|
|
286
|
+
security:
|
|
287
|
+
- MessagingJobTokenAuth: []
|
|
288
|
+
- tokenAuth: []
|
|
289
|
+
responses:
|
|
290
|
+
'201':
|
|
291
|
+
content:
|
|
292
|
+
application/json:
|
|
293
|
+
schema:
|
|
294
|
+
$ref: '#/components/schemas/CredentialRequestCreated'
|
|
295
|
+
description: ''
|
|
296
|
+
/api/accounts/credential-requests/{request_id}/read/:
|
|
297
|
+
get:
|
|
298
|
+
operationId: accounts_credential_requests_read_retrieve
|
|
299
|
+
parameters:
|
|
300
|
+
- in: path
|
|
301
|
+
name: request_id
|
|
302
|
+
schema:
|
|
303
|
+
type: string
|
|
304
|
+
format: uuid
|
|
305
|
+
required: true
|
|
306
|
+
tags:
|
|
307
|
+
- accounts
|
|
308
|
+
security:
|
|
309
|
+
- MessagingJobTokenAuth: []
|
|
310
|
+
- tokenAuth: []
|
|
311
|
+
responses:
|
|
312
|
+
'200':
|
|
313
|
+
content:
|
|
314
|
+
application/json:
|
|
315
|
+
schema:
|
|
316
|
+
$ref: '#/components/schemas/CredentialRequestRead'
|
|
317
|
+
description: ''
|
|
318
|
+
/api/accounts/credential-requests/code/:
|
|
319
|
+
post:
|
|
320
|
+
operationId: accounts_credential_requests_code_create
|
|
321
|
+
tags:
|
|
322
|
+
- accounts
|
|
323
|
+
requestBody:
|
|
324
|
+
content:
|
|
325
|
+
application/json:
|
|
326
|
+
schema:
|
|
327
|
+
$ref: '#/components/schemas/CredentialTokenRequest'
|
|
328
|
+
application/x-www-form-urlencoded:
|
|
329
|
+
schema:
|
|
330
|
+
$ref: '#/components/schemas/CredentialTokenRequest'
|
|
331
|
+
multipart/form-data:
|
|
332
|
+
schema:
|
|
333
|
+
$ref: '#/components/schemas/CredentialTokenRequest'
|
|
334
|
+
required: true
|
|
335
|
+
security:
|
|
336
|
+
- {}
|
|
337
|
+
responses:
|
|
338
|
+
'200':
|
|
339
|
+
content:
|
|
340
|
+
application/json:
|
|
341
|
+
schema:
|
|
342
|
+
$ref: '#/components/schemas/CredentialCodeSent'
|
|
343
|
+
description: ''
|
|
344
|
+
/api/accounts/credential-requests/submit/:
|
|
345
|
+
post:
|
|
346
|
+
operationId: accounts_credential_requests_submit_create
|
|
347
|
+
tags:
|
|
348
|
+
- accounts
|
|
349
|
+
requestBody:
|
|
350
|
+
content:
|
|
351
|
+
application/json:
|
|
352
|
+
schema:
|
|
353
|
+
$ref: '#/components/schemas/SubmitCredentialsRequest'
|
|
354
|
+
application/x-www-form-urlencoded:
|
|
355
|
+
schema:
|
|
356
|
+
$ref: '#/components/schemas/SubmitCredentialsRequest'
|
|
357
|
+
multipart/form-data:
|
|
358
|
+
schema:
|
|
359
|
+
$ref: '#/components/schemas/SubmitCredentialsRequest'
|
|
360
|
+
required: true
|
|
361
|
+
security:
|
|
362
|
+
- {}
|
|
363
|
+
responses:
|
|
364
|
+
'200':
|
|
365
|
+
content:
|
|
366
|
+
application/json:
|
|
367
|
+
schema:
|
|
368
|
+
$ref: '#/components/schemas/CredentialsSubmitted'
|
|
369
|
+
description: ''
|
|
370
|
+
/api/accounts/credential-requests/verify/:
|
|
371
|
+
post:
|
|
372
|
+
operationId: accounts_credential_requests_verify_create
|
|
373
|
+
tags:
|
|
374
|
+
- accounts
|
|
375
|
+
requestBody:
|
|
376
|
+
content:
|
|
377
|
+
application/json:
|
|
378
|
+
schema:
|
|
379
|
+
$ref: '#/components/schemas/CredentialCodeRequest'
|
|
380
|
+
application/x-www-form-urlencoded:
|
|
381
|
+
schema:
|
|
382
|
+
$ref: '#/components/schemas/CredentialCodeRequest'
|
|
383
|
+
multipart/form-data:
|
|
384
|
+
schema:
|
|
385
|
+
$ref: '#/components/schemas/CredentialCodeRequest'
|
|
386
|
+
required: true
|
|
387
|
+
security:
|
|
388
|
+
- {}
|
|
389
|
+
responses:
|
|
390
|
+
'200':
|
|
391
|
+
content:
|
|
392
|
+
application/json:
|
|
393
|
+
schema:
|
|
394
|
+
$ref: '#/components/schemas/CredentialCodeVerified'
|
|
395
|
+
description: ''
|
|
253
396
|
/api/contacts/contacts/:
|
|
254
397
|
get:
|
|
255
398
|
operationId: contacts_contacts_list
|
|
@@ -2344,6 +2487,20 @@ paths:
|
|
|
2344
2487
|
schema:
|
|
2345
2488
|
type: string
|
|
2346
2489
|
description: Keep only projects whose name contains this text, ignoring case
|
|
2490
|
+
- in: query
|
|
2491
|
+
name: readiness
|
|
2492
|
+
schema:
|
|
2493
|
+
type: string
|
|
2494
|
+
enum:
|
|
2495
|
+
- all
|
|
2496
|
+
- blocked
|
|
2497
|
+
- complete
|
|
2498
|
+
- incomplete
|
|
2499
|
+
- not_assessed
|
|
2500
|
+
- ready
|
|
2501
|
+
- unverified
|
|
2502
|
+
description: Filter evidence readiness independently of the existing status
|
|
2503
|
+
filter.
|
|
2347
2504
|
- in: query
|
|
2348
2505
|
name: status
|
|
2349
2506
|
schema:
|
|
@@ -5452,6 +5609,16 @@ components:
|
|
|
5452
5609
|
- client_secret
|
|
5453
5610
|
- login_host
|
|
5454
5611
|
- workspace
|
|
5612
|
+
CloseoutCompletionEnum:
|
|
5613
|
+
enum:
|
|
5614
|
+
- complete
|
|
5615
|
+
- incomplete
|
|
5616
|
+
- unverified
|
|
5617
|
+
type: string
|
|
5618
|
+
description: |-
|
|
5619
|
+
* `complete` - complete
|
|
5620
|
+
* `incomplete` - incomplete
|
|
5621
|
+
* `unverified` - unverified
|
|
5455
5622
|
CloseoutQueueItem:
|
|
5456
5623
|
type: object
|
|
5457
5624
|
description: One project on a closeout queue page.
|
|
@@ -5525,6 +5692,19 @@ components:
|
|
|
5525
5692
|
outcome:
|
|
5526
5693
|
type: string
|
|
5527
5694
|
nullable: true
|
|
5695
|
+
property_handoff:
|
|
5696
|
+
nullable: true
|
|
5697
|
+
oneOf:
|
|
5698
|
+
- $ref: '#/components/schemas/PropertyHandoffEnum'
|
|
5699
|
+
- $ref: '#/components/schemas/NullEnum'
|
|
5700
|
+
closeout_completion:
|
|
5701
|
+
nullable: true
|
|
5702
|
+
oneOf:
|
|
5703
|
+
- $ref: '#/components/schemas/CloseoutCompletionEnum'
|
|
5704
|
+
- $ref: '#/components/schemas/NullEnum'
|
|
5705
|
+
policy_id:
|
|
5706
|
+
type: string
|
|
5707
|
+
nullable: true
|
|
5528
5708
|
open_outcome:
|
|
5529
5709
|
type: string
|
|
5530
5710
|
nullable: true
|
|
@@ -5778,6 +5958,140 @@ components:
|
|
|
5778
5958
|
required:
|
|
5779
5959
|
- name
|
|
5780
5960
|
- workspace
|
|
5961
|
+
CreateCredentialRequestRequest:
|
|
5962
|
+
type: object
|
|
5963
|
+
properties:
|
|
5964
|
+
recipient_email:
|
|
5965
|
+
type: string
|
|
5966
|
+
format: email
|
|
5967
|
+
minLength: 1
|
|
5968
|
+
label:
|
|
5969
|
+
type: string
|
|
5970
|
+
minLength: 1
|
|
5971
|
+
maxLength: 160
|
|
5972
|
+
required:
|
|
5973
|
+
- label
|
|
5974
|
+
- recipient_email
|
|
5975
|
+
CredentialCodeRequest:
|
|
5976
|
+
type: object
|
|
5977
|
+
properties:
|
|
5978
|
+
token:
|
|
5979
|
+
type: string
|
|
5980
|
+
minLength: 1
|
|
5981
|
+
maxLength: 64
|
|
5982
|
+
code:
|
|
5983
|
+
type: string
|
|
5984
|
+
minLength: 1
|
|
5985
|
+
pattern: ^\d{6}$
|
|
5986
|
+
required:
|
|
5987
|
+
- code
|
|
5988
|
+
- token
|
|
5989
|
+
CredentialCodeSent:
|
|
5990
|
+
type: object
|
|
5991
|
+
properties:
|
|
5992
|
+
detail:
|
|
5993
|
+
type: string
|
|
5994
|
+
required:
|
|
5995
|
+
- detail
|
|
5996
|
+
CredentialCodeVerified:
|
|
5997
|
+
type: object
|
|
5998
|
+
properties:
|
|
5999
|
+
ticket:
|
|
6000
|
+
type: string
|
|
6001
|
+
required:
|
|
6002
|
+
- ticket
|
|
6003
|
+
CredentialRequestCreated:
|
|
6004
|
+
type: object
|
|
6005
|
+
properties:
|
|
6006
|
+
id:
|
|
6007
|
+
type: string
|
|
6008
|
+
format: uuid
|
|
6009
|
+
url:
|
|
6010
|
+
type: string
|
|
6011
|
+
expires_at:
|
|
6012
|
+
type: string
|
|
6013
|
+
format: date-time
|
|
6014
|
+
required:
|
|
6015
|
+
- expires_at
|
|
6016
|
+
- id
|
|
6017
|
+
- url
|
|
6018
|
+
CredentialRequestList:
|
|
6019
|
+
type: object
|
|
6020
|
+
properties:
|
|
6021
|
+
id:
|
|
6022
|
+
type: string
|
|
6023
|
+
format: uuid
|
|
6024
|
+
recipient_email:
|
|
6025
|
+
type: string
|
|
6026
|
+
format: email
|
|
6027
|
+
label:
|
|
6028
|
+
type: string
|
|
6029
|
+
created_at:
|
|
6030
|
+
type: string
|
|
6031
|
+
format: date-time
|
|
6032
|
+
expires_at:
|
|
6033
|
+
type: string
|
|
6034
|
+
format: date-time
|
|
6035
|
+
submitted_at:
|
|
6036
|
+
type: string
|
|
6037
|
+
format: date-time
|
|
6038
|
+
nullable: true
|
|
6039
|
+
visible_until:
|
|
6040
|
+
type: string
|
|
6041
|
+
format: date-time
|
|
6042
|
+
nullable: true
|
|
6043
|
+
credentials_available:
|
|
6044
|
+
type: boolean
|
|
6045
|
+
link_active:
|
|
6046
|
+
type: boolean
|
|
6047
|
+
required:
|
|
6048
|
+
- created_at
|
|
6049
|
+
- credentials_available
|
|
6050
|
+
- expires_at
|
|
6051
|
+
- id
|
|
6052
|
+
- label
|
|
6053
|
+
- link_active
|
|
6054
|
+
- recipient_email
|
|
6055
|
+
- submitted_at
|
|
6056
|
+
- visible_until
|
|
6057
|
+
CredentialRequestRead:
|
|
6058
|
+
type: object
|
|
6059
|
+
properties:
|
|
6060
|
+
id:
|
|
6061
|
+
type: string
|
|
6062
|
+
format: uuid
|
|
6063
|
+
label:
|
|
6064
|
+
type: string
|
|
6065
|
+
recipient_email:
|
|
6066
|
+
type: string
|
|
6067
|
+
format: email
|
|
6068
|
+
credentials:
|
|
6069
|
+
type: string
|
|
6070
|
+
visible_until:
|
|
6071
|
+
type: string
|
|
6072
|
+
format: date-time
|
|
6073
|
+
required:
|
|
6074
|
+
- credentials
|
|
6075
|
+
- id
|
|
6076
|
+
- label
|
|
6077
|
+
- recipient_email
|
|
6078
|
+
- visible_until
|
|
6079
|
+
CredentialTokenRequest:
|
|
6080
|
+
type: object
|
|
6081
|
+
properties:
|
|
6082
|
+
token:
|
|
6083
|
+
type: string
|
|
6084
|
+
minLength: 1
|
|
6085
|
+
maxLength: 64
|
|
6086
|
+
required:
|
|
6087
|
+
- token
|
|
6088
|
+
CredentialsSubmitted:
|
|
6089
|
+
type: object
|
|
6090
|
+
properties:
|
|
6091
|
+
detail:
|
|
6092
|
+
type: string
|
|
6093
|
+
required:
|
|
6094
|
+
- detail
|
|
5781
6095
|
DataTypeEnum:
|
|
5782
6096
|
enum:
|
|
5783
6097
|
- text
|
|
@@ -6985,6 +7299,9 @@ components:
|
|
|
6985
7299
|
required:
|
|
6986
7300
|
- paths
|
|
6987
7301
|
- project
|
|
7302
|
+
NullEnum:
|
|
7303
|
+
enum:
|
|
7304
|
+
- null
|
|
6988
7305
|
Observation:
|
|
6989
7306
|
type: object
|
|
6990
7307
|
description: |-
|
|
@@ -7718,6 +8035,16 @@ components:
|
|
|
7718
8035
|
required:
|
|
7719
8036
|
- path
|
|
7720
8037
|
- url
|
|
8038
|
+
PropertyHandoffEnum:
|
|
8039
|
+
enum:
|
|
8040
|
+
- ready
|
|
8041
|
+
- blocked
|
|
8042
|
+
- unverified
|
|
8043
|
+
type: string
|
|
8044
|
+
description: |-
|
|
8045
|
+
* `ready` - ready
|
|
8046
|
+
* `blocked` - blocked
|
|
8047
|
+
* `unverified` - unverified
|
|
7721
8048
|
Proposal:
|
|
7722
8049
|
type: object
|
|
7723
8050
|
properties:
|
|
@@ -8560,6 +8887,25 @@ components:
|
|
|
8560
8887
|
* `succeeded` - Succeeded
|
|
8561
8888
|
* `failed` - Failed
|
|
8562
8889
|
* `skipped` - Skipped
|
|
8890
|
+
SubmitCredentialsRequest:
|
|
8891
|
+
type: object
|
|
8892
|
+
properties:
|
|
8893
|
+
token:
|
|
8894
|
+
type: string
|
|
8895
|
+
minLength: 1
|
|
8896
|
+
maxLength: 64
|
|
8897
|
+
ticket:
|
|
8898
|
+
type: string
|
|
8899
|
+
minLength: 1
|
|
8900
|
+
maxLength: 512
|
|
8901
|
+
credentials:
|
|
8902
|
+
type: string
|
|
8903
|
+
minLength: 1
|
|
8904
|
+
maxLength: 20000
|
|
8905
|
+
required:
|
|
8906
|
+
- credentials
|
|
8907
|
+
- ticket
|
|
8908
|
+
- token
|
|
8563
8909
|
Supplier:
|
|
8564
8910
|
type: object
|
|
8565
8911
|
properties:
|
|
@@ -125,6 +125,42 @@ POST /api/accounts/auth/verify/
|
|
|
125
125
|
Options:
|
|
126
126
|
- `--data` (required) - Request body as JSON: inline, @file.json, or - for stdin.
|
|
127
127
|
|
|
128
|
+
### current accounts credential-requests code create
|
|
129
|
+
|
|
130
|
+
POST /api/accounts/credential-requests/code/
|
|
131
|
+
|
|
132
|
+
Options:
|
|
133
|
+
- `--data` (required) - Request body as JSON: inline, @file.json, or - for stdin.
|
|
134
|
+
|
|
135
|
+
### current accounts credential-requests create
|
|
136
|
+
|
|
137
|
+
POST /api/accounts/credential-requests/
|
|
138
|
+
|
|
139
|
+
Options:
|
|
140
|
+
- `--data` (required) - Request body as JSON: inline, @file.json, or - for stdin.
|
|
141
|
+
|
|
142
|
+
### current accounts credential-requests list
|
|
143
|
+
|
|
144
|
+
GET /api/accounts/credential-requests/
|
|
145
|
+
|
|
146
|
+
### current accounts credential-requests read retrieve <request_id>
|
|
147
|
+
|
|
148
|
+
GET /api/accounts/credential-requests/{request_id}/read/
|
|
149
|
+
|
|
150
|
+
### current accounts credential-requests submit create
|
|
151
|
+
|
|
152
|
+
POST /api/accounts/credential-requests/submit/
|
|
153
|
+
|
|
154
|
+
Options:
|
|
155
|
+
- `--data` (required) - Request body as JSON: inline, @file.json, or - for stdin.
|
|
156
|
+
|
|
157
|
+
### current accounts credential-requests verify create
|
|
158
|
+
|
|
159
|
+
POST /api/accounts/credential-requests/verify/
|
|
160
|
+
|
|
161
|
+
Options:
|
|
162
|
+
- `--data` (required) - Request body as JSON: inline, @file.json, or - for stdin.
|
|
163
|
+
|
|
128
164
|
### current config get <key>
|
|
129
165
|
|
|
130
166
|
Print one configuration value.
|
|
@@ -580,7 +616,7 @@ Options:
|
|
|
580
616
|
### current login <email>
|
|
581
617
|
|
|
582
618
|
Sign in with a magic link (and an authenticator code when the account
|
|
583
|
-
|
|
619
|
+
requires two-factor authentication) and store the auth token.
|
|
584
620
|
|
|
585
621
|
### current logout
|
|
586
622
|
|
|
@@ -694,6 +730,7 @@ Options:
|
|
|
694
730
|
- `--limit` - Max projects per page (default 50, max 200)
|
|
695
731
|
- `--offset` - Number of projects to skip (default 0)
|
|
696
732
|
- `--q` - Keep only projects whose name contains this text, ignoring case
|
|
733
|
+
- `--readiness` - Filter evidence readiness independently of the existing status filter.
|
|
697
734
|
- `--status` - Which reviewed projects to keep: 'pending' (default) for the ones asking something of a person, 'clear' for the rest, 'all' for both. A project with no closeout review is absent at every status.
|
|
698
735
|
- `--workspace` - Workspace UUID
|
|
699
736
|
|
|
@@ -32,3 +32,16 @@ def test_docs_command_prints_reference(cli, runner):
|
|
|
32
32
|
assert result.exit_code == 0, result.output
|
|
33
33
|
assert "# Current CLI reference" in result.output
|
|
34
34
|
assert "### current projects list" in result.output
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def test_docstring_indentation_is_stable_across_python_versions():
|
|
38
|
+
import click
|
|
39
|
+
|
|
40
|
+
from current_cli.docs import render_docs
|
|
41
|
+
|
|
42
|
+
def reference(help_text):
|
|
43
|
+
group = click.Group("current")
|
|
44
|
+
group.add_command(click.Command("example", help=help_text))
|
|
45
|
+
return render_docs(group)
|
|
46
|
+
|
|
47
|
+
assert reference("First line.\n Continuation.") == reference("First line.\nContinuation.")
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|