canvas 0.30.0__py3-none-any.whl → 0.32.0__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.
Potentially problematic release.
This version of canvas might be problematic. Click here for more details.
- {canvas-0.30.0.dist-info → canvas-0.32.0.dist-info}/METADATA +2 -1
- {canvas-0.30.0.dist-info → canvas-0.32.0.dist-info}/RECORD +19 -19
- canvas_cli/apps/run_plugins/run_plugins.py +1 -1
- canvas_generated/messages/events_pb2.py +2 -2
- canvas_generated/messages/events_pb2.pyi +30 -16
- canvas_sdk/effects/protocol_card/protocol_card.py +3 -0
- canvas_sdk/handlers/base.py +3 -0
- canvas_sdk/handlers/simple_api/__init__.py +6 -0
- canvas_sdk/handlers/simple_api/api.py +4 -0
- canvas_sdk/handlers/simple_api/security.py +65 -0
- canvas_sdk/tests/handlers/test_simple_api.py +56 -2
- canvas_sdk/v1/data/user.py +1 -0
- logger/logger.py +7 -1
- plugin_runner/installation.py +14 -5
- plugin_runner/plugin_runner.py +100 -37
- protobufs/canvas_generated/messages/events.proto +15 -8
- settings.py +2 -0
- {canvas-0.30.0.dist-info → canvas-0.32.0.dist-info}/WHEEL +0 -0
- {canvas-0.30.0.dist-info → canvas-0.32.0.dist-info}/entry_points.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: canvas
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.32.0
|
|
4
4
|
Summary: SDK to customize event-driven actions in your Canvas instance
|
|
5
5
|
Author-email: Canvas Team <engineering@canvasmedical.com>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -25,6 +25,7 @@ Requires-Dist: rapidfuzz<4,>=3.10.1
|
|
|
25
25
|
Requires-Dist: redis<6,>=5.0.4
|
|
26
26
|
Requires-Dist: requests
|
|
27
27
|
Requires-Dist: restrictedpython>=8.0
|
|
28
|
+
Requires-Dist: sentry-sdk>=2.25.1
|
|
28
29
|
Requires-Dist: statsd<5,>=4.0.1
|
|
29
30
|
Requires-Dist: typer
|
|
30
31
|
Requires-Dist: typing-extensions<4.13,>=4.8
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
settings.py,sha256=
|
|
1
|
+
settings.py,sha256=pZI0ifle9n6rpvu0caey7eNCE6J31YmApbrO_kVROKI,3419
|
|
2
2
|
canvas_cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
3
|
canvas_cli/conftest.py,sha256=0mEjjU7_w9nq-HCvscxFJClw-EeyQYujNLLRPssksZQ,931
|
|
4
4
|
canvas_cli/main.py,sha256=L6JQkt1yxy30cA3-M9v7JD8WMW4i0M5GPr9kZetAito,2728
|
|
@@ -73,7 +73,7 @@ canvas_cli/apps/plugin/__init__.py,sha256=G_nLsu6cdko5OjatnbqUyEboGcNlGGLwpZmCBx
|
|
|
73
73
|
canvas_cli/apps/plugin/plugin.py,sha256=1HcMuB_K7vwlgDDVuCX84mT4xk89Y4ZvfaLl1Z-v2CE,15735
|
|
74
74
|
canvas_cli/apps/plugin/tests.py,sha256=SsYeYY25ly9TMn-nkJEZjLaPCyFbT4vs1sN_FnQbJ5U,2746
|
|
75
75
|
canvas_cli/apps/run_plugins/__init__.py,sha256=iAMgX_6D3CdjQodGx_azwhSjouaxquOm8Z8QVXnlTFE,117
|
|
76
|
-
canvas_cli/apps/run_plugins/run_plugins.py,sha256=
|
|
76
|
+
canvas_cli/apps/run_plugins/run_plugins.py,sha256=w4JTsXFiHckZahvbSOJAqZo3jWwedxlHLiXct1j_6cY,392
|
|
77
77
|
canvas_cli/templates/plugins/application/cookiecutter.json,sha256=cI4Wpj68TkKeBP3P16PrjKacTHzsTIpl_rDdzyUpwz4,129
|
|
78
78
|
canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/CANVAS_MANIFEST.json,sha256=-mfqhpljpF4eE8g05pIEnZMt_bDUdhgIBtuQd-devv8,945
|
|
79
79
|
canvas_cli/templates/plugins/application/{{ cookiecutter.__project_slug }}/README.md,sha256=3QKoJQq3YmdplGnDOBMsLCJ3Ya1_aKjoz-QiWc4QfjA,291
|
|
@@ -102,8 +102,8 @@ canvas_cli/utils/validators/validators.py,sha256=lrUBQ0sF7seTe_pNGsNgASdr2BGp6g-
|
|
|
102
102
|
canvas_generated/messages/effects_pb2.py,sha256=b5BD3uyAhA1PIg__7xcLRYNWBblhOcj3CTnYVrNwqI8,11578
|
|
103
103
|
canvas_generated/messages/effects_pb2.pyi,sha256=JbmPKePAtthVhLgtco1zawhr5iOgsyO5xGu1U2K3F88,20381
|
|
104
104
|
canvas_generated/messages/effects_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
|
105
|
-
canvas_generated/messages/events_pb2.py,sha256=
|
|
106
|
-
canvas_generated/messages/events_pb2.pyi,sha256=
|
|
105
|
+
canvas_generated/messages/events_pb2.py,sha256=hj18Rntcyf08sW5zTe0dni_qg6V-3A5nn_1Nca3iE54,49575
|
|
106
|
+
canvas_generated/messages/events_pb2.pyi,sha256=TL4nwSZdAxhu0t7N9pcq40NVN-cLOHlANCnl71meweU,89080
|
|
107
107
|
canvas_generated/messages/events_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
|
108
108
|
canvas_generated/messages/plugins_pb2.py,sha256=j2yt9uoSlVMtWg-cAoOmxiT-XWbBrqqCBZXOxEz7z4g,1271
|
|
109
109
|
canvas_generated/messages/plugins_pb2.pyi,sha256=G1seqytP8GlJJh-AL2CJ0VyUNlReEvK61C-Oh8QuGiE,501
|
|
@@ -179,7 +179,7 @@ canvas_sdk/effects/patient_portal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeR
|
|
|
179
179
|
canvas_sdk/effects/patient_portal/application_configuration.py,sha256=CBffcc1Jv6Tfq39QVJrAvqmTYlvuZ3FSoS7FVAlp2iI,655
|
|
180
180
|
canvas_sdk/effects/patient_portal/form_result.py,sha256=ijhmDovF0pfUo-Xw7dsckbxm8JP2lsela61V1-XzKiA,945
|
|
181
181
|
canvas_sdk/effects/protocol_card/__init__.py,sha256=AwXAARybFhVIfYwqiRThG6Ne3ARnKgvuvuGUknWpwTo,134
|
|
182
|
-
canvas_sdk/effects/protocol_card/protocol_card.py,sha256=
|
|
182
|
+
canvas_sdk/effects/protocol_card/protocol_card.py,sha256=q8ThdmT-c6Isc3yGy7pwJRFGKmlwMeEWIigvHKW8lpY,2704
|
|
183
183
|
canvas_sdk/effects/protocol_card/tests.py,sha256=ZiDZTjn-Z6UpEfR1S-6XDcJXlPlTPpLbg2PgvkQD8Uk,6815
|
|
184
184
|
canvas_sdk/effects/surescripts/__init__.py,sha256=yNaUKND64NNIpUENnUvgoa-NMDJfiJ0qUrOVJFpDHJs,335
|
|
185
185
|
canvas_sdk/effects/surescripts/surescripts_messages.py,sha256=tMG5ry2mZA5pwO0uGJfYZnJuVpj5MVhS2lYT5IRsb1Y,2582
|
|
@@ -192,12 +192,12 @@ canvas_sdk/events/base.py,sha256=MqrCF_Am-V7pGkNvtQwos6j94_vx7YvsRbNd0piO4xE,132
|
|
|
192
192
|
canvas_sdk/handlers/__init__.py,sha256=GeE8w0ev-ThuLJjcgb49OsXM58VmcB16ErU13tE_9tY,77
|
|
193
193
|
canvas_sdk/handlers/action_button.py,sha256=QCTMj-WufD51cXXicCX8N0eUfvx6VkfDaRUitBhZ90A,3581
|
|
194
194
|
canvas_sdk/handlers/application.py,sha256=6Y18g65ae1ws7-llyKzyWipOg9Y8zVEoV7Y_0E2XcQo,919
|
|
195
|
-
canvas_sdk/handlers/base.py,sha256=
|
|
195
|
+
canvas_sdk/handlers/base.py,sha256=7RDFiAW8r6HjL2TQQnYjLoKofqI8Juw6FHxsLno4c2U,1550
|
|
196
196
|
canvas_sdk/handlers/cron_task.py,sha256=zShv4qGUmpUjG3HrXVqzMir9kZyqo4nDT3ETqNP13sk,954
|
|
197
|
-
canvas_sdk/handlers/simple_api/__init__.py,sha256=
|
|
198
|
-
canvas_sdk/handlers/simple_api/api.py,sha256=
|
|
197
|
+
canvas_sdk/handlers/simple_api/__init__.py,sha256=OMBJ6jPGFCPZ9FKPBvXZ7fvL7TgVhIemGgA_lNgFVDc,597
|
|
198
|
+
canvas_sdk/handlers/simple_api/api.py,sha256=YhWG9gpONQp4Fr_9BCUy_ODmUHXA1t4D8H92tWxhTU8,19948
|
|
199
199
|
canvas_sdk/handlers/simple_api/exceptions.py,sha256=qSm_TnN3fdHZf5wz8BS3ueWpjyCDDY2yik0wx2HhGrc,1245
|
|
200
|
-
canvas_sdk/handlers/simple_api/security.py,sha256=
|
|
200
|
+
canvas_sdk/handlers/simple_api/security.py,sha256=wST95vOeMk-6GxSi9uqJ5_valYvnJdfq0rtWUZvtwtE,8199
|
|
201
201
|
canvas_sdk/handlers/simple_api/tools.py,sha256=o5Dtwj2i7A-W7owxqhl1Yn8tBtnKB_fsJ9aMiouNYeU,3961
|
|
202
202
|
canvas_sdk/protocols/__init__.py,sha256=3u9zet5D4DX4V953tLCoN1xhaOhAUCwGwscMv-7IIxo,186
|
|
203
203
|
canvas_sdk/protocols/base.py,sha256=sbm0uOk3PPfPemqBmHh2hawE5utC6no46EmvyMN8Y7Q,179
|
|
@@ -213,7 +213,7 @@ canvas_sdk/templates/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJ
|
|
|
213
213
|
canvas_sdk/templates/tests/test_utils.py,sha256=VRahmmVwXKcp1NMLoA3BZL4cFFXzFnD-i5IUpcEeXTg,1832
|
|
214
214
|
canvas_sdk/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
215
215
|
canvas_sdk/tests/handlers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
216
|
-
canvas_sdk/tests/handlers/test_simple_api.py,sha256=
|
|
216
|
+
canvas_sdk/tests/handlers/test_simple_api.py,sha256=Sm7uuwltOdGZHtCFGyGHG5-SXV5UNV8Q_Q-nUWBEdyc,86133
|
|
217
217
|
canvas_sdk/utils/__init__.py,sha256=nZEfYeU-qNZBOh39b8zAuEh0Wzh2PgXxs0NRKKe66Pg,184
|
|
218
218
|
canvas_sdk/utils/http.py,sha256=LB0njXF5evJymXMfaHCwxa6dlJKdYfBCFJSLvcnIQ20,8029
|
|
219
219
|
canvas_sdk/utils/plugins.py,sha256=853MW2fiLpyG3o9ISEawAthQeRiZP73cai5Tngwu4MY,767
|
|
@@ -250,7 +250,7 @@ canvas_sdk/v1/data/reason_for_visit.py,sha256=9rCmvbJZ4dKUUDzqFX1uxlMa_qO57KcRnt
|
|
|
250
250
|
canvas_sdk/v1/data/staff.py,sha256=AlpjMv_l8chUox1l7TXJYPI-g0rQX2_8boGX3yIEKic,3407
|
|
251
251
|
canvas_sdk/v1/data/task.py,sha256=5KNn88APPNOHEk4s1ZJRBBav8-AEQTUH039Vio_ZtAk,3471
|
|
252
252
|
canvas_sdk/v1/data/team.py,sha256=FlkZsHSSHKtvmlB1XuGPUmC7wl8iMbOPi_fl9sYw-aU,2801
|
|
253
|
-
canvas_sdk/v1/data/user.py,sha256=
|
|
253
|
+
canvas_sdk/v1/data/user.py,sha256=E0p_VoNj1AzSu8xUisuDqFooBCW10qpKNTt9pAFXmJ4,307
|
|
254
254
|
canvas_sdk/value_set/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
255
255
|
canvas_sdk/value_set/custom.py,sha256=0xzGP86ioCGcsx8wwf46SXfe9IefLSGVq7Z4yrHbEUU,19709
|
|
256
256
|
canvas_sdk/value_set/hcc2018.py,sha256=fNFfNzsOMJ-ALTcZaqfTU8CspZSPnZwBPDobS5DBgoY,2198461
|
|
@@ -275,13 +275,13 @@ canvas_sdk/value_set/v2022/procedure.py,sha256=CxbGfQc_YkQa1JpwZq90uSLaSSD4k-gPW
|
|
|
275
275
|
canvas_sdk/value_set/v2022/symptom.py,sha256=4-ouetYI8soAAZy9Gq8AXBiqTfJjdgfZgWZPhBE-Ing,9384
|
|
276
276
|
canvas_sdk/views/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
277
277
|
logger/__init__.py,sha256=9o2iRCjzFEhfULgXvrrECRFK-4IslWJTqKKjTCEUbq8,61
|
|
278
|
-
logger/logger.py,sha256=
|
|
278
|
+
logger/logger.py,sha256=AYKsC63N2zjqaq1kGqrMAlOXOuxPgHjpAf8JLuexTnk,2049
|
|
279
279
|
plugin_runner/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
280
280
|
plugin_runner/authentication.py,sha256=UyyhXajokVFH866dpDhoTlXS9Cg7y0sQltn0_LcwXrY,1131
|
|
281
281
|
plugin_runner/aws_headers.py,sha256=DenX_nAMVhXMJZw88PLZbqJsi5_XriNtr3jE-eJqHY4,2773
|
|
282
282
|
plugin_runner/exceptions.py,sha256=YnRZiQVzbU3HrVlmEXLje_np99009YnhTRVHHyBCtqc,433
|
|
283
|
-
plugin_runner/installation.py,sha256
|
|
284
|
-
plugin_runner/plugin_runner.py,sha256=
|
|
283
|
+
plugin_runner/installation.py,sha256=LLjtnzPk-w4go3UbXnBItJTKz1ajR_5kGQbFXTaWTFU,7693
|
|
284
|
+
plugin_runner/plugin_runner.py,sha256=uKGptOmXkBHOqS691fjDo5fioTdo9t-6dvkEMyXNpYE,21493
|
|
285
285
|
plugin_runner/sandbox.py,sha256=Y-idLdjjt0i45tlhKDqCA34WgXe4gLDfc3QdEpxW0Ls,14548
|
|
286
286
|
plugin_runner/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
287
287
|
plugin_runner/tests/test_application.py,sha256=e1R2YagMRD96gZALx-Zra-e-sR3SiP7cIpI6pheZnUc,2427
|
|
@@ -353,12 +353,12 @@ plugin_runner/tests/fixtures/plugins/test_simple_api/__init__.py,sha256=47DEQpj8
|
|
|
353
353
|
plugin_runner/tests/fixtures/plugins/test_simple_api/protocols/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
354
354
|
plugin_runner/tests/fixtures/plugins/test_simple_api/protocols/my_protocol.py,sha256=NoMRMrP6S_PL6f24qFugfFM1T1RmSDoL_itB3CbheMI,1060
|
|
355
355
|
protobufs/canvas_generated/messages/effects.proto,sha256=JK-z5h5oejXv9Cedob9xjeDqXxy7ujkIeHm7fx01Gi4,7840
|
|
356
|
-
protobufs/canvas_generated/messages/events.proto,sha256=
|
|
356
|
+
protobufs/canvas_generated/messages/events.proto,sha256=x1pzzI4qqbwQBjY_KEmsff5OI50hB5pRt12doGJPZMI,47701
|
|
357
357
|
protobufs/canvas_generated/messages/plugins.proto,sha256=oNainUPWFYQjgCX7bJEPI9_VnHC5VZduzOqgR4Q7dNM,109
|
|
358
358
|
protobufs/canvas_generated/services/plugin_runner.proto,sha256=doadBKn5k4xAtOgR-q_pEvW4yzxpUaHNOowMG6CL5GY,304
|
|
359
359
|
pubsub/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
360
360
|
pubsub/pubsub.py,sha256=pyTW0JU8mtaqiAV6g6xjZwel1CVy2EonPMU-_vkmhUM,1044
|
|
361
|
-
canvas-0.
|
|
362
|
-
canvas-0.
|
|
363
|
-
canvas-0.
|
|
364
|
-
canvas-0.
|
|
361
|
+
canvas-0.32.0.dist-info/METADATA,sha256=7oumAtiSr7XBcyYgbc9wZIjR_HJ9GFvWbKEQT0kgxRo,4409
|
|
362
|
+
canvas-0.32.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
363
|
+
canvas-0.32.0.dist-info/entry_points.txt,sha256=0Vs_9GmTVUNniH6eDBlRPgofmADMV4BES6Ao26M4AbM,47
|
|
364
|
+
canvas-0.32.0.dist-info/RECORD,,
|
|
@@ -15,7 +15,7 @@ _sym_db = _symbol_database.Default()
|
|
|
15
15
|
from canvas_generated.messages import effects_pb2 as canvas__generated_dot_messages_dot_effects__pb2
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n&canvas_generated/messages/events.proto\x12\x06\x63\x61nvas\x1a\'canvas_generated/messages/effects.proto\"^\n\x05\x45vent\x12\x1f\n\x04type\x18\x01 \x01(\x0e\x32\x11.canvas.EventType\x12\x0e\n\x06target\x18\x02 \x01(\t\x12\x0f\n\x07\x63ontext\x18\x03 \x01(\t\x12\x13\n\x0btarget_type\x18\x04 \x01(\t\"A\n\rEventResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x1f\n\x07\x65\x66\x66\x65\x63ts\x18\x02 \x03(\x0b\x32\x0e.canvas.Effect*\xc3\x89\x02\n\tEventType\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x1f\n\x1b\x41LLERGY_INTOLERANCE_CREATED\x10\x01\x12\x1f\n\x1b\x41LLERGY_INTOLERANCE_UPDATED\x10\x02\x12\x18\n\x14\x41PPOINTMENT_CANCELED\x10\x04\x12\x1a\n\x16\x41PPOINTMENT_CHECKED_IN\x10\x05\x12\x17\n\x13\x41PPOINTMENT_CREATED\x10\x06\x12\x19\n\x15\x41PPOINTMENT_NO_SHOWED\x10\x07\x12\x1b\n\x17\x41PPOINTMENT_RESCHEDULED\x10\x08\x12\x18\n\x14\x41PPOINTMENT_RESTORED\x10\t\x12\x17\n\x13\x41PPOINTMENT_UPDATED\x10\n\x12\x1d\n\x19\x42ILLING_LINE_ITEM_CREATED\x10\x0b\x12\x1d\n\x19\x42ILLING_LINE_ITEM_UPDATED\x10\x0c\x12\x16\n\x12\x43ONDITION_ASSESSED\x10\r\x12\x15\n\x11\x43ONDITION_CREATED\x10\x0e\x12\x16\n\x12\x43ONDITION_RESOLVED\x10\x0f\x12\x15\n\x11\x43ONDITION_UPDATED\x10\x10\x12\x13\n\x0f\x43ONSENT_CREATED\x10\x11\x12\x13\n\x0f\x43ONSENT_DELETED\x10\x12\x12\x13\n\x0f\x43ONSENT_UPDATED\x10\x13\x12\x14\n\x10\x43OVERAGE_CREATED\x10\x14\x12\x14\n\x10\x43OVERAGE_UPDATED\x10\x15\x12\x15\n\x11\x45NCOUNTER_CREATED\x10\x16\x12\x15\n\x11\x45NCOUNTER_UPDATED\x10\x17\x12\x1a\n\x16IMAGING_REPORT_CREATED\x10\x1a\x12\x1a\n\x16IMAGING_REPORT_UPDATED\x10\x1b\x12\x18\n\x14IMMUNIZATION_CREATED\x10\x1c\x12\"\n\x1eIMMUNIZATION_STATEMENT_CREATED\x10\x1d\x12\"\n\x1eIMMUNIZATION_STATEMENT_UPDATED\x10\x1e\x12\x18\n\x14IMMUNIZATION_UPDATED\x10\x1f\x12\x17\n\x13INSTRUCTION_CREATED\x10 \x12\x17\n\x13INSTRUCTION_UPDATED\x10!\x12\x15\n\x11INTERVIEW_CREATED\x10\"\x12\x15\n\x11INTERVIEW_UPDATED\x10#\x12\x15\n\x11LAB_ORDER_CREATED\x10$\x12\x15\n\x11LAB_ORDER_UPDATED\x10%\x12\x16\n\x12LAB_REPORT_CREATED\x10&\x12\x16\n\x12LAB_REPORT_UPDATED\x10\'\x12 \n\x1cMEDICATION_LIST_ITEM_CREATED\x10(\x12 \n\x1cMEDICATION_LIST_ITEM_UPDATED\x10)\x12\x13\n\x0fMESSAGE_CREATED\x10*\x12\x13\n\x0fPATIENT_CREATED\x10+\x12\x13\n\x0fPATIENT_UPDATED\x10,\x12\x18\n\x14PRESCRIPTION_CREATED\x10-\x12\x18\n\x14PRESCRIPTION_UPDATED\x10.\x12\x1b\n\x17REFERRAL_REPORT_CREATED\x10/\x12\x1b\n\x17REFERRAL_REPORT_UPDATED\x10\x30\x12\x18\n\x14TASK_COMMENT_CREATED\x10\x33\x12\x10\n\x0cTASK_CREATED\x10\x36\x12\x18\n\x14TASK_LABELS_ADJUSTED\x10\x37\x12\x10\n\x0cTASK_UPDATED\x10\x39\x12\x16\n\x12VITAL_SIGN_CREATED\x10:\x12\x16\n\x12VITAL_SIGN_UPDATED\x10;\x12\x08\n\x04\x43RON\x10<\x12 \n\x1c\x43\x41RE_TEAM_MEMBERSHIP_CREATED\x10=\x12 \n\x1c\x43\x41RE_TEAM_MEMBERSHIP_UPDATED\x10>\x12 \n\x1c\x43\x41RE_TEAM_MEMBERSHIP_DELETED\x10?\x12#\n\x1fNOTE_STATE_CHANGE_EVENT_CREATED\x10@\x12#\n\x1fNOTE_STATE_CHANGE_EVENT_UPDATED\x10\x41\x12\x1b\n\x17PATIENT_ADDRESS_CREATED\x10\x42\x12\x1b\n\x17PATIENT_ADDRESS_UPDATED\x10\x43\x12\x1b\n\x17PATIENT_ADDRESS_DELETED\x10\x44\x12\"\n\x1ePATIENT_CONTACT_PERSON_CREATED\x10\x45\x12\"\n\x1ePATIENT_CONTACT_PERSON_UPDATED\x10\x46\x12\"\n\x1ePATIENT_CONTACT_PERSON_DELETED\x10G\x12!\n\x1dPATIENT_CONTACT_POINT_CREATED\x10H\x12!\n\x1dPATIENT_CONTACT_POINT_UPDATED\x10I\x12!\n\x1dPATIENT_CONTACT_POINT_DELETED\x10J\x12\x1d\n\x19PROTOCOL_OVERRIDE_CREATED\x10K\x12\x1d\n\x19PROTOCOL_OVERRIDE_UPDATED\x10L\x12\x1d\n\x19PROTOCOL_OVERRIDE_DELETED\x10M\x12\x18\n\x14TASK_COMMENT_UPDATED\x10N\x12\x18\n\x14TASK_COMMENT_DELETED\x10O\x12\x12\n\x0e\x44\x45VICE_CREATED\x10P\x12\x12\n\x0e\x44\x45VICE_UPDATED\x10Q\x12\x17\n\x13OBSERVATION_CREATED\x10R\x12\x17\n\x13OBSERVATION_UPDATED\x10S\x12\x1a\n\x16\x44\x45TECTED_ISSUE_CREATED\x10T\x12\x1a\n\x16\x44\x45TECTED_ISSUE_UPDATED\x10U\x12\x0f\n\x0bTASK_CLOSED\x10V\x12\x12\n\x0eTASK_COMPLETED\x10W\x12#\n\x1f\x44\x45TECTED_ISSUE_EVIDENCE_CREATED\x10X\x12#\n\x1f\x44\x45TECTED_ISSUE_EVIDENCE_UPDATED\x10Y\x12\x19\n\x15PRE_COMMAND_ORIGINATE\x10\x64\x12\x1a\n\x16POST_COMMAND_ORIGINATE\x10\x65\x12\x16\n\x12PRE_COMMAND_UPDATE\x10\x66\x12\x17\n\x13POST_COMMAND_UPDATE\x10g\x12\x16\n\x12PRE_COMMAND_COMMIT\x10h\x12\x17\n\x13POST_COMMAND_COMMIT\x10i\x12\x16\n\x12PRE_COMMAND_DELETE\x10j\x12\x17\n\x13POST_COMMAND_DELETE\x10k\x12\x1e\n\x1aPRE_COMMAND_ENTER_IN_ERROR\x10l\x12\x1f\n\x1bPOST_COMMAND_ENTER_IN_ERROR\x10m\x12\x1e\n\x1aPRE_COMMAND_EXECUTE_ACTION\x10n\x12\x1f\n\x1bPOST_COMMAND_EXECUTE_ACTION\x10o\x12#\n\x1fPOST_COMMAND_INSERTED_INTO_NOTE\x10p\x12\'\n\"ASSESS_COMMAND__CONDITION_SELECTED\x10\xc8\x01\x12\x31\n,MEDICATION_STATEMENT__MEDICATION__PRE_SEARCH\x10\xc9\x01\x12\x32\n-MEDICATION_STATEMENT__MEDICATION__POST_SEARCH\x10\xca\x01\x12/\n*MEDICATION_STATEMENT__MEDICATION__SELECTED\x10\xcb\x01\x12/\n*ADJUST_PRESCRIPTION_COMMAND__PRE_ORIGINATE\x10\xd0\x0f\x12\x30\n+ADJUST_PRESCRIPTION_COMMAND__POST_ORIGINATE\x10\xd1\x0f\x12,\n\'ADJUST_PRESCRIPTION_COMMAND__PRE_UPDATE\x10\xd2\x0f\x12-\n(ADJUST_PRESCRIPTION_COMMAND__POST_UPDATE\x10\xd3\x0f\x12,\n\'ADJUST_PRESCRIPTION_COMMAND__PRE_COMMIT\x10\xd4\x0f\x12-\n(ADJUST_PRESCRIPTION_COMMAND__POST_COMMIT\x10\xd5\x0f\x12,\n\'ADJUST_PRESCRIPTION_COMMAND__PRE_DELETE\x10\xd6\x0f\x12-\n(ADJUST_PRESCRIPTION_COMMAND__POST_DELETE\x10\xd7\x0f\x12\x34\n/ADJUST_PRESCRIPTION_COMMAND__PRE_ENTER_IN_ERROR\x10\xd8\x0f\x12\x35\n0ADJUST_PRESCRIPTION_COMMAND__POST_ENTER_IN_ERROR\x10\xd9\x0f\x12\x34\n/ADJUST_PRESCRIPTION_COMMAND__PRE_EXECUTE_ACTION\x10\xda\x0f\x12\x35\n0ADJUST_PRESCRIPTION_COMMAND__POST_EXECUTE_ACTION\x10\xdb\x0f\x12\x30\n+ADJUST_PRESCRIPTION__PRESCRIBE__POST_SEARCH\x10\xdc\x0f\x12/\n*ADJUST_PRESCRIPTION__PRESCRIBE__PRE_SEARCH\x10\xdd\x0f\x12\x31\n,ADJUST_PRESCRIPTION__INDICATIONS__PRE_SEARCH\x10\xde\x0f\x12\x32\n-ADJUST_PRESCRIPTION__INDICATIONS__POST_SEARCH\x10\xdf\x0f\x12.\n)ADJUST_PRESCRIPTION__PHARMACY__PRE_SEARCH\x10\xe0\x0f\x12/\n*ADJUST_PRESCRIPTION__PHARMACY__POST_SEARCH\x10\xe1\x0f\x12:\n5ADJUST_PRESCRIPTION__CHANGE_MEDICATION_TO__PRE_SEARCH\x10\xe2\x0f\x12;\n6ADJUST_PRESCRIPTION__CHANGE_MEDICATION_TO__POST_SEARCH\x10\xe3\x0f\x12#\n\x1e\x41LLERGY_COMMAND__PRE_ORIGINATE\x10\xa0\x1f\x12$\n\x1f\x41LLERGY_COMMAND__POST_ORIGINATE\x10\xa1\x1f\x12 \n\x1b\x41LLERGY_COMMAND__PRE_UPDATE\x10\xa2\x1f\x12!\n\x1c\x41LLERGY_COMMAND__POST_UPDATE\x10\xa3\x1f\x12 \n\x1b\x41LLERGY_COMMAND__PRE_COMMIT\x10\xa4\x1f\x12!\n\x1c\x41LLERGY_COMMAND__POST_COMMIT\x10\xa5\x1f\x12 \n\x1b\x41LLERGY_COMMAND__PRE_DELETE\x10\xa6\x1f\x12!\n\x1c\x41LLERGY_COMMAND__POST_DELETE\x10\xa7\x1f\x12(\n#ALLERGY_COMMAND__PRE_ENTER_IN_ERROR\x10\xa8\x1f\x12)\n$ALLERGY_COMMAND__POST_ENTER_IN_ERROR\x10\xa9\x1f\x12(\n#ALLERGY_COMMAND__PRE_EXECUTE_ACTION\x10\xaa\x1f\x12)\n$ALLERGY_COMMAND__POST_EXECUTE_ACTION\x10\xab\x1f\x12!\n\x1c\x41LLERGY__ALLERGY__PRE_SEARCH\x10\xac\x1f\x12\"\n\x1d\x41LLERGY__ALLERGY__POST_SEARCH\x10\xad\x1f\x12\"\n\x1d\x41SSESS_COMMAND__PRE_ORIGINATE\x10\xd8\x36\x12#\n\x1e\x41SSESS_COMMAND__POST_ORIGINATE\x10\xd9\x36\x12\x1f\n\x1a\x41SSESS_COMMAND__PRE_UPDATE\x10\xda\x36\x12 \n\x1b\x41SSESS_COMMAND__POST_UPDATE\x10\xdb\x36\x12\x1f\n\x1a\x41SSESS_COMMAND__PRE_COMMIT\x10\xdc\x36\x12 \n\x1b\x41SSESS_COMMAND__POST_COMMIT\x10\xdd\x36\x12\x1f\n\x1a\x41SSESS_COMMAND__PRE_DELETE\x10\xde\x36\x12 \n\x1b\x41SSESS_COMMAND__POST_DELETE\x10\xdf\x36\x12\'\n\"ASSESS_COMMAND__PRE_ENTER_IN_ERROR\x10\xe0\x36\x12(\n#ASSESS_COMMAND__POST_ENTER_IN_ERROR\x10\xe1\x36\x12\'\n\"ASSESS_COMMAND__PRE_EXECUTE_ACTION\x10\xe2\x36\x12(\n#ASSESS_COMMAND__POST_EXECUTE_ACTION\x10\xe3\x36\x12#\n\x1e\x41SSESS__CONDITION__POST_SEARCH\x10\xe4\x36\x12\"\n\x1d\x41SSESS__CONDITION__PRE_SEARCH\x10\xe5\x36\x12/\n*CANCEL_PRESCRIPTION_COMMAND__PRE_ORIGINATE\x10\xc0>\x12\x30\n+CANCEL_PRESCRIPTION_COMMAND__POST_ORIGINATE\x10\xc1>\x12,\n\'CANCEL_PRESCRIPTION_COMMAND__PRE_UPDATE\x10\xc2>\x12-\n(CANCEL_PRESCRIPTION_COMMAND__POST_UPDATE\x10\xc3>\x12,\n\'CANCEL_PRESCRIPTION_COMMAND__PRE_COMMIT\x10\xc4>\x12-\n(CANCEL_PRESCRIPTION_COMMAND__POST_COMMIT\x10\xc5>\x12,\n\'CANCEL_PRESCRIPTION_COMMAND__PRE_DELETE\x10\xc6>\x12-\n(CANCEL_PRESCRIPTION_COMMAND__POST_DELETE\x10\xc7>\x12\x34\n/CANCEL_PRESCRIPTION_COMMAND__PRE_ENTER_IN_ERROR\x10\xc8>\x12\x35\n0CANCEL_PRESCRIPTION_COMMAND__POST_ENTER_IN_ERROR\x10\xc9>\x12\x34\n/CANCEL_PRESCRIPTION_COMMAND__PRE_EXECUTE_ACTION\x10\xca>\x12\x35\n0CANCEL_PRESCRIPTION_COMMAND__POST_EXECUTE_ACTION\x10\xcb>\x12;\n6CANCEL_PRESCRIPTION__SELECTED_PRESCRIPTION__PRE_SEARCH\x10\xcc>\x12<\n7CANCEL_PRESCRIPTION__SELECTED_PRESCRIPTION__POST_SEARCH\x10\xcd>\x12&\n CLIPBOARD_COMMAND__PRE_ORIGINATE\x10\x88\x9e\x03\x12\'\n!CLIPBOARD_COMMAND__POST_ORIGINATE\x10\x89\x9e\x03\x12#\n\x1d\x43LIPBOARD_COMMAND__PRE_UPDATE\x10\x8a\x9e\x03\x12$\n\x1e\x43LIPBOARD_COMMAND__POST_UPDATE\x10\x8b\x9e\x03\x12#\n\x1d\x43LIPBOARD_COMMAND__PRE_COMMIT\x10\x8c\x9e\x03\x12$\n\x1e\x43LIPBOARD_COMMAND__POST_COMMIT\x10\x8d\x9e\x03\x12#\n\x1d\x43LIPBOARD_COMMAND__PRE_DELETE\x10\x8e\x9e\x03\x12$\n\x1e\x43LIPBOARD_COMMAND__POST_DELETE\x10\x8f\x9e\x03\x12+\n%CLIPBOARD_COMMAND__PRE_ENTER_IN_ERROR\x10\x90\x9e\x03\x12,\n&CLIPBOARD_COMMAND__POST_ENTER_IN_ERROR\x10\xf9\xa5\x03\x12+\n%CLIPBOARD_COMMAND__PRE_EXECUTE_ACTION\x10\xe2\xad\x03\x12,\n&CLIPBOARD_COMMAND__POST_EXECUTE_ACTION\x10\xcb\xb5\x03\x12\x30\n*CLIPBOARD_COMMAND__POST_INSERTED_INTO_NOTE\x10\xcc\xb5\x03\x12&\n!CLOSE_GOAL_COMMAND__PRE_ORIGINATE\x10\x90N\x12\'\n\"CLOSE_GOAL_COMMAND__POST_ORIGINATE\x10\x91N\x12#\n\x1e\x43LOSE_GOAL_COMMAND__PRE_UPDATE\x10\x92N\x12$\n\x1f\x43LOSE_GOAL_COMMAND__POST_UPDATE\x10\x93N\x12#\n\x1e\x43LOSE_GOAL_COMMAND__PRE_COMMIT\x10\x94N\x12$\n\x1f\x43LOSE_GOAL_COMMAND__POST_COMMIT\x10\x95N\x12#\n\x1e\x43LOSE_GOAL_COMMAND__PRE_DELETE\x10\x96N\x12$\n\x1f\x43LOSE_GOAL_COMMAND__POST_DELETE\x10\x97N\x12+\n&CLOSE_GOAL_COMMAND__PRE_ENTER_IN_ERROR\x10\x98N\x12,\n\'CLOSE_GOAL_COMMAND__POST_ENTER_IN_ERROR\x10\x99N\x12+\n&CLOSE_GOAL_COMMAND__PRE_EXECUTE_ACTION\x10\x9aN\x12,\n\'CLOSE_GOAL_COMMAND__POST_EXECUTE_ACTION\x10\x9bN\x12\x30\n+CLOSE_GOAL_COMMAND__POST_INSERTED_INTO_NOTE\x10\x9eN\x12$\n\x1f\x43LOSE_GOAL__GOAL_ID__PRE_SEARCH\x10\x9cN\x12%\n CLOSE_GOAL__GOAL_ID__POST_SEARCH\x10\x9dN\x12$\n\x1f\x44IAGNOSE_COMMAND__PRE_ORIGINATE\x10\xb0m\x12%\n DIAGNOSE_COMMAND__POST_ORIGINATE\x10\xb1m\x12!\n\x1c\x44IAGNOSE_COMMAND__PRE_UPDATE\x10\xb2m\x12\"\n\x1d\x44IAGNOSE_COMMAND__POST_UPDATE\x10\xb3m\x12!\n\x1c\x44IAGNOSE_COMMAND__PRE_COMMIT\x10\xb4m\x12\"\n\x1d\x44IAGNOSE_COMMAND__POST_COMMIT\x10\xb5m\x12!\n\x1c\x44IAGNOSE_COMMAND__PRE_DELETE\x10\xb6m\x12\"\n\x1d\x44IAGNOSE_COMMAND__POST_DELETE\x10\xb7m\x12)\n$DIAGNOSE_COMMAND__PRE_ENTER_IN_ERROR\x10\xb8m\x12*\n%DIAGNOSE_COMMAND__POST_ENTER_IN_ERROR\x10\xb9m\x12)\n$DIAGNOSE_COMMAND__PRE_EXECUTE_ACTION\x10\xbam\x12*\n%DIAGNOSE_COMMAND__POST_EXECUTE_ACTION\x10\xbbm\x12.\n)DIAGNOSE_COMMAND__POST_INSERTED_INTO_NOTE\x10\xbem\x12$\n\x1f\x44IAGNOSE__DIAGNOSE__POST_SEARCH\x10\xbcm\x12#\n\x1e\x44IAGNOSE__DIAGNOSE__PRE_SEARCH\x10\xbdm\x12\x30\n+EDUCATIONAL_MATERIAL_COMMAND__PRE_ORIGINATE\x10\x98u\x12\x31\n,EDUCATIONAL_MATERIAL_COMMAND__POST_ORIGINATE\x10\x99u\x12-\n(EDUCATIONAL_MATERIAL_COMMAND__PRE_UPDATE\x10\x9au\x12.\n)EDUCATIONAL_MATERIAL_COMMAND__POST_UPDATE\x10\x9bu\x12-\n(EDUCATIONAL_MATERIAL_COMMAND__PRE_COMMIT\x10\x9cu\x12.\n)EDUCATIONAL_MATERIAL_COMMAND__POST_COMMIT\x10\x9du\x12-\n(EDUCATIONAL_MATERIAL_COMMAND__PRE_DELETE\x10\x9eu\x12.\n)EDUCATIONAL_MATERIAL_COMMAND__POST_DELETE\x10\x9fu\x12\x35\n0EDUCATIONAL_MATERIAL_COMMAND__PRE_ENTER_IN_ERROR\x10\xa0u\x12\x36\n1EDUCATIONAL_MATERIAL_COMMAND__POST_ENTER_IN_ERROR\x10\xa1u\x12\x35\n0EDUCATIONAL_MATERIAL_COMMAND__PRE_EXECUTE_ACTION\x10\xa2u\x12\x36\n1EDUCATIONAL_MATERIAL_COMMAND__POST_EXECUTE_ACTION\x10\xa3u\x12:\n5EDUCATIONAL_MATERIAL_COMMAND__POST_INSERTED_INTO_NOTE\x10\xa8u\x12,\n\'EDUCATIONAL_MATERIAL__TITLE__PRE_SEARCH\x10\xa4u\x12-\n(EDUCATIONAL_MATERIAL__TITLE__POST_SEARCH\x10\xa5u\x12/\n*EDUCATIONAL_MATERIAL__LANGUAGE__PRE_SEARCH\x10\xa6u\x12\x30\n+EDUCATIONAL_MATERIAL__LANGUAGE__POST_SEARCH\x10\xa7u\x12*\n%FAMILY_HISTORY_COMMAND__PRE_ORIGINATE\x10\x80}\x12+\n&FAMILY_HISTORY_COMMAND__POST_ORIGINATE\x10\x81}\x12\'\n\"FAMILY_HISTORY_COMMAND__PRE_UPDATE\x10\x82}\x12(\n#FAMILY_HISTORY_COMMAND__POST_UPDATE\x10\x83}\x12\'\n\"FAMILY_HISTORY_COMMAND__PRE_COMMIT\x10\x84}\x12(\n#FAMILY_HISTORY_COMMAND__POST_COMMIT\x10\x85}\x12\'\n\"FAMILY_HISTORY_COMMAND__PRE_DELETE\x10\x86}\x12(\n#FAMILY_HISTORY_COMMAND__POST_DELETE\x10\x87}\x12/\n*FAMILY_HISTORY_COMMAND__PRE_ENTER_IN_ERROR\x10\x88}\x12\x30\n+FAMILY_HISTORY_COMMAND__POST_ENTER_IN_ERROR\x10\x89}\x12/\n*FAMILY_HISTORY_COMMAND__PRE_EXECUTE_ACTION\x10\x8a}\x12\x30\n+FAMILY_HISTORY_COMMAND__POST_EXECUTE_ACTION\x10\x8b}\x12\x34\n/FAMILY_HISTORY_COMMAND__POST_INSERTED_INTO_NOTE\x10\x90}\x12/\n*FAMILY_HISTORY__FAMILY_HISTORY__PRE_SEARCH\x10\x8c}\x12\x30\n+FAMILY_HISTORY__FAMILY_HISTORY__POST_SEARCH\x10\x8d}\x12)\n$FAMILY_HISTORY__RELATIVE__PRE_SEARCH\x10\x8e}\x12*\n%FAMILY_HISTORY__RELATIVE__POST_SEARCH\x10\x8f}\x12&\n FOLLOW_UP_COMMAND__PRE_ORIGINATE\x10\xe8\x84\x01\x12\'\n!FOLLOW_UP_COMMAND__POST_ORIGINATE\x10\xe9\x84\x01\x12#\n\x1d\x46OLLOW_UP_COMMAND__PRE_UPDATE\x10\xea\x84\x01\x12$\n\x1e\x46OLLOW_UP_COMMAND__POST_UPDATE\x10\xeb\x84\x01\x12#\n\x1d\x46OLLOW_UP_COMMAND__PRE_COMMIT\x10\xec\x84\x01\x12$\n\x1e\x46OLLOW_UP_COMMAND__POST_COMMIT\x10\xed\x84\x01\x12#\n\x1d\x46OLLOW_UP_COMMAND__PRE_DELETE\x10\xee\x84\x01\x12$\n\x1e\x46OLLOW_UP_COMMAND__POST_DELETE\x10\xef\x84\x01\x12+\n%FOLLOW_UP_COMMAND__PRE_ENTER_IN_ERROR\x10\xf0\x84\x01\x12,\n&FOLLOW_UP_COMMAND__POST_ENTER_IN_ERROR\x10\xf1\x84\x01\x12+\n%FOLLOW_UP_COMMAND__PRE_EXECUTE_ACTION\x10\xf2\x84\x01\x12,\n&FOLLOW_UP_COMMAND__POST_EXECUTE_ACTION\x10\xf3\x84\x01\x12#\n\x1d\x46OLLOW_UP__CODING__PRE_SEARCH\x10\xf4\x84\x01\x12$\n\x1e\x46OLLOW_UP__CODING__POST_SEARCH\x10\xf5\x84\x01\x12&\n FOLLOW_UP__NOTE_TYPE__PRE_SEARCH\x10\xf6\x84\x01\x12\'\n!FOLLOW_UP__NOTE_TYPE__POST_SEARCH\x10\xf7\x84\x01\x12!\n\x1bGOAL_COMMAND__PRE_ORIGINATE\x10\xd0\x8c\x01\x12\"\n\x1cGOAL_COMMAND__POST_ORIGINATE\x10\xd1\x8c\x01\x12\x1e\n\x18GOAL_COMMAND__PRE_UPDATE\x10\xd2\x8c\x01\x12\x1f\n\x19GOAL_COMMAND__POST_UPDATE\x10\xd3\x8c\x01\x12\x1e\n\x18GOAL_COMMAND__PRE_COMMIT\x10\xd4\x8c\x01\x12\x1f\n\x19GOAL_COMMAND__POST_COMMIT\x10\xd5\x8c\x01\x12\x1e\n\x18GOAL_COMMAND__PRE_DELETE\x10\xd6\x8c\x01\x12\x1f\n\x19GOAL_COMMAND__POST_DELETE\x10\xd7\x8c\x01\x12&\n GOAL_COMMAND__PRE_ENTER_IN_ERROR\x10\xd8\x8c\x01\x12\'\n!GOAL_COMMAND__POST_ENTER_IN_ERROR\x10\xd9\x8c\x01\x12&\n GOAL_COMMAND__PRE_EXECUTE_ACTION\x10\xda\x8c\x01\x12\'\n!GOAL_COMMAND__POST_EXECUTE_ACTION\x10\xdb\x8c\x01\x12+\n%GOAL_COMMAND__POST_INSERTED_INTO_NOTE\x10\xde\x8c\x01\x12\x37\n1HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_ORIGINATE\x10\xb8\x94\x01\x12\x38\n2HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_ORIGINATE\x10\xb9\x94\x01\x12\x34\n.HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_UPDATE\x10\xba\x94\x01\x12\x35\n/HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_UPDATE\x10\xbb\x94\x01\x12\x34\n.HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_COMMIT\x10\xbc\x94\x01\x12\x35\n/HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_COMMIT\x10\xbd\x94\x01\x12\x34\n.HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_DELETE\x10\xbe\x94\x01\x12\x35\n/HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_DELETE\x10\xbf\x94\x01\x12<\n6HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_ENTER_IN_ERROR\x10\xc0\x94\x01\x12=\n7HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_ENTER_IN_ERROR\x10\xc1\x94\x01\x12<\n6HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_EXECUTE_ACTION\x10\xc2\x94\x01\x12=\n7HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_EXECUTE_ACTION\x10\xc3\x94\x01\x12\x41\n;HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_INSERTED_INTO_NOTE\x10\xc4\x94\x01\x12*\n$IMAGING_ORDER_COMMAND__PRE_ORIGINATE\x10\xa0\x9c\x01\x12+\n%IMAGING_ORDER_COMMAND__POST_ORIGINATE\x10\xa1\x9c\x01\x12\'\n!IMAGING_ORDER_COMMAND__PRE_UPDATE\x10\xa2\x9c\x01\x12(\n\"IMAGING_ORDER_COMMAND__POST_UPDATE\x10\xa3\x9c\x01\x12\'\n!IMAGING_ORDER_COMMAND__PRE_COMMIT\x10\xa4\x9c\x01\x12(\n\"IMAGING_ORDER_COMMAND__POST_COMMIT\x10\xa5\x9c\x01\x12\'\n!IMAGING_ORDER_COMMAND__PRE_DELETE\x10\xa6\x9c\x01\x12(\n\"IMAGING_ORDER_COMMAND__POST_DELETE\x10\xa7\x9c\x01\x12/\n)IMAGING_ORDER_COMMAND__PRE_ENTER_IN_ERROR\x10\xa8\x9c\x01\x12\x30\n*IMAGING_ORDER_COMMAND__POST_ENTER_IN_ERROR\x10\xa9\x9c\x01\x12/\n)IMAGING_ORDER_COMMAND__PRE_EXECUTE_ACTION\x10\xaa\x9c\x01\x12\x30\n*IMAGING_ORDER_COMMAND__POST_EXECUTE_ACTION\x10\xab\x9c\x01\x12\x34\n.IMAGING_ORDER_COMMAND__POST_INSERTED_INTO_NOTE\x10\xb4\x9c\x01\x12&\n IMAGING_ORDER__IMAGE__PRE_SEARCH\x10\xac\x9c\x01\x12\'\n!IMAGING_ORDER__IMAGE__POST_SEARCH\x10\xad\x9c\x01\x12,\n&IMAGING_ORDER__INDICATIONS__PRE_SEARCH\x10\xae\x9c\x01\x12-\n\'IMAGING_ORDER__INDICATIONS__POST_SEARCH\x10\xaf\x9c\x01\x12/\n)IMAGING_ORDER__IMAGING_CENTER__PRE_SEARCH\x10\xb0\x9c\x01\x12\x30\n*IMAGING_ORDER__IMAGING_CENTER__POST_SEARCH\x10\xb1\x9c\x01\x12\x32\n,IMAGING_ORDER__ORDERING_PROVIDER__PRE_SEARCH\x10\xb2\x9c\x01\x12\x33\n-IMAGING_ORDER__ORDERING_PROVIDER__POST_SEARCH\x10\xb3\x9c\x01\x12\x33\n-IMMUNIZATION_STATEMENT_COMMAND__PRE_ORIGINATE\x10\xf0\xab\x01\x12\x34\n.IMMUNIZATION_STATEMENT_COMMAND__POST_ORIGINATE\x10\xf1\xab\x01\x12\x30\n*IMMUNIZATION_STATEMENT_COMMAND__PRE_UPDATE\x10\xf2\xab\x01\x12\x31\n+IMMUNIZATION_STATEMENT_COMMAND__POST_UPDATE\x10\xf3\xab\x01\x12\x30\n*IMMUNIZATION_STATEMENT_COMMAND__PRE_COMMIT\x10\xf4\xab\x01\x12\x31\n+IMMUNIZATION_STATEMENT_COMMAND__POST_COMMIT\x10\xf5\xab\x01\x12\x30\n*IMMUNIZATION_STATEMENT_COMMAND__PRE_DELETE\x10\xf6\xab\x01\x12\x31\n+IMMUNIZATION_STATEMENT_COMMAND__POST_DELETE\x10\xf7\xab\x01\x12\x38\n2IMMUNIZATION_STATEMENT_COMMAND__PRE_ENTER_IN_ERROR\x10\xf8\xab\x01\x12\x39\n3IMMUNIZATION_STATEMENT_COMMAND__POST_ENTER_IN_ERROR\x10\xf9\xab\x01\x12\x38\n2IMMUNIZATION_STATEMENT_COMMAND__PRE_EXECUTE_ACTION\x10\xfa\xab\x01\x12\x39\n3IMMUNIZATION_STATEMENT_COMMAND__POST_EXECUTE_ACTION\x10\xfb\xab\x01\x12=\n7IMMUNIZATION_STATEMENT_COMMAND__POST_INSERTED_INTO_NOTE\x10\xfe\xab\x01\x12\x33\n-IMMUNIZATION_STATEMENT__STATEMENT__PRE_SEARCH\x10\xfc\xab\x01\x12\x34\n.IMMUNIZATION_STATEMENT__STATEMENT__POST_SEARCH\x10\xfd\xab\x01\x12%\n\x1fIMMUNIZE_COMMAND__PRE_ORIGINATE\x10\xd8\xb3\x01\x12&\n IMMUNIZE_COMMAND__POST_ORIGINATE\x10\xd9\xb3\x01\x12\"\n\x1cIMMUNIZE_COMMAND__PRE_UPDATE\x10\xda\xb3\x01\x12#\n\x1dIMMUNIZE_COMMAND__POST_UPDATE\x10\xdb\xb3\x01\x12\"\n\x1cIMMUNIZE_COMMAND__PRE_COMMIT\x10\xdc\xb3\x01\x12#\n\x1dIMMUNIZE_COMMAND__POST_COMMIT\x10\xdd\xb3\x01\x12\"\n\x1cIMMUNIZE_COMMAND__PRE_DELETE\x10\xde\xb3\x01\x12#\n\x1dIMMUNIZE_COMMAND__POST_DELETE\x10\xdf\xb3\x01\x12*\n$IMMUNIZE_COMMAND__PRE_ENTER_IN_ERROR\x10\xe0\xb3\x01\x12+\n%IMMUNIZE_COMMAND__POST_ENTER_IN_ERROR\x10\xe1\xb3\x01\x12*\n$IMMUNIZE_COMMAND__PRE_EXECUTE_ACTION\x10\xe2\xb3\x01\x12+\n%IMMUNIZE_COMMAND__POST_EXECUTE_ACTION\x10\xe3\xb3\x01\x12/\n)IMMUNIZE_COMMAND__POST_INSERTED_INTO_NOTE\x10\xea\xb3\x01\x12\"\n\x1cIMMUNIZE__CODING__PRE_SEARCH\x10\xe4\xb3\x01\x12#\n\x1dIMMUNIZE__CODING__POST_SEARCH\x10\xe5\xb3\x01\x12&\n IMMUNIZE__LOT_NUMBER__PRE_SEARCH\x10\xe6\xb3\x01\x12\'\n!IMMUNIZE__LOT_NUMBER__POST_SEARCH\x10\xe7\xb3\x01\x12$\n\x1eIMMUNIZE__GIVEN_BY__PRE_SEARCH\x10\xe8\xb3\x01\x12%\n\x1fIMMUNIZE__GIVEN_BY__POST_SEARCH\x10\xe9\xb3\x01\x12%\n\x1fINSTRUCT_COMMAND__PRE_ORIGINATE\x10\xc0\xbb\x01\x12&\n INSTRUCT_COMMAND__POST_ORIGINATE\x10\xc1\xbb\x01\x12\"\n\x1cINSTRUCT_COMMAND__PRE_UPDATE\x10\xc2\xbb\x01\x12#\n\x1dINSTRUCT_COMMAND__POST_UPDATE\x10\xc3\xbb\x01\x12\"\n\x1cINSTRUCT_COMMAND__PRE_COMMIT\x10\xc4\xbb\x01\x12#\n\x1dINSTRUCT_COMMAND__POST_COMMIT\x10\xc5\xbb\x01\x12\"\n\x1cINSTRUCT_COMMAND__PRE_DELETE\x10\xc6\xbb\x01\x12#\n\x1dINSTRUCT_COMMAND__POST_DELETE\x10\xc7\xbb\x01\x12*\n$INSTRUCT_COMMAND__PRE_ENTER_IN_ERROR\x10\xc8\xbb\x01\x12+\n%INSTRUCT_COMMAND__POST_ENTER_IN_ERROR\x10\xc9\xbb\x01\x12*\n$INSTRUCT_COMMAND__PRE_EXECUTE_ACTION\x10\xca\xbb\x01\x12+\n%INSTRUCT_COMMAND__POST_EXECUTE_ACTION\x10\xcb\xbb\x01\x12/\n)INSTRUCT_COMMAND__POST_INSERTED_INTO_NOTE\x10\xce\xbb\x01\x12$\n\x1eINSTRUCT__INSTRUCT__PRE_SEARCH\x10\xcc\xbb\x01\x12%\n\x1fINSTRUCT__INSTRUCT__POST_SEARCH\x10\xcd\xbb\x01\x12&\n LAB_ORDER_COMMAND__PRE_ORIGINATE\x10\xa8\xc3\x01\x12\'\n!LAB_ORDER_COMMAND__POST_ORIGINATE\x10\xa9\xc3\x01\x12#\n\x1dLAB_ORDER_COMMAND__PRE_UPDATE\x10\xaa\xc3\x01\x12$\n\x1eLAB_ORDER_COMMAND__POST_UPDATE\x10\xab\xc3\x01\x12#\n\x1dLAB_ORDER_COMMAND__PRE_COMMIT\x10\xac\xc3\x01\x12$\n\x1eLAB_ORDER_COMMAND__POST_COMMIT\x10\xad\xc3\x01\x12#\n\x1dLAB_ORDER_COMMAND__PRE_DELETE\x10\xae\xc3\x01\x12$\n\x1eLAB_ORDER_COMMAND__POST_DELETE\x10\xaf\xc3\x01\x12+\n%LAB_ORDER_COMMAND__PRE_ENTER_IN_ERROR\x10\xb0\xc3\x01\x12,\n&LAB_ORDER_COMMAND__POST_ENTER_IN_ERROR\x10\xb1\xc3\x01\x12+\n%LAB_ORDER_COMMAND__PRE_EXECUTE_ACTION\x10\xb2\xc3\x01\x12,\n&LAB_ORDER_COMMAND__POST_EXECUTE_ACTION\x10\xb3\xc3\x01\x12\x30\n*LAB_ORDER_COMMAND__POST_INSERTED_INTO_NOTE\x10\xbc\xc3\x01\x12(\n\"LAB_ORDER__LAB_PARTNER__PRE_SEARCH\x10\xb4\xc3\x01\x12)\n#LAB_ORDER__LAB_PARTNER__POST_SEARCH\x10\xb5\xc3\x01\x12\"\n\x1cLAB_ORDER__TESTS__PRE_SEARCH\x10\xb6\xc3\x01\x12#\n\x1dLAB_ORDER__TESTS__POST_SEARCH\x10\xb7\xc3\x01\x12.\n(LAB_ORDER__ORDERING_PROVIDER__PRE_SEARCH\x10\xb8\xc3\x01\x12/\n)LAB_ORDER__ORDERING_PROVIDER__POST_SEARCH\x10\xb9\xc3\x01\x12&\n LAB_ORDER__DIAGNOSIS__PRE_SEARCH\x10\xba\xc3\x01\x12\'\n!LAB_ORDER__DIAGNOSIS__POST_SEARCH\x10\xbb\xc3\x01\x12,\n&MEDICAL_HISTORY_COMMAND__PRE_ORIGINATE\x10\xf8\xd2\x01\x12-\n\'MEDICAL_HISTORY_COMMAND__POST_ORIGINATE\x10\xf9\xd2\x01\x12)\n#MEDICAL_HISTORY_COMMAND__PRE_UPDATE\x10\xfa\xd2\x01\x12*\n$MEDICAL_HISTORY_COMMAND__POST_UPDATE\x10\xfb\xd2\x01\x12)\n#MEDICAL_HISTORY_COMMAND__PRE_COMMIT\x10\xfc\xd2\x01\x12*\n$MEDICAL_HISTORY_COMMAND__POST_COMMIT\x10\xfd\xd2\x01\x12)\n#MEDICAL_HISTORY_COMMAND__PRE_DELETE\x10\xfe\xd2\x01\x12*\n$MEDICAL_HISTORY_COMMAND__POST_DELETE\x10\xff\xd2\x01\x12\x31\n+MEDICAL_HISTORY_COMMAND__PRE_ENTER_IN_ERROR\x10\x80\xd3\x01\x12\x32\n,MEDICAL_HISTORY_COMMAND__POST_ENTER_IN_ERROR\x10\x81\xd3\x01\x12\x31\n+MEDICAL_HISTORY_COMMAND__PRE_EXECUTE_ACTION\x10\x82\xd3\x01\x12\x32\n,MEDICAL_HISTORY_COMMAND__POST_EXECUTE_ACTION\x10\x83\xd3\x01\x12\x36\n0MEDICAL_HISTORY_COMMAND__POST_INSERTED_INTO_NOTE\x10\x8a\xd3\x01\x12\x37\n1MEDICAL_HISTORY__PAST_MEDICAL_HISTORY__PRE_SEARCH\x10\x84\xd3\x01\x12\x38\n2MEDICAL_HISTORY__PAST_MEDICAL_HISTORY__POST_SEARCH\x10\x85\xd3\x01\x12\x39\n3MEDICAL_HISTORY__APPROXIMATE_START_DATE__PRE_SEARCH\x10\x86\xd3\x01\x12:\n4MEDICAL_HISTORY__APPROXIMATE_START_DATE__POST_SEARCH\x10\x87\xd3\x01\x12\x37\n1MEDICAL_HISTORY__APPROXIMATE_END_DATE__PRE_SEARCH\x10\x88\xd3\x01\x12\x38\n2MEDICAL_HISTORY__APPROXIMATE_END_DATE__POST_SEARCH\x10\x89\xd3\x01\x12\x31\n+MEDICATION_STATEMENT_COMMAND__PRE_ORIGINATE\x10\xe0\xda\x01\x12\x32\n,MEDICATION_STATEMENT_COMMAND__POST_ORIGINATE\x10\xe1\xda\x01\x12.\n(MEDICATION_STATEMENT_COMMAND__PRE_UPDATE\x10\xe2\xda\x01\x12/\n)MEDICATION_STATEMENT_COMMAND__POST_UPDATE\x10\xe3\xda\x01\x12.\n(MEDICATION_STATEMENT_COMMAND__PRE_COMMIT\x10\xe4\xda\x01\x12/\n)MEDICATION_STATEMENT_COMMAND__POST_COMMIT\x10\xe5\xda\x01\x12.\n(MEDICATION_STATEMENT_COMMAND__PRE_DELETE\x10\xe6\xda\x01\x12/\n)MEDICATION_STATEMENT_COMMAND__POST_DELETE\x10\xe7\xda\x01\x12\x36\n0MEDICATION_STATEMENT_COMMAND__PRE_ENTER_IN_ERROR\x10\xe8\xda\x01\x12\x37\n1MEDICATION_STATEMENT_COMMAND__POST_ENTER_IN_ERROR\x10\xe9\xda\x01\x12\x36\n0MEDICATION_STATEMENT_COMMAND__PRE_EXECUTE_ACTION\x10\xea\xda\x01\x12\x37\n1MEDICATION_STATEMENT_COMMAND__POST_EXECUTE_ACTION\x10\xeb\xda\x01\x12;\n5MEDICATION_STATEMENT_COMMAND__POST_INSERTED_INTO_NOTE\x10\xec\xda\x01\x12$\n\x1ePERFORM_COMMAND__PRE_ORIGINATE\x10\xc8\xe2\x01\x12%\n\x1fPERFORM_COMMAND__POST_ORIGINATE\x10\xc9\xe2\x01\x12!\n\x1bPERFORM_COMMAND__PRE_UPDATE\x10\xca\xe2\x01\x12\"\n\x1cPERFORM_COMMAND__POST_UPDATE\x10\xcb\xe2\x01\x12!\n\x1bPERFORM_COMMAND__PRE_COMMIT\x10\xcc\xe2\x01\x12\"\n\x1cPERFORM_COMMAND__POST_COMMIT\x10\xcd\xe2\x01\x12!\n\x1bPERFORM_COMMAND__PRE_DELETE\x10\xce\xe2\x01\x12\"\n\x1cPERFORM_COMMAND__POST_DELETE\x10\xcf\xe2\x01\x12)\n#PERFORM_COMMAND__PRE_ENTER_IN_ERROR\x10\xd0\xe2\x01\x12*\n$PERFORM_COMMAND__POST_ENTER_IN_ERROR\x10\xd1\xe2\x01\x12)\n#PERFORM_COMMAND__PRE_EXECUTE_ACTION\x10\xd2\xe2\x01\x12*\n$PERFORM_COMMAND__POST_EXECUTE_ACTION\x10\xd3\xe2\x01\x12.\n(PERFORM_COMMAND__POST_INSERTED_INTO_NOTE\x10\xd6\xe2\x01\x12\"\n\x1cPERFORM__PERFORM__PRE_SEARCH\x10\xd4\xe2\x01\x12#\n\x1dPERFORM__PERFORM__POST_SEARCH\x10\xd5\xe2\x01\x12*\n$PHYSICAL_EXAM_COMMAND__PRE_ORIGINATE\x10\xb0\xea\x01\x12+\n%PHYSICAL_EXAM_COMMAND__POST_ORIGINATE\x10\xb1\xea\x01\x12\'\n!PHYSICAL_EXAM_COMMAND__PRE_UPDATE\x10\xb2\xea\x01\x12(\n\"PHYSICAL_EXAM_COMMAND__POST_UPDATE\x10\xb3\xea\x01\x12\'\n!PHYSICAL_EXAM_COMMAND__PRE_COMMIT\x10\xb4\xea\x01\x12(\n\"PHYSICAL_EXAM_COMMAND__POST_COMMIT\x10\xb5\xea\x01\x12\'\n!PHYSICAL_EXAM_COMMAND__PRE_DELETE\x10\xb6\xea\x01\x12(\n\"PHYSICAL_EXAM_COMMAND__POST_DELETE\x10\xb7\xea\x01\x12/\n)PHYSICAL_EXAM_COMMAND__PRE_ENTER_IN_ERROR\x10\xb8\xea\x01\x12\x30\n*PHYSICAL_EXAM_COMMAND__POST_ENTER_IN_ERROR\x10\xb9\xea\x01\x12/\n)PHYSICAL_EXAM_COMMAND__PRE_EXECUTE_ACTION\x10\xba\xea\x01\x12\x30\n*PHYSICAL_EXAM_COMMAND__POST_EXECUTE_ACTION\x10\xbb\xea\x01\x12\x34\n.PHYSICAL_EXAM_COMMAND__POST_INSERTED_INTO_NOTE\x10\xbe\xea\x01\x12.\n(PHYSICAL_EXAM__QUESTIONNAIRE__PRE_SEARCH\x10\xbc\xea\x01\x12/\n)PHYSICAL_EXAM__QUESTIONNAIRE__POST_SEARCH\x10\xbd\xea\x01\x12!\n\x1bPLAN_COMMAND__PRE_ORIGINATE\x10\x98\xf2\x01\x12\"\n\x1cPLAN_COMMAND__POST_ORIGINATE\x10\x99\xf2\x01\x12\x1e\n\x18PLAN_COMMAND__PRE_UPDATE\x10\x9a\xf2\x01\x12\x1f\n\x19PLAN_COMMAND__POST_UPDATE\x10\x9b\xf2\x01\x12\x1e\n\x18PLAN_COMMAND__PRE_COMMIT\x10\x9c\xf2\x01\x12\x1f\n\x19PLAN_COMMAND__POST_COMMIT\x10\x9d\xf2\x01\x12\x1e\n\x18PLAN_COMMAND__PRE_DELETE\x10\x9e\xf2\x01\x12\x1f\n\x19PLAN_COMMAND__POST_DELETE\x10\x9f\xf2\x01\x12&\n PLAN_COMMAND__PRE_ENTER_IN_ERROR\x10\xa0\xf2\x01\x12\'\n!PLAN_COMMAND__POST_ENTER_IN_ERROR\x10\xa1\xf2\x01\x12&\n PLAN_COMMAND__PRE_EXECUTE_ACTION\x10\xa2\xf2\x01\x12\'\n!PLAN_COMMAND__POST_EXECUTE_ACTION\x10\xa3\xf2\x01\x12+\n%PLAN_COMMAND__POST_INSERTED_INTO_NOTE\x10\xa4\xf2\x01\x12&\n PRESCRIBE_COMMAND__PRE_ORIGINATE\x10\xe8\x81\x02\x12\'\n!PRESCRIBE_COMMAND__POST_ORIGINATE\x10\xe9\x81\x02\x12#\n\x1dPRESCRIBE_COMMAND__PRE_UPDATE\x10\xea\x81\x02\x12$\n\x1ePRESCRIBE_COMMAND__POST_UPDATE\x10\xeb\x81\x02\x12#\n\x1dPRESCRIBE_COMMAND__PRE_COMMIT\x10\xec\x81\x02\x12$\n\x1ePRESCRIBE_COMMAND__POST_COMMIT\x10\xed\x81\x02\x12#\n\x1dPRESCRIBE_COMMAND__PRE_DELETE\x10\xee\x81\x02\x12$\n\x1ePRESCRIBE_COMMAND__POST_DELETE\x10\xef\x81\x02\x12+\n%PRESCRIBE_COMMAND__PRE_ENTER_IN_ERROR\x10\xf0\x81\x02\x12,\n&PRESCRIBE_COMMAND__POST_ENTER_IN_ERROR\x10\xf1\x81\x02\x12+\n%PRESCRIBE_COMMAND__PRE_EXECUTE_ACTION\x10\xf2\x81\x02\x12,\n&PRESCRIBE_COMMAND__POST_EXECUTE_ACTION\x10\xf3\x81\x02\x12\x30\n*PRESCRIBE_COMMAND__POST_INSERTED_INTO_NOTE\x10\xfa\x81\x02\x12\'\n!PRESCRIBE__PRESCRIBE__POST_SEARCH\x10\xf4\x81\x02\x12&\n PRESCRIBE__PRESCRIBE__PRE_SEARCH\x10\xf5\x81\x02\x12(\n\"PRESCRIBE__INDICATIONS__PRE_SEARCH\x10\xf6\x81\x02\x12)\n#PRESCRIBE__INDICATIONS__POST_SEARCH\x10\xf7\x81\x02\x12%\n\x1fPRESCRIBE__PHARMACY__PRE_SEARCH\x10\xf8\x81\x02\x12&\n PRESCRIBE__PHARMACY__POST_SEARCH\x10\xf9\x81\x02\x12*\n$QUESTIONNAIRE_COMMAND__PRE_ORIGINATE\x10\xd0\x89\x02\x12+\n%QUESTIONNAIRE_COMMAND__POST_ORIGINATE\x10\xd1\x89\x02\x12\'\n!QUESTIONNAIRE_COMMAND__PRE_UPDATE\x10\xd2\x89\x02\x12(\n\"QUESTIONNAIRE_COMMAND__POST_UPDATE\x10\xd3\x89\x02\x12\'\n!QUESTIONNAIRE_COMMAND__PRE_COMMIT\x10\xd4\x89\x02\x12(\n\"QUESTIONNAIRE_COMMAND__POST_COMMIT\x10\xd5\x89\x02\x12\'\n!QUESTIONNAIRE_COMMAND__PRE_DELETE\x10\xd6\x89\x02\x12(\n\"QUESTIONNAIRE_COMMAND__POST_DELETE\x10\xd7\x89\x02\x12/\n)QUESTIONNAIRE_COMMAND__PRE_ENTER_IN_ERROR\x10\xd8\x89\x02\x12\x30\n*QUESTIONNAIRE_COMMAND__POST_ENTER_IN_ERROR\x10\xd9\x89\x02\x12/\n)QUESTIONNAIRE_COMMAND__PRE_EXECUTE_ACTION\x10\xda\x89\x02\x12\x30\n*QUESTIONNAIRE_COMMAND__POST_EXECUTE_ACTION\x10\xdb\x89\x02\x12\x34\n.QUESTIONNAIRE_COMMAND__POST_INSERTED_INTO_NOTE\x10\xde\x89\x02\x12/\n)QUESTIONNAIRE__QUESTIONNAIRE__POST_SEARCH\x10\xdc\x89\x02\x12.\n(QUESTIONNAIRE__QUESTIONNAIRE__PRE_SEARCH\x10\xdd\x89\x02\x12-\n\'REASON_FOR_VISIT_COMMAND__PRE_ORIGINATE\x10\xb8\x91\x02\x12.\n(REASON_FOR_VISIT_COMMAND__POST_ORIGINATE\x10\xb9\x91\x02\x12*\n$REASON_FOR_VISIT_COMMAND__PRE_UPDATE\x10\xba\x91\x02\x12+\n%REASON_FOR_VISIT_COMMAND__POST_UPDATE\x10\xbb\x91\x02\x12*\n$REASON_FOR_VISIT_COMMAND__PRE_COMMIT\x10\xbc\x91\x02\x12+\n%REASON_FOR_VISIT_COMMAND__POST_COMMIT\x10\xbd\x91\x02\x12*\n$REASON_FOR_VISIT_COMMAND__PRE_DELETE\x10\xbe\x91\x02\x12+\n%REASON_FOR_VISIT_COMMAND__POST_DELETE\x10\xbf\x91\x02\x12\x32\n,REASON_FOR_VISIT_COMMAND__PRE_ENTER_IN_ERROR\x10\xc0\x91\x02\x12\x33\n-REASON_FOR_VISIT_COMMAND__POST_ENTER_IN_ERROR\x10\xc1\x91\x02\x12\x32\n,REASON_FOR_VISIT_COMMAND__PRE_EXECUTE_ACTION\x10\xc2\x91\x02\x12\x33\n-REASON_FOR_VISIT_COMMAND__POST_EXECUTE_ACTION\x10\xc3\x91\x02\x12\x37\n1REASON_FOR_VISIT_COMMAND__POST_INSERTED_INTO_NOTE\x10\xc6\x91\x02\x12+\n%REASON_FOR_VISIT__CODING__POST_SEARCH\x10\xc4\x91\x02\x12*\n$REASON_FOR_VISIT__CODING__PRE_SEARCH\x10\xc5\x91\x02\x12\"\n\x1cREFER_COMMAND__PRE_ORIGINATE\x10\xa0\x99\x02\x12#\n\x1dREFER_COMMAND__POST_ORIGINATE\x10\xa1\x99\x02\x12\x1f\n\x19REFER_COMMAND__PRE_UPDATE\x10\xa2\x99\x02\x12 \n\x1aREFER_COMMAND__POST_UPDATE\x10\xa3\x99\x02\x12\x1f\n\x19REFER_COMMAND__PRE_COMMIT\x10\xa4\x99\x02\x12 \n\x1aREFER_COMMAND__POST_COMMIT\x10\xa5\x99\x02\x12\x1f\n\x19REFER_COMMAND__PRE_DELETE\x10\xa6\x99\x02\x12 \n\x1aREFER_COMMAND__POST_DELETE\x10\xa7\x99\x02\x12\'\n!REFER_COMMAND__PRE_ENTER_IN_ERROR\x10\xa8\x99\x02\x12(\n\"REFER_COMMAND__POST_ENTER_IN_ERROR\x10\xa9\x99\x02\x12\'\n!REFER_COMMAND__PRE_EXECUTE_ACTION\x10\xaa\x99\x02\x12(\n\"REFER_COMMAND__POST_EXECUTE_ACTION\x10\xab\x99\x02\x12*\n$REFER_COMMAND__REFER_TO__POST_SEARCH\x10\xac\x99\x02\x12)\n#REFER_COMMAND__REFER_TO__PRE_SEARCH\x10\xad\x99\x02\x12-\n\'REFER_COMMAND__INDICATIONS__POST_SEARCH\x10\xae\x99\x02\x12,\n&REFER_COMMAND__INDICATIONS__PRE_SEARCH\x10\xaf\x99\x02\x12\x36\n0REFER_COMMAND__DOCUMENTS_TO_INCLUDE__POST_SEARCH\x10\xb0\x99\x02\x12\x35\n/REFER_COMMAND__DOCUMENTS_TO_INCLUDE__PRE_SEARCH\x10\xb1\x99\x02\x12.\n(REFER_COMMAND__LINKED_ITEMS__POST_SEARCH\x10\xb2\x99\x02\x12\x35\n/REFER_COMMAND__LINKED_ITEMS_INCLUDE__PRE_SEARCH\x10\xb3\x99\x02\x12#\n\x1dREFILL_COMMAND__PRE_ORIGINATE\x10\xd8\xb0\x02\x12$\n\x1eREFILL_COMMAND__POST_ORIGINATE\x10\xd9\xb0\x02\x12 \n\x1aREFILL_COMMAND__PRE_UPDATE\x10\xda\xb0\x02\x12!\n\x1bREFILL_COMMAND__POST_UPDATE\x10\xdb\xb0\x02\x12 \n\x1aREFILL_COMMAND__PRE_COMMIT\x10\xdc\xb0\x02\x12!\n\x1bREFILL_COMMAND__POST_COMMIT\x10\xdd\xb0\x02\x12 \n\x1aREFILL_COMMAND__PRE_DELETE\x10\xde\xb0\x02\x12!\n\x1bREFILL_COMMAND__POST_DELETE\x10\xdf\xb0\x02\x12(\n\"REFILL_COMMAND__PRE_ENTER_IN_ERROR\x10\xe0\xb0\x02\x12)\n#REFILL_COMMAND__POST_ENTER_IN_ERROR\x10\xe1\xb0\x02\x12(\n\"REFILL_COMMAND__PRE_EXECUTE_ACTION\x10\xe2\xb0\x02\x12)\n#REFILL_COMMAND__POST_EXECUTE_ACTION\x10\xe3\xb0\x02\x12-\n\'REFILL_COMMAND__POST_INSERTED_INTO_NOTE\x10\xea\xb0\x02\x12#\n\x1dREFILL__PRESCRIBE__PRE_SEARCH\x10\xe4\xb0\x02\x12$\n\x1eREFILL__PRESCRIBE__POST_SEARCH\x10\xe5\xb0\x02\x12%\n\x1fREFILL__INDICATIONS__PRE_SEARCH\x10\xe6\xb0\x02\x12&\n REFILL__INDICATIONS__POST_SEARCH\x10\xe7\xb0\x02\x12\"\n\x1cREFILL__PHARMACY__PRE_SEARCH\x10\xe8\xb0\x02\x12#\n\x1dREFILL__PHARMACY__POST_SEARCH\x10\xe9\xb0\x02\x12+\n%REMOVE_ALLERGY_COMMAND__PRE_ORIGINATE\x10\xc0\xb8\x02\x12,\n&REMOVE_ALLERGY_COMMAND__POST_ORIGINATE\x10\xc1\xb8\x02\x12(\n\"REMOVE_ALLERGY_COMMAND__PRE_UPDATE\x10\xc2\xb8\x02\x12)\n#REMOVE_ALLERGY_COMMAND__POST_UPDATE\x10\xc3\xb8\x02\x12(\n\"REMOVE_ALLERGY_COMMAND__PRE_COMMIT\x10\xc4\xb8\x02\x12)\n#REMOVE_ALLERGY_COMMAND__POST_COMMIT\x10\xc5\xb8\x02\x12(\n\"REMOVE_ALLERGY_COMMAND__PRE_DELETE\x10\xc6\xb8\x02\x12)\n#REMOVE_ALLERGY_COMMAND__POST_DELETE\x10\xc7\xb8\x02\x12\x30\n*REMOVE_ALLERGY_COMMAND__PRE_ENTER_IN_ERROR\x10\xc8\xb8\x02\x12\x31\n+REMOVE_ALLERGY_COMMAND__POST_ENTER_IN_ERROR\x10\xc9\xb8\x02\x12\x30\n*REMOVE_ALLERGY_COMMAND__PRE_EXECUTE_ACTION\x10\xca\xb8\x02\x12\x31\n+REMOVE_ALLERGY_COMMAND__POST_EXECUTE_ACTION\x10\xcb\xb8\x02\x12\x35\n/REMOVE_ALLERGY_COMMAND__POST_INSERTED_INTO_NOTE\x10\xce\xb8\x02\x12)\n#REMOVE_ALLERGY__ALLERGY__PRE_SEARCH\x10\xcc\xb8\x02\x12*\n$REMOVE_ALLERGY__ALLERGY__POST_SEARCH\x10\xcd\xb8\x02\x12.\n(RESOLVE_CONDITION_COMMAND__PRE_ORIGINATE\x10\xa8\xc0\x02\x12/\n)RESOLVE_CONDITION_COMMAND__POST_ORIGINATE\x10\xa9\xc0\x02\x12+\n%RESOLVE_CONDITION_COMMAND__PRE_UPDATE\x10\xaa\xc0\x02\x12,\n&RESOLVE_CONDITION_COMMAND__POST_UPDATE\x10\xab\xc0\x02\x12+\n%RESOLVE_CONDITION_COMMAND__PRE_COMMIT\x10\xac\xc0\x02\x12,\n&RESOLVE_CONDITION_COMMAND__POST_COMMIT\x10\xad\xc0\x02\x12+\n%RESOLVE_CONDITION_COMMAND__PRE_DELETE\x10\xae\xc0\x02\x12,\n&RESOLVE_CONDITION_COMMAND__POST_DELETE\x10\xaf\xc0\x02\x12\x33\n-RESOLVE_CONDITION_COMMAND__PRE_ENTER_IN_ERROR\x10\xb0\xc0\x02\x12\x34\n.RESOLVE_CONDITION_COMMAND__POST_ENTER_IN_ERROR\x10\xb1\xc0\x02\x12\x33\n-RESOLVE_CONDITION_COMMAND__PRE_EXECUTE_ACTION\x10\xb2\xc0\x02\x12\x34\n.RESOLVE_CONDITION_COMMAND__POST_EXECUTE_ACTION\x10\xb3\xc0\x02\x12.\n(RESOLVE_CONDITION__CONDITION__PRE_SEARCH\x10\xb4\xc0\x02\x12/\n)RESOLVE_CONDITION__CONDITION__POST_SEARCH\x10\xb5\xc0\x02\x12 \n\x1aROS_COMMAND__PRE_ORIGINATE\x10\x90\xc8\x02\x12!\n\x1bROS_COMMAND__POST_ORIGINATE\x10\x91\xc8\x02\x12\x1d\n\x17ROS_COMMAND__PRE_UPDATE\x10\x92\xc8\x02\x12\x1e\n\x18ROS_COMMAND__POST_UPDATE\x10\x93\xc8\x02\x12\x1d\n\x17ROS_COMMAND__PRE_COMMIT\x10\x94\xc8\x02\x12\x1e\n\x18ROS_COMMAND__POST_COMMIT\x10\x95\xc8\x02\x12\x1d\n\x17ROS_COMMAND__PRE_DELETE\x10\x96\xc8\x02\x12\x1e\n\x18ROS_COMMAND__POST_DELETE\x10\x97\xc8\x02\x12%\n\x1fROS_COMMAND__PRE_ENTER_IN_ERROR\x10\x98\xc8\x02\x12&\n ROS_COMMAND__POST_ENTER_IN_ERROR\x10\x99\xc8\x02\x12%\n\x1fROS_COMMAND__PRE_EXECUTE_ACTION\x10\x9a\xc8\x02\x12&\n ROS_COMMAND__POST_EXECUTE_ACTION\x10\x9b\xc8\x02\x12*\n$ROS_COMMAND__POST_INSERTED_INTO_NOTE\x10\x9e\xc8\x02\x12$\n\x1eROS__QUESTIONNAIRE__PRE_SEARCH\x10\x9c\xc8\x02\x12%\n\x1fROS__QUESTIONNAIRE__POST_SEARCH\x10\x9d\xc8\x02\x12,\n&SNOOZE_PROTOCOL_COMMAND__PRE_ORIGINATE\x10\xf8\xcf\x02\x12-\n\'SNOOZE_PROTOCOL_COMMAND__POST_ORIGINATE\x10\xf9\xcf\x02\x12)\n#SNOOZE_PROTOCOL_COMMAND__PRE_UPDATE\x10\xfa\xcf\x02\x12*\n$SNOOZE_PROTOCOL_COMMAND__POST_UPDATE\x10\xfb\xcf\x02\x12)\n#SNOOZE_PROTOCOL_COMMAND__PRE_COMMIT\x10\xfc\xcf\x02\x12*\n$SNOOZE_PROTOCOL_COMMAND__POST_COMMIT\x10\xfd\xcf\x02\x12)\n#SNOOZE_PROTOCOL_COMMAND__PRE_DELETE\x10\xfe\xcf\x02\x12*\n$SNOOZE_PROTOCOL_COMMAND__POST_DELETE\x10\xff\xcf\x02\x12\x31\n+SNOOZE_PROTOCOL_COMMAND__PRE_ENTER_IN_ERROR\x10\x80\xd0\x02\x12\x32\n,SNOOZE_PROTOCOL_COMMAND__POST_ENTER_IN_ERROR\x10\x81\xd0\x02\x12\x31\n+SNOOZE_PROTOCOL_COMMAND__PRE_EXECUTE_ACTION\x10\x82\xd0\x02\x12\x32\n,SNOOZE_PROTOCOL_COMMAND__POST_EXECUTE_ACTION\x10\x83\xd0\x02\x12+\n%SNOOZE_PROTOCOL__PROTOCOL__PRE_SEARCH\x10\x84\xd0\x02\x12,\n&SNOOZE_PROTOCOL__PROTOCOL__POST_SEARCH\x10\x85\xd0\x02\x12,\n&STOP_MEDICATION_COMMAND__PRE_ORIGINATE\x10\xe0\xd7\x02\x12-\n\'STOP_MEDICATION_COMMAND__POST_ORIGINATE\x10\xe1\xd7\x02\x12)\n#STOP_MEDICATION_COMMAND__PRE_UPDATE\x10\xe2\xd7\x02\x12*\n$STOP_MEDICATION_COMMAND__POST_UPDATE\x10\xe3\xd7\x02\x12)\n#STOP_MEDICATION_COMMAND__PRE_COMMIT\x10\xe4\xd7\x02\x12*\n$STOP_MEDICATION_COMMAND__POST_COMMIT\x10\xe5\xd7\x02\x12)\n#STOP_MEDICATION_COMMAND__PRE_DELETE\x10\xe6\xd7\x02\x12*\n$STOP_MEDICATION_COMMAND__POST_DELETE\x10\xe7\xd7\x02\x12\x31\n+STOP_MEDICATION_COMMAND__PRE_ENTER_IN_ERROR\x10\xe8\xd7\x02\x12\x32\n,STOP_MEDICATION_COMMAND__POST_ENTER_IN_ERROR\x10\xe9\xd7\x02\x12\x31\n+STOP_MEDICATION_COMMAND__PRE_EXECUTE_ACTION\x10\xea\xd7\x02\x12\x32\n,STOP_MEDICATION_COMMAND__POST_EXECUTE_ACTION\x10\xeb\xd7\x02\x12\x36\n0STOP_MEDICATION_COMMAND__POST_INSERTED_INTO_NOTE\x10\xef\xd7\x02\x12-\n\'STOP_MEDICATION__MEDICATION__PRE_SEARCH\x10\xed\xd7\x02\x12.\n(STOP_MEDICATION__MEDICATION__POST_SEARCH\x10\xee\xd7\x02\x12\x32\n,STRUCTURED_ASSESSMENT_COMMAND__PRE_ORIGINATE\x10\xc8\xdf\x02\x12\x33\n-STRUCTURED_ASSESSMENT_COMMAND__POST_ORIGINATE\x10\xc9\xdf\x02\x12/\n)STRUCTURED_ASSESSMENT_COMMAND__PRE_UPDATE\x10\xca\xdf\x02\x12\x30\n*STRUCTURED_ASSESSMENT_COMMAND__POST_UPDATE\x10\xcb\xdf\x02\x12/\n)STRUCTURED_ASSESSMENT_COMMAND__PRE_COMMIT\x10\xcc\xdf\x02\x12\x30\n*STRUCTURED_ASSESSMENT_COMMAND__POST_COMMIT\x10\xcd\xdf\x02\x12/\n)STRUCTURED_ASSESSMENT_COMMAND__PRE_DELETE\x10\xce\xdf\x02\x12\x30\n*STRUCTURED_ASSESSMENT_COMMAND__POST_DELETE\x10\xcf\xdf\x02\x12\x37\n1STRUCTURED_ASSESSMENT_COMMAND__PRE_ENTER_IN_ERROR\x10\xd0\xdf\x02\x12\x38\n2STRUCTURED_ASSESSMENT_COMMAND__POST_ENTER_IN_ERROR\x10\xd1\xdf\x02\x12\x37\n1STRUCTURED_ASSESSMENT_COMMAND__PRE_EXECUTE_ACTION\x10\xd2\xdf\x02\x12\x38\n2STRUCTURED_ASSESSMENT_COMMAND__POST_EXECUTE_ACTION\x10\xd3\xdf\x02\x12<\n6STRUCTURED_ASSESSMENT_COMMAND__POST_INSERTED_INTO_NOTE\x10\xd6\xdf\x02\x12\x36\n0STRUCTURED_ASSESSMENT__QUESTIONNAIRE__PRE_SEARCH\x10\xd4\xdf\x02\x12\x37\n1STRUCTURED_ASSESSMENT__QUESTIONNAIRE__POST_SEARCH\x10\xd5\xdf\x02\x12-\n\'SURGICAL_HISTORY_COMMAND__PRE_ORIGINATE\x10\xb0\xe7\x02\x12.\n(SURGICAL_HISTORY_COMMAND__POST_ORIGINATE\x10\xb1\xe7\x02\x12*\n$SURGICAL_HISTORY_COMMAND__PRE_UPDATE\x10\xb2\xe7\x02\x12+\n%SURGICAL_HISTORY_COMMAND__POST_UPDATE\x10\xb3\xe7\x02\x12*\n$SURGICAL_HISTORY_COMMAND__PRE_COMMIT\x10\xb4\xe7\x02\x12+\n%SURGICAL_HISTORY_COMMAND__POST_COMMIT\x10\xb5\xe7\x02\x12*\n$SURGICAL_HISTORY_COMMAND__PRE_DELETE\x10\xb6\xe7\x02\x12+\n%SURGICAL_HISTORY_COMMAND__POST_DELETE\x10\xb7\xe7\x02\x12\x32\n,SURGICAL_HISTORY_COMMAND__PRE_ENTER_IN_ERROR\x10\xb8\xe7\x02\x12\x33\n-SURGICAL_HISTORY_COMMAND__POST_ENTER_IN_ERROR\x10\xb9\xe7\x02\x12\x32\n,SURGICAL_HISTORY_COMMAND__PRE_EXECUTE_ACTION\x10\xba\xe7\x02\x12\x33\n-SURGICAL_HISTORY_COMMAND__POST_EXECUTE_ACTION\x10\xbb\xe7\x02\x12\x37\n1SURGICAL_HISTORY_COMMAND__POST_INSERTED_INTO_NOTE\x10\xbe\xe7\x02\x12\x39\n3SURGICAL_HISTORY__PAST_SURGICAL_HISTORY__PRE_SEARCH\x10\xbc\xe7\x02\x12:\n4SURGICAL_HISTORY__PAST_SURGICAL_HISTORY__POST_SEARCH\x10\xbd\xe7\x02\x12!\n\x1bTASK_COMMAND__PRE_ORIGINATE\x10\x98\xef\x02\x12\"\n\x1cTASK_COMMAND__POST_ORIGINATE\x10\x99\xef\x02\x12\x1e\n\x18TASK_COMMAND__PRE_UPDATE\x10\x9a\xef\x02\x12\x1f\n\x19TASK_COMMAND__POST_UPDATE\x10\x9b\xef\x02\x12\x1e\n\x18TASK_COMMAND__PRE_COMMIT\x10\x9c\xef\x02\x12\x1f\n\x19TASK_COMMAND__POST_COMMIT\x10\x9d\xef\x02\x12\x1e\n\x18TASK_COMMAND__PRE_DELETE\x10\x9e\xef\x02\x12\x1f\n\x19TASK_COMMAND__POST_DELETE\x10\x9f\xef\x02\x12&\n TASK_COMMAND__PRE_ENTER_IN_ERROR\x10\xa0\xef\x02\x12\'\n!TASK_COMMAND__POST_ENTER_IN_ERROR\x10\xa1\xef\x02\x12&\n TASK_COMMAND__PRE_EXECUTE_ACTION\x10\xa2\xef\x02\x12\'\n!TASK_COMMAND__POST_EXECUTE_ACTION\x10\xa3\xef\x02\x12+\n%TASK_COMMAND__POST_INSERTED_INTO_NOTE\x10\xa8\xef\x02\x12!\n\x1bTASK__ASSIGN_TO__PRE_SEARCH\x10\xa4\xef\x02\x12\"\n\x1cTASK__ASSIGN_TO__POST_SEARCH\x10\xa5\xef\x02\x12\x1e\n\x18TASK__LABELS__PRE_SEARCH\x10\xa6\xef\x02\x12\x1f\n\x19TASK__LABELS__POST_SEARCH\x10\xa7\xef\x02\x12-\n\'UPDATE_DIAGNOSIS_COMMAND__PRE_ORIGINATE\x10\xe8\xfe\x02\x12.\n(UPDATE_DIAGNOSIS_COMMAND__POST_ORIGINATE\x10\xe9\xfe\x02\x12*\n$UPDATE_DIAGNOSIS_COMMAND__PRE_UPDATE\x10\xea\xfe\x02\x12+\n%UPDATE_DIAGNOSIS_COMMAND__POST_UPDATE\x10\xeb\xfe\x02\x12*\n$UPDATE_DIAGNOSIS_COMMAND__PRE_COMMIT\x10\xec\xfe\x02\x12+\n%UPDATE_DIAGNOSIS_COMMAND__POST_COMMIT\x10\xed\xfe\x02\x12*\n$UPDATE_DIAGNOSIS_COMMAND__PRE_DELETE\x10\xee\xfe\x02\x12+\n%UPDATE_DIAGNOSIS_COMMAND__POST_DELETE\x10\xef\xfe\x02\x12\x32\n,UPDATE_DIAGNOSIS_COMMAND__PRE_ENTER_IN_ERROR\x10\xf0\xfe\x02\x12\x33\n-UPDATE_DIAGNOSIS_COMMAND__POST_ENTER_IN_ERROR\x10\xf1\xfe\x02\x12\x32\n,UPDATE_DIAGNOSIS_COMMAND__PRE_EXECUTE_ACTION\x10\xf2\xfe\x02\x12\x33\n-UPDATE_DIAGNOSIS_COMMAND__POST_EXECUTE_ACTION\x10\xf3\xfe\x02\x12-\n\'UPDATE_DIAGNOSIS__CONDITION__PRE_SEARCH\x10\xf4\xfe\x02\x12.\n(UPDATE_DIAGNOSIS__CONDITION__POST_SEARCH\x10\xf5\xfe\x02\x12\x31\n+UPDATE_DIAGNOSIS__NEW_CONDITION__PRE_SEARCH\x10\xf6\xfe\x02\x12\x32\n,UPDATE_DIAGNOSIS__NEW_CONDITION__POST_SEARCH\x10\xf7\xfe\x02\x12(\n\"UPDATE_GOAL_COMMAND__PRE_ORIGINATE\x10\xd0\x86\x03\x12)\n#UPDATE_GOAL_COMMAND__POST_ORIGINATE\x10\xd1\x86\x03\x12%\n\x1fUPDATE_GOAL_COMMAND__PRE_UPDATE\x10\xd2\x86\x03\x12&\n UPDATE_GOAL_COMMAND__POST_UPDATE\x10\xd3\x86\x03\x12%\n\x1fUPDATE_GOAL_COMMAND__PRE_COMMIT\x10\xd4\x86\x03\x12&\n UPDATE_GOAL_COMMAND__POST_COMMIT\x10\xd5\x86\x03\x12%\n\x1fUPDATE_GOAL_COMMAND__PRE_DELETE\x10\xd6\x86\x03\x12&\n UPDATE_GOAL_COMMAND__POST_DELETE\x10\xd7\x86\x03\x12-\n\'UPDATE_GOAL_COMMAND__PRE_ENTER_IN_ERROR\x10\xd8\x86\x03\x12.\n(UPDATE_GOAL_COMMAND__POST_ENTER_IN_ERROR\x10\xd9\x86\x03\x12-\n\'UPDATE_GOAL_COMMAND__PRE_EXECUTE_ACTION\x10\xda\x86\x03\x12.\n(UPDATE_GOAL_COMMAND__POST_EXECUTE_ACTION\x10\xdb\x86\x03\x12\x32\n,UPDATE_GOAL_COMMAND__POST_INSERTED_INTO_NOTE\x10\xdc\x86\x03\x12-\n\'UPDATE_GOAL__GOAL_STATEMENT__PRE_SEARCH\x10\xdd\x86\x03\x12.\n(UPDATE_GOAL__GOAL_STATEMENT__POST_SEARCH\x10\xde\x86\x03\x12#\n\x1dVITALS_COMMAND__PRE_ORIGINATE\x10\xa0\x96\x03\x12$\n\x1eVITALS_COMMAND__POST_ORIGINATE\x10\xa1\x96\x03\x12 \n\x1aVITALS_COMMAND__PRE_UPDATE\x10\xa2\x96\x03\x12!\n\x1bVITALS_COMMAND__POST_UPDATE\x10\xa3\x96\x03\x12 \n\x1aVITALS_COMMAND__PRE_COMMIT\x10\xa4\x96\x03\x12!\n\x1bVITALS_COMMAND__POST_COMMIT\x10\xa5\x96\x03\x12 \n\x1aVITALS_COMMAND__PRE_DELETE\x10\xa6\x96\x03\x12!\n\x1bVITALS_COMMAND__POST_DELETE\x10\xa7\x96\x03\x12(\n\"VITALS_COMMAND__PRE_ENTER_IN_ERROR\x10\xa8\x96\x03\x12)\n#VITALS_COMMAND__POST_ENTER_IN_ERROR\x10\xa9\x96\x03\x12(\n\"VITALS_COMMAND__PRE_EXECUTE_ACTION\x10\xaa\x96\x03\x12)\n#VITALS_COMMAND__POST_EXECUTE_ACTION\x10\xab\x96\x03\x12-\n\'VITALS_COMMAND__POST_INSERTED_INTO_NOTE\x10\xac\x96\x03\x12.\n(ASSESS_CODING_GAP_COMMAND__PRE_ORIGINATE\x10\xa8\xbd\x03\x12/\n)ASSESS_CODING_GAP_COMMAND__POST_ORIGINATE\x10\xa9\xbd\x03\x12+\n%ASSESS_CODING_GAP_COMMAND__PRE_UPDATE\x10\xaa\xbd\x03\x12,\n&ASSESS_CODING_GAP_COMMAND__POST_UPDATE\x10\xab\xbd\x03\x12+\n%ASSESS_CODING_GAP_COMMAND__PRE_COMMIT\x10\xac\xbd\x03\x12,\n&ASSESS_CODING_GAP_COMMAND__POST_COMMIT\x10\xad\xbd\x03\x12+\n%ASSESS_CODING_GAP_COMMAND__PRE_DELETE\x10\xae\xbd\x03\x12,\n&ASSESS_CODING_GAP_COMMAND__POST_DELETE\x10\xaf\xbd\x03\x12\x33\n-ASSESS_CODING_GAP_COMMAND__PRE_ENTER_IN_ERROR\x10\xb0\xbd\x03\x12\x34\n.ASSESS_CODING_GAP_COMMAND__POST_ENTER_IN_ERROR\x10\xb1\xbd\x03\x12\x33\n-ASSESS_CODING_GAP_COMMAND__PRE_EXECUTE_ACTION\x10\xb2\xbd\x03\x12\x34\n.ASSESS_CODING_GAP_COMMAND__POST_EXECUTE_ACTION\x10\xb3\xbd\x03\x12\x38\n2ASSESS_CODING_GAP_COMMAND__POST_INSERTED_INTO_NOTE\x10\xb6\xbd\x03\x12-\n\'ASSESS_CODING_GAP__DIAGNOSE__PRE_SEARCH\x10\xb4\xbd\x03\x12.\n(ASSESS_CODING_GAP__DIAGNOSE__POST_SEARCH\x10\xb5\xbd\x03\x12.\n(CREATE_CODING_GAP_COMMAND__PRE_ORIGINATE\x10\x90\xc5\x03\x12/\n)CREATE_CODING_GAP_COMMAND__POST_ORIGINATE\x10\x91\xc5\x03\x12+\n%CREATE_CODING_GAP_COMMAND__PRE_UPDATE\x10\x92\xc5\x03\x12,\n&CREATE_CODING_GAP_COMMAND__POST_UPDATE\x10\x93\xc5\x03\x12+\n%CREATE_CODING_GAP_COMMAND__PRE_COMMIT\x10\x94\xc5\x03\x12,\n&CREATE_CODING_GAP_COMMAND__POST_COMMIT\x10\x95\xc5\x03\x12+\n%CREATE_CODING_GAP_COMMAND__PRE_DELETE\x10\x96\xc5\x03\x12,\n&CREATE_CODING_GAP_COMMAND__POST_DELETE\x10\x97\xc5\x03\x12\x33\n-CREATE_CODING_GAP_COMMAND__PRE_ENTER_IN_ERROR\x10\x98\xc5\x03\x12\x34\n.CREATE_CODING_GAP_COMMAND__POST_ENTER_IN_ERROR\x10\x99\xc5\x03\x12\x33\n-CREATE_CODING_GAP_COMMAND__PRE_EXECUTE_ACTION\x10\x9a\xc5\x03\x12\x34\n.CREATE_CODING_GAP_COMMAND__POST_EXECUTE_ACTION\x10\x9b\xc5\x03\x12\x38\n2CREATE_CODING_GAP_COMMAND__POST_INSERTED_INTO_NOTE\x10\x9e\xc5\x03\x12-\n\'CREATE_CODING_GAP__DIAGNOSE__PRE_SEARCH\x10\x9c\xc5\x03\x12.\n(CREATE_CODING_GAP__DIAGNOSE__POST_SEARCH\x10\x9d\xc5\x03\x12\x30\n*VALIDATE_CODING_GAP_COMMAND__PRE_ORIGINATE\x10\xf8\xcc\x03\x12\x31\n+VALIDATE_CODING_GAP_COMMAND__POST_ORIGINATE\x10\xf9\xcc\x03\x12-\n\'VALIDATE_CODING_GAP_COMMAND__PRE_UPDATE\x10\xfa\xcc\x03\x12.\n(VALIDATE_CODING_GAP_COMMAND__POST_UPDATE\x10\xfb\xcc\x03\x12-\n\'VALIDATE_CODING_GAP_COMMAND__PRE_COMMIT\x10\xfc\xcc\x03\x12.\n(VALIDATE_CODING_GAP_COMMAND__POST_COMMIT\x10\xfd\xcc\x03\x12-\n\'VALIDATE_CODING_GAP_COMMAND__PRE_DELETE\x10\xfe\xcc\x03\x12.\n(VALIDATE_CODING_GAP_COMMAND__POST_DELETE\x10\xff\xcc\x03\x12\x35\n/VALIDATE_CODING_GAP_COMMAND__PRE_ENTER_IN_ERROR\x10\x80\xcd\x03\x12\x36\n0VALIDATE_CODING_GAP_COMMAND__POST_ENTER_IN_ERROR\x10\x81\xcd\x03\x12\x35\n/VALIDATE_CODING_GAP_COMMAND__PRE_EXECUTE_ACTION\x10\x82\xcd\x03\x12\x36\n0VALIDATE_CODING_GAP_COMMAND__POST_EXECUTE_ACTION\x10\x83\xcd\x03\x12:\n4VALIDATE_CODING_GAP_COMMAND__POST_INSERTED_INTO_NOTE\x10\x84\xcd\x03\x12-\n\'DEFER_CODING_GAP_COMMAND__PRE_ORIGINATE\x10\xe0\xd4\x03\x12.\n(DEFER_CODING_GAP_COMMAND__POST_ORIGINATE\x10\xe1\xd4\x03\x12*\n$DEFER_CODING_GAP_COMMAND__PRE_UPDATE\x10\xe2\xd4\x03\x12+\n%DEFER_CODING_GAP_COMMAND__POST_UPDATE\x10\xe3\xd4\x03\x12*\n$DEFER_CODING_GAP_COMMAND__PRE_COMMIT\x10\xe4\xd4\x03\x12+\n%DEFER_CODING_GAP_COMMAND__POST_COMMIT\x10\xe5\xd4\x03\x12*\n$DEFER_CODING_GAP_COMMAND__PRE_DELETE\x10\xe6\xd4\x03\x12+\n%DEFER_CODING_GAP_COMMAND__POST_DELETE\x10\xe7\xd4\x03\x12\x32\n,DEFER_CODING_GAP_COMMAND__PRE_ENTER_IN_ERROR\x10\xe8\xd4\x03\x12\x33\n-DEFER_CODING_GAP_COMMAND__POST_ENTER_IN_ERROR\x10\xe9\xd4\x03\x12\x32\n,DEFER_CODING_GAP_COMMAND__PRE_EXECUTE_ACTION\x10\xea\xd4\x03\x12\x33\n-DEFER_CODING_GAP_COMMAND__POST_EXECUTE_ACTION\x10\xeb\xd4\x03\x12\x37\n1DEFER_CODING_GAP_COMMAND__POST_INSERTED_INTO_NOTE\x10\xec\xd4\x03\x12\x1d\n\x17SHOW_NOTE_HEADER_BUTTON\x10\xf0\xa2\x04\x12\x1d\n\x17SHOW_NOTE_FOOTER_BUTTON\x10\xf1\xa2\x04\x12\x1b\n\x15\x41\x43TION_BUTTON_CLICKED\x10\xf2\xa2\x04\x12\x1f\n\x19PATIENT_CHART__CONDITIONS\x10\xa0\x8d\x06\x12\x32\n,PATIENT_CHART_SUMMARY__SECTION_CONFIGURATION\x10\xa1\x8d\x06\x12,\n&PATIENT_PROFILE__SECTION_CONFIGURATION\x10\xa2\x8d\x06\x12\x30\n*PATIENT_PROFILE__ADD_PHARMACY__POST_SEARCH\x10\xa3\x8d\x06\x12\x17\n\x11\x43LAIM__CONDITIONS\x10\x88\x95\x06\x12\x14\n\x0ePLUGIN_CREATED\x10\xf0\x9c\x06\x12\x14\n\x0ePLUGIN_UPDATED\x10\xf1\x9c\x06\x12\x1a\n\x14\x41PPLICATION__ON_OPEN\x10\xd8\xa4\x06\x12\x1f\n\x19PATIENT_PORTAL__GET_FORMS\x10\xb0\xdb\x06\x12*\n$PATIENT_PORTAL__APPOINTMENT_CANCELED\x10\xb1\xdb\x06\x12-\n\'PATIENT_PORTAL__APPOINTMENT_RESCHEDULED\x10\xb2\xdb\x06\x12\x31\n+PATIENT_PORTAL__APPOINTMENT_CAN_BE_CANCELED\x10\xb3\xdb\x06\x12\x34\n.PATIENT_PORTAL__APPOINTMENT_CAN_BE_RESCHEDULED\x10\xb4\xdb\x06\x12\x36\n0PATIENT_PORTAL__APPOINTMENTS__SLOTS__POST_SEARCH\x10\xb5\xdb\x06\x12\x46\n@PATIENT_PORTAL__APPOINTMENTS__FORM_APPOINTMENT_TYPES__PRE_SEARCH\x10\xb6\xdb\x06\x12G\nAPATIENT_PORTAL__APPOINTMENTS__FORM_APPOINTMENT_TYPES__POST_SEARCH\x10\xb7\xdb\x06\x12>\n8PATIENT_PORTAL__APPOINTMENTS__FORM_LOCATIONS__PRE_SEARCH\x10\xb8\xdb\x06\x12?\n9PATIENT_PORTAL__APPOINTMENTS__FORM_LOCATIONS__POST_SEARCH\x10\xb9\xdb\x06\x12>\n8PATIENT_PORTAL__APPOINTMENTS__FORM_PROVIDERS__PRE_SEARCH\x10\xba\xdb\x06\x12?\n9PATIENT_PORTAL__APPOINTMENTS__FORM_PROVIDERS__POST_SEARCH\x10\xbb\xdb\x06\x12\x37\n1PATIENT_PORTAL__APPOINTMENT_CAN_SHOW_MEETING_LINK\x10\xbc\xdb\x06\x12\x33\n-PATIENT_PORTAL__GET_APPLICATION_CONFIGURATION\x10\xbd\xdb\x06\x12(\n\"PATIENT_PORTAL__MENU_CONFIGURATION\x10\x94\xdc\x06\x12*\n$PATIENT_PORTAL__WIDGET_CONFIGURATION\x10\x95\xdc\x06\x12;\n5SHOW_CHART_SUMMARY_SOCIAL_DETERMINANTS_SECTION_BUTTON\x10\xc0\xa9\x07\x12-\n\'SHOW_CHART_SUMMARY_GOALS_SECTION_BUTTON\x10\xc1\xa9\x07\x12\x32\n,SHOW_CHART_SUMMARY_CONDITIONS_SECTION_BUTTON\x10\xc2\xa9\x07\x12\x33\n-SHOW_CHART_SUMMARY_MEDICATIONS_SECTION_BUTTON\x10\xc3\xa9\x07\x12\x31\n+SHOW_CHART_SUMMARY_ALLERGIES_SECTION_BUTTON\x10\xc4\xa9\x07\x12\x32\n,SHOW_CHART_SUMMARY_CARE_TEAMS_SECTION_BUTTON\x10\xc5\xa9\x07\x12.\n(SHOW_CHART_SUMMARY_VITALS_SECTION_BUTTON\x10\xc6\xa9\x07\x12\x35\n/SHOW_CHART_SUMMARY_IMMUNIZATIONS_SECTION_BUTTON\x10\xc7\xa9\x07\x12\x38\n2SHOW_CHART_SUMMARY_SURGICAL_HISTORY_SECTION_BUTTON\x10\xc8\xa9\x07\x12\x36\n0SHOW_CHART_SUMMARY_FAMILY_HISTORY_SECTION_BUTTON\x10\xc9\xa9\x07\x12\x33\n-SHOW_CHART_SUMMARY_CODING_GAPS_SECTION_BUTTON\x10\xca\xa9\x07\x12\x1d\n\x17SIMPLE_API_AUTHENTICATE\x10\xd0\xf7\x07\x12\x18\n\x12SIMPLE_API_REQUEST\x10\xd1\xf7\x07\x62\x06proto3')
|
|
18
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n&canvas_generated/messages/events.proto\x12\x06\x63\x61nvas\x1a\'canvas_generated/messages/effects.proto\"^\n\x05\x45vent\x12\x1f\n\x04type\x18\x01 \x01(\x0e\x32\x11.canvas.EventType\x12\x0e\n\x06target\x18\x02 \x01(\t\x12\x0f\n\x07\x63ontext\x18\x03 \x01(\t\x12\x13\n\x0btarget_type\x18\x04 \x01(\t\"A\n\rEventResponse\x12\x0f\n\x07success\x18\x01 \x01(\x08\x12\x1f\n\x07\x65\x66\x66\x65\x63ts\x18\x02 \x03(\x0b\x32\x0e.canvas.Effect*\xee\x8b\x02\n\tEventType\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x1f\n\x1b\x41LLERGY_INTOLERANCE_CREATED\x10\x01\x12\x1f\n\x1b\x41LLERGY_INTOLERANCE_UPDATED\x10\x02\x12\x18\n\x14\x41PPOINTMENT_CANCELED\x10\x04\x12\x1a\n\x16\x41PPOINTMENT_CHECKED_IN\x10\x05\x12\x17\n\x13\x41PPOINTMENT_CREATED\x10\x06\x12\x19\n\x15\x41PPOINTMENT_NO_SHOWED\x10\x07\x12\x1b\n\x17\x41PPOINTMENT_RESCHEDULED\x10\x08\x12\x18\n\x14\x41PPOINTMENT_RESTORED\x10\t\x12\x17\n\x13\x41PPOINTMENT_UPDATED\x10\n\x12\x1d\n\x19\x42ILLING_LINE_ITEM_CREATED\x10\x0b\x12\x1d\n\x19\x42ILLING_LINE_ITEM_UPDATED\x10\x0c\x12\x16\n\x12\x43ONDITION_ASSESSED\x10\r\x12\x15\n\x11\x43ONDITION_CREATED\x10\x0e\x12\x16\n\x12\x43ONDITION_RESOLVED\x10\x0f\x12\x15\n\x11\x43ONDITION_UPDATED\x10\x10\x12\x13\n\x0f\x43ONSENT_CREATED\x10\x11\x12\x13\n\x0f\x43ONSENT_DELETED\x10\x12\x12\x13\n\x0f\x43ONSENT_UPDATED\x10\x13\x12\x14\n\x10\x43OVERAGE_CREATED\x10\x14\x12\x14\n\x10\x43OVERAGE_UPDATED\x10\x15\x12\x15\n\x11\x45NCOUNTER_CREATED\x10\x16\x12\x15\n\x11\x45NCOUNTER_UPDATED\x10\x17\x12\x1a\n\x16IMAGING_REPORT_CREATED\x10\x1a\x12\x1a\n\x16IMAGING_REPORT_UPDATED\x10\x1b\x12\x18\n\x14IMMUNIZATION_CREATED\x10\x1c\x12\"\n\x1eIMMUNIZATION_STATEMENT_CREATED\x10\x1d\x12\"\n\x1eIMMUNIZATION_STATEMENT_UPDATED\x10\x1e\x12\x18\n\x14IMMUNIZATION_UPDATED\x10\x1f\x12\x17\n\x13INSTRUCTION_CREATED\x10 \x12\x17\n\x13INSTRUCTION_UPDATED\x10!\x12\x15\n\x11INTERVIEW_CREATED\x10\"\x12\x15\n\x11INTERVIEW_UPDATED\x10#\x12\x15\n\x11LAB_ORDER_CREATED\x10$\x12\x15\n\x11LAB_ORDER_UPDATED\x10%\x12\x16\n\x12LAB_REPORT_CREATED\x10&\x12\x16\n\x12LAB_REPORT_UPDATED\x10\'\x12 \n\x1cMEDICATION_LIST_ITEM_CREATED\x10(\x12 \n\x1cMEDICATION_LIST_ITEM_UPDATED\x10)\x12\x13\n\x0fMESSAGE_CREATED\x10*\x12\x13\n\x0fPATIENT_CREATED\x10+\x12\x13\n\x0fPATIENT_UPDATED\x10,\x12\x18\n\x14PRESCRIPTION_CREATED\x10-\x12\x18\n\x14PRESCRIPTION_UPDATED\x10.\x12\x1b\n\x17REFERRAL_REPORT_CREATED\x10/\x12\x1b\n\x17REFERRAL_REPORT_UPDATED\x10\x30\x12\x18\n\x14TASK_COMMENT_CREATED\x10\x33\x12\x10\n\x0cTASK_CREATED\x10\x36\x12\x18\n\x14TASK_LABELS_ADJUSTED\x10\x37\x12\x10\n\x0cTASK_UPDATED\x10\x39\x12\x16\n\x12VITAL_SIGN_CREATED\x10:\x12\x16\n\x12VITAL_SIGN_UPDATED\x10;\x12\x08\n\x04\x43RON\x10<\x12 \n\x1c\x43\x41RE_TEAM_MEMBERSHIP_CREATED\x10=\x12 \n\x1c\x43\x41RE_TEAM_MEMBERSHIP_UPDATED\x10>\x12 \n\x1c\x43\x41RE_TEAM_MEMBERSHIP_DELETED\x10?\x12#\n\x1fNOTE_STATE_CHANGE_EVENT_CREATED\x10@\x12#\n\x1fNOTE_STATE_CHANGE_EVENT_UPDATED\x10\x41\x12\x1b\n\x17PATIENT_ADDRESS_CREATED\x10\x42\x12\x1b\n\x17PATIENT_ADDRESS_UPDATED\x10\x43\x12\x1b\n\x17PATIENT_ADDRESS_DELETED\x10\x44\x12\"\n\x1ePATIENT_CONTACT_PERSON_CREATED\x10\x45\x12\"\n\x1ePATIENT_CONTACT_PERSON_UPDATED\x10\x46\x12\"\n\x1ePATIENT_CONTACT_PERSON_DELETED\x10G\x12!\n\x1dPATIENT_CONTACT_POINT_CREATED\x10H\x12!\n\x1dPATIENT_CONTACT_POINT_UPDATED\x10I\x12!\n\x1dPATIENT_CONTACT_POINT_DELETED\x10J\x12\x1d\n\x19PROTOCOL_OVERRIDE_CREATED\x10K\x12\x1d\n\x19PROTOCOL_OVERRIDE_UPDATED\x10L\x12\x1d\n\x19PROTOCOL_OVERRIDE_DELETED\x10M\x12\x18\n\x14TASK_COMMENT_UPDATED\x10N\x12\x18\n\x14TASK_COMMENT_DELETED\x10O\x12\x12\n\x0e\x44\x45VICE_CREATED\x10P\x12\x12\n\x0e\x44\x45VICE_UPDATED\x10Q\x12\x17\n\x13OBSERVATION_CREATED\x10R\x12\x17\n\x13OBSERVATION_UPDATED\x10S\x12\x1a\n\x16\x44\x45TECTED_ISSUE_CREATED\x10T\x12\x1a\n\x16\x44\x45TECTED_ISSUE_UPDATED\x10U\x12\x0f\n\x0bTASK_CLOSED\x10V\x12\x12\n\x0eTASK_COMPLETED\x10W\x12#\n\x1f\x44\x45TECTED_ISSUE_EVIDENCE_CREATED\x10X\x12#\n\x1f\x44\x45TECTED_ISSUE_EVIDENCE_UPDATED\x10Y\x12\x19\n\x15PRE_COMMAND_ORIGINATE\x10\x64\x12\x1a\n\x16POST_COMMAND_ORIGINATE\x10\x65\x12\x16\n\x12PRE_COMMAND_UPDATE\x10\x66\x12\x17\n\x13POST_COMMAND_UPDATE\x10g\x12\x16\n\x12PRE_COMMAND_COMMIT\x10h\x12\x17\n\x13POST_COMMAND_COMMIT\x10i\x12\x16\n\x12PRE_COMMAND_DELETE\x10j\x12\x17\n\x13POST_COMMAND_DELETE\x10k\x12\x1e\n\x1aPRE_COMMAND_ENTER_IN_ERROR\x10l\x12\x1f\n\x1bPOST_COMMAND_ENTER_IN_ERROR\x10m\x12\x1e\n\x1aPRE_COMMAND_EXECUTE_ACTION\x10n\x12\x1f\n\x1bPOST_COMMAND_EXECUTE_ACTION\x10o\x12#\n\x1fPOST_COMMAND_INSERTED_INTO_NOTE\x10p\x12\'\n\"ASSESS_COMMAND__CONDITION_SELECTED\x10\xc8\x01\x12\x31\n,MEDICATION_STATEMENT__MEDICATION__PRE_SEARCH\x10\xc9\x01\x12\x32\n-MEDICATION_STATEMENT__MEDICATION__POST_SEARCH\x10\xca\x01\x12/\n*MEDICATION_STATEMENT__MEDICATION__SELECTED\x10\xcb\x01\x12/\n*ADJUST_PRESCRIPTION_COMMAND__PRE_ORIGINATE\x10\xd0\x0f\x12\x30\n+ADJUST_PRESCRIPTION_COMMAND__POST_ORIGINATE\x10\xd1\x0f\x12,\n\'ADJUST_PRESCRIPTION_COMMAND__PRE_UPDATE\x10\xd2\x0f\x12-\n(ADJUST_PRESCRIPTION_COMMAND__POST_UPDATE\x10\xd3\x0f\x12,\n\'ADJUST_PRESCRIPTION_COMMAND__PRE_COMMIT\x10\xd4\x0f\x12-\n(ADJUST_PRESCRIPTION_COMMAND__POST_COMMIT\x10\xd5\x0f\x12,\n\'ADJUST_PRESCRIPTION_COMMAND__PRE_DELETE\x10\xd6\x0f\x12-\n(ADJUST_PRESCRIPTION_COMMAND__POST_DELETE\x10\xd7\x0f\x12\x34\n/ADJUST_PRESCRIPTION_COMMAND__PRE_ENTER_IN_ERROR\x10\xd8\x0f\x12\x35\n0ADJUST_PRESCRIPTION_COMMAND__POST_ENTER_IN_ERROR\x10\xd9\x0f\x12\x34\n/ADJUST_PRESCRIPTION_COMMAND__PRE_EXECUTE_ACTION\x10\xda\x0f\x12\x35\n0ADJUST_PRESCRIPTION_COMMAND__POST_EXECUTE_ACTION\x10\xdb\x0f\x12\x39\n4ADJUST_PRESCRIPTION_COMMAND__POST_INSERTED_INTO_NOTE\x10\xe4\x0f\x12\x30\n+ADJUST_PRESCRIPTION__PRESCRIBE__POST_SEARCH\x10\xdc\x0f\x12/\n*ADJUST_PRESCRIPTION__PRESCRIBE__PRE_SEARCH\x10\xdd\x0f\x12\x31\n,ADJUST_PRESCRIPTION__INDICATIONS__PRE_SEARCH\x10\xde\x0f\x12\x32\n-ADJUST_PRESCRIPTION__INDICATIONS__POST_SEARCH\x10\xdf\x0f\x12.\n)ADJUST_PRESCRIPTION__PHARMACY__PRE_SEARCH\x10\xe0\x0f\x12/\n*ADJUST_PRESCRIPTION__PHARMACY__POST_SEARCH\x10\xe1\x0f\x12:\n5ADJUST_PRESCRIPTION__CHANGE_MEDICATION_TO__PRE_SEARCH\x10\xe2\x0f\x12;\n6ADJUST_PRESCRIPTION__CHANGE_MEDICATION_TO__POST_SEARCH\x10\xe3\x0f\x12#\n\x1e\x41LLERGY_COMMAND__PRE_ORIGINATE\x10\xa0\x1f\x12$\n\x1f\x41LLERGY_COMMAND__POST_ORIGINATE\x10\xa1\x1f\x12 \n\x1b\x41LLERGY_COMMAND__PRE_UPDATE\x10\xa2\x1f\x12!\n\x1c\x41LLERGY_COMMAND__POST_UPDATE\x10\xa3\x1f\x12 \n\x1b\x41LLERGY_COMMAND__PRE_COMMIT\x10\xa4\x1f\x12!\n\x1c\x41LLERGY_COMMAND__POST_COMMIT\x10\xa5\x1f\x12 \n\x1b\x41LLERGY_COMMAND__PRE_DELETE\x10\xa6\x1f\x12!\n\x1c\x41LLERGY_COMMAND__POST_DELETE\x10\xa7\x1f\x12(\n#ALLERGY_COMMAND__PRE_ENTER_IN_ERROR\x10\xa8\x1f\x12)\n$ALLERGY_COMMAND__POST_ENTER_IN_ERROR\x10\xa9\x1f\x12(\n#ALLERGY_COMMAND__PRE_EXECUTE_ACTION\x10\xaa\x1f\x12)\n$ALLERGY_COMMAND__POST_EXECUTE_ACTION\x10\xab\x1f\x12-\n(ALLERGY_COMMAND__POST_INSERTED_INTO_NOTE\x10\xae\x1f\x12!\n\x1c\x41LLERGY__ALLERGY__PRE_SEARCH\x10\xac\x1f\x12\"\n\x1d\x41LLERGY__ALLERGY__POST_SEARCH\x10\xad\x1f\x12\"\n\x1d\x41SSESS_COMMAND__PRE_ORIGINATE\x10\xd8\x36\x12#\n\x1e\x41SSESS_COMMAND__POST_ORIGINATE\x10\xd9\x36\x12\x1f\n\x1a\x41SSESS_COMMAND__PRE_UPDATE\x10\xda\x36\x12 \n\x1b\x41SSESS_COMMAND__POST_UPDATE\x10\xdb\x36\x12\x1f\n\x1a\x41SSESS_COMMAND__PRE_COMMIT\x10\xdc\x36\x12 \n\x1b\x41SSESS_COMMAND__POST_COMMIT\x10\xdd\x36\x12\x1f\n\x1a\x41SSESS_COMMAND__PRE_DELETE\x10\xde\x36\x12 \n\x1b\x41SSESS_COMMAND__POST_DELETE\x10\xdf\x36\x12\'\n\"ASSESS_COMMAND__PRE_ENTER_IN_ERROR\x10\xe0\x36\x12(\n#ASSESS_COMMAND__POST_ENTER_IN_ERROR\x10\xe1\x36\x12\'\n\"ASSESS_COMMAND__PRE_EXECUTE_ACTION\x10\xe2\x36\x12(\n#ASSESS_COMMAND__POST_EXECUTE_ACTION\x10\xe3\x36\x12,\n\'ASSESS_COMMAND__POST_INSERTED_INTO_NOTE\x10\xe6\x36\x12#\n\x1e\x41SSESS__CONDITION__POST_SEARCH\x10\xe4\x36\x12\"\n\x1d\x41SSESS__CONDITION__PRE_SEARCH\x10\xe5\x36\x12/\n*CANCEL_PRESCRIPTION_COMMAND__PRE_ORIGINATE\x10\xc0>\x12\x30\n+CANCEL_PRESCRIPTION_COMMAND__POST_ORIGINATE\x10\xc1>\x12,\n\'CANCEL_PRESCRIPTION_COMMAND__PRE_UPDATE\x10\xc2>\x12-\n(CANCEL_PRESCRIPTION_COMMAND__POST_UPDATE\x10\xc3>\x12,\n\'CANCEL_PRESCRIPTION_COMMAND__PRE_COMMIT\x10\xc4>\x12-\n(CANCEL_PRESCRIPTION_COMMAND__POST_COMMIT\x10\xc5>\x12,\n\'CANCEL_PRESCRIPTION_COMMAND__PRE_DELETE\x10\xc6>\x12-\n(CANCEL_PRESCRIPTION_COMMAND__POST_DELETE\x10\xc7>\x12\x34\n/CANCEL_PRESCRIPTION_COMMAND__PRE_ENTER_IN_ERROR\x10\xc8>\x12\x35\n0CANCEL_PRESCRIPTION_COMMAND__POST_ENTER_IN_ERROR\x10\xc9>\x12\x34\n/CANCEL_PRESCRIPTION_COMMAND__PRE_EXECUTE_ACTION\x10\xca>\x12\x35\n0CANCEL_PRESCRIPTION_COMMAND__POST_EXECUTE_ACTION\x10\xcb>\x12;\n6CANCEL_PRESCRIPTION__SELECTED_PRESCRIPTION__PRE_SEARCH\x10\xcc>\x12<\n7CANCEL_PRESCRIPTION__SELECTED_PRESCRIPTION__POST_SEARCH\x10\xcd>\x12&\n CLIPBOARD_COMMAND__PRE_ORIGINATE\x10\x88\x9e\x03\x12\'\n!CLIPBOARD_COMMAND__POST_ORIGINATE\x10\x89\x9e\x03\x12#\n\x1d\x43LIPBOARD_COMMAND__PRE_UPDATE\x10\x8a\x9e\x03\x12$\n\x1e\x43LIPBOARD_COMMAND__POST_UPDATE\x10\x8b\x9e\x03\x12#\n\x1d\x43LIPBOARD_COMMAND__PRE_COMMIT\x10\x8c\x9e\x03\x12$\n\x1e\x43LIPBOARD_COMMAND__POST_COMMIT\x10\x8d\x9e\x03\x12#\n\x1d\x43LIPBOARD_COMMAND__PRE_DELETE\x10\x8e\x9e\x03\x12$\n\x1e\x43LIPBOARD_COMMAND__POST_DELETE\x10\x8f\x9e\x03\x12+\n%CLIPBOARD_COMMAND__PRE_ENTER_IN_ERROR\x10\x90\x9e\x03\x12,\n&CLIPBOARD_COMMAND__POST_ENTER_IN_ERROR\x10\xf9\xa5\x03\x12+\n%CLIPBOARD_COMMAND__PRE_EXECUTE_ACTION\x10\xe2\xad\x03\x12,\n&CLIPBOARD_COMMAND__POST_EXECUTE_ACTION\x10\xcb\xb5\x03\x12\x30\n*CLIPBOARD_COMMAND__POST_INSERTED_INTO_NOTE\x10\xcc\xb5\x03\x12&\n!CLOSE_GOAL_COMMAND__PRE_ORIGINATE\x10\x90N\x12\'\n\"CLOSE_GOAL_COMMAND__POST_ORIGINATE\x10\x91N\x12#\n\x1e\x43LOSE_GOAL_COMMAND__PRE_UPDATE\x10\x92N\x12$\n\x1f\x43LOSE_GOAL_COMMAND__POST_UPDATE\x10\x93N\x12#\n\x1e\x43LOSE_GOAL_COMMAND__PRE_COMMIT\x10\x94N\x12$\n\x1f\x43LOSE_GOAL_COMMAND__POST_COMMIT\x10\x95N\x12#\n\x1e\x43LOSE_GOAL_COMMAND__PRE_DELETE\x10\x96N\x12$\n\x1f\x43LOSE_GOAL_COMMAND__POST_DELETE\x10\x97N\x12+\n&CLOSE_GOAL_COMMAND__PRE_ENTER_IN_ERROR\x10\x98N\x12,\n\'CLOSE_GOAL_COMMAND__POST_ENTER_IN_ERROR\x10\x99N\x12+\n&CLOSE_GOAL_COMMAND__PRE_EXECUTE_ACTION\x10\x9aN\x12,\n\'CLOSE_GOAL_COMMAND__POST_EXECUTE_ACTION\x10\x9bN\x12\x30\n+CLOSE_GOAL_COMMAND__POST_INSERTED_INTO_NOTE\x10\x9eN\x12$\n\x1f\x43LOSE_GOAL__GOAL_ID__PRE_SEARCH\x10\x9cN\x12%\n CLOSE_GOAL__GOAL_ID__POST_SEARCH\x10\x9dN\x12$\n\x1f\x44IAGNOSE_COMMAND__PRE_ORIGINATE\x10\xb0m\x12%\n DIAGNOSE_COMMAND__POST_ORIGINATE\x10\xb1m\x12!\n\x1c\x44IAGNOSE_COMMAND__PRE_UPDATE\x10\xb2m\x12\"\n\x1d\x44IAGNOSE_COMMAND__POST_UPDATE\x10\xb3m\x12!\n\x1c\x44IAGNOSE_COMMAND__PRE_COMMIT\x10\xb4m\x12\"\n\x1d\x44IAGNOSE_COMMAND__POST_COMMIT\x10\xb5m\x12!\n\x1c\x44IAGNOSE_COMMAND__PRE_DELETE\x10\xb6m\x12\"\n\x1d\x44IAGNOSE_COMMAND__POST_DELETE\x10\xb7m\x12)\n$DIAGNOSE_COMMAND__PRE_ENTER_IN_ERROR\x10\xb8m\x12*\n%DIAGNOSE_COMMAND__POST_ENTER_IN_ERROR\x10\xb9m\x12)\n$DIAGNOSE_COMMAND__PRE_EXECUTE_ACTION\x10\xbam\x12*\n%DIAGNOSE_COMMAND__POST_EXECUTE_ACTION\x10\xbbm\x12.\n)DIAGNOSE_COMMAND__POST_INSERTED_INTO_NOTE\x10\xbem\x12$\n\x1f\x44IAGNOSE__DIAGNOSE__POST_SEARCH\x10\xbcm\x12#\n\x1e\x44IAGNOSE__DIAGNOSE__PRE_SEARCH\x10\xbdm\x12\x30\n+EDUCATIONAL_MATERIAL_COMMAND__PRE_ORIGINATE\x10\x98u\x12\x31\n,EDUCATIONAL_MATERIAL_COMMAND__POST_ORIGINATE\x10\x99u\x12-\n(EDUCATIONAL_MATERIAL_COMMAND__PRE_UPDATE\x10\x9au\x12.\n)EDUCATIONAL_MATERIAL_COMMAND__POST_UPDATE\x10\x9bu\x12-\n(EDUCATIONAL_MATERIAL_COMMAND__PRE_COMMIT\x10\x9cu\x12.\n)EDUCATIONAL_MATERIAL_COMMAND__POST_COMMIT\x10\x9du\x12-\n(EDUCATIONAL_MATERIAL_COMMAND__PRE_DELETE\x10\x9eu\x12.\n)EDUCATIONAL_MATERIAL_COMMAND__POST_DELETE\x10\x9fu\x12\x35\n0EDUCATIONAL_MATERIAL_COMMAND__PRE_ENTER_IN_ERROR\x10\xa0u\x12\x36\n1EDUCATIONAL_MATERIAL_COMMAND__POST_ENTER_IN_ERROR\x10\xa1u\x12\x35\n0EDUCATIONAL_MATERIAL_COMMAND__PRE_EXECUTE_ACTION\x10\xa2u\x12\x36\n1EDUCATIONAL_MATERIAL_COMMAND__POST_EXECUTE_ACTION\x10\xa3u\x12:\n5EDUCATIONAL_MATERIAL_COMMAND__POST_INSERTED_INTO_NOTE\x10\xa8u\x12,\n\'EDUCATIONAL_MATERIAL__TITLE__PRE_SEARCH\x10\xa4u\x12-\n(EDUCATIONAL_MATERIAL__TITLE__POST_SEARCH\x10\xa5u\x12/\n*EDUCATIONAL_MATERIAL__LANGUAGE__PRE_SEARCH\x10\xa6u\x12\x30\n+EDUCATIONAL_MATERIAL__LANGUAGE__POST_SEARCH\x10\xa7u\x12*\n%FAMILY_HISTORY_COMMAND__PRE_ORIGINATE\x10\x80}\x12+\n&FAMILY_HISTORY_COMMAND__POST_ORIGINATE\x10\x81}\x12\'\n\"FAMILY_HISTORY_COMMAND__PRE_UPDATE\x10\x82}\x12(\n#FAMILY_HISTORY_COMMAND__POST_UPDATE\x10\x83}\x12\'\n\"FAMILY_HISTORY_COMMAND__PRE_COMMIT\x10\x84}\x12(\n#FAMILY_HISTORY_COMMAND__POST_COMMIT\x10\x85}\x12\'\n\"FAMILY_HISTORY_COMMAND__PRE_DELETE\x10\x86}\x12(\n#FAMILY_HISTORY_COMMAND__POST_DELETE\x10\x87}\x12/\n*FAMILY_HISTORY_COMMAND__PRE_ENTER_IN_ERROR\x10\x88}\x12\x30\n+FAMILY_HISTORY_COMMAND__POST_ENTER_IN_ERROR\x10\x89}\x12/\n*FAMILY_HISTORY_COMMAND__PRE_EXECUTE_ACTION\x10\x8a}\x12\x30\n+FAMILY_HISTORY_COMMAND__POST_EXECUTE_ACTION\x10\x8b}\x12\x34\n/FAMILY_HISTORY_COMMAND__POST_INSERTED_INTO_NOTE\x10\x90}\x12/\n*FAMILY_HISTORY__FAMILY_HISTORY__PRE_SEARCH\x10\x8c}\x12\x30\n+FAMILY_HISTORY__FAMILY_HISTORY__POST_SEARCH\x10\x8d}\x12)\n$FAMILY_HISTORY__RELATIVE__PRE_SEARCH\x10\x8e}\x12*\n%FAMILY_HISTORY__RELATIVE__POST_SEARCH\x10\x8f}\x12&\n FOLLOW_UP_COMMAND__PRE_ORIGINATE\x10\xe8\x84\x01\x12\'\n!FOLLOW_UP_COMMAND__POST_ORIGINATE\x10\xe9\x84\x01\x12#\n\x1d\x46OLLOW_UP_COMMAND__PRE_UPDATE\x10\xea\x84\x01\x12$\n\x1e\x46OLLOW_UP_COMMAND__POST_UPDATE\x10\xeb\x84\x01\x12#\n\x1d\x46OLLOW_UP_COMMAND__PRE_COMMIT\x10\xec\x84\x01\x12$\n\x1e\x46OLLOW_UP_COMMAND__POST_COMMIT\x10\xed\x84\x01\x12#\n\x1d\x46OLLOW_UP_COMMAND__PRE_DELETE\x10\xee\x84\x01\x12$\n\x1e\x46OLLOW_UP_COMMAND__POST_DELETE\x10\xef\x84\x01\x12+\n%FOLLOW_UP_COMMAND__PRE_ENTER_IN_ERROR\x10\xf0\x84\x01\x12,\n&FOLLOW_UP_COMMAND__POST_ENTER_IN_ERROR\x10\xf1\x84\x01\x12+\n%FOLLOW_UP_COMMAND__PRE_EXECUTE_ACTION\x10\xf2\x84\x01\x12,\n&FOLLOW_UP_COMMAND__POST_EXECUTE_ACTION\x10\xf3\x84\x01\x12\x30\n*FOLLOW_UP_COMMAND__POST_INSERTED_INTO_NOTE\x10\xf8\x84\x01\x12#\n\x1d\x46OLLOW_UP__CODING__PRE_SEARCH\x10\xf4\x84\x01\x12$\n\x1e\x46OLLOW_UP__CODING__POST_SEARCH\x10\xf5\x84\x01\x12&\n FOLLOW_UP__NOTE_TYPE__PRE_SEARCH\x10\xf6\x84\x01\x12\'\n!FOLLOW_UP__NOTE_TYPE__POST_SEARCH\x10\xf7\x84\x01\x12!\n\x1bGOAL_COMMAND__PRE_ORIGINATE\x10\xd0\x8c\x01\x12\"\n\x1cGOAL_COMMAND__POST_ORIGINATE\x10\xd1\x8c\x01\x12\x1e\n\x18GOAL_COMMAND__PRE_UPDATE\x10\xd2\x8c\x01\x12\x1f\n\x19GOAL_COMMAND__POST_UPDATE\x10\xd3\x8c\x01\x12\x1e\n\x18GOAL_COMMAND__PRE_COMMIT\x10\xd4\x8c\x01\x12\x1f\n\x19GOAL_COMMAND__POST_COMMIT\x10\xd5\x8c\x01\x12\x1e\n\x18GOAL_COMMAND__PRE_DELETE\x10\xd6\x8c\x01\x12\x1f\n\x19GOAL_COMMAND__POST_DELETE\x10\xd7\x8c\x01\x12&\n GOAL_COMMAND__PRE_ENTER_IN_ERROR\x10\xd8\x8c\x01\x12\'\n!GOAL_COMMAND__POST_ENTER_IN_ERROR\x10\xd9\x8c\x01\x12&\n GOAL_COMMAND__PRE_EXECUTE_ACTION\x10\xda\x8c\x01\x12\'\n!GOAL_COMMAND__POST_EXECUTE_ACTION\x10\xdb\x8c\x01\x12+\n%GOAL_COMMAND__POST_INSERTED_INTO_NOTE\x10\xde\x8c\x01\x12\x37\n1HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_ORIGINATE\x10\xb8\x94\x01\x12\x38\n2HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_ORIGINATE\x10\xb9\x94\x01\x12\x34\n.HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_UPDATE\x10\xba\x94\x01\x12\x35\n/HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_UPDATE\x10\xbb\x94\x01\x12\x34\n.HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_COMMIT\x10\xbc\x94\x01\x12\x35\n/HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_COMMIT\x10\xbd\x94\x01\x12\x34\n.HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_DELETE\x10\xbe\x94\x01\x12\x35\n/HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_DELETE\x10\xbf\x94\x01\x12<\n6HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_ENTER_IN_ERROR\x10\xc0\x94\x01\x12=\n7HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_ENTER_IN_ERROR\x10\xc1\x94\x01\x12<\n6HISTORY_OF_PRESENT_ILLNESS_COMMAND__PRE_EXECUTE_ACTION\x10\xc2\x94\x01\x12=\n7HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_EXECUTE_ACTION\x10\xc3\x94\x01\x12\x41\n;HISTORY_OF_PRESENT_ILLNESS_COMMAND__POST_INSERTED_INTO_NOTE\x10\xc4\x94\x01\x12*\n$IMAGING_ORDER_COMMAND__PRE_ORIGINATE\x10\xa0\x9c\x01\x12+\n%IMAGING_ORDER_COMMAND__POST_ORIGINATE\x10\xa1\x9c\x01\x12\'\n!IMAGING_ORDER_COMMAND__PRE_UPDATE\x10\xa2\x9c\x01\x12(\n\"IMAGING_ORDER_COMMAND__POST_UPDATE\x10\xa3\x9c\x01\x12\'\n!IMAGING_ORDER_COMMAND__PRE_COMMIT\x10\xa4\x9c\x01\x12(\n\"IMAGING_ORDER_COMMAND__POST_COMMIT\x10\xa5\x9c\x01\x12\'\n!IMAGING_ORDER_COMMAND__PRE_DELETE\x10\xa6\x9c\x01\x12(\n\"IMAGING_ORDER_COMMAND__POST_DELETE\x10\xa7\x9c\x01\x12/\n)IMAGING_ORDER_COMMAND__PRE_ENTER_IN_ERROR\x10\xa8\x9c\x01\x12\x30\n*IMAGING_ORDER_COMMAND__POST_ENTER_IN_ERROR\x10\xa9\x9c\x01\x12/\n)IMAGING_ORDER_COMMAND__PRE_EXECUTE_ACTION\x10\xaa\x9c\x01\x12\x30\n*IMAGING_ORDER_COMMAND__POST_EXECUTE_ACTION\x10\xab\x9c\x01\x12\x34\n.IMAGING_ORDER_COMMAND__POST_INSERTED_INTO_NOTE\x10\xb4\x9c\x01\x12&\n IMAGING_ORDER__IMAGE__PRE_SEARCH\x10\xac\x9c\x01\x12\'\n!IMAGING_ORDER__IMAGE__POST_SEARCH\x10\xad\x9c\x01\x12,\n&IMAGING_ORDER__INDICATIONS__PRE_SEARCH\x10\xae\x9c\x01\x12-\n\'IMAGING_ORDER__INDICATIONS__POST_SEARCH\x10\xaf\x9c\x01\x12/\n)IMAGING_ORDER__IMAGING_CENTER__PRE_SEARCH\x10\xb0\x9c\x01\x12\x30\n*IMAGING_ORDER__IMAGING_CENTER__POST_SEARCH\x10\xb1\x9c\x01\x12\x32\n,IMAGING_ORDER__ORDERING_PROVIDER__PRE_SEARCH\x10\xb2\x9c\x01\x12\x33\n-IMAGING_ORDER__ORDERING_PROVIDER__POST_SEARCH\x10\xb3\x9c\x01\x12\x33\n-IMMUNIZATION_STATEMENT_COMMAND__PRE_ORIGINATE\x10\xf0\xab\x01\x12\x34\n.IMMUNIZATION_STATEMENT_COMMAND__POST_ORIGINATE\x10\xf1\xab\x01\x12\x30\n*IMMUNIZATION_STATEMENT_COMMAND__PRE_UPDATE\x10\xf2\xab\x01\x12\x31\n+IMMUNIZATION_STATEMENT_COMMAND__POST_UPDATE\x10\xf3\xab\x01\x12\x30\n*IMMUNIZATION_STATEMENT_COMMAND__PRE_COMMIT\x10\xf4\xab\x01\x12\x31\n+IMMUNIZATION_STATEMENT_COMMAND__POST_COMMIT\x10\xf5\xab\x01\x12\x30\n*IMMUNIZATION_STATEMENT_COMMAND__PRE_DELETE\x10\xf6\xab\x01\x12\x31\n+IMMUNIZATION_STATEMENT_COMMAND__POST_DELETE\x10\xf7\xab\x01\x12\x38\n2IMMUNIZATION_STATEMENT_COMMAND__PRE_ENTER_IN_ERROR\x10\xf8\xab\x01\x12\x39\n3IMMUNIZATION_STATEMENT_COMMAND__POST_ENTER_IN_ERROR\x10\xf9\xab\x01\x12\x38\n2IMMUNIZATION_STATEMENT_COMMAND__PRE_EXECUTE_ACTION\x10\xfa\xab\x01\x12\x39\n3IMMUNIZATION_STATEMENT_COMMAND__POST_EXECUTE_ACTION\x10\xfb\xab\x01\x12=\n7IMMUNIZATION_STATEMENT_COMMAND__POST_INSERTED_INTO_NOTE\x10\xfe\xab\x01\x12\x33\n-IMMUNIZATION_STATEMENT__STATEMENT__PRE_SEARCH\x10\xfc\xab\x01\x12\x34\n.IMMUNIZATION_STATEMENT__STATEMENT__POST_SEARCH\x10\xfd\xab\x01\x12%\n\x1fIMMUNIZE_COMMAND__PRE_ORIGINATE\x10\xd8\xb3\x01\x12&\n IMMUNIZE_COMMAND__POST_ORIGINATE\x10\xd9\xb3\x01\x12\"\n\x1cIMMUNIZE_COMMAND__PRE_UPDATE\x10\xda\xb3\x01\x12#\n\x1dIMMUNIZE_COMMAND__POST_UPDATE\x10\xdb\xb3\x01\x12\"\n\x1cIMMUNIZE_COMMAND__PRE_COMMIT\x10\xdc\xb3\x01\x12#\n\x1dIMMUNIZE_COMMAND__POST_COMMIT\x10\xdd\xb3\x01\x12\"\n\x1cIMMUNIZE_COMMAND__PRE_DELETE\x10\xde\xb3\x01\x12#\n\x1dIMMUNIZE_COMMAND__POST_DELETE\x10\xdf\xb3\x01\x12*\n$IMMUNIZE_COMMAND__PRE_ENTER_IN_ERROR\x10\xe0\xb3\x01\x12+\n%IMMUNIZE_COMMAND__POST_ENTER_IN_ERROR\x10\xe1\xb3\x01\x12*\n$IMMUNIZE_COMMAND__PRE_EXECUTE_ACTION\x10\xe2\xb3\x01\x12+\n%IMMUNIZE_COMMAND__POST_EXECUTE_ACTION\x10\xe3\xb3\x01\x12/\n)IMMUNIZE_COMMAND__POST_INSERTED_INTO_NOTE\x10\xea\xb3\x01\x12\"\n\x1cIMMUNIZE__CODING__PRE_SEARCH\x10\xe4\xb3\x01\x12#\n\x1dIMMUNIZE__CODING__POST_SEARCH\x10\xe5\xb3\x01\x12&\n IMMUNIZE__LOT_NUMBER__PRE_SEARCH\x10\xe6\xb3\x01\x12\'\n!IMMUNIZE__LOT_NUMBER__POST_SEARCH\x10\xe7\xb3\x01\x12$\n\x1eIMMUNIZE__GIVEN_BY__PRE_SEARCH\x10\xe8\xb3\x01\x12%\n\x1fIMMUNIZE__GIVEN_BY__POST_SEARCH\x10\xe9\xb3\x01\x12%\n\x1fINSTRUCT_COMMAND__PRE_ORIGINATE\x10\xc0\xbb\x01\x12&\n INSTRUCT_COMMAND__POST_ORIGINATE\x10\xc1\xbb\x01\x12\"\n\x1cINSTRUCT_COMMAND__PRE_UPDATE\x10\xc2\xbb\x01\x12#\n\x1dINSTRUCT_COMMAND__POST_UPDATE\x10\xc3\xbb\x01\x12\"\n\x1cINSTRUCT_COMMAND__PRE_COMMIT\x10\xc4\xbb\x01\x12#\n\x1dINSTRUCT_COMMAND__POST_COMMIT\x10\xc5\xbb\x01\x12\"\n\x1cINSTRUCT_COMMAND__PRE_DELETE\x10\xc6\xbb\x01\x12#\n\x1dINSTRUCT_COMMAND__POST_DELETE\x10\xc7\xbb\x01\x12*\n$INSTRUCT_COMMAND__PRE_ENTER_IN_ERROR\x10\xc8\xbb\x01\x12+\n%INSTRUCT_COMMAND__POST_ENTER_IN_ERROR\x10\xc9\xbb\x01\x12*\n$INSTRUCT_COMMAND__PRE_EXECUTE_ACTION\x10\xca\xbb\x01\x12+\n%INSTRUCT_COMMAND__POST_EXECUTE_ACTION\x10\xcb\xbb\x01\x12/\n)INSTRUCT_COMMAND__POST_INSERTED_INTO_NOTE\x10\xce\xbb\x01\x12$\n\x1eINSTRUCT__INSTRUCT__PRE_SEARCH\x10\xcc\xbb\x01\x12%\n\x1fINSTRUCT__INSTRUCT__POST_SEARCH\x10\xcd\xbb\x01\x12&\n LAB_ORDER_COMMAND__PRE_ORIGINATE\x10\xa8\xc3\x01\x12\'\n!LAB_ORDER_COMMAND__POST_ORIGINATE\x10\xa9\xc3\x01\x12#\n\x1dLAB_ORDER_COMMAND__PRE_UPDATE\x10\xaa\xc3\x01\x12$\n\x1eLAB_ORDER_COMMAND__POST_UPDATE\x10\xab\xc3\x01\x12#\n\x1dLAB_ORDER_COMMAND__PRE_COMMIT\x10\xac\xc3\x01\x12$\n\x1eLAB_ORDER_COMMAND__POST_COMMIT\x10\xad\xc3\x01\x12#\n\x1dLAB_ORDER_COMMAND__PRE_DELETE\x10\xae\xc3\x01\x12$\n\x1eLAB_ORDER_COMMAND__POST_DELETE\x10\xaf\xc3\x01\x12+\n%LAB_ORDER_COMMAND__PRE_ENTER_IN_ERROR\x10\xb0\xc3\x01\x12,\n&LAB_ORDER_COMMAND__POST_ENTER_IN_ERROR\x10\xb1\xc3\x01\x12+\n%LAB_ORDER_COMMAND__PRE_EXECUTE_ACTION\x10\xb2\xc3\x01\x12,\n&LAB_ORDER_COMMAND__POST_EXECUTE_ACTION\x10\xb3\xc3\x01\x12\x30\n*LAB_ORDER_COMMAND__POST_INSERTED_INTO_NOTE\x10\xbc\xc3\x01\x12(\n\"LAB_ORDER__LAB_PARTNER__PRE_SEARCH\x10\xb4\xc3\x01\x12)\n#LAB_ORDER__LAB_PARTNER__POST_SEARCH\x10\xb5\xc3\x01\x12\"\n\x1cLAB_ORDER__TESTS__PRE_SEARCH\x10\xb6\xc3\x01\x12#\n\x1dLAB_ORDER__TESTS__POST_SEARCH\x10\xb7\xc3\x01\x12.\n(LAB_ORDER__ORDERING_PROVIDER__PRE_SEARCH\x10\xb8\xc3\x01\x12/\n)LAB_ORDER__ORDERING_PROVIDER__POST_SEARCH\x10\xb9\xc3\x01\x12&\n LAB_ORDER__DIAGNOSIS__PRE_SEARCH\x10\xba\xc3\x01\x12\'\n!LAB_ORDER__DIAGNOSIS__POST_SEARCH\x10\xbb\xc3\x01\x12,\n&MEDICAL_HISTORY_COMMAND__PRE_ORIGINATE\x10\xf8\xd2\x01\x12-\n\'MEDICAL_HISTORY_COMMAND__POST_ORIGINATE\x10\xf9\xd2\x01\x12)\n#MEDICAL_HISTORY_COMMAND__PRE_UPDATE\x10\xfa\xd2\x01\x12*\n$MEDICAL_HISTORY_COMMAND__POST_UPDATE\x10\xfb\xd2\x01\x12)\n#MEDICAL_HISTORY_COMMAND__PRE_COMMIT\x10\xfc\xd2\x01\x12*\n$MEDICAL_HISTORY_COMMAND__POST_COMMIT\x10\xfd\xd2\x01\x12)\n#MEDICAL_HISTORY_COMMAND__PRE_DELETE\x10\xfe\xd2\x01\x12*\n$MEDICAL_HISTORY_COMMAND__POST_DELETE\x10\xff\xd2\x01\x12\x31\n+MEDICAL_HISTORY_COMMAND__PRE_ENTER_IN_ERROR\x10\x80\xd3\x01\x12\x32\n,MEDICAL_HISTORY_COMMAND__POST_ENTER_IN_ERROR\x10\x81\xd3\x01\x12\x31\n+MEDICAL_HISTORY_COMMAND__PRE_EXECUTE_ACTION\x10\x82\xd3\x01\x12\x32\n,MEDICAL_HISTORY_COMMAND__POST_EXECUTE_ACTION\x10\x83\xd3\x01\x12\x36\n0MEDICAL_HISTORY_COMMAND__POST_INSERTED_INTO_NOTE\x10\x8a\xd3\x01\x12\x37\n1MEDICAL_HISTORY__PAST_MEDICAL_HISTORY__PRE_SEARCH\x10\x84\xd3\x01\x12\x38\n2MEDICAL_HISTORY__PAST_MEDICAL_HISTORY__POST_SEARCH\x10\x85\xd3\x01\x12\x39\n3MEDICAL_HISTORY__APPROXIMATE_START_DATE__PRE_SEARCH\x10\x86\xd3\x01\x12:\n4MEDICAL_HISTORY__APPROXIMATE_START_DATE__POST_SEARCH\x10\x87\xd3\x01\x12\x37\n1MEDICAL_HISTORY__APPROXIMATE_END_DATE__PRE_SEARCH\x10\x88\xd3\x01\x12\x38\n2MEDICAL_HISTORY__APPROXIMATE_END_DATE__POST_SEARCH\x10\x89\xd3\x01\x12\x31\n+MEDICATION_STATEMENT_COMMAND__PRE_ORIGINATE\x10\xe0\xda\x01\x12\x32\n,MEDICATION_STATEMENT_COMMAND__POST_ORIGINATE\x10\xe1\xda\x01\x12.\n(MEDICATION_STATEMENT_COMMAND__PRE_UPDATE\x10\xe2\xda\x01\x12/\n)MEDICATION_STATEMENT_COMMAND__POST_UPDATE\x10\xe3\xda\x01\x12.\n(MEDICATION_STATEMENT_COMMAND__PRE_COMMIT\x10\xe4\xda\x01\x12/\n)MEDICATION_STATEMENT_COMMAND__POST_COMMIT\x10\xe5\xda\x01\x12.\n(MEDICATION_STATEMENT_COMMAND__PRE_DELETE\x10\xe6\xda\x01\x12/\n)MEDICATION_STATEMENT_COMMAND__POST_DELETE\x10\xe7\xda\x01\x12\x36\n0MEDICATION_STATEMENT_COMMAND__PRE_ENTER_IN_ERROR\x10\xe8\xda\x01\x12\x37\n1MEDICATION_STATEMENT_COMMAND__POST_ENTER_IN_ERROR\x10\xe9\xda\x01\x12\x36\n0MEDICATION_STATEMENT_COMMAND__PRE_EXECUTE_ACTION\x10\xea\xda\x01\x12\x37\n1MEDICATION_STATEMENT_COMMAND__POST_EXECUTE_ACTION\x10\xeb\xda\x01\x12;\n5MEDICATION_STATEMENT_COMMAND__POST_INSERTED_INTO_NOTE\x10\xec\xda\x01\x12$\n\x1ePERFORM_COMMAND__PRE_ORIGINATE\x10\xc8\xe2\x01\x12%\n\x1fPERFORM_COMMAND__POST_ORIGINATE\x10\xc9\xe2\x01\x12!\n\x1bPERFORM_COMMAND__PRE_UPDATE\x10\xca\xe2\x01\x12\"\n\x1cPERFORM_COMMAND__POST_UPDATE\x10\xcb\xe2\x01\x12!\n\x1bPERFORM_COMMAND__PRE_COMMIT\x10\xcc\xe2\x01\x12\"\n\x1cPERFORM_COMMAND__POST_COMMIT\x10\xcd\xe2\x01\x12!\n\x1bPERFORM_COMMAND__PRE_DELETE\x10\xce\xe2\x01\x12\"\n\x1cPERFORM_COMMAND__POST_DELETE\x10\xcf\xe2\x01\x12)\n#PERFORM_COMMAND__PRE_ENTER_IN_ERROR\x10\xd0\xe2\x01\x12*\n$PERFORM_COMMAND__POST_ENTER_IN_ERROR\x10\xd1\xe2\x01\x12)\n#PERFORM_COMMAND__PRE_EXECUTE_ACTION\x10\xd2\xe2\x01\x12*\n$PERFORM_COMMAND__POST_EXECUTE_ACTION\x10\xd3\xe2\x01\x12.\n(PERFORM_COMMAND__POST_INSERTED_INTO_NOTE\x10\xd6\xe2\x01\x12\"\n\x1cPERFORM__PERFORM__PRE_SEARCH\x10\xd4\xe2\x01\x12#\n\x1dPERFORM__PERFORM__POST_SEARCH\x10\xd5\xe2\x01\x12*\n$PHYSICAL_EXAM_COMMAND__PRE_ORIGINATE\x10\xb0\xea\x01\x12+\n%PHYSICAL_EXAM_COMMAND__POST_ORIGINATE\x10\xb1\xea\x01\x12\'\n!PHYSICAL_EXAM_COMMAND__PRE_UPDATE\x10\xb2\xea\x01\x12(\n\"PHYSICAL_EXAM_COMMAND__POST_UPDATE\x10\xb3\xea\x01\x12\'\n!PHYSICAL_EXAM_COMMAND__PRE_COMMIT\x10\xb4\xea\x01\x12(\n\"PHYSICAL_EXAM_COMMAND__POST_COMMIT\x10\xb5\xea\x01\x12\'\n!PHYSICAL_EXAM_COMMAND__PRE_DELETE\x10\xb6\xea\x01\x12(\n\"PHYSICAL_EXAM_COMMAND__POST_DELETE\x10\xb7\xea\x01\x12/\n)PHYSICAL_EXAM_COMMAND__PRE_ENTER_IN_ERROR\x10\xb8\xea\x01\x12\x30\n*PHYSICAL_EXAM_COMMAND__POST_ENTER_IN_ERROR\x10\xb9\xea\x01\x12/\n)PHYSICAL_EXAM_COMMAND__PRE_EXECUTE_ACTION\x10\xba\xea\x01\x12\x30\n*PHYSICAL_EXAM_COMMAND__POST_EXECUTE_ACTION\x10\xbb\xea\x01\x12\x34\n.PHYSICAL_EXAM_COMMAND__POST_INSERTED_INTO_NOTE\x10\xbe\xea\x01\x12.\n(PHYSICAL_EXAM__QUESTIONNAIRE__PRE_SEARCH\x10\xbc\xea\x01\x12/\n)PHYSICAL_EXAM__QUESTIONNAIRE__POST_SEARCH\x10\xbd\xea\x01\x12!\n\x1bPLAN_COMMAND__PRE_ORIGINATE\x10\x98\xf2\x01\x12\"\n\x1cPLAN_COMMAND__POST_ORIGINATE\x10\x99\xf2\x01\x12\x1e\n\x18PLAN_COMMAND__PRE_UPDATE\x10\x9a\xf2\x01\x12\x1f\n\x19PLAN_COMMAND__POST_UPDATE\x10\x9b\xf2\x01\x12\x1e\n\x18PLAN_COMMAND__PRE_COMMIT\x10\x9c\xf2\x01\x12\x1f\n\x19PLAN_COMMAND__POST_COMMIT\x10\x9d\xf2\x01\x12\x1e\n\x18PLAN_COMMAND__PRE_DELETE\x10\x9e\xf2\x01\x12\x1f\n\x19PLAN_COMMAND__POST_DELETE\x10\x9f\xf2\x01\x12&\n PLAN_COMMAND__PRE_ENTER_IN_ERROR\x10\xa0\xf2\x01\x12\'\n!PLAN_COMMAND__POST_ENTER_IN_ERROR\x10\xa1\xf2\x01\x12&\n PLAN_COMMAND__PRE_EXECUTE_ACTION\x10\xa2\xf2\x01\x12\'\n!PLAN_COMMAND__POST_EXECUTE_ACTION\x10\xa3\xf2\x01\x12+\n%PLAN_COMMAND__POST_INSERTED_INTO_NOTE\x10\xa4\xf2\x01\x12&\n PRESCRIBE_COMMAND__PRE_ORIGINATE\x10\xe8\x81\x02\x12\'\n!PRESCRIBE_COMMAND__POST_ORIGINATE\x10\xe9\x81\x02\x12#\n\x1dPRESCRIBE_COMMAND__PRE_UPDATE\x10\xea\x81\x02\x12$\n\x1ePRESCRIBE_COMMAND__POST_UPDATE\x10\xeb\x81\x02\x12#\n\x1dPRESCRIBE_COMMAND__PRE_COMMIT\x10\xec\x81\x02\x12$\n\x1ePRESCRIBE_COMMAND__POST_COMMIT\x10\xed\x81\x02\x12#\n\x1dPRESCRIBE_COMMAND__PRE_DELETE\x10\xee\x81\x02\x12$\n\x1ePRESCRIBE_COMMAND__POST_DELETE\x10\xef\x81\x02\x12+\n%PRESCRIBE_COMMAND__PRE_ENTER_IN_ERROR\x10\xf0\x81\x02\x12,\n&PRESCRIBE_COMMAND__POST_ENTER_IN_ERROR\x10\xf1\x81\x02\x12+\n%PRESCRIBE_COMMAND__PRE_EXECUTE_ACTION\x10\xf2\x81\x02\x12,\n&PRESCRIBE_COMMAND__POST_EXECUTE_ACTION\x10\xf3\x81\x02\x12\x30\n*PRESCRIBE_COMMAND__POST_INSERTED_INTO_NOTE\x10\xfa\x81\x02\x12\'\n!PRESCRIBE__PRESCRIBE__POST_SEARCH\x10\xf4\x81\x02\x12&\n PRESCRIBE__PRESCRIBE__PRE_SEARCH\x10\xf5\x81\x02\x12(\n\"PRESCRIBE__INDICATIONS__PRE_SEARCH\x10\xf6\x81\x02\x12)\n#PRESCRIBE__INDICATIONS__POST_SEARCH\x10\xf7\x81\x02\x12%\n\x1fPRESCRIBE__PHARMACY__PRE_SEARCH\x10\xf8\x81\x02\x12&\n PRESCRIBE__PHARMACY__POST_SEARCH\x10\xf9\x81\x02\x12*\n$QUESTIONNAIRE_COMMAND__PRE_ORIGINATE\x10\xd0\x89\x02\x12+\n%QUESTIONNAIRE_COMMAND__POST_ORIGINATE\x10\xd1\x89\x02\x12\'\n!QUESTIONNAIRE_COMMAND__PRE_UPDATE\x10\xd2\x89\x02\x12(\n\"QUESTIONNAIRE_COMMAND__POST_UPDATE\x10\xd3\x89\x02\x12\'\n!QUESTIONNAIRE_COMMAND__PRE_COMMIT\x10\xd4\x89\x02\x12(\n\"QUESTIONNAIRE_COMMAND__POST_COMMIT\x10\xd5\x89\x02\x12\'\n!QUESTIONNAIRE_COMMAND__PRE_DELETE\x10\xd6\x89\x02\x12(\n\"QUESTIONNAIRE_COMMAND__POST_DELETE\x10\xd7\x89\x02\x12/\n)QUESTIONNAIRE_COMMAND__PRE_ENTER_IN_ERROR\x10\xd8\x89\x02\x12\x30\n*QUESTIONNAIRE_COMMAND__POST_ENTER_IN_ERROR\x10\xd9\x89\x02\x12/\n)QUESTIONNAIRE_COMMAND__PRE_EXECUTE_ACTION\x10\xda\x89\x02\x12\x30\n*QUESTIONNAIRE_COMMAND__POST_EXECUTE_ACTION\x10\xdb\x89\x02\x12\x34\n.QUESTIONNAIRE_COMMAND__POST_INSERTED_INTO_NOTE\x10\xde\x89\x02\x12/\n)QUESTIONNAIRE__QUESTIONNAIRE__POST_SEARCH\x10\xdc\x89\x02\x12.\n(QUESTIONNAIRE__QUESTIONNAIRE__PRE_SEARCH\x10\xdd\x89\x02\x12-\n\'REASON_FOR_VISIT_COMMAND__PRE_ORIGINATE\x10\xb8\x91\x02\x12.\n(REASON_FOR_VISIT_COMMAND__POST_ORIGINATE\x10\xb9\x91\x02\x12*\n$REASON_FOR_VISIT_COMMAND__PRE_UPDATE\x10\xba\x91\x02\x12+\n%REASON_FOR_VISIT_COMMAND__POST_UPDATE\x10\xbb\x91\x02\x12*\n$REASON_FOR_VISIT_COMMAND__PRE_COMMIT\x10\xbc\x91\x02\x12+\n%REASON_FOR_VISIT_COMMAND__POST_COMMIT\x10\xbd\x91\x02\x12*\n$REASON_FOR_VISIT_COMMAND__PRE_DELETE\x10\xbe\x91\x02\x12+\n%REASON_FOR_VISIT_COMMAND__POST_DELETE\x10\xbf\x91\x02\x12\x32\n,REASON_FOR_VISIT_COMMAND__PRE_ENTER_IN_ERROR\x10\xc0\x91\x02\x12\x33\n-REASON_FOR_VISIT_COMMAND__POST_ENTER_IN_ERROR\x10\xc1\x91\x02\x12\x32\n,REASON_FOR_VISIT_COMMAND__PRE_EXECUTE_ACTION\x10\xc2\x91\x02\x12\x33\n-REASON_FOR_VISIT_COMMAND__POST_EXECUTE_ACTION\x10\xc3\x91\x02\x12\x37\n1REASON_FOR_VISIT_COMMAND__POST_INSERTED_INTO_NOTE\x10\xc6\x91\x02\x12+\n%REASON_FOR_VISIT__CODING__POST_SEARCH\x10\xc4\x91\x02\x12*\n$REASON_FOR_VISIT__CODING__PRE_SEARCH\x10\xc5\x91\x02\x12\"\n\x1cREFER_COMMAND__PRE_ORIGINATE\x10\xa0\x99\x02\x12#\n\x1dREFER_COMMAND__POST_ORIGINATE\x10\xa1\x99\x02\x12\x1f\n\x19REFER_COMMAND__PRE_UPDATE\x10\xa2\x99\x02\x12 \n\x1aREFER_COMMAND__POST_UPDATE\x10\xa3\x99\x02\x12\x1f\n\x19REFER_COMMAND__PRE_COMMIT\x10\xa4\x99\x02\x12 \n\x1aREFER_COMMAND__POST_COMMIT\x10\xa5\x99\x02\x12\x1f\n\x19REFER_COMMAND__PRE_DELETE\x10\xa6\x99\x02\x12 \n\x1aREFER_COMMAND__POST_DELETE\x10\xa7\x99\x02\x12\'\n!REFER_COMMAND__PRE_ENTER_IN_ERROR\x10\xa8\x99\x02\x12(\n\"REFER_COMMAND__POST_ENTER_IN_ERROR\x10\xa9\x99\x02\x12\'\n!REFER_COMMAND__PRE_EXECUTE_ACTION\x10\xaa\x99\x02\x12(\n\"REFER_COMMAND__POST_EXECUTE_ACTION\x10\xab\x99\x02\x12,\n&REFER_COMMAND__POST_INSERTED_INTO_NOTE\x10\xb4\x99\x02\x12\"\n\x1cREFER__REFER_TO__POST_SEARCH\x10\xac\x99\x02\x12!\n\x1bREFER__REFER_TO__PRE_SEARCH\x10\xad\x99\x02\x12%\n\x1fREFER__INDICATIONS__POST_SEARCH\x10\xae\x99\x02\x12$\n\x1eREFER__INDICATIONS__PRE_SEARCH\x10\xaf\x99\x02\x12.\n(REFER__DOCUMENTS_TO_INCLUDE__POST_SEARCH\x10\xb0\x99\x02\x12-\n\'REFER__DOCUMENTS_TO_INCLUDE__PRE_SEARCH\x10\xb1\x99\x02\x12&\n REFER__LINKED_ITEMS__POST_SEARCH\x10\xb2\x99\x02\x12-\n\'REFER__LINKED_ITEMS_INCLUDE__PRE_SEARCH\x10\xb3\x99\x02\x12#\n\x1dREFILL_COMMAND__PRE_ORIGINATE\x10\xd8\xb0\x02\x12$\n\x1eREFILL_COMMAND__POST_ORIGINATE\x10\xd9\xb0\x02\x12 \n\x1aREFILL_COMMAND__PRE_UPDATE\x10\xda\xb0\x02\x12!\n\x1bREFILL_COMMAND__POST_UPDATE\x10\xdb\xb0\x02\x12 \n\x1aREFILL_COMMAND__PRE_COMMIT\x10\xdc\xb0\x02\x12!\n\x1bREFILL_COMMAND__POST_COMMIT\x10\xdd\xb0\x02\x12 \n\x1aREFILL_COMMAND__PRE_DELETE\x10\xde\xb0\x02\x12!\n\x1bREFILL_COMMAND__POST_DELETE\x10\xdf\xb0\x02\x12(\n\"REFILL_COMMAND__PRE_ENTER_IN_ERROR\x10\xe0\xb0\x02\x12)\n#REFILL_COMMAND__POST_ENTER_IN_ERROR\x10\xe1\xb0\x02\x12(\n\"REFILL_COMMAND__PRE_EXECUTE_ACTION\x10\xe2\xb0\x02\x12)\n#REFILL_COMMAND__POST_EXECUTE_ACTION\x10\xe3\xb0\x02\x12-\n\'REFILL_COMMAND__POST_INSERTED_INTO_NOTE\x10\xea\xb0\x02\x12#\n\x1dREFILL__PRESCRIBE__PRE_SEARCH\x10\xe4\xb0\x02\x12$\n\x1eREFILL__PRESCRIBE__POST_SEARCH\x10\xe5\xb0\x02\x12%\n\x1fREFILL__INDICATIONS__PRE_SEARCH\x10\xe6\xb0\x02\x12&\n REFILL__INDICATIONS__POST_SEARCH\x10\xe7\xb0\x02\x12\"\n\x1cREFILL__PHARMACY__PRE_SEARCH\x10\xe8\xb0\x02\x12#\n\x1dREFILL__PHARMACY__POST_SEARCH\x10\xe9\xb0\x02\x12+\n%REMOVE_ALLERGY_COMMAND__PRE_ORIGINATE\x10\xc0\xb8\x02\x12,\n&REMOVE_ALLERGY_COMMAND__POST_ORIGINATE\x10\xc1\xb8\x02\x12(\n\"REMOVE_ALLERGY_COMMAND__PRE_UPDATE\x10\xc2\xb8\x02\x12)\n#REMOVE_ALLERGY_COMMAND__POST_UPDATE\x10\xc3\xb8\x02\x12(\n\"REMOVE_ALLERGY_COMMAND__PRE_COMMIT\x10\xc4\xb8\x02\x12)\n#REMOVE_ALLERGY_COMMAND__POST_COMMIT\x10\xc5\xb8\x02\x12(\n\"REMOVE_ALLERGY_COMMAND__PRE_DELETE\x10\xc6\xb8\x02\x12)\n#REMOVE_ALLERGY_COMMAND__POST_DELETE\x10\xc7\xb8\x02\x12\x30\n*REMOVE_ALLERGY_COMMAND__PRE_ENTER_IN_ERROR\x10\xc8\xb8\x02\x12\x31\n+REMOVE_ALLERGY_COMMAND__POST_ENTER_IN_ERROR\x10\xc9\xb8\x02\x12\x30\n*REMOVE_ALLERGY_COMMAND__PRE_EXECUTE_ACTION\x10\xca\xb8\x02\x12\x31\n+REMOVE_ALLERGY_COMMAND__POST_EXECUTE_ACTION\x10\xcb\xb8\x02\x12\x35\n/REMOVE_ALLERGY_COMMAND__POST_INSERTED_INTO_NOTE\x10\xce\xb8\x02\x12)\n#REMOVE_ALLERGY__ALLERGY__PRE_SEARCH\x10\xcc\xb8\x02\x12*\n$REMOVE_ALLERGY__ALLERGY__POST_SEARCH\x10\xcd\xb8\x02\x12.\n(RESOLVE_CONDITION_COMMAND__PRE_ORIGINATE\x10\xa8\xc0\x02\x12/\n)RESOLVE_CONDITION_COMMAND__POST_ORIGINATE\x10\xa9\xc0\x02\x12+\n%RESOLVE_CONDITION_COMMAND__PRE_UPDATE\x10\xaa\xc0\x02\x12,\n&RESOLVE_CONDITION_COMMAND__POST_UPDATE\x10\xab\xc0\x02\x12+\n%RESOLVE_CONDITION_COMMAND__PRE_COMMIT\x10\xac\xc0\x02\x12,\n&RESOLVE_CONDITION_COMMAND__POST_COMMIT\x10\xad\xc0\x02\x12+\n%RESOLVE_CONDITION_COMMAND__PRE_DELETE\x10\xae\xc0\x02\x12,\n&RESOLVE_CONDITION_COMMAND__POST_DELETE\x10\xaf\xc0\x02\x12\x33\n-RESOLVE_CONDITION_COMMAND__PRE_ENTER_IN_ERROR\x10\xb0\xc0\x02\x12\x34\n.RESOLVE_CONDITION_COMMAND__POST_ENTER_IN_ERROR\x10\xb1\xc0\x02\x12\x33\n-RESOLVE_CONDITION_COMMAND__PRE_EXECUTE_ACTION\x10\xb2\xc0\x02\x12\x34\n.RESOLVE_CONDITION_COMMAND__POST_EXECUTE_ACTION\x10\xb3\xc0\x02\x12\x38\n2RESOLVE_CONDITION_COMMAND__POST_INSERTED_INTO_NOTE\x10\xb6\xc0\x02\x12.\n(RESOLVE_CONDITION__CONDITION__PRE_SEARCH\x10\xb4\xc0\x02\x12/\n)RESOLVE_CONDITION__CONDITION__POST_SEARCH\x10\xb5\xc0\x02\x12 \n\x1aROS_COMMAND__PRE_ORIGINATE\x10\x90\xc8\x02\x12!\n\x1bROS_COMMAND__POST_ORIGINATE\x10\x91\xc8\x02\x12\x1d\n\x17ROS_COMMAND__PRE_UPDATE\x10\x92\xc8\x02\x12\x1e\n\x18ROS_COMMAND__POST_UPDATE\x10\x93\xc8\x02\x12\x1d\n\x17ROS_COMMAND__PRE_COMMIT\x10\x94\xc8\x02\x12\x1e\n\x18ROS_COMMAND__POST_COMMIT\x10\x95\xc8\x02\x12\x1d\n\x17ROS_COMMAND__PRE_DELETE\x10\x96\xc8\x02\x12\x1e\n\x18ROS_COMMAND__POST_DELETE\x10\x97\xc8\x02\x12%\n\x1fROS_COMMAND__PRE_ENTER_IN_ERROR\x10\x98\xc8\x02\x12&\n ROS_COMMAND__POST_ENTER_IN_ERROR\x10\x99\xc8\x02\x12%\n\x1fROS_COMMAND__PRE_EXECUTE_ACTION\x10\x9a\xc8\x02\x12&\n ROS_COMMAND__POST_EXECUTE_ACTION\x10\x9b\xc8\x02\x12*\n$ROS_COMMAND__POST_INSERTED_INTO_NOTE\x10\x9e\xc8\x02\x12$\n\x1eROS__QUESTIONNAIRE__PRE_SEARCH\x10\x9c\xc8\x02\x12%\n\x1fROS__QUESTIONNAIRE__POST_SEARCH\x10\x9d\xc8\x02\x12,\n&SNOOZE_PROTOCOL_COMMAND__PRE_ORIGINATE\x10\xf8\xcf\x02\x12-\n\'SNOOZE_PROTOCOL_COMMAND__POST_ORIGINATE\x10\xf9\xcf\x02\x12)\n#SNOOZE_PROTOCOL_COMMAND__PRE_UPDATE\x10\xfa\xcf\x02\x12*\n$SNOOZE_PROTOCOL_COMMAND__POST_UPDATE\x10\xfb\xcf\x02\x12)\n#SNOOZE_PROTOCOL_COMMAND__PRE_COMMIT\x10\xfc\xcf\x02\x12*\n$SNOOZE_PROTOCOL_COMMAND__POST_COMMIT\x10\xfd\xcf\x02\x12)\n#SNOOZE_PROTOCOL_COMMAND__PRE_DELETE\x10\xfe\xcf\x02\x12*\n$SNOOZE_PROTOCOL_COMMAND__POST_DELETE\x10\xff\xcf\x02\x12\x31\n+SNOOZE_PROTOCOL_COMMAND__PRE_ENTER_IN_ERROR\x10\x80\xd0\x02\x12\x32\n,SNOOZE_PROTOCOL_COMMAND__POST_ENTER_IN_ERROR\x10\x81\xd0\x02\x12\x31\n+SNOOZE_PROTOCOL_COMMAND__PRE_EXECUTE_ACTION\x10\x82\xd0\x02\x12\x32\n,SNOOZE_PROTOCOL_COMMAND__POST_EXECUTE_ACTION\x10\x83\xd0\x02\x12+\n%SNOOZE_PROTOCOL__PROTOCOL__PRE_SEARCH\x10\x84\xd0\x02\x12,\n&SNOOZE_PROTOCOL__PROTOCOL__POST_SEARCH\x10\x85\xd0\x02\x12,\n&STOP_MEDICATION_COMMAND__PRE_ORIGINATE\x10\xe0\xd7\x02\x12-\n\'STOP_MEDICATION_COMMAND__POST_ORIGINATE\x10\xe1\xd7\x02\x12)\n#STOP_MEDICATION_COMMAND__PRE_UPDATE\x10\xe2\xd7\x02\x12*\n$STOP_MEDICATION_COMMAND__POST_UPDATE\x10\xe3\xd7\x02\x12)\n#STOP_MEDICATION_COMMAND__PRE_COMMIT\x10\xe4\xd7\x02\x12*\n$STOP_MEDICATION_COMMAND__POST_COMMIT\x10\xe5\xd7\x02\x12)\n#STOP_MEDICATION_COMMAND__PRE_DELETE\x10\xe6\xd7\x02\x12*\n$STOP_MEDICATION_COMMAND__POST_DELETE\x10\xe7\xd7\x02\x12\x31\n+STOP_MEDICATION_COMMAND__PRE_ENTER_IN_ERROR\x10\xe8\xd7\x02\x12\x32\n,STOP_MEDICATION_COMMAND__POST_ENTER_IN_ERROR\x10\xe9\xd7\x02\x12\x31\n+STOP_MEDICATION_COMMAND__PRE_EXECUTE_ACTION\x10\xea\xd7\x02\x12\x32\n,STOP_MEDICATION_COMMAND__POST_EXECUTE_ACTION\x10\xeb\xd7\x02\x12\x36\n0STOP_MEDICATION_COMMAND__POST_INSERTED_INTO_NOTE\x10\xef\xd7\x02\x12-\n\'STOP_MEDICATION__MEDICATION__PRE_SEARCH\x10\xed\xd7\x02\x12.\n(STOP_MEDICATION__MEDICATION__POST_SEARCH\x10\xee\xd7\x02\x12\x32\n,STRUCTURED_ASSESSMENT_COMMAND__PRE_ORIGINATE\x10\xc8\xdf\x02\x12\x33\n-STRUCTURED_ASSESSMENT_COMMAND__POST_ORIGINATE\x10\xc9\xdf\x02\x12/\n)STRUCTURED_ASSESSMENT_COMMAND__PRE_UPDATE\x10\xca\xdf\x02\x12\x30\n*STRUCTURED_ASSESSMENT_COMMAND__POST_UPDATE\x10\xcb\xdf\x02\x12/\n)STRUCTURED_ASSESSMENT_COMMAND__PRE_COMMIT\x10\xcc\xdf\x02\x12\x30\n*STRUCTURED_ASSESSMENT_COMMAND__POST_COMMIT\x10\xcd\xdf\x02\x12/\n)STRUCTURED_ASSESSMENT_COMMAND__PRE_DELETE\x10\xce\xdf\x02\x12\x30\n*STRUCTURED_ASSESSMENT_COMMAND__POST_DELETE\x10\xcf\xdf\x02\x12\x37\n1STRUCTURED_ASSESSMENT_COMMAND__PRE_ENTER_IN_ERROR\x10\xd0\xdf\x02\x12\x38\n2STRUCTURED_ASSESSMENT_COMMAND__POST_ENTER_IN_ERROR\x10\xd1\xdf\x02\x12\x37\n1STRUCTURED_ASSESSMENT_COMMAND__PRE_EXECUTE_ACTION\x10\xd2\xdf\x02\x12\x38\n2STRUCTURED_ASSESSMENT_COMMAND__POST_EXECUTE_ACTION\x10\xd3\xdf\x02\x12<\n6STRUCTURED_ASSESSMENT_COMMAND__POST_INSERTED_INTO_NOTE\x10\xd6\xdf\x02\x12\x36\n0STRUCTURED_ASSESSMENT__QUESTIONNAIRE__PRE_SEARCH\x10\xd4\xdf\x02\x12\x37\n1STRUCTURED_ASSESSMENT__QUESTIONNAIRE__POST_SEARCH\x10\xd5\xdf\x02\x12-\n\'SURGICAL_HISTORY_COMMAND__PRE_ORIGINATE\x10\xb0\xe7\x02\x12.\n(SURGICAL_HISTORY_COMMAND__POST_ORIGINATE\x10\xb1\xe7\x02\x12*\n$SURGICAL_HISTORY_COMMAND__PRE_UPDATE\x10\xb2\xe7\x02\x12+\n%SURGICAL_HISTORY_COMMAND__POST_UPDATE\x10\xb3\xe7\x02\x12*\n$SURGICAL_HISTORY_COMMAND__PRE_COMMIT\x10\xb4\xe7\x02\x12+\n%SURGICAL_HISTORY_COMMAND__POST_COMMIT\x10\xb5\xe7\x02\x12*\n$SURGICAL_HISTORY_COMMAND__PRE_DELETE\x10\xb6\xe7\x02\x12+\n%SURGICAL_HISTORY_COMMAND__POST_DELETE\x10\xb7\xe7\x02\x12\x32\n,SURGICAL_HISTORY_COMMAND__PRE_ENTER_IN_ERROR\x10\xb8\xe7\x02\x12\x33\n-SURGICAL_HISTORY_COMMAND__POST_ENTER_IN_ERROR\x10\xb9\xe7\x02\x12\x32\n,SURGICAL_HISTORY_COMMAND__PRE_EXECUTE_ACTION\x10\xba\xe7\x02\x12\x33\n-SURGICAL_HISTORY_COMMAND__POST_EXECUTE_ACTION\x10\xbb\xe7\x02\x12\x37\n1SURGICAL_HISTORY_COMMAND__POST_INSERTED_INTO_NOTE\x10\xbe\xe7\x02\x12\x39\n3SURGICAL_HISTORY__PAST_SURGICAL_HISTORY__PRE_SEARCH\x10\xbc\xe7\x02\x12:\n4SURGICAL_HISTORY__PAST_SURGICAL_HISTORY__POST_SEARCH\x10\xbd\xe7\x02\x12!\n\x1bTASK_COMMAND__PRE_ORIGINATE\x10\x98\xef\x02\x12\"\n\x1cTASK_COMMAND__POST_ORIGINATE\x10\x99\xef\x02\x12\x1e\n\x18TASK_COMMAND__PRE_UPDATE\x10\x9a\xef\x02\x12\x1f\n\x19TASK_COMMAND__POST_UPDATE\x10\x9b\xef\x02\x12\x1e\n\x18TASK_COMMAND__PRE_COMMIT\x10\x9c\xef\x02\x12\x1f\n\x19TASK_COMMAND__POST_COMMIT\x10\x9d\xef\x02\x12\x1e\n\x18TASK_COMMAND__PRE_DELETE\x10\x9e\xef\x02\x12\x1f\n\x19TASK_COMMAND__POST_DELETE\x10\x9f\xef\x02\x12&\n TASK_COMMAND__PRE_ENTER_IN_ERROR\x10\xa0\xef\x02\x12\'\n!TASK_COMMAND__POST_ENTER_IN_ERROR\x10\xa1\xef\x02\x12&\n TASK_COMMAND__PRE_EXECUTE_ACTION\x10\xa2\xef\x02\x12\'\n!TASK_COMMAND__POST_EXECUTE_ACTION\x10\xa3\xef\x02\x12+\n%TASK_COMMAND__POST_INSERTED_INTO_NOTE\x10\xa8\xef\x02\x12!\n\x1bTASK__ASSIGN_TO__PRE_SEARCH\x10\xa4\xef\x02\x12\"\n\x1cTASK__ASSIGN_TO__POST_SEARCH\x10\xa5\xef\x02\x12\x1e\n\x18TASK__LABELS__PRE_SEARCH\x10\xa6\xef\x02\x12\x1f\n\x19TASK__LABELS__POST_SEARCH\x10\xa7\xef\x02\x12-\n\'UPDATE_DIAGNOSIS_COMMAND__PRE_ORIGINATE\x10\xe8\xfe\x02\x12.\n(UPDATE_DIAGNOSIS_COMMAND__POST_ORIGINATE\x10\xe9\xfe\x02\x12*\n$UPDATE_DIAGNOSIS_COMMAND__PRE_UPDATE\x10\xea\xfe\x02\x12+\n%UPDATE_DIAGNOSIS_COMMAND__POST_UPDATE\x10\xeb\xfe\x02\x12*\n$UPDATE_DIAGNOSIS_COMMAND__PRE_COMMIT\x10\xec\xfe\x02\x12+\n%UPDATE_DIAGNOSIS_COMMAND__POST_COMMIT\x10\xed\xfe\x02\x12*\n$UPDATE_DIAGNOSIS_COMMAND__PRE_DELETE\x10\xee\xfe\x02\x12+\n%UPDATE_DIAGNOSIS_COMMAND__POST_DELETE\x10\xef\xfe\x02\x12\x32\n,UPDATE_DIAGNOSIS_COMMAND__PRE_ENTER_IN_ERROR\x10\xf0\xfe\x02\x12\x33\n-UPDATE_DIAGNOSIS_COMMAND__POST_ENTER_IN_ERROR\x10\xf1\xfe\x02\x12\x32\n,UPDATE_DIAGNOSIS_COMMAND__PRE_EXECUTE_ACTION\x10\xf2\xfe\x02\x12\x33\n-UPDATE_DIAGNOSIS_COMMAND__POST_EXECUTE_ACTION\x10\xf3\xfe\x02\x12\x37\n1UPDATE_DIAGNOSIS_COMMAND__POST_INSERTED_INTO_NOTE\x10\xf8\xfe\x02\x12-\n\'UPDATE_DIAGNOSIS__CONDITION__PRE_SEARCH\x10\xf4\xfe\x02\x12.\n(UPDATE_DIAGNOSIS__CONDITION__POST_SEARCH\x10\xf5\xfe\x02\x12\x31\n+UPDATE_DIAGNOSIS__NEW_CONDITION__PRE_SEARCH\x10\xf6\xfe\x02\x12\x32\n,UPDATE_DIAGNOSIS__NEW_CONDITION__POST_SEARCH\x10\xf7\xfe\x02\x12(\n\"UPDATE_GOAL_COMMAND__PRE_ORIGINATE\x10\xd0\x86\x03\x12)\n#UPDATE_GOAL_COMMAND__POST_ORIGINATE\x10\xd1\x86\x03\x12%\n\x1fUPDATE_GOAL_COMMAND__PRE_UPDATE\x10\xd2\x86\x03\x12&\n UPDATE_GOAL_COMMAND__POST_UPDATE\x10\xd3\x86\x03\x12%\n\x1fUPDATE_GOAL_COMMAND__PRE_COMMIT\x10\xd4\x86\x03\x12&\n UPDATE_GOAL_COMMAND__POST_COMMIT\x10\xd5\x86\x03\x12%\n\x1fUPDATE_GOAL_COMMAND__PRE_DELETE\x10\xd6\x86\x03\x12&\n UPDATE_GOAL_COMMAND__POST_DELETE\x10\xd7\x86\x03\x12-\n\'UPDATE_GOAL_COMMAND__PRE_ENTER_IN_ERROR\x10\xd8\x86\x03\x12.\n(UPDATE_GOAL_COMMAND__POST_ENTER_IN_ERROR\x10\xd9\x86\x03\x12-\n\'UPDATE_GOAL_COMMAND__PRE_EXECUTE_ACTION\x10\xda\x86\x03\x12.\n(UPDATE_GOAL_COMMAND__POST_EXECUTE_ACTION\x10\xdb\x86\x03\x12\x32\n,UPDATE_GOAL_COMMAND__POST_INSERTED_INTO_NOTE\x10\xdc\x86\x03\x12-\n\'UPDATE_GOAL__GOAL_STATEMENT__PRE_SEARCH\x10\xdd\x86\x03\x12.\n(UPDATE_GOAL__GOAL_STATEMENT__POST_SEARCH\x10\xde\x86\x03\x12#\n\x1dVITALS_COMMAND__PRE_ORIGINATE\x10\xa0\x96\x03\x12$\n\x1eVITALS_COMMAND__POST_ORIGINATE\x10\xa1\x96\x03\x12 \n\x1aVITALS_COMMAND__PRE_UPDATE\x10\xa2\x96\x03\x12!\n\x1bVITALS_COMMAND__POST_UPDATE\x10\xa3\x96\x03\x12 \n\x1aVITALS_COMMAND__PRE_COMMIT\x10\xa4\x96\x03\x12!\n\x1bVITALS_COMMAND__POST_COMMIT\x10\xa5\x96\x03\x12 \n\x1aVITALS_COMMAND__PRE_DELETE\x10\xa6\x96\x03\x12!\n\x1bVITALS_COMMAND__POST_DELETE\x10\xa7\x96\x03\x12(\n\"VITALS_COMMAND__PRE_ENTER_IN_ERROR\x10\xa8\x96\x03\x12)\n#VITALS_COMMAND__POST_ENTER_IN_ERROR\x10\xa9\x96\x03\x12(\n\"VITALS_COMMAND__PRE_EXECUTE_ACTION\x10\xaa\x96\x03\x12)\n#VITALS_COMMAND__POST_EXECUTE_ACTION\x10\xab\x96\x03\x12-\n\'VITALS_COMMAND__POST_INSERTED_INTO_NOTE\x10\xac\x96\x03\x12.\n(ASSESS_CODING_GAP_COMMAND__PRE_ORIGINATE\x10\xa8\xbd\x03\x12/\n)ASSESS_CODING_GAP_COMMAND__POST_ORIGINATE\x10\xa9\xbd\x03\x12+\n%ASSESS_CODING_GAP_COMMAND__PRE_UPDATE\x10\xaa\xbd\x03\x12,\n&ASSESS_CODING_GAP_COMMAND__POST_UPDATE\x10\xab\xbd\x03\x12+\n%ASSESS_CODING_GAP_COMMAND__PRE_COMMIT\x10\xac\xbd\x03\x12,\n&ASSESS_CODING_GAP_COMMAND__POST_COMMIT\x10\xad\xbd\x03\x12+\n%ASSESS_CODING_GAP_COMMAND__PRE_DELETE\x10\xae\xbd\x03\x12,\n&ASSESS_CODING_GAP_COMMAND__POST_DELETE\x10\xaf\xbd\x03\x12\x33\n-ASSESS_CODING_GAP_COMMAND__PRE_ENTER_IN_ERROR\x10\xb0\xbd\x03\x12\x34\n.ASSESS_CODING_GAP_COMMAND__POST_ENTER_IN_ERROR\x10\xb1\xbd\x03\x12\x33\n-ASSESS_CODING_GAP_COMMAND__PRE_EXECUTE_ACTION\x10\xb2\xbd\x03\x12\x34\n.ASSESS_CODING_GAP_COMMAND__POST_EXECUTE_ACTION\x10\xb3\xbd\x03\x12\x38\n2ASSESS_CODING_GAP_COMMAND__POST_INSERTED_INTO_NOTE\x10\xb6\xbd\x03\x12-\n\'ASSESS_CODING_GAP__DIAGNOSE__PRE_SEARCH\x10\xb4\xbd\x03\x12.\n(ASSESS_CODING_GAP__DIAGNOSE__POST_SEARCH\x10\xb5\xbd\x03\x12.\n(CREATE_CODING_GAP_COMMAND__PRE_ORIGINATE\x10\x90\xc5\x03\x12/\n)CREATE_CODING_GAP_COMMAND__POST_ORIGINATE\x10\x91\xc5\x03\x12+\n%CREATE_CODING_GAP_COMMAND__PRE_UPDATE\x10\x92\xc5\x03\x12,\n&CREATE_CODING_GAP_COMMAND__POST_UPDATE\x10\x93\xc5\x03\x12+\n%CREATE_CODING_GAP_COMMAND__PRE_COMMIT\x10\x94\xc5\x03\x12,\n&CREATE_CODING_GAP_COMMAND__POST_COMMIT\x10\x95\xc5\x03\x12+\n%CREATE_CODING_GAP_COMMAND__PRE_DELETE\x10\x96\xc5\x03\x12,\n&CREATE_CODING_GAP_COMMAND__POST_DELETE\x10\x97\xc5\x03\x12\x33\n-CREATE_CODING_GAP_COMMAND__PRE_ENTER_IN_ERROR\x10\x98\xc5\x03\x12\x34\n.CREATE_CODING_GAP_COMMAND__POST_ENTER_IN_ERROR\x10\x99\xc5\x03\x12\x33\n-CREATE_CODING_GAP_COMMAND__PRE_EXECUTE_ACTION\x10\x9a\xc5\x03\x12\x34\n.CREATE_CODING_GAP_COMMAND__POST_EXECUTE_ACTION\x10\x9b\xc5\x03\x12\x38\n2CREATE_CODING_GAP_COMMAND__POST_INSERTED_INTO_NOTE\x10\x9e\xc5\x03\x12-\n\'CREATE_CODING_GAP__DIAGNOSE__PRE_SEARCH\x10\x9c\xc5\x03\x12.\n(CREATE_CODING_GAP__DIAGNOSE__POST_SEARCH\x10\x9d\xc5\x03\x12\x30\n*VALIDATE_CODING_GAP_COMMAND__PRE_ORIGINATE\x10\xf8\xcc\x03\x12\x31\n+VALIDATE_CODING_GAP_COMMAND__POST_ORIGINATE\x10\xf9\xcc\x03\x12-\n\'VALIDATE_CODING_GAP_COMMAND__PRE_UPDATE\x10\xfa\xcc\x03\x12.\n(VALIDATE_CODING_GAP_COMMAND__POST_UPDATE\x10\xfb\xcc\x03\x12-\n\'VALIDATE_CODING_GAP_COMMAND__PRE_COMMIT\x10\xfc\xcc\x03\x12.\n(VALIDATE_CODING_GAP_COMMAND__POST_COMMIT\x10\xfd\xcc\x03\x12-\n\'VALIDATE_CODING_GAP_COMMAND__PRE_DELETE\x10\xfe\xcc\x03\x12.\n(VALIDATE_CODING_GAP_COMMAND__POST_DELETE\x10\xff\xcc\x03\x12\x35\n/VALIDATE_CODING_GAP_COMMAND__PRE_ENTER_IN_ERROR\x10\x80\xcd\x03\x12\x36\n0VALIDATE_CODING_GAP_COMMAND__POST_ENTER_IN_ERROR\x10\x81\xcd\x03\x12\x35\n/VALIDATE_CODING_GAP_COMMAND__PRE_EXECUTE_ACTION\x10\x82\xcd\x03\x12\x36\n0VALIDATE_CODING_GAP_COMMAND__POST_EXECUTE_ACTION\x10\x83\xcd\x03\x12:\n4VALIDATE_CODING_GAP_COMMAND__POST_INSERTED_INTO_NOTE\x10\x84\xcd\x03\x12-\n\'DEFER_CODING_GAP_COMMAND__PRE_ORIGINATE\x10\xe0\xd4\x03\x12.\n(DEFER_CODING_GAP_COMMAND__POST_ORIGINATE\x10\xe1\xd4\x03\x12*\n$DEFER_CODING_GAP_COMMAND__PRE_UPDATE\x10\xe2\xd4\x03\x12+\n%DEFER_CODING_GAP_COMMAND__POST_UPDATE\x10\xe3\xd4\x03\x12*\n$DEFER_CODING_GAP_COMMAND__PRE_COMMIT\x10\xe4\xd4\x03\x12+\n%DEFER_CODING_GAP_COMMAND__POST_COMMIT\x10\xe5\xd4\x03\x12*\n$DEFER_CODING_GAP_COMMAND__PRE_DELETE\x10\xe6\xd4\x03\x12+\n%DEFER_CODING_GAP_COMMAND__POST_DELETE\x10\xe7\xd4\x03\x12\x32\n,DEFER_CODING_GAP_COMMAND__PRE_ENTER_IN_ERROR\x10\xe8\xd4\x03\x12\x33\n-DEFER_CODING_GAP_COMMAND__POST_ENTER_IN_ERROR\x10\xe9\xd4\x03\x12\x32\n,DEFER_CODING_GAP_COMMAND__PRE_EXECUTE_ACTION\x10\xea\xd4\x03\x12\x33\n-DEFER_CODING_GAP_COMMAND__POST_EXECUTE_ACTION\x10\xeb\xd4\x03\x12\x37\n1DEFER_CODING_GAP_COMMAND__POST_INSERTED_INTO_NOTE\x10\xec\xd4\x03\x12\x1d\n\x17SHOW_NOTE_HEADER_BUTTON\x10\xf0\xa2\x04\x12\x1d\n\x17SHOW_NOTE_FOOTER_BUTTON\x10\xf1\xa2\x04\x12\x1b\n\x15\x41\x43TION_BUTTON_CLICKED\x10\xf2\xa2\x04\x12\x1f\n\x19PATIENT_CHART__CONDITIONS\x10\xa0\x8d\x06\x12\x32\n,PATIENT_CHART_SUMMARY__SECTION_CONFIGURATION\x10\xa1\x8d\x06\x12,\n&PATIENT_PROFILE__SECTION_CONFIGURATION\x10\xa2\x8d\x06\x12\x30\n*PATIENT_PROFILE__ADD_PHARMACY__POST_SEARCH\x10\xa3\x8d\x06\x12\x17\n\x11\x43LAIM__CONDITIONS\x10\x88\x95\x06\x12\x14\n\x0ePLUGIN_CREATED\x10\xf0\x9c\x06\x12\x14\n\x0ePLUGIN_UPDATED\x10\xf1\x9c\x06\x12\x1a\n\x14\x41PPLICATION__ON_OPEN\x10\xd8\xa4\x06\x12\x1f\n\x19PATIENT_PORTAL__GET_FORMS\x10\xb0\xdb\x06\x12*\n$PATIENT_PORTAL__APPOINTMENT_CANCELED\x10\xb1\xdb\x06\x12-\n\'PATIENT_PORTAL__APPOINTMENT_RESCHEDULED\x10\xb2\xdb\x06\x12\x31\n+PATIENT_PORTAL__APPOINTMENT_CAN_BE_CANCELED\x10\xb3\xdb\x06\x12\x34\n.PATIENT_PORTAL__APPOINTMENT_CAN_BE_RESCHEDULED\x10\xb4\xdb\x06\x12\x36\n0PATIENT_PORTAL__APPOINTMENTS__SLOTS__POST_SEARCH\x10\xb5\xdb\x06\x12\x46\n@PATIENT_PORTAL__APPOINTMENTS__FORM_APPOINTMENT_TYPES__PRE_SEARCH\x10\xb6\xdb\x06\x12G\nAPATIENT_PORTAL__APPOINTMENTS__FORM_APPOINTMENT_TYPES__POST_SEARCH\x10\xb7\xdb\x06\x12>\n8PATIENT_PORTAL__APPOINTMENTS__FORM_LOCATIONS__PRE_SEARCH\x10\xb8\xdb\x06\x12?\n9PATIENT_PORTAL__APPOINTMENTS__FORM_LOCATIONS__POST_SEARCH\x10\xb9\xdb\x06\x12>\n8PATIENT_PORTAL__APPOINTMENTS__FORM_PROVIDERS__PRE_SEARCH\x10\xba\xdb\x06\x12?\n9PATIENT_PORTAL__APPOINTMENTS__FORM_PROVIDERS__POST_SEARCH\x10\xbb\xdb\x06\x12\x37\n1PATIENT_PORTAL__APPOINTMENT_CAN_SHOW_MEETING_LINK\x10\xbc\xdb\x06\x12\x33\n-PATIENT_PORTAL__GET_APPLICATION_CONFIGURATION\x10\xbd\xdb\x06\x12(\n\"PATIENT_PORTAL__MENU_CONFIGURATION\x10\x94\xdc\x06\x12*\n$PATIENT_PORTAL__WIDGET_CONFIGURATION\x10\x95\xdc\x06\x12;\n5SHOW_CHART_SUMMARY_SOCIAL_DETERMINANTS_SECTION_BUTTON\x10\xc0\xa9\x07\x12-\n\'SHOW_CHART_SUMMARY_GOALS_SECTION_BUTTON\x10\xc1\xa9\x07\x12\x32\n,SHOW_CHART_SUMMARY_CONDITIONS_SECTION_BUTTON\x10\xc2\xa9\x07\x12\x33\n-SHOW_CHART_SUMMARY_MEDICATIONS_SECTION_BUTTON\x10\xc3\xa9\x07\x12\x31\n+SHOW_CHART_SUMMARY_ALLERGIES_SECTION_BUTTON\x10\xc4\xa9\x07\x12\x32\n,SHOW_CHART_SUMMARY_CARE_TEAMS_SECTION_BUTTON\x10\xc5\xa9\x07\x12.\n(SHOW_CHART_SUMMARY_VITALS_SECTION_BUTTON\x10\xc6\xa9\x07\x12\x35\n/SHOW_CHART_SUMMARY_IMMUNIZATIONS_SECTION_BUTTON\x10\xc7\xa9\x07\x12\x38\n2SHOW_CHART_SUMMARY_SURGICAL_HISTORY_SECTION_BUTTON\x10\xc8\xa9\x07\x12\x36\n0SHOW_CHART_SUMMARY_FAMILY_HISTORY_SECTION_BUTTON\x10\xc9\xa9\x07\x12\x33\n-SHOW_CHART_SUMMARY_CODING_GAPS_SECTION_BUTTON\x10\xca\xa9\x07\x12\x1d\n\x17SIMPLE_API_AUTHENTICATE\x10\xd0\xf7\x07\x12\x18\n\x12SIMPLE_API_REQUEST\x10\xd1\xf7\x07\x62\x06proto3')
|
|
19
19
|
|
|
20
20
|
_globals = globals()
|
|
21
21
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
@@ -23,7 +23,7 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'canvas_generated.messages.e
|
|
|
23
23
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
|
24
24
|
DESCRIPTOR._options = None
|
|
25
25
|
_globals['_EVENTTYPE']._serialized_start=256
|
|
26
|
-
_globals['_EVENTTYPE']._serialized_end=
|
|
26
|
+
_globals['_EVENTTYPE']._serialized_end=34542
|
|
27
27
|
_globals['_EVENT']._serialized_start=91
|
|
28
28
|
_globals['_EVENT']._serialized_end=185
|
|
29
29
|
_globals['_EVENTRESPONSE']._serialized_start=187
|
|
@@ -120,6 +120,7 @@ class EventType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
|
120
120
|
ADJUST_PRESCRIPTION_COMMAND__POST_ENTER_IN_ERROR: _ClassVar[EventType]
|
|
121
121
|
ADJUST_PRESCRIPTION_COMMAND__PRE_EXECUTE_ACTION: _ClassVar[EventType]
|
|
122
122
|
ADJUST_PRESCRIPTION_COMMAND__POST_EXECUTE_ACTION: _ClassVar[EventType]
|
|
123
|
+
ADJUST_PRESCRIPTION_COMMAND__POST_INSERTED_INTO_NOTE: _ClassVar[EventType]
|
|
123
124
|
ADJUST_PRESCRIPTION__PRESCRIBE__POST_SEARCH: _ClassVar[EventType]
|
|
124
125
|
ADJUST_PRESCRIPTION__PRESCRIBE__PRE_SEARCH: _ClassVar[EventType]
|
|
125
126
|
ADJUST_PRESCRIPTION__INDICATIONS__PRE_SEARCH: _ClassVar[EventType]
|
|
@@ -140,6 +141,7 @@ class EventType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
|
140
141
|
ALLERGY_COMMAND__POST_ENTER_IN_ERROR: _ClassVar[EventType]
|
|
141
142
|
ALLERGY_COMMAND__PRE_EXECUTE_ACTION: _ClassVar[EventType]
|
|
142
143
|
ALLERGY_COMMAND__POST_EXECUTE_ACTION: _ClassVar[EventType]
|
|
144
|
+
ALLERGY_COMMAND__POST_INSERTED_INTO_NOTE: _ClassVar[EventType]
|
|
143
145
|
ALLERGY__ALLERGY__PRE_SEARCH: _ClassVar[EventType]
|
|
144
146
|
ALLERGY__ALLERGY__POST_SEARCH: _ClassVar[EventType]
|
|
145
147
|
ASSESS_COMMAND__PRE_ORIGINATE: _ClassVar[EventType]
|
|
@@ -154,6 +156,7 @@ class EventType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
|
154
156
|
ASSESS_COMMAND__POST_ENTER_IN_ERROR: _ClassVar[EventType]
|
|
155
157
|
ASSESS_COMMAND__PRE_EXECUTE_ACTION: _ClassVar[EventType]
|
|
156
158
|
ASSESS_COMMAND__POST_EXECUTE_ACTION: _ClassVar[EventType]
|
|
159
|
+
ASSESS_COMMAND__POST_INSERTED_INTO_NOTE: _ClassVar[EventType]
|
|
157
160
|
ASSESS__CONDITION__POST_SEARCH: _ClassVar[EventType]
|
|
158
161
|
ASSESS__CONDITION__PRE_SEARCH: _ClassVar[EventType]
|
|
159
162
|
CANCEL_PRESCRIPTION_COMMAND__PRE_ORIGINATE: _ClassVar[EventType]
|
|
@@ -259,6 +262,7 @@ class EventType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
|
259
262
|
FOLLOW_UP_COMMAND__POST_ENTER_IN_ERROR: _ClassVar[EventType]
|
|
260
263
|
FOLLOW_UP_COMMAND__PRE_EXECUTE_ACTION: _ClassVar[EventType]
|
|
261
264
|
FOLLOW_UP_COMMAND__POST_EXECUTE_ACTION: _ClassVar[EventType]
|
|
265
|
+
FOLLOW_UP_COMMAND__POST_INSERTED_INTO_NOTE: _ClassVar[EventType]
|
|
262
266
|
FOLLOW_UP__CODING__PRE_SEARCH: _ClassVar[EventType]
|
|
263
267
|
FOLLOW_UP__CODING__POST_SEARCH: _ClassVar[EventType]
|
|
264
268
|
FOLLOW_UP__NOTE_TYPE__PRE_SEARCH: _ClassVar[EventType]
|
|
@@ -516,14 +520,15 @@ class EventType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
|
516
520
|
REFER_COMMAND__POST_ENTER_IN_ERROR: _ClassVar[EventType]
|
|
517
521
|
REFER_COMMAND__PRE_EXECUTE_ACTION: _ClassVar[EventType]
|
|
518
522
|
REFER_COMMAND__POST_EXECUTE_ACTION: _ClassVar[EventType]
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
523
|
+
REFER_COMMAND__POST_INSERTED_INTO_NOTE: _ClassVar[EventType]
|
|
524
|
+
REFER__REFER_TO__POST_SEARCH: _ClassVar[EventType]
|
|
525
|
+
REFER__REFER_TO__PRE_SEARCH: _ClassVar[EventType]
|
|
526
|
+
REFER__INDICATIONS__POST_SEARCH: _ClassVar[EventType]
|
|
527
|
+
REFER__INDICATIONS__PRE_SEARCH: _ClassVar[EventType]
|
|
528
|
+
REFER__DOCUMENTS_TO_INCLUDE__POST_SEARCH: _ClassVar[EventType]
|
|
529
|
+
REFER__DOCUMENTS_TO_INCLUDE__PRE_SEARCH: _ClassVar[EventType]
|
|
530
|
+
REFER__LINKED_ITEMS__POST_SEARCH: _ClassVar[EventType]
|
|
531
|
+
REFER__LINKED_ITEMS_INCLUDE__PRE_SEARCH: _ClassVar[EventType]
|
|
527
532
|
REFILL_COMMAND__PRE_ORIGINATE: _ClassVar[EventType]
|
|
528
533
|
REFILL_COMMAND__POST_ORIGINATE: _ClassVar[EventType]
|
|
529
534
|
REFILL_COMMAND__PRE_UPDATE: _ClassVar[EventType]
|
|
@@ -570,6 +575,7 @@ class EventType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
|
570
575
|
RESOLVE_CONDITION_COMMAND__POST_ENTER_IN_ERROR: _ClassVar[EventType]
|
|
571
576
|
RESOLVE_CONDITION_COMMAND__PRE_EXECUTE_ACTION: _ClassVar[EventType]
|
|
572
577
|
RESOLVE_CONDITION_COMMAND__POST_EXECUTE_ACTION: _ClassVar[EventType]
|
|
578
|
+
RESOLVE_CONDITION_COMMAND__POST_INSERTED_INTO_NOTE: _ClassVar[EventType]
|
|
573
579
|
RESOLVE_CONDITION__CONDITION__PRE_SEARCH: _ClassVar[EventType]
|
|
574
580
|
RESOLVE_CONDITION__CONDITION__POST_SEARCH: _ClassVar[EventType]
|
|
575
581
|
ROS_COMMAND__PRE_ORIGINATE: _ClassVar[EventType]
|
|
@@ -675,6 +681,7 @@ class EventType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
|
675
681
|
UPDATE_DIAGNOSIS_COMMAND__POST_ENTER_IN_ERROR: _ClassVar[EventType]
|
|
676
682
|
UPDATE_DIAGNOSIS_COMMAND__PRE_EXECUTE_ACTION: _ClassVar[EventType]
|
|
677
683
|
UPDATE_DIAGNOSIS_COMMAND__POST_EXECUTE_ACTION: _ClassVar[EventType]
|
|
684
|
+
UPDATE_DIAGNOSIS_COMMAND__POST_INSERTED_INTO_NOTE: _ClassVar[EventType]
|
|
678
685
|
UPDATE_DIAGNOSIS__CONDITION__PRE_SEARCH: _ClassVar[EventType]
|
|
679
686
|
UPDATE_DIAGNOSIS__CONDITION__POST_SEARCH: _ClassVar[EventType]
|
|
680
687
|
UPDATE_DIAGNOSIS__NEW_CONDITION__PRE_SEARCH: _ClassVar[EventType]
|
|
@@ -914,6 +921,7 @@ ADJUST_PRESCRIPTION_COMMAND__PRE_ENTER_IN_ERROR: EventType
|
|
|
914
921
|
ADJUST_PRESCRIPTION_COMMAND__POST_ENTER_IN_ERROR: EventType
|
|
915
922
|
ADJUST_PRESCRIPTION_COMMAND__PRE_EXECUTE_ACTION: EventType
|
|
916
923
|
ADJUST_PRESCRIPTION_COMMAND__POST_EXECUTE_ACTION: EventType
|
|
924
|
+
ADJUST_PRESCRIPTION_COMMAND__POST_INSERTED_INTO_NOTE: EventType
|
|
917
925
|
ADJUST_PRESCRIPTION__PRESCRIBE__POST_SEARCH: EventType
|
|
918
926
|
ADJUST_PRESCRIPTION__PRESCRIBE__PRE_SEARCH: EventType
|
|
919
927
|
ADJUST_PRESCRIPTION__INDICATIONS__PRE_SEARCH: EventType
|
|
@@ -934,6 +942,7 @@ ALLERGY_COMMAND__PRE_ENTER_IN_ERROR: EventType
|
|
|
934
942
|
ALLERGY_COMMAND__POST_ENTER_IN_ERROR: EventType
|
|
935
943
|
ALLERGY_COMMAND__PRE_EXECUTE_ACTION: EventType
|
|
936
944
|
ALLERGY_COMMAND__POST_EXECUTE_ACTION: EventType
|
|
945
|
+
ALLERGY_COMMAND__POST_INSERTED_INTO_NOTE: EventType
|
|
937
946
|
ALLERGY__ALLERGY__PRE_SEARCH: EventType
|
|
938
947
|
ALLERGY__ALLERGY__POST_SEARCH: EventType
|
|
939
948
|
ASSESS_COMMAND__PRE_ORIGINATE: EventType
|
|
@@ -948,6 +957,7 @@ ASSESS_COMMAND__PRE_ENTER_IN_ERROR: EventType
|
|
|
948
957
|
ASSESS_COMMAND__POST_ENTER_IN_ERROR: EventType
|
|
949
958
|
ASSESS_COMMAND__PRE_EXECUTE_ACTION: EventType
|
|
950
959
|
ASSESS_COMMAND__POST_EXECUTE_ACTION: EventType
|
|
960
|
+
ASSESS_COMMAND__POST_INSERTED_INTO_NOTE: EventType
|
|
951
961
|
ASSESS__CONDITION__POST_SEARCH: EventType
|
|
952
962
|
ASSESS__CONDITION__PRE_SEARCH: EventType
|
|
953
963
|
CANCEL_PRESCRIPTION_COMMAND__PRE_ORIGINATE: EventType
|
|
@@ -1053,6 +1063,7 @@ FOLLOW_UP_COMMAND__PRE_ENTER_IN_ERROR: EventType
|
|
|
1053
1063
|
FOLLOW_UP_COMMAND__POST_ENTER_IN_ERROR: EventType
|
|
1054
1064
|
FOLLOW_UP_COMMAND__PRE_EXECUTE_ACTION: EventType
|
|
1055
1065
|
FOLLOW_UP_COMMAND__POST_EXECUTE_ACTION: EventType
|
|
1066
|
+
FOLLOW_UP_COMMAND__POST_INSERTED_INTO_NOTE: EventType
|
|
1056
1067
|
FOLLOW_UP__CODING__PRE_SEARCH: EventType
|
|
1057
1068
|
FOLLOW_UP__CODING__POST_SEARCH: EventType
|
|
1058
1069
|
FOLLOW_UP__NOTE_TYPE__PRE_SEARCH: EventType
|
|
@@ -1310,14 +1321,15 @@ REFER_COMMAND__PRE_ENTER_IN_ERROR: EventType
|
|
|
1310
1321
|
REFER_COMMAND__POST_ENTER_IN_ERROR: EventType
|
|
1311
1322
|
REFER_COMMAND__PRE_EXECUTE_ACTION: EventType
|
|
1312
1323
|
REFER_COMMAND__POST_EXECUTE_ACTION: EventType
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1324
|
+
REFER_COMMAND__POST_INSERTED_INTO_NOTE: EventType
|
|
1325
|
+
REFER__REFER_TO__POST_SEARCH: EventType
|
|
1326
|
+
REFER__REFER_TO__PRE_SEARCH: EventType
|
|
1327
|
+
REFER__INDICATIONS__POST_SEARCH: EventType
|
|
1328
|
+
REFER__INDICATIONS__PRE_SEARCH: EventType
|
|
1329
|
+
REFER__DOCUMENTS_TO_INCLUDE__POST_SEARCH: EventType
|
|
1330
|
+
REFER__DOCUMENTS_TO_INCLUDE__PRE_SEARCH: EventType
|
|
1331
|
+
REFER__LINKED_ITEMS__POST_SEARCH: EventType
|
|
1332
|
+
REFER__LINKED_ITEMS_INCLUDE__PRE_SEARCH: EventType
|
|
1321
1333
|
REFILL_COMMAND__PRE_ORIGINATE: EventType
|
|
1322
1334
|
REFILL_COMMAND__POST_ORIGINATE: EventType
|
|
1323
1335
|
REFILL_COMMAND__PRE_UPDATE: EventType
|
|
@@ -1364,6 +1376,7 @@ RESOLVE_CONDITION_COMMAND__PRE_ENTER_IN_ERROR: EventType
|
|
|
1364
1376
|
RESOLVE_CONDITION_COMMAND__POST_ENTER_IN_ERROR: EventType
|
|
1365
1377
|
RESOLVE_CONDITION_COMMAND__PRE_EXECUTE_ACTION: EventType
|
|
1366
1378
|
RESOLVE_CONDITION_COMMAND__POST_EXECUTE_ACTION: EventType
|
|
1379
|
+
RESOLVE_CONDITION_COMMAND__POST_INSERTED_INTO_NOTE: EventType
|
|
1367
1380
|
RESOLVE_CONDITION__CONDITION__PRE_SEARCH: EventType
|
|
1368
1381
|
RESOLVE_CONDITION__CONDITION__POST_SEARCH: EventType
|
|
1369
1382
|
ROS_COMMAND__PRE_ORIGINATE: EventType
|
|
@@ -1469,6 +1482,7 @@ UPDATE_DIAGNOSIS_COMMAND__PRE_ENTER_IN_ERROR: EventType
|
|
|
1469
1482
|
UPDATE_DIAGNOSIS_COMMAND__POST_ENTER_IN_ERROR: EventType
|
|
1470
1483
|
UPDATE_DIAGNOSIS_COMMAND__PRE_EXECUTE_ACTION: EventType
|
|
1471
1484
|
UPDATE_DIAGNOSIS_COMMAND__POST_EXECUTE_ACTION: EventType
|
|
1485
|
+
UPDATE_DIAGNOSIS_COMMAND__POST_INSERTED_INTO_NOTE: EventType
|
|
1472
1486
|
UPDATE_DIAGNOSIS__CONDITION__PRE_SEARCH: EventType
|
|
1473
1487
|
UPDATE_DIAGNOSIS__CONDITION__POST_SEARCH: EventType
|
|
1474
1488
|
UPDATE_DIAGNOSIS__NEW_CONDITION__PRE_SEARCH: EventType
|
|
@@ -39,6 +39,9 @@ class ProtocolCard(_BaseEffect):
|
|
|
39
39
|
class Status(Enum):
|
|
40
40
|
DUE = "due"
|
|
41
41
|
SATISFIED = "satisfied"
|
|
42
|
+
NOT_APPLICABLE = "not_applicable"
|
|
43
|
+
PENDING = "pending"
|
|
44
|
+
NOT_RELEVANT = "not_relevant"
|
|
42
45
|
|
|
43
46
|
class Meta:
|
|
44
47
|
effect_type = EffectType.ADD_OR_UPDATE_PROTOCOL_CARD
|
canvas_sdk/handlers/base.py
CHANGED
|
@@ -13,6 +13,7 @@ version = importlib.metadata.version("canvas")
|
|
|
13
13
|
class BaseHandler(ABC):
|
|
14
14
|
"""The class that all handlers inherit from."""
|
|
15
15
|
|
|
16
|
+
environment: dict[str, Any]
|
|
16
17
|
secrets: dict[str, Any]
|
|
17
18
|
event: Event
|
|
18
19
|
|
|
@@ -20,9 +21,11 @@ class BaseHandler(ABC):
|
|
|
20
21
|
self,
|
|
21
22
|
event: Event,
|
|
22
23
|
secrets: dict[str, Any] | None = None,
|
|
24
|
+
environment: dict[str, Any] | None = None,
|
|
23
25
|
) -> None:
|
|
24
26
|
self.event = event
|
|
25
27
|
self.secrets = secrets or {}
|
|
28
|
+
self.environment = environment or {}
|
|
26
29
|
|
|
27
30
|
@property
|
|
28
31
|
@deprecation.deprecated(
|
|
@@ -7,6 +7,9 @@ from .security import (
|
|
|
7
7
|
BasicCredentials,
|
|
8
8
|
BearerCredentials,
|
|
9
9
|
Credentials,
|
|
10
|
+
PatientSessionAuthMixin,
|
|
11
|
+
SessionCredentials,
|
|
12
|
+
StaffSessionAuthMixin,
|
|
10
13
|
)
|
|
11
14
|
|
|
12
15
|
__all__ = [
|
|
@@ -17,6 +20,9 @@ __all__ = [
|
|
|
17
20
|
"BasicCredentials",
|
|
18
21
|
"BearerCredentials",
|
|
19
22
|
"Credentials",
|
|
23
|
+
"PatientSessionAuthMixin",
|
|
24
|
+
"SessionCredentials",
|
|
20
25
|
"SimpleAPI",
|
|
21
26
|
"SimpleAPIRoute",
|
|
27
|
+
"StaffSessionAuthMixin",
|
|
22
28
|
]
|
|
@@ -9,6 +9,8 @@ from http import HTTPStatus
|
|
|
9
9
|
from typing import Any, ClassVar, Protocol, TypeVar, cast
|
|
10
10
|
from urllib.parse import parse_qsl
|
|
11
11
|
|
|
12
|
+
import sentry_sdk
|
|
13
|
+
|
|
12
14
|
from canvas_sdk.effects import Effect, EffectType
|
|
13
15
|
from canvas_sdk.effects.simple_api import JSON, JSONResponse, Response
|
|
14
16
|
from canvas_sdk.events import Event, EventType
|
|
@@ -324,6 +326,8 @@ class SimpleAPIBase(BaseHandler, ABC):
|
|
|
324
326
|
for error_line in error_line_with_newlines.split("\n"):
|
|
325
327
|
log.error(error_line)
|
|
326
328
|
|
|
329
|
+
sentry_sdk.capture_exception(exception)
|
|
330
|
+
|
|
327
331
|
return [Response(status_code=HTTPStatus.INTERNAL_SERVER_ERROR).apply()]
|
|
328
332
|
|
|
329
333
|
def _authenticate(self) -> list[Effect]:
|
|
@@ -114,6 +114,39 @@ class APIKeyCredentials(Credentials):
|
|
|
114
114
|
self.key = key
|
|
115
115
|
|
|
116
116
|
|
|
117
|
+
class SessionCredentials(Credentials):
|
|
118
|
+
"""
|
|
119
|
+
Session credentials class.
|
|
120
|
+
|
|
121
|
+
Looks for headers set by Canvas with information about the logged in user based on browser
|
|
122
|
+
cookies and session information in the Canvas database. These headers are removed if received by
|
|
123
|
+
the client and intentionally set by Canvas only if there is a valid session from an active user.
|
|
124
|
+
|
|
125
|
+
One must look at the type of user in order to understand what the id refers to – a patient or a
|
|
126
|
+
staff member.
|
|
127
|
+
|
|
128
|
+
If a SimpleAPI handler is protected by SessionCredentials, the non-presence of these headers
|
|
129
|
+
results in an unauthorized response. Users of SessionCredentials will likely wish to further
|
|
130
|
+
restrict access based on the type of user (patient or staff) and perhaps based on the roles
|
|
131
|
+
associated with the user. This logic is the concern of the implementer of the handler's
|
|
132
|
+
authenticate method.
|
|
133
|
+
"""
|
|
134
|
+
|
|
135
|
+
def __init__(self, request: "Request") -> None:
|
|
136
|
+
super().__init__(request)
|
|
137
|
+
|
|
138
|
+
if (
|
|
139
|
+
"canvas-logged-in-user-type" not in request.headers
|
|
140
|
+
or "canvas-logged-in-user-id" not in request.headers
|
|
141
|
+
):
|
|
142
|
+
raise InvalidCredentialsError
|
|
143
|
+
|
|
144
|
+
self.logged_in_user = {
|
|
145
|
+
"id": request.headers.get("canvas-logged-in-user-id"),
|
|
146
|
+
"type": request.headers.get("canvas-logged-in-user-type"),
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
|
|
117
150
|
class AuthSchemeMixin(Protocol):
|
|
118
151
|
"""Protocol for authentication scheme mixins."""
|
|
119
152
|
|
|
@@ -182,3 +215,35 @@ class APIKeyAuthMixin(AuthSchemeMixin):
|
|
|
182
215
|
raise InvalidCredentialsError
|
|
183
216
|
|
|
184
217
|
return True
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
class StaffSessionAuthMixin(AuthSchemeMixin):
|
|
221
|
+
"""
|
|
222
|
+
Staff Session authentication scheme mixin.
|
|
223
|
+
|
|
224
|
+
Provides an implementation of the authenticate method that ensures only logged in staff members
|
|
225
|
+
can access the urls provided by this handler. It only cares that they are a staff, with no
|
|
226
|
+
regard to roles or any other permissioning schemes.
|
|
227
|
+
"""
|
|
228
|
+
|
|
229
|
+
def authenticate(self, credentials: SessionCredentials) -> bool: # type: ignore[override]
|
|
230
|
+
"""Authenticate the request."""
|
|
231
|
+
if credentials.logged_in_user["type"] != "Staff":
|
|
232
|
+
raise InvalidCredentialsError
|
|
233
|
+
return True
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
class PatientSessionAuthMixin(AuthSchemeMixin):
|
|
237
|
+
"""
|
|
238
|
+
Patient Session authentication scheme mixin.
|
|
239
|
+
|
|
240
|
+
Provides an implementation of the authenticate method that ensures only logged in patients can
|
|
241
|
+
access the urls provided by this handler. It only cares that they are a patient, with no regard
|
|
242
|
+
any other information.
|
|
243
|
+
"""
|
|
244
|
+
|
|
245
|
+
def authenticate(self, credentials: SessionCredentials) -> bool: # type: ignore[override]
|
|
246
|
+
"""Authenticate the request."""
|
|
247
|
+
if credentials.logged_in_user["type"] != "Patient":
|
|
248
|
+
raise InvalidCredentialsError
|
|
249
|
+
return True
|
|
@@ -37,6 +37,9 @@ from canvas_sdk.handlers.simple_api.security import (
|
|
|
37
37
|
BasicCredentials,
|
|
38
38
|
BearerCredentials,
|
|
39
39
|
Credentials,
|
|
40
|
+
PatientSessionAuthMixin,
|
|
41
|
+
SessionCredentials,
|
|
42
|
+
StaffSessionAuthMixin,
|
|
40
43
|
)
|
|
41
44
|
from canvas_sdk.handlers.simple_api.tools import (
|
|
42
45
|
CaseInsensitiveMultiDict,
|
|
@@ -890,6 +893,13 @@ def custom_headers(api_key: str, app_key: str) -> dict[str, str]:
|
|
|
890
893
|
return {"API-Key": api_key, "App-Key": app_key}
|
|
891
894
|
|
|
892
895
|
|
|
896
|
+
def session_headers(id: str, type: str) -> dict[str, str]:
|
|
897
|
+
"""
|
|
898
|
+
Given an id and a type, return headers that include the expected session based auth headers.
|
|
899
|
+
"""
|
|
900
|
+
return {"canvas-logged-in-user-type": type, "canvas-logged-in-user-id": id}
|
|
901
|
+
|
|
902
|
+
|
|
893
903
|
USERNAME = uuid4().hex
|
|
894
904
|
PASSWORD = uuid4().hex
|
|
895
905
|
TOKEN = uuid4().hex
|
|
@@ -915,6 +925,11 @@ APP_KEY = uuid4().hex
|
|
|
915
925
|
lambda _, credentials: credentials.key == API_KEY,
|
|
916
926
|
api_key_headers(API_KEY),
|
|
917
927
|
),
|
|
928
|
+
(
|
|
929
|
+
SessionCredentials,
|
|
930
|
+
lambda _, credentials: credentials.logged_in_user["type"] == "Staff",
|
|
931
|
+
session_headers("abc123", "Staff"),
|
|
932
|
+
),
|
|
918
933
|
(
|
|
919
934
|
Credentials,
|
|
920
935
|
lambda request, _: request.headers.get("API-Key") == API_KEY
|
|
@@ -922,7 +937,7 @@ APP_KEY = uuid4().hex
|
|
|
922
937
|
custom_headers(API_KEY, APP_KEY),
|
|
923
938
|
),
|
|
924
939
|
],
|
|
925
|
-
ids=["basic", "bearer", "API key", "custom"],
|
|
940
|
+
ids=["basic", "bearer", "API key", "custom", "session"],
|
|
926
941
|
)
|
|
927
942
|
def authenticated_route(request: SubRequest) -> SimpleNamespace:
|
|
928
943
|
"""
|
|
@@ -998,8 +1013,9 @@ def test_authentication_failure(
|
|
|
998
1013
|
(BearerCredentials, bearer_headers(TOKEN)),
|
|
999
1014
|
(APIKeyCredentials, api_key_headers(API_KEY)),
|
|
1000
1015
|
(Credentials, custom_headers(API_KEY, APP_KEY)),
|
|
1016
|
+
(SessionCredentials, session_headers("abc123", "Patient")),
|
|
1001
1017
|
],
|
|
1002
|
-
ids=["basic", "bearer", "API key", "custom"],
|
|
1018
|
+
ids=["basic", "bearer", "API key", "custom", "session"],
|
|
1003
1019
|
)
|
|
1004
1020
|
def test_authentication_exception(
|
|
1005
1021
|
credentials_cls: type[Credentials], headers: Mapping[str, str]
|
|
@@ -1079,6 +1095,40 @@ def test_authentication_exception(
|
|
|
1079
1095
|
).apply()
|
|
1080
1096
|
],
|
|
1081
1097
|
),
|
|
1098
|
+
(
|
|
1099
|
+
StaffSessionAuthMixin,
|
|
1100
|
+
{},
|
|
1101
|
+
session_headers("abc123", "Staff"),
|
|
1102
|
+
[Effect(type=EffectType.CREATE_TASK, payload="create task")],
|
|
1103
|
+
),
|
|
1104
|
+
(
|
|
1105
|
+
StaffSessionAuthMixin,
|
|
1106
|
+
{},
|
|
1107
|
+
session_headers("abc123", "Patient"),
|
|
1108
|
+
[
|
|
1109
|
+
JSONResponse(
|
|
1110
|
+
content={"error": "Provided credentials are invalid"},
|
|
1111
|
+
status_code=HTTPStatus.UNAUTHORIZED,
|
|
1112
|
+
).apply()
|
|
1113
|
+
],
|
|
1114
|
+
),
|
|
1115
|
+
(
|
|
1116
|
+
PatientSessionAuthMixin,
|
|
1117
|
+
{},
|
|
1118
|
+
session_headers("abc123", "Patient"),
|
|
1119
|
+
[Effect(type=EffectType.CREATE_TASK, payload="create task")],
|
|
1120
|
+
),
|
|
1121
|
+
(
|
|
1122
|
+
PatientSessionAuthMixin,
|
|
1123
|
+
{},
|
|
1124
|
+
session_headers("abc123", "Staff"),
|
|
1125
|
+
[
|
|
1126
|
+
JSONResponse(
|
|
1127
|
+
content={"error": "Provided credentials are invalid"},
|
|
1128
|
+
status_code=HTTPStatus.UNAUTHORIZED,
|
|
1129
|
+
).apply()
|
|
1130
|
+
],
|
|
1131
|
+
),
|
|
1082
1132
|
],
|
|
1083
1133
|
ids=[
|
|
1084
1134
|
"basic valid",
|
|
@@ -1087,6 +1137,10 @@ def test_authentication_exception(
|
|
|
1087
1137
|
"API key valid",
|
|
1088
1138
|
"API key invalid",
|
|
1089
1139
|
"API key missing secret",
|
|
1140
|
+
"Staff session valid",
|
|
1141
|
+
"Staff session invalid",
|
|
1142
|
+
"Patient session valid",
|
|
1143
|
+
"Patient session invalid",
|
|
1090
1144
|
],
|
|
1091
1145
|
)
|
|
1092
1146
|
def test_authentication_mixins(
|
canvas_sdk/v1/data/user.py
CHANGED
logger/logger.py
CHANGED
|
@@ -2,6 +2,8 @@ import logging
|
|
|
2
2
|
import os
|
|
3
3
|
from typing import Any
|
|
4
4
|
|
|
5
|
+
import redis
|
|
6
|
+
|
|
5
7
|
from pubsub.pubsub import Publisher
|
|
6
8
|
|
|
7
9
|
|
|
@@ -15,7 +17,11 @@ class PubSubLogHandler(logging.Handler):
|
|
|
15
17
|
def emit(self, record: Any) -> None:
|
|
16
18
|
"""Publishes the log message to the pub/sub channel."""
|
|
17
19
|
message = self.format(record)
|
|
18
|
-
|
|
20
|
+
|
|
21
|
+
try:
|
|
22
|
+
self.publisher.publish(message)
|
|
23
|
+
except redis.ConnectionError as e:
|
|
24
|
+
print(f"PubSubLogHandler: failed to log message due to redis error: {e}")
|
|
19
25
|
|
|
20
26
|
|
|
21
27
|
class PluginLogger:
|
plugin_runner/installation.py
CHANGED
|
@@ -11,6 +11,7 @@ from urllib import parse
|
|
|
11
11
|
|
|
12
12
|
import psycopg
|
|
13
13
|
import requests
|
|
14
|
+
import sentry_sdk
|
|
14
15
|
from psycopg import Connection
|
|
15
16
|
from psycopg.rows import dict_row
|
|
16
17
|
|
|
@@ -149,9 +150,11 @@ def install_plugin(plugin_name: str, attributes: PluginAttributes) -> None:
|
|
|
149
150
|
extract_plugin(plugin_file_path, plugin_installation_path)
|
|
150
151
|
|
|
151
152
|
install_plugin_secrets(plugin_name=plugin_name, secrets=attributes["secrets"])
|
|
152
|
-
except Exception as
|
|
153
|
+
except Exception as e:
|
|
153
154
|
log.error(f'Failed to install plugin "{plugin_name}", version {attributes["version"]}')
|
|
154
|
-
|
|
155
|
+
sentry_sdk.capture_exception(e)
|
|
156
|
+
|
|
157
|
+
raise PluginInstallationError() from e
|
|
155
158
|
|
|
156
159
|
|
|
157
160
|
def extract_plugin(plugin_file_path: Path, plugin_installation_path: Path) -> None:
|
|
@@ -166,9 +169,11 @@ def extract_plugin(plugin_file_path: Path, plugin_installation_path: Path) -> No
|
|
|
166
169
|
with open(plugin_file_path, "rb") as file:
|
|
167
170
|
archive = tarfile.TarFile.open(fileobj=file)
|
|
168
171
|
archive.extractall(plugin_installation_path, filter="data")
|
|
169
|
-
except tarfile.ReadError as
|
|
172
|
+
except tarfile.ReadError as e:
|
|
170
173
|
log.error(f"Unreadable tar archive: '{plugin_file_path}'")
|
|
171
|
-
|
|
174
|
+
sentry_sdk.capture_exception(e)
|
|
175
|
+
|
|
176
|
+
raise InvalidPluginFormat from e
|
|
172
177
|
else:
|
|
173
178
|
log.error(f"Unsupported file format: '{plugin_file_path}'")
|
|
174
179
|
raise InvalidPluginFormat
|
|
@@ -225,12 +230,16 @@ def install_plugins() -> None:
|
|
|
225
230
|
for plugin_name, attributes in enabled_plugins().items():
|
|
226
231
|
try:
|
|
227
232
|
install_plugin(plugin_name, attributes)
|
|
228
|
-
except PluginInstallationError:
|
|
233
|
+
except PluginInstallationError as e:
|
|
229
234
|
disable_plugin(plugin_name)
|
|
235
|
+
|
|
230
236
|
log.error(
|
|
231
237
|
f'Installation failed for plugin "{plugin_name}", version {attributes["version"]};'
|
|
232
238
|
" the plugin has been disabled"
|
|
233
239
|
)
|
|
240
|
+
|
|
241
|
+
sentry_sdk.capture_exception(e)
|
|
242
|
+
|
|
234
243
|
continue
|
|
235
244
|
|
|
236
245
|
return None
|
plugin_runner/plugin_runner.py
CHANGED
|
@@ -14,6 +14,7 @@ from typing import Any, TypedDict
|
|
|
14
14
|
|
|
15
15
|
import grpc
|
|
16
16
|
import redis.asyncio as redis
|
|
17
|
+
import sentry_sdk
|
|
17
18
|
from asgiref.sync import sync_to_async
|
|
18
19
|
from django.db import connections
|
|
19
20
|
|
|
@@ -34,20 +35,55 @@ from plugin_runner.installation import install_plugins
|
|
|
34
35
|
from plugin_runner.sandbox import Sandbox
|
|
35
36
|
from settings import (
|
|
36
37
|
CHANNEL_NAME,
|
|
38
|
+
CUSTOMER_IDENTIFIER,
|
|
39
|
+
ENV,
|
|
40
|
+
IS_PRODUCTION_CUSTOMER,
|
|
37
41
|
IS_TESTING,
|
|
38
42
|
MANIFEST_FILE_NAME,
|
|
39
43
|
PLUGIN_DIRECTORY,
|
|
40
44
|
REDIS_ENDPOINT,
|
|
41
45
|
SECRETS_FILE_NAME,
|
|
46
|
+
SENTRY_DSN,
|
|
42
47
|
)
|
|
43
48
|
|
|
49
|
+
if SENTRY_DSN:
|
|
50
|
+
sentry_sdk.init(
|
|
51
|
+
dsn=SENTRY_DSN,
|
|
52
|
+
environment=ENV,
|
|
53
|
+
release=os.getenv("CANVAS_PLUGINS_REPO_VERSION", "unknown"),
|
|
54
|
+
send_default_pii=True,
|
|
55
|
+
traces_sample_rate=0.0,
|
|
56
|
+
profiles_sample_rate=0.0,
|
|
57
|
+
)
|
|
58
|
+
|
|
59
|
+
with sentry_sdk.configure_scope() as scope:
|
|
60
|
+
scope.set_tag("customer", CUSTOMER_IDENTIFIER)
|
|
61
|
+
scope.set_tag("logger", "python")
|
|
62
|
+
scope.set_tag("source", "plugin-runner")
|
|
63
|
+
scope.set_tag("production_customer", "yes" if IS_PRODUCTION_CUSTOMER else "no")
|
|
64
|
+
|
|
44
65
|
# when we import plugins we'll use the module name directly so we need to add the plugin
|
|
45
66
|
# directory to the path
|
|
46
67
|
sys.path.append(PLUGIN_DIRECTORY)
|
|
47
68
|
|
|
69
|
+
Plugin = TypedDict(
|
|
70
|
+
"Plugin",
|
|
71
|
+
{
|
|
72
|
+
"active": bool,
|
|
73
|
+
"class": Any,
|
|
74
|
+
"sandbox": Any,
|
|
75
|
+
"handler": Any,
|
|
76
|
+
"secrets": dict[str, str],
|
|
77
|
+
},
|
|
78
|
+
)
|
|
79
|
+
|
|
48
80
|
# a global dictionary of loaded plugins
|
|
49
|
-
|
|
50
|
-
|
|
81
|
+
LOADED_PLUGINS: dict[str, Plugin] = {}
|
|
82
|
+
|
|
83
|
+
# a global dictionary of values made available to all plugins
|
|
84
|
+
ENVIRONMENT: dict = {
|
|
85
|
+
"CUSTOMER_IDENTIFIER": CUSTOMER_IDENTIFIER,
|
|
86
|
+
}
|
|
51
87
|
|
|
52
88
|
# a global dictionary of events to handler class names
|
|
53
89
|
EVENT_HANDLER_MAP: dict[str, list] = defaultdict(list)
|
|
@@ -144,6 +180,7 @@ class PluginRunner(PluginRunnerServicer):
|
|
|
144
180
|
relevant_plugin_handlers = []
|
|
145
181
|
|
|
146
182
|
log.debug(f"Processing {relevant_plugins} for {event_name}")
|
|
183
|
+
sentry_sdk.set_tag("event-name", event_name)
|
|
147
184
|
|
|
148
185
|
if relevant_plugins:
|
|
149
186
|
await reconnect_if_needed()
|
|
@@ -162,6 +199,7 @@ class PluginRunner(PluginRunnerServicer):
|
|
|
162
199
|
|
|
163
200
|
for plugin_name in relevant_plugins:
|
|
164
201
|
log.debug(f"Processing {plugin_name}")
|
|
202
|
+
sentry_sdk.set_tag("plugin-name", plugin_name)
|
|
165
203
|
|
|
166
204
|
plugin = LOADED_PLUGINS[plugin_name]
|
|
167
205
|
handler_class = plugin["class"]
|
|
@@ -174,7 +212,7 @@ class PluginRunner(PluginRunnerServicer):
|
|
|
174
212
|
)
|
|
175
213
|
|
|
176
214
|
try:
|
|
177
|
-
handler = handler_class(event, secrets)
|
|
215
|
+
handler = handler_class(event, secrets, ENVIRONMENT)
|
|
178
216
|
|
|
179
217
|
if not handler.accept_event():
|
|
180
218
|
continue
|
|
@@ -217,10 +255,14 @@ class PluginRunner(PluginRunnerServicer):
|
|
|
217
255
|
for error_line in error_line_with_newlines.split("\n"):
|
|
218
256
|
log.error(error_line)
|
|
219
257
|
|
|
258
|
+
sentry_sdk.capture_exception(e)
|
|
259
|
+
|
|
220
260
|
continue
|
|
221
261
|
|
|
222
262
|
effect_list += effects
|
|
223
263
|
|
|
264
|
+
sentry_sdk.set_tag("plugin-name", None)
|
|
265
|
+
|
|
224
266
|
# Special handling for SimpleAPI requests: if there were no relevant handlers (as determined
|
|
225
267
|
# by calling ignore_event on handlers), then set the effects list to be a single 404 Not
|
|
226
268
|
# Found response effect. If multiple handlers were able to respond, log an error and set the
|
|
@@ -267,38 +309,48 @@ async def synchronize_plugins(run_once: bool = False) -> None:
|
|
|
267
309
|
log.info(f'synchronize_plugins: listening for messages on pubsub channel "{CHANNEL_NAME}"')
|
|
268
310
|
|
|
269
311
|
_, pubsub = get_client()
|
|
312
|
+
|
|
270
313
|
await pubsub.psubscribe(CHANNEL_NAME)
|
|
271
314
|
|
|
272
315
|
while True:
|
|
273
|
-
message = await pubsub.get_message(ignore_subscribe_messages=True, timeout=
|
|
316
|
+
message = await pubsub.get_message(ignore_subscribe_messages=True, timeout=5.0)
|
|
274
317
|
|
|
275
|
-
if message is
|
|
276
|
-
|
|
318
|
+
if message is None:
|
|
319
|
+
continue
|
|
277
320
|
|
|
278
|
-
|
|
321
|
+
log.info(f'synchronize_plugins: received message from pubsub channel "{CHANNEL_NAME}"')
|
|
279
322
|
|
|
280
|
-
|
|
281
|
-
continue
|
|
323
|
+
message_type = message.get("type", "")
|
|
282
324
|
|
|
283
|
-
|
|
325
|
+
if message_type != "pmessage":
|
|
326
|
+
continue
|
|
284
327
|
|
|
285
|
-
|
|
286
|
-
continue
|
|
328
|
+
data = pickle.loads(message.get("data", pickle.dumps({})))
|
|
287
329
|
|
|
288
|
-
|
|
289
|
-
|
|
330
|
+
if "action" not in data:
|
|
331
|
+
continue
|
|
290
332
|
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
333
|
+
if data["action"] == "reload":
|
|
334
|
+
log.info("synchronize_plugins: installing/reloading plugins for action=reload")
|
|
335
|
+
|
|
336
|
+
try:
|
|
337
|
+
install_plugins()
|
|
338
|
+
except Exception as e:
|
|
339
|
+
log.error(f"synchronize_plugins: install_plugins failed: {e}")
|
|
340
|
+
sentry_sdk.capture_exception(e)
|
|
341
|
+
|
|
342
|
+
try:
|
|
343
|
+
load_plugins()
|
|
344
|
+
except Exception as e:
|
|
345
|
+
log.error(f"synchronize_plugins: load_plugins failed: {e}")
|
|
346
|
+
sentry_sdk.capture_exception(e)
|
|
347
|
+
|
|
348
|
+
await pubsub.check_health()
|
|
349
|
+
|
|
350
|
+
if not pubsub.connection.is_connected: # type: ignore
|
|
351
|
+
log.info("synchronize_plugins: reconnecting to Redis")
|
|
352
|
+
await pubsub.connection.connect() # type: ignore
|
|
296
353
|
|
|
297
|
-
try:
|
|
298
|
-
load_plugins()
|
|
299
|
-
except Exception as e:
|
|
300
|
-
# TODO capture_exception when Sentry is installed
|
|
301
|
-
log.error(f"synchronize_plugins: load_plugins failed: {e}")
|
|
302
354
|
if run_once:
|
|
303
355
|
break
|
|
304
356
|
|
|
@@ -307,20 +359,22 @@ async def synchronize_plugins_and_report_errors() -> None:
|
|
|
307
359
|
"""
|
|
308
360
|
Run synchronize_plugins() in perpetuity and report any encountered errors.
|
|
309
361
|
"""
|
|
310
|
-
log.info("
|
|
362
|
+
log.info("synchronize_plugins: starting loop...")
|
|
311
363
|
|
|
312
364
|
while True:
|
|
313
365
|
try:
|
|
314
366
|
await synchronize_plugins()
|
|
315
367
|
except Exception as e:
|
|
316
|
-
log.error(f"synchronize_plugins error: {e}")
|
|
368
|
+
log.error(f"synchronize_plugins: error: {e}")
|
|
369
|
+
sentry_sdk.capture_exception(e)
|
|
317
370
|
|
|
318
371
|
# don't crush redis if we're retrying in a tight loop
|
|
319
372
|
await asyncio.sleep(0.5)
|
|
320
373
|
|
|
321
374
|
|
|
322
375
|
def validate_effects(effects: list[Effect]) -> list[Effect]:
|
|
323
|
-
"""
|
|
376
|
+
"""
|
|
377
|
+
Validates the effects based on predefined rules.
|
|
324
378
|
|
|
325
379
|
Keeps only the first AUTOCOMPLETE_SEARCH_RESULTS effect and preserve all
|
|
326
380
|
non-search-related effects.
|
|
@@ -420,6 +474,8 @@ def load_or_reload_plugin(path: pathlib.Path) -> None:
|
|
|
420
474
|
manifest_json: PluginManifest = json.loads(manifest_json_str)
|
|
421
475
|
except Exception as e:
|
|
422
476
|
log.error(f'Unable to load plugin "{name}": {e}')
|
|
477
|
+
sentry_sdk.capture_exception(e)
|
|
478
|
+
|
|
423
479
|
return
|
|
424
480
|
|
|
425
481
|
secrets_file = path / SECRETS_FILE_NAME
|
|
@@ -430,6 +486,7 @@ def load_or_reload_plugin(path: pathlib.Path) -> None:
|
|
|
430
486
|
secrets_json = json.load(secrets_file.open())
|
|
431
487
|
except Exception as e:
|
|
432
488
|
log.error(f'Unable to load secrets for plugin "{name}": {str(e)}')
|
|
489
|
+
sentry_sdk.capture_exception(e)
|
|
433
490
|
|
|
434
491
|
# TODO add existing schema validation from Michela here
|
|
435
492
|
try:
|
|
@@ -438,6 +495,8 @@ def load_or_reload_plugin(path: pathlib.Path) -> None:
|
|
|
438
495
|
].get("applications", [])
|
|
439
496
|
except Exception as e:
|
|
440
497
|
log.error(f'Unable to load plugin "{name}": {str(e)}')
|
|
498
|
+
sentry_sdk.capture_exception(e)
|
|
499
|
+
|
|
441
500
|
return
|
|
442
501
|
|
|
443
502
|
for handler in handlers:
|
|
@@ -446,8 +505,10 @@ def load_or_reload_plugin(path: pathlib.Path) -> None:
|
|
|
446
505
|
try:
|
|
447
506
|
handler_module, handler_class = handler["class"].split(":")
|
|
448
507
|
name_and_class = f"{name}:{handler_module}:{handler_class}"
|
|
449
|
-
except ValueError:
|
|
508
|
+
except ValueError as e:
|
|
450
509
|
log.error(f'Unable to parse class for plugin "{name}": "{handler["class"]}"')
|
|
510
|
+
sentry_sdk.capture_exception(e)
|
|
511
|
+
|
|
451
512
|
continue
|
|
452
513
|
|
|
453
514
|
try:
|
|
@@ -471,12 +532,14 @@ def load_or_reload_plugin(path: pathlib.Path) -> None:
|
|
|
471
532
|
"handler": handler,
|
|
472
533
|
"secrets": secrets_json,
|
|
473
534
|
}
|
|
474
|
-
except Exception as
|
|
475
|
-
log.error(f'Error importing module "{name_and_class}": {
|
|
535
|
+
except Exception as e:
|
|
536
|
+
log.error(f'Error importing module "{name_and_class}": {e}')
|
|
476
537
|
|
|
477
|
-
for error_line in traceback.format_exception(
|
|
538
|
+
for error_line in traceback.format_exception(e):
|
|
478
539
|
log.error(error_line)
|
|
479
540
|
|
|
541
|
+
sentry_sdk.capture_exception(e)
|
|
542
|
+
|
|
480
543
|
|
|
481
544
|
def refresh_event_type_map() -> None:
|
|
482
545
|
"""Ensure the event subscriptions are up to date."""
|
|
@@ -573,20 +636,20 @@ async def serve(specified_plugin_paths: list[str] | None = None) -> None:
|
|
|
573
636
|
|
|
574
637
|
|
|
575
638
|
# NOTE: specified_plugin_paths powers the `canvas run-plugins` command
|
|
576
|
-
def
|
|
577
|
-
"""Run the server."""
|
|
639
|
+
def main(specified_plugin_paths: list[str] | None = None) -> None:
|
|
640
|
+
"""Run the server and the synchronize_plugins loop."""
|
|
578
641
|
loop = asyncio.new_event_loop()
|
|
579
642
|
|
|
580
643
|
asyncio.set_event_loop(loop)
|
|
581
644
|
|
|
582
645
|
try:
|
|
583
|
-
|
|
646
|
+
coroutines = [serve(specified_plugin_paths)]
|
|
584
647
|
|
|
585
648
|
# Only start the synchronizer if the plugin runner was not started from the CLI
|
|
586
649
|
if specified_plugin_paths is None:
|
|
587
|
-
|
|
650
|
+
coroutines.append(synchronize_plugins_and_report_errors())
|
|
588
651
|
|
|
589
|
-
loop.run_until_complete(asyncio.gather(*
|
|
652
|
+
loop.run_until_complete(asyncio.gather(*coroutines))
|
|
590
653
|
except KeyboardInterrupt:
|
|
591
654
|
pass
|
|
592
655
|
finally:
|
|
@@ -595,4 +658,4 @@ def run_server(specified_plugin_paths: list[str] | None = None) -> None:
|
|
|
595
658
|
|
|
596
659
|
|
|
597
660
|
if __name__ == "__main__":
|
|
598
|
-
|
|
661
|
+
main()
|
|
@@ -148,6 +148,7 @@ enum EventType {
|
|
|
148
148
|
ADJUST_PRESCRIPTION_COMMAND__POST_ENTER_IN_ERROR = 2009;
|
|
149
149
|
ADJUST_PRESCRIPTION_COMMAND__PRE_EXECUTE_ACTION = 2010;
|
|
150
150
|
ADJUST_PRESCRIPTION_COMMAND__POST_EXECUTE_ACTION = 2011;
|
|
151
|
+
ADJUST_PRESCRIPTION_COMMAND__POST_INSERTED_INTO_NOTE = 2020;
|
|
151
152
|
ADJUST_PRESCRIPTION__PRESCRIBE__POST_SEARCH = 2012;
|
|
152
153
|
ADJUST_PRESCRIPTION__PRESCRIBE__PRE_SEARCH = 2013;
|
|
153
154
|
ADJUST_PRESCRIPTION__INDICATIONS__PRE_SEARCH = 2014;
|
|
@@ -182,6 +183,7 @@ enum EventType {
|
|
|
182
183
|
ALLERGY_COMMAND__POST_ENTER_IN_ERROR = 4009;
|
|
183
184
|
ALLERGY_COMMAND__PRE_EXECUTE_ACTION = 4010;
|
|
184
185
|
ALLERGY_COMMAND__POST_EXECUTE_ACTION = 4011;
|
|
186
|
+
ALLERGY_COMMAND__POST_INSERTED_INTO_NOTE = 4014;
|
|
185
187
|
ALLERGY__ALLERGY__PRE_SEARCH = 4012;
|
|
186
188
|
ALLERGY__ALLERGY__POST_SEARCH = 4013;
|
|
187
189
|
|
|
@@ -223,6 +225,7 @@ enum EventType {
|
|
|
223
225
|
ASSESS_COMMAND__POST_ENTER_IN_ERROR = 7009;
|
|
224
226
|
ASSESS_COMMAND__PRE_EXECUTE_ACTION = 7010;
|
|
225
227
|
ASSESS_COMMAND__POST_EXECUTE_ACTION = 7011;
|
|
228
|
+
ASSESS_COMMAND__POST_INSERTED_INTO_NOTE = 7014;
|
|
226
229
|
ASSESS__CONDITION__POST_SEARCH = 7012;
|
|
227
230
|
ASSESS__CONDITION__PRE_SEARCH = 7013;
|
|
228
231
|
|
|
@@ -391,6 +394,7 @@ enum EventType {
|
|
|
391
394
|
FOLLOW_UP_COMMAND__POST_ENTER_IN_ERROR = 17009;
|
|
392
395
|
FOLLOW_UP_COMMAND__PRE_EXECUTE_ACTION = 17010;
|
|
393
396
|
FOLLOW_UP_COMMAND__POST_EXECUTE_ACTION = 17011;
|
|
397
|
+
FOLLOW_UP_COMMAND__POST_INSERTED_INTO_NOTE = 17016;
|
|
394
398
|
FOLLOW_UP__CODING__PRE_SEARCH = 17012;
|
|
395
399
|
FOLLOW_UP__CODING__POST_SEARCH = 17013;
|
|
396
400
|
FOLLOW_UP__NOTE_TYPE__PRE_SEARCH = 17014;
|
|
@@ -704,14 +708,15 @@ enum EventType {
|
|
|
704
708
|
REFER_COMMAND__POST_ENTER_IN_ERROR = 36009;
|
|
705
709
|
REFER_COMMAND__PRE_EXECUTE_ACTION = 36010;
|
|
706
710
|
REFER_COMMAND__POST_EXECUTE_ACTION = 36011;
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
711
|
+
REFER_COMMAND__POST_INSERTED_INTO_NOTE = 36020;
|
|
712
|
+
REFER__REFER_TO__POST_SEARCH = 36012;
|
|
713
|
+
REFER__REFER_TO__PRE_SEARCH = 36013;
|
|
714
|
+
REFER__INDICATIONS__POST_SEARCH = 36014;
|
|
715
|
+
REFER__INDICATIONS__PRE_SEARCH = 36015;
|
|
716
|
+
REFER__DOCUMENTS_TO_INCLUDE__POST_SEARCH = 36016;
|
|
717
|
+
REFER__DOCUMENTS_TO_INCLUDE__PRE_SEARCH = 36017;
|
|
718
|
+
REFER__LINKED_ITEMS__POST_SEARCH = 36018;
|
|
719
|
+
REFER__LINKED_ITEMS_INCLUDE__PRE_SEARCH = 36019;
|
|
715
720
|
|
|
716
721
|
// REFERENCE_COMMAND__PRE_ORIGINATE = 37000;
|
|
717
722
|
// REFERENCE_COMMAND__POST_ORIGINATE = 37001;
|
|
@@ -787,6 +792,7 @@ enum EventType {
|
|
|
787
792
|
RESOLVE_CONDITION_COMMAND__POST_ENTER_IN_ERROR = 41009;
|
|
788
793
|
RESOLVE_CONDITION_COMMAND__PRE_EXECUTE_ACTION = 41010;
|
|
789
794
|
RESOLVE_CONDITION_COMMAND__POST_EXECUTE_ACTION = 41011;
|
|
795
|
+
RESOLVE_CONDITION_COMMAND__POST_INSERTED_INTO_NOTE = 41014;
|
|
790
796
|
RESOLVE_CONDITION__CONDITION__PRE_SEARCH = 41012;
|
|
791
797
|
RESOLVE_CONDITION__CONDITION__POST_SEARCH = 41013;
|
|
792
798
|
|
|
@@ -913,6 +919,7 @@ enum EventType {
|
|
|
913
919
|
UPDATE_DIAGNOSIS_COMMAND__POST_ENTER_IN_ERROR = 49009;
|
|
914
920
|
UPDATE_DIAGNOSIS_COMMAND__PRE_EXECUTE_ACTION = 49010;
|
|
915
921
|
UPDATE_DIAGNOSIS_COMMAND__POST_EXECUTE_ACTION = 49011;
|
|
922
|
+
UPDATE_DIAGNOSIS_COMMAND__POST_INSERTED_INTO_NOTE = 49016;
|
|
916
923
|
UPDATE_DIAGNOSIS__CONDITION__PRE_SEARCH = 49012;
|
|
917
924
|
UPDATE_DIAGNOSIS__CONDITION__POST_SEARCH = 49013;
|
|
918
925
|
UPDATE_DIAGNOSIS__NEW_CONDITION__PRE_SEARCH = 49014;
|
settings.py
CHANGED
|
@@ -9,6 +9,7 @@ load_dotenv()
|
|
|
9
9
|
|
|
10
10
|
ENV = os.getenv("ENV", "development")
|
|
11
11
|
IS_PRODUCTION = ENV == "production"
|
|
12
|
+
IS_PRODUCTION_CUSTOMER = env_to_bool("IS_PRODUCTION_CUSTOMER", IS_PRODUCTION)
|
|
12
13
|
IS_TESTING = env_to_bool("IS_TESTING", "pytest" in sys.argv[0] or sys.argv[0] == "-c")
|
|
13
14
|
CUSTOMER_IDENTIFIER = os.getenv("CUSTOMER_IDENTIFIER", "local")
|
|
14
15
|
APP_NAME = os.getenv("APP_NAME")
|
|
@@ -88,6 +89,7 @@ MANIFEST_FILE_NAME = "CANVAS_MANIFEST.json"
|
|
|
88
89
|
|
|
89
90
|
SECRETS_FILE_NAME = "SECRETS.json"
|
|
90
91
|
|
|
92
|
+
SENTRY_DSN = os.getenv("SENTRY_DSN")
|
|
91
93
|
|
|
92
94
|
TEMPLATES = [
|
|
93
95
|
{
|
|
File without changes
|
|
File without changes
|