asecli 0.6.2__py3-none-any.whl
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.
- asecli/__init__.py +3 -0
- asecli/bridge/__init__.py +40 -0
- asecli/bridge/_editor_port_contract.py +131 -0
- asecli/bridge/_editor_primitives.py +205 -0
- asecli/bridge/_editor_spec_grammar.py +245 -0
- asecli/bridge/_editor_spec_io.py +26 -0
- asecli/bridge/_editor_spec_validation.py +218 -0
- asecli/bridge/_gui_handoff_store.py +78 -0
- asecli/bridge/_gui_project.py +35 -0
- asecli/bridge/_gui_resource_store.py +159 -0
- asecli/bridge/_gui_resource_upgrade.py +122 -0
- asecli/bridge/editor_create.py +173 -0
- asecli/bridge/editor_spec.py +250 -0
- asecli/bridge/graph_geometry.py +249 -0
- asecli/bridge/graph_geometry_parser.py +57 -0
- asecli/bridge/graph_inspect.py +136 -0
- asecli/bridge/gui_handoff.py +100 -0
- asecli/bridge/gui_presentation.py +70 -0
- asecli/bridge/gui_provider_detection.py +197 -0
- asecli/bridge/gui_runtime_probe.py +25 -0
- asecli/bridge/gui_support.py +240 -0
- asecli/bridge/gui_support_resource.py +58 -0
- asecli/bridge/mcp_client.py +231 -0
- asecli/bridge/recompile.py +107 -0
- asecli/bridge/resource_text.py +12 -0
- asecli/bridge/resources/asecli_material_gui.authoring.part00.cs.txt +238 -0
- asecli/bridge/resources/asecli_material_gui.authoring.part01.cs.txt +235 -0
- asecli/bridge/resources/asecli_material_gui.authoring.store.cs.txt +125 -0
- asecli/bridge/resources/asecli_material_gui.condition.cs.txt +99 -0
- asecli/bridge/resources/asecli_material_gui.hydration.cs.txt +105 -0
- asecli/bridge/resources/asecli_material_gui.part00.cs.txt +300 -0
- asecli/bridge/resources/asecli_material_gui.part01.cs.txt +290 -0
- asecli/bridge/resources/asecli_material_gui.reconciliation.cs.txt +174 -0
- asecli/bridge/resources/asecli_material_gui.transaction.cs.txt +108 -0
- asecli/bridge/resources/editor_create.part00.cs.txt +176 -0
- asecli/bridge/resources/editor_create.part01.cs.txt +145 -0
- asecli/bridge/resources/editor_create.part02.cs.txt +139 -0
- asecli/bridge/resources/editor_create.part03.cs.txt +161 -0
- asecli/bridge/resources/editor_create.part04.cs.txt +114 -0
- asecli/bridge/resources/wire_route.transaction.cs.txt +140 -0
- asecli/bridge/wire_route.py +127 -0
- asecli/checks/__init__.py +10 -0
- asecli/checks/checksum.py +53 -0
- asecli/checks/local_vars.py +135 -0
- asecli/checks/usage.py +141 -0
- asecli/checks/validate.py +129 -0
- asecli/cli/__init__.py +1 -0
- asecli/cli/commands.py +237 -0
- asecli/cli/commentary_command.py +158 -0
- asecli/cli/create_command.py +250 -0
- asecli/cli/custom_gui_command.py +170 -0
- asecli/cli/gui_provider.py +30 -0
- asecli/cli/gui_support_command.py +35 -0
- asecli/cli/io.py +214 -0
- asecli/cli/layout_command.py +213 -0
- asecli/cli/main.py +245 -0
- asecli/cli/recompile_metadata.py +53 -0
- asecli/cli/skill_command.py +121 -0
- asecli/cli/usage_command.py +42 -0
- asecli/core/__init__.py +84 -0
- asecli/core/comment_bounds.py +166 -0
- asecli/core/comment_layout.py +167 -0
- asecli/core/comment_metrics.py +132 -0
- asecli/core/comment_purpose.py +140 -0
- asecli/core/commentary.py +225 -0
- asecli/core/compiled_metadata.py +135 -0
- asecli/core/compiled_properties.py +190 -0
- asecli/core/custom_gui.py +250 -0
- asecli/core/custom_gui_versions.py +35 -0
- asecli/core/fishbone_placement.py +159 -0
- asecli/core/fishbone_topology.py +186 -0
- asecli/core/graph_ops.py +122 -0
- asecli/core/layout.py +174 -0
- asecli/core/layout_audit.py +237 -0
- asecli/core/layout_audit_geometry.py +247 -0
- asecli/core/layout_audit_repeated.py +44 -0
- asecli/core/layout_graph.py +113 -0
- asecli/core/local_vars.py +54 -0
- asecli/core/material_gui_condition.py +68 -0
- asecli/core/material_gui_protocol.py +35 -0
- asecli/core/material_gui_spec.py +191 -0
- asecli/core/meticulous_layout.py +114 -0
- asecli/core/model.py +237 -0
- asecli/core/property_presentation.py +233 -0
- asecli/core/wire_geometry.py +83 -0
- asecli/core/wire_router.py +248 -0
- asecli/schema/__init__.py +49 -0
- asecli/schema/data/observed.json +16 -0
- asecli/schema/data/schemas.json +14106 -0
- asecli/skills/asecli/SKILL.md +275 -0
- asecli/skills/asecli/references/layout-standard.md +99 -0
- asecli/skills/asecli/references/master-output-settings-standard.md +51 -0
- asecli/skills/asecli/references/material-property-standard.md +108 -0
- asecli-0.6.2.dist-info/METADATA +594 -0
- asecli-0.6.2.dist-info/RECORD +98 -0
- asecli-0.6.2.dist-info/WHEEL +4 -0
- asecli-0.6.2.dist-info/entry_points.txt +2 -0
- asecli-0.6.2.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
asecli/__init__.py,sha256=Miq-2lt1K_UwimC6CFMKkRpOi5Rhd-GI0yK9e0dSMrs,95
|
|
2
|
+
asecli/bridge/__init__.py,sha256=AXz-GLoQLNHRN4-3_nfTGPbpz2BEcSifmhJgquEIqm0,1257
|
|
3
|
+
asecli/bridge/_editor_port_contract.py,sha256=ou-oio536euyrGpl1EAONdWgEl-0z0emcsVutIEMqaU,5553
|
|
4
|
+
asecli/bridge/_editor_primitives.py,sha256=cSXhjvNx6xgJHpbX8swyAXOOlK2-lbuQnR3O8EapK4c,8864
|
|
5
|
+
asecli/bridge/_editor_spec_grammar.py,sha256=PCLMC3N5lGjMqkd4MWLH4Nb3zAxKj-_hIJkga1w6_Qo,11728
|
|
6
|
+
asecli/bridge/_editor_spec_io.py,sha256=U32EqINRKXcoQvzhn9SWvRdhvG5dPl8LmBKTgLF4SQ4,876
|
|
7
|
+
asecli/bridge/_editor_spec_validation.py,sha256=pVj3WKxHbRius2fY0aQwYx7feE2KwAofK-L5_kf9uw0,9901
|
|
8
|
+
asecli/bridge/_gui_handoff_store.py,sha256=Yx3ZX_Sa1iK57YqW0t2jryctrPUw0n3lWQvXEO-Eeio,3205
|
|
9
|
+
asecli/bridge/_gui_project.py,sha256=g79f8r1IfD8nrtP2MRL2-vAEYuX4jyi4mpXU_MzLu8M,1169
|
|
10
|
+
asecli/bridge/_gui_resource_store.py,sha256=RGzz47_g5xZeVKlEBu5HiNekyQ-hkhxNYpcm-wl__0Q,5345
|
|
11
|
+
asecli/bridge/_gui_resource_upgrade.py,sha256=S0r9KduUkDv52RAM4_mWtIrJRCAllx8BDQDORbKYY-8,4144
|
|
12
|
+
asecli/bridge/editor_create.py,sha256=pwCYXKRHTmELBHt-9CPrwocbmbiFUPZdEL2nWCK7XC0,7555
|
|
13
|
+
asecli/bridge/editor_spec.py,sha256=KC17Ccm1K-feYc7O7_0ininAXPaDNnNUFZ2J7pns6YA,8439
|
|
14
|
+
asecli/bridge/graph_geometry.py,sha256=WHnCow6C-g-zVYVLy-7Ht0wBgTJoL8sL7RM1BHlcEqA,14088
|
|
15
|
+
asecli/bridge/graph_geometry_parser.py,sha256=4mGg3D8Kv8-SMuk5lkPb5w5_ub6eSkwEexgSXZATuDk,2989
|
|
16
|
+
asecli/bridge/graph_inspect.py,sha256=QH9pRabYCWXM7IWoh6f5KeDVyz87M7ESADG0-x1qPj4,5826
|
|
17
|
+
asecli/bridge/gui_handoff.py,sha256=Go1fqZzTuzTWsZ1FulD23-eW5rBFjy_7llwy88JsKWI,4053
|
|
18
|
+
asecli/bridge/gui_presentation.py,sha256=3YeFNOfViSIZqix-74QvcwtXIOcE1a2eA1UCcQzcZro,2425
|
|
19
|
+
asecli/bridge/gui_provider_detection.py,sha256=IS69t06Bi-fAjizHZ3z3-LlN0eYjAlRduNgBPGS6aG8,8606
|
|
20
|
+
asecli/bridge/gui_runtime_probe.py,sha256=YZhrAF-4y9vA9OhJ87lneeuYr4hieq3ee787JW98W6k,725
|
|
21
|
+
asecli/bridge/gui_support.py,sha256=JLOks1pLtsEnLfW-v9HsRry7AUsmv_FVh6R5Lg92l5Y,9652
|
|
22
|
+
asecli/bridge/gui_support_resource.py,sha256=FaNFGFAdc77IrNpxVrTvQUlwC4cO9teNwv2q1QEJYIc,2543
|
|
23
|
+
asecli/bridge/mcp_client.py,sha256=nLUpyTD4AoEgYS1Ga04yizii7MYWwUeiJjajrx0GjVo,8800
|
|
24
|
+
asecli/bridge/recompile.py,sha256=Yg7TNhHPbrKbHiy-SxD7xQTbQoQxTlvAK__IyR34Qt4,4290
|
|
25
|
+
asecli/bridge/resource_text.py,sha256=M4cvDqW7Ltg6A7epehCN00o8Zlm1r8m-oRGM6vjA-UI,501
|
|
26
|
+
asecli/bridge/wire_route.py,sha256=JkzvOozASrH4blTz22dUlfeRHElVDuRqWX_q2Ci7Y1s,5612
|
|
27
|
+
asecli/bridge/resources/asecli_material_gui.authoring.part00.cs.txt,sha256=1-kakzlvK5sH2cHgSRxj5dk1KJXuHo90eRy-dLJQDa4,10624
|
|
28
|
+
asecli/bridge/resources/asecli_material_gui.authoring.part01.cs.txt,sha256=gpR0W3xgMR43ATUK-QZNdd8EzMoPm2eTT7hhDoTP3xc,9530
|
|
29
|
+
asecli/bridge/resources/asecli_material_gui.authoring.store.cs.txt,sha256=BEfKa1U2e0T8hm40NttBo-RAqqR7Q2pgKwLSlrsa-bc,5551
|
|
30
|
+
asecli/bridge/resources/asecli_material_gui.condition.cs.txt,sha256=k9aNtZR7iaDO580A4rSk6k2W8TeT5WAHm91ClTHpwW0,3717
|
|
31
|
+
asecli/bridge/resources/asecli_material_gui.hydration.cs.txt,sha256=VPmwrhAWfwsu3ZUJB4Y0IdeqBne5a2UA9Fc0b4nob-E,4921
|
|
32
|
+
asecli/bridge/resources/asecli_material_gui.part00.cs.txt,sha256=uiUvv5ewdYBDy8-3it9IN3J_wIlU8y1xMKRIxn6mWSI,13529
|
|
33
|
+
asecli/bridge/resources/asecli_material_gui.part01.cs.txt,sha256=npYxGQbG25ehavGwXhQzKEHXc4jTWJnn2swP1zVlkIw,13499
|
|
34
|
+
asecli/bridge/resources/asecli_material_gui.reconciliation.cs.txt,sha256=V-Bef7mEclsIbsohsPurA-bOWZ_19oh1YNKFbt_KIAY,8767
|
|
35
|
+
asecli/bridge/resources/asecli_material_gui.transaction.cs.txt,sha256=Dq888bfKkJYRcwbkyF-CmFveY3OWCeuEMm0z94pe_2E,4701
|
|
36
|
+
asecli/bridge/resources/editor_create.part00.cs.txt,sha256=WDRXrpwYnH44n1LT2DMm8rr2btgxhJ8shVN870brj2Q,14411
|
|
37
|
+
asecli/bridge/resources/editor_create.part01.cs.txt,sha256=NdGcYShxx2LxIqrcx0zmzOyyJbppSA-WCQzmB3AiUGw,9471
|
|
38
|
+
asecli/bridge/resources/editor_create.part02.cs.txt,sha256=kOVhGcnecdBATKB82SwWUGmxk6pZDlCDxfEu6AhArdU,7984
|
|
39
|
+
asecli/bridge/resources/editor_create.part03.cs.txt,sha256=3U5Yst_ynUvUW0DvDpLfdgxgPHWLy0DQH_V--mEnpdk,9480
|
|
40
|
+
asecli/bridge/resources/editor_create.part04.cs.txt,sha256=a9xYbdxjJUyqYbe9iFOOisgVcpN5XVddCRpE1lstwB8,4296
|
|
41
|
+
asecli/bridge/resources/wire_route.transaction.cs.txt,sha256=rHUYr0xIrdYuIErIjoqG4fVQAejf4WfBV50Ki6eMSbY,8016
|
|
42
|
+
asecli/checks/__init__.py,sha256=ssWZqvBvzccNkd3LwA0sLZM5SUN0jsUJDbJsnEAVbP8,432
|
|
43
|
+
asecli/checks/checksum.py,sha256=pDRCXOutTg_8xBFjcml_NWF8pRUmsCKUv8VkGDZKaSs,1734
|
|
44
|
+
asecli/checks/local_vars.py,sha256=s6ORVL8ZY7dXDAFZcj8PSKgblrnM4XR3kvkf3roY6zo,5331
|
|
45
|
+
asecli/checks/usage.py,sha256=7fijGzDgu28-Qn56pzwcUy8RyoJjPaq2Id_SDb1bmNI,5472
|
|
46
|
+
asecli/checks/validate.py,sha256=FVQZWWGSP5ncc5Du6UvFF8KCV9SF7H8lc8ko791rrKs,4908
|
|
47
|
+
asecli/cli/__init__.py,sha256=G6eCyNoBL4KuDpgQPB0rD2laX2ZyTweRbYH_71A-iQQ,69
|
|
48
|
+
asecli/cli/commands.py,sha256=8ZjuRebcpR0xhNxMclSZafebuLmSWJo3YdsRsTdUvH4,8280
|
|
49
|
+
asecli/cli/commentary_command.py,sha256=uYBKxnYhbyOUt-r1qKRCjfxf3XJr7JUo1wb4fO-9EzI,6184
|
|
50
|
+
asecli/cli/create_command.py,sha256=S2XyQCHHSOEeB2t8nLuZH0DgcrXJfd-obkSDD1rE-B0,9838
|
|
51
|
+
asecli/cli/custom_gui_command.py,sha256=eDWuxUukmp4eaZyfdsJqfDPnPv5QPlDATGlE3Es0pLg,7120
|
|
52
|
+
asecli/cli/gui_provider.py,sha256=AkSi1kHmy37XrqMVxoghZ-mfAQLUYwggF-iKoyAhb6M,1124
|
|
53
|
+
asecli/cli/gui_support_command.py,sha256=1VCmL-UpVYYIKkJFddp4H2Pox7O6Jvx-iFHO-kb90ik,1288
|
|
54
|
+
asecli/cli/io.py,sha256=O-XOlMjAKK4h6wy3QspMwWywmT3GaARhdcw54aP-1fs,7036
|
|
55
|
+
asecli/cli/layout_command.py,sha256=O7rMk4WKkegZXtzkeET0uXsBpk1yDYP6OAdTLv4goHk,9406
|
|
56
|
+
asecli/cli/main.py,sha256=Sxxl-T5EdfFCUURaLh5yySXu52RhFB4x2iawdpjZDKw,11711
|
|
57
|
+
asecli/cli/recompile_metadata.py,sha256=dMLitrGjIowYLW3BScwGjsqQlU1YW6T82zaWcZERkNU,1713
|
|
58
|
+
asecli/cli/skill_command.py,sha256=MK9QbYXJEkJK2fxaXpq6_esRix6VW9r5qrOuEz7ddyw,4329
|
|
59
|
+
asecli/cli/usage_command.py,sha256=jH4vvYk5Njm8c7A_U3JqJGA8YrD2xCr7U399R6bbdDk,1530
|
|
60
|
+
asecli/core/__init__.py,sha256=2VxijmPHB9Nmih7EJXDEH8ggq-XP50yS2hcz023EFsw,3846
|
|
61
|
+
asecli/core/comment_bounds.py,sha256=K4AwLrZxZaUf4WsEok5rD96tnRKXTp_lFWRd9PMVV7g,6530
|
|
62
|
+
asecli/core/comment_layout.py,sha256=mrj5GIc_JGDomTXP9NRB1Jqxm9Y5JGImW0FE-jLJQoo,6536
|
|
63
|
+
asecli/core/comment_metrics.py,sha256=w_7p8fNgaJQ4S2gcX1ybO1EhSKJMM2r-aWoZOJMqnkw,4450
|
|
64
|
+
asecli/core/comment_purpose.py,sha256=krkOFSVz70Q6R8azr-z8dqv_hOynwfXZossv6_wbC3U,5227
|
|
65
|
+
asecli/core/commentary.py,sha256=uLFCGK4OSMcrCLFM1yTO2raUvvYh5CoXpRg9AK9nxLU,9057
|
|
66
|
+
asecli/core/compiled_metadata.py,sha256=SanZFHmc5c4wwZ6fsHhp3IRSwLRgU6MhM34qRW-Jmgc,4953
|
|
67
|
+
asecli/core/compiled_properties.py,sha256=P4lnnSf9JF67OPEQi_yAE_Cgbsm3atSIozqSMGu8Wn8,6581
|
|
68
|
+
asecli/core/custom_gui.py,sha256=bu_KS0JadafBHHCls__HxUTiRlv4e6n-k2skhfcbVyQ,14294
|
|
69
|
+
asecli/core/custom_gui_versions.py,sha256=VzdxvNzVYZXYP8fy8E0U_2m-DtSW2f54YKKdFqwkrd0,1186
|
|
70
|
+
asecli/core/fishbone_placement.py,sha256=OaPsjJ6-SchePoy2e9cCDmRsEjy1tkPM_JLAwdJqIbE,6868
|
|
71
|
+
asecli/core/fishbone_topology.py,sha256=bJPRhazsuI1IdkIZU255MvIiHDGrY31Nna2ypUaRdZY,7597
|
|
72
|
+
asecli/core/graph_ops.py,sha256=Ka1MNf4DrVKiM7dWBTAHLAAEPK0_hhU6B0nh_djAqE4,4783
|
|
73
|
+
asecli/core/layout.py,sha256=YdDnUlfiCvK4e74rxL97KHgK7s-d-qbsQIDXyuGV5YU,6254
|
|
74
|
+
asecli/core/layout_audit.py,sha256=CeQsKmIqIFFhg68CARnUjLZK2mcmZ5uLQEhvkU_yDQI,10547
|
|
75
|
+
asecli/core/layout_audit_geometry.py,sha256=wN2jTwTq4CS11OXu79zCM440-331EYum-AI6f4XwAAE,9732
|
|
76
|
+
asecli/core/layout_audit_repeated.py,sha256=DpXrlOeVS-qK9bi8LB0EP_DBTctGwGXMTSB6izsdaM8,1556
|
|
77
|
+
asecli/core/layout_graph.py,sha256=OMyJAytdaGYOup1UwXSYU-UfNb34mmp8gn2MrNO8Oko,4170
|
|
78
|
+
asecli/core/local_vars.py,sha256=nM0zQOddSw1-LaxMCenEWkQ1FAqX57cDCmPWl2K0uLM,1781
|
|
79
|
+
asecli/core/material_gui_condition.py,sha256=HfzCq6cDcDceKD7bHyIBwKW5SWjiZeLD2ai97OApvg0,2545
|
|
80
|
+
asecli/core/material_gui_protocol.py,sha256=ZRWPW0-mgqujyTsbc3FMNlRnZeLLgzR7dAYwZ0N49bc,1213
|
|
81
|
+
asecli/core/material_gui_spec.py,sha256=KaythDOEJ98ZTpqrXaPo1xfzvbDRmovPsIJHD12xk34,7955
|
|
82
|
+
asecli/core/meticulous_layout.py,sha256=juUhTDtF-QUTvQOZx7uJrEGO1SUy8Xi7wqXWJIEq_PY,4088
|
|
83
|
+
asecli/core/model.py,sha256=RkbKxlBsdhrG4USreeIHKGj0DcduiiWki42TdhWb3ik,8512
|
|
84
|
+
asecli/core/property_presentation.py,sha256=mNsNTqU3ixBihJpp7Tg8ylV3wCh63TGCSGDseJ2q3nI,9864
|
|
85
|
+
asecli/core/wire_geometry.py,sha256=pgo5eDpoGj_pUqHc-7YlBltDYrjWUNFEBPc21Mn424g,3062
|
|
86
|
+
asecli/core/wire_router.py,sha256=oEcrb32tfOnGW-dssKphjPRwnoAZRPp4aIe1UkNj1zQ,9824
|
|
87
|
+
asecli/schema/__init__.py,sha256=UBkgLIdstn17_jvMwJcCLemZHqwUugP098UHyxWkUkU,1514
|
|
88
|
+
asecli/schema/data/observed.json,sha256=WnabLAqk5qxeN313sd48FJfiO7yf71vBwgRBjRLlIbk,11154
|
|
89
|
+
asecli/schema/data/schemas.json,sha256=ofILizrWJiWo2rupWVSZhfcaN5XLS5uMNRcrbLVVrI8,247320
|
|
90
|
+
asecli/skills/asecli/SKILL.md,sha256=gA-TeVQ7JH30wkqA6NRfx6R7Qvnsj6XrRB5ZyCvQRr8,26940
|
|
91
|
+
asecli/skills/asecli/references/layout-standard.md,sha256=wfEYAHBEJ0Z4JTMsjr43bmBYmAXXOTJffch6_94JFgg,10517
|
|
92
|
+
asecli/skills/asecli/references/master-output-settings-standard.md,sha256=4ctPvUPrNQduKSRMXc32XHyKlD5Hw55Lu7IatQ0FeP8,5941
|
|
93
|
+
asecli/skills/asecli/references/material-property-standard.md,sha256=68fnBP2BJZBP6mzxc96TQewB9HrYp_aJJCYiKq9Z4SI,6107
|
|
94
|
+
asecli-0.6.2.dist-info/METADATA,sha256=0TwIHwFegrzL8J1y_XznYhrpreMWVjs3xUHA9pbnroM,43787
|
|
95
|
+
asecli-0.6.2.dist-info/WHEEL,sha256=zOwg4jB6zX2kU910N-cMawjivD6tO8NEWvE12je1bVk,87
|
|
96
|
+
asecli-0.6.2.dist-info/entry_points.txt,sha256=Ib_xzrXDQtJI8NWW1koF5wCBkdgYAtbmfVNnAlksR_E,47
|
|
97
|
+
asecli-0.6.2.dist-info/licenses/LICENSE,sha256=Kl9YXKU9JJlp39AzVZuk9qTclFuS8kEL8v3hsdLS2lA,1076
|
|
98
|
+
asecli-0.6.2.dist-info/RECORD,,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 AseCLI contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|