endoreg-db 0.5.3__py3-none-any.whl → 0.6.1__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 endoreg-db might be problematic. Click here for more details.

Files changed (268) hide show
  1. endoreg_db/admin.py +90 -1
  2. endoreg_db/case_generator/case_generator.py +159 -0
  3. endoreg_db/case_generator/lab_sample_factory.py +33 -0
  4. endoreg_db/case_generator/utils.py +30 -0
  5. endoreg_db/data/__init__.py +50 -4
  6. endoreg_db/data/ai_model/data.yaml +7 -0
  7. endoreg_db/data/{label → ai_model_label}/label/data.yaml +27 -1
  8. endoreg_db/data/ai_model_label/label-set/data.yaml +21 -0
  9. endoreg_db/data/ai_model_meta/default_multilabel_classification.yaml +5 -0
  10. endoreg_db/data/ai_model_video_segmentation_label/base_segmentation.yaml +176 -0
  11. endoreg_db/data/ai_model_video_segmentation_labelset/data.yaml +20 -0
  12. endoreg_db/data/center/data.yaml +35 -5
  13. endoreg_db/data/contraindication/bleeding.yaml +11 -0
  14. endoreg_db/data/distribution/numeric/data.yaml +14 -0
  15. endoreg_db/data/endoscope/data.yaml +93 -0
  16. endoreg_db/data/examination_indication/endoscopy.yaml +8 -0
  17. endoreg_db/data/examination_indication_classification/endoscopy.yaml +8 -0
  18. endoreg_db/data/examination_indication_classification_choice/endoscopy.yaml +101 -0
  19. endoreg_db/data/finding/data.yaml +141 -0
  20. endoreg_db/data/finding_intervention/endoscopy.yaml +138 -0
  21. endoreg_db/data/finding_intervention_type/endoscopy.yaml +15 -0
  22. endoreg_db/data/finding_location_classification/colonoscopy.yaml +46 -0
  23. endoreg_db/data/finding_location_classification_choice/colonoscopy.yaml +240 -0
  24. endoreg_db/data/finding_morphology_classification/colonoscopy.yaml +48 -0
  25. endoreg_db/data/finding_morphology_classification_choice/colon_lesion_circularity_default.yaml +34 -0
  26. endoreg_db/data/finding_morphology_classification_choice/colon_lesion_nice.yaml +20 -0
  27. endoreg_db/data/finding_morphology_classification_choice/colon_lesion_paris.yaml +65 -0
  28. endoreg_db/data/finding_morphology_classification_choice/colon_lesion_planarity_default.yaml +56 -0
  29. endoreg_db/data/finding_morphology_classification_choice/colon_lesion_surface_intact_default.yaml +39 -0
  30. endoreg_db/data/finding_morphology_classification_choice/colonoscopy_size.yaml +57 -0
  31. endoreg_db/data/finding_morphology_classification_type/colonoscopy.yaml +79 -0
  32. endoreg_db/data/finding_type/data.yaml +30 -0
  33. endoreg_db/data/gender/data.yaml +17 -0
  34. endoreg_db/data/lab_value/cardiac_enzymes.yaml +7 -1
  35. endoreg_db/data/lab_value/coagulation.yaml +6 -1
  36. endoreg_db/data/lab_value/electrolytes.yaml +39 -1
  37. endoreg_db/data/lab_value/gastrointestinal_function.yaml +12 -0
  38. endoreg_db/data/lab_value/hematology.yaml +17 -2
  39. endoreg_db/data/lab_value/hormones.yaml +6 -0
  40. endoreg_db/data/lab_value/lipids.yaml +12 -3
  41. endoreg_db/data/lab_value/misc.yaml +5 -2
  42. endoreg_db/data/lab_value/renal_function.yaml +2 -1
  43. endoreg_db/data/lx_client_tag/base.yaml +54 -0
  44. endoreg_db/data/lx_client_type/base.yaml +30 -0
  45. endoreg_db/data/lx_permission/base.yaml +24 -0
  46. endoreg_db/data/lx_permission/endoreg.yaml +52 -0
  47. endoreg_db/data/medication_indication/anticoagulation.yaml +44 -49
  48. endoreg_db/data/names_first/first_names.yaml +51 -0
  49. endoreg_db/data/names_last/last_names.yaml +51 -0
  50. endoreg_db/data/network_device/data.yaml +30 -0
  51. endoreg_db/data/organ/data.yaml +29 -0
  52. endoreg_db/data/pdf_type/data.yaml +2 -1
  53. endoreg_db/data/report_reader_flag/ukw-examination-generic.yaml +4 -0
  54. endoreg_db/forms/__init__.py +3 -1
  55. endoreg_db/forms/examination_form.py +11 -0
  56. endoreg_db/forms/patient_finding_intervention_form.py +19 -0
  57. endoreg_db/forms/patient_form.py +26 -0
  58. endoreg_db/management/commands/__init__.py +0 -0
  59. endoreg_db/management/commands/load_ai_model_data.py +57 -23
  60. endoreg_db/management/commands/load_ai_model_label_data.py +59 -0
  61. endoreg_db/management/commands/load_base_db_data.py +160 -118
  62. endoreg_db/management/commands/{load_endoscope_type_data.py → load_contraindication_data.py} +3 -7
  63. endoreg_db/management/commands/load_disease_data.py +29 -7
  64. endoreg_db/management/commands/load_endoscope_data.py +68 -0
  65. endoreg_db/management/commands/load_examination_indication_data.py +65 -0
  66. endoreg_db/management/commands/load_finding_data.py +171 -0
  67. endoreg_db/management/commands/load_lab_value_data.py +3 -3
  68. endoreg_db/management/commands/load_lx_data.py +64 -0
  69. endoreg_db/management/commands/load_medication_data.py +83 -21
  70. endoreg_db/management/commands/load_name_data.py +37 -0
  71. endoreg_db/management/commands/{load_endoscopy_processor_data.py → load_organ_data.py} +7 -9
  72. endoreg_db/migrations/0001_initial.py +1206 -728
  73. endoreg_db/migrations/0002_alter_frame_image_alter_rawframe_image.py +23 -0
  74. endoreg_db/migrations/0003_alter_frame_image_alter_rawframe_image.py +23 -0
  75. endoreg_db/migrations/0004_alter_rawvideofile_file_alter_video_file.py +25 -0
  76. endoreg_db/migrations/0005_rawvideofile_frame_count_and_more.py +33 -0
  77. endoreg_db/migrations/0006_frame_extracted_rawframe_extracted.py +23 -0
  78. endoreg_db/migrations/0007_rename_pseudo_patient_video_patient_and_more.py +24 -0
  79. endoreg_db/migrations/0008_remove_reportfile_patient_examination_and_more.py +48 -0
  80. endoreg_db/models/__init__.py +331 -28
  81. endoreg_db/models/ai_model/__init__.py +1 -0
  82. endoreg_db/models/ai_model/ai_model.py +103 -0
  83. endoreg_db/models/ai_model/lightning/__init__.py +3 -0
  84. endoreg_db/models/ai_model/lightning/inference_dataset.py +53 -0
  85. endoreg_db/models/ai_model/lightning/multilabel_classification_net.py +155 -0
  86. endoreg_db/models/ai_model/lightning/postprocess.py +53 -0
  87. endoreg_db/models/ai_model/lightning/predict.py +172 -0
  88. endoreg_db/models/ai_model/lightning/prediction_visualizer.py +55 -0
  89. endoreg_db/models/ai_model/lightning/preprocess.py +68 -0
  90. endoreg_db/models/ai_model/lightning/run_visualizer.py +21 -0
  91. endoreg_db/models/ai_model/model_meta.py +232 -6
  92. endoreg_db/models/ai_model/model_type.py +13 -3
  93. endoreg_db/models/annotation/__init__.py +31 -2
  94. endoreg_db/models/annotation/anonymized_image_annotation.py +73 -18
  95. endoreg_db/models/annotation/binary_classification_annotation_task.py +94 -57
  96. endoreg_db/models/annotation/image_classification.py +73 -14
  97. endoreg_db/models/annotation/video_segmentation_annotation.py +52 -0
  98. endoreg_db/models/annotation/video_segmentation_labelset.py +20 -0
  99. endoreg_db/models/case/__init__.py +1 -0
  100. endoreg_db/models/{persons/patient/case → case}/case.py +4 -0
  101. endoreg_db/models/case_template/__init__.py +10 -1
  102. endoreg_db/models/case_template/case_template.py +57 -13
  103. endoreg_db/models/case_template/case_template_rule.py +5 -5
  104. endoreg_db/models/case_template/case_template_rule_value.py +19 -4
  105. endoreg_db/models/center/__init__.py +7 -0
  106. endoreg_db/models/center/center.py +31 -5
  107. endoreg_db/models/center/center_product.py +0 -1
  108. endoreg_db/models/center/center_resource.py +16 -2
  109. endoreg_db/models/center/center_waste.py +6 -1
  110. endoreg_db/models/contraindication/__init__.py +21 -0
  111. endoreg_db/models/data_file/__init__.py +38 -5
  112. endoreg_db/models/data_file/base_classes/__init__.py +6 -1
  113. endoreg_db/models/data_file/base_classes/abstract_frame.py +64 -15
  114. endoreg_db/models/data_file/base_classes/abstract_pdf.py +136 -0
  115. endoreg_db/models/data_file/base_classes/abstract_video.py +744 -138
  116. endoreg_db/models/data_file/base_classes/frame_helpers.py +17 -0
  117. endoreg_db/models/data_file/base_classes/prepare_bulk_frames.py +19 -0
  118. endoreg_db/models/data_file/base_classes/utils.py +80 -0
  119. endoreg_db/models/data_file/frame.py +22 -38
  120. endoreg_db/models/data_file/import_classes/__init__.py +4 -18
  121. endoreg_db/models/data_file/import_classes/raw_pdf.py +162 -90
  122. endoreg_db/models/data_file/import_classes/raw_video.py +239 -294
  123. endoreg_db/models/data_file/metadata/__init__.py +10 -0
  124. endoreg_db/models/data_file/metadata/pdf_meta.py +4 -0
  125. endoreg_db/models/data_file/metadata/sensitive_meta.py +265 -6
  126. endoreg_db/models/data_file/metadata/video_meta.py +116 -50
  127. endoreg_db/models/data_file/report_file.py +30 -63
  128. endoreg_db/models/data_file/video/__init__.py +6 -2
  129. endoreg_db/models/data_file/video/video.py +187 -16
  130. endoreg_db/models/data_file/video_segment.py +162 -55
  131. endoreg_db/models/disease.py +25 -2
  132. endoreg_db/models/emission/__init__.py +5 -1
  133. endoreg_db/models/emission/emission_factor.py +71 -6
  134. endoreg_db/models/event.py +51 -0
  135. endoreg_db/models/examination/__init__.py +6 -1
  136. endoreg_db/models/examination/examination.py +53 -12
  137. endoreg_db/models/examination/examination_indication.py +170 -0
  138. endoreg_db/models/examination/examination_time.py +31 -5
  139. endoreg_db/models/examination/examination_time_type.py +28 -4
  140. endoreg_db/models/examination/examination_type.py +28 -6
  141. endoreg_db/models/finding/__init__.py +11 -0
  142. endoreg_db/models/finding/finding.py +75 -0
  143. endoreg_db/models/finding/finding_intervention.py +60 -0
  144. endoreg_db/models/finding/finding_location_classification.py +94 -0
  145. endoreg_db/models/finding/finding_morphology_classification.py +89 -0
  146. endoreg_db/models/finding/finding_type.py +22 -0
  147. endoreg_db/models/hardware/endoscope.py +16 -0
  148. endoreg_db/models/hardware/endoscopy_processor.py +31 -19
  149. endoreg_db/models/label/label.py +35 -7
  150. endoreg_db/models/laboratory/lab_value.py +12 -3
  151. endoreg_db/models/logging/__init__.py +8 -1
  152. endoreg_db/models/lx/__init__.py +4 -0
  153. endoreg_db/models/lx/client.py +57 -0
  154. endoreg_db/models/lx/identity.py +34 -0
  155. endoreg_db/models/lx/permission.py +18 -0
  156. endoreg_db/models/lx/user.py +16 -0
  157. endoreg_db/models/medication/__init__.py +19 -1
  158. endoreg_db/models/medication/medication.py +7 -122
  159. endoreg_db/models/medication/medication_indication.py +50 -0
  160. endoreg_db/models/medication/medication_indication_type.py +34 -0
  161. endoreg_db/models/medication/medication_intake_time.py +26 -0
  162. endoreg_db/models/medication/medication_schedule.py +37 -0
  163. endoreg_db/models/network/__init__.py +7 -1
  164. endoreg_db/models/network/network_device.py +13 -8
  165. endoreg_db/models/organ/__init__.py +38 -0
  166. endoreg_db/models/other/__init__.py +19 -1
  167. endoreg_db/models/other/distribution/__init__.py +44 -0
  168. endoreg_db/models/other/distribution/base_value_distribution.py +20 -0
  169. endoreg_db/models/other/distribution/date_value_distribution.py +91 -0
  170. endoreg_db/models/other/distribution/multiple_categorical_value_distribution.py +32 -0
  171. endoreg_db/models/other/distribution/numeric_value_distribution.py +97 -0
  172. endoreg_db/models/other/distribution/single_categorical_value_distribution.py +22 -0
  173. endoreg_db/models/other/distribution.py +1 -211
  174. endoreg_db/models/other/material.py +4 -0
  175. endoreg_db/models/other/transport_route.py +2 -1
  176. endoreg_db/models/patient/__init__.py +24 -0
  177. endoreg_db/models/patient/patient_examination.py +182 -0
  178. endoreg_db/models/patient/patient_finding.py +143 -0
  179. endoreg_db/models/patient/patient_finding_intervention.py +26 -0
  180. endoreg_db/models/patient/patient_finding_location.py +120 -0
  181. endoreg_db/models/patient/patient_finding_morphology.py +166 -0
  182. endoreg_db/models/persons/__init__.py +29 -2
  183. endoreg_db/models/persons/examiner/examiner.py +48 -4
  184. endoreg_db/models/persons/patient/__init__.py +1 -1
  185. endoreg_db/models/persons/patient/patient.py +227 -54
  186. endoreg_db/models/persons/patient/patient_disease.py +6 -0
  187. endoreg_db/models/persons/patient/patient_event.py +31 -1
  188. endoreg_db/models/persons/patient/patient_examination_indication.py +32 -0
  189. endoreg_db/models/persons/patient/patient_lab_sample.py +4 -2
  190. endoreg_db/models/persons/patient/patient_lab_value.py +37 -16
  191. endoreg_db/models/persons/patient/patient_medication.py +27 -12
  192. endoreg_db/models/persons/patient/patient_medication_schedule.py +62 -2
  193. endoreg_db/models/prediction/__init__.py +7 -1
  194. endoreg_db/models/prediction/image_classification.py +20 -6
  195. endoreg_db/models/prediction/video_prediction_meta.py +151 -89
  196. endoreg_db/models/product/__init__.py +10 -1
  197. endoreg_db/models/product/product.py +15 -2
  198. endoreg_db/models/product/product_group.py +8 -0
  199. endoreg_db/models/product/product_material.py +4 -0
  200. endoreg_db/models/product/product_weight.py +12 -0
  201. endoreg_db/models/product/reference_product.py +19 -3
  202. endoreg_db/models/quiz/__init__.py +8 -1
  203. endoreg_db/models/report_reader/__init__.py +6 -1
  204. endoreg_db/serializers/__init__.py +1 -1
  205. endoreg_db/serializers/annotation.py +2 -5
  206. endoreg_db/serializers/frame.py +1 -5
  207. endoreg_db/serializers/patient.py +26 -3
  208. endoreg_db/serializers/prediction.py +2 -7
  209. endoreg_db/serializers/raw_video_meta_validation.py +13 -0
  210. endoreg_db/serializers/video.py +6 -13
  211. endoreg_db/serializers/video_segmentation.py +492 -0
  212. endoreg_db/templates/admin/patient_finding_intervention.html +253 -0
  213. endoreg_db/templates/admin/start_examination.html +12 -0
  214. endoreg_db/templates/timeline.html +176 -0
  215. endoreg_db/urls.py +173 -0
  216. endoreg_db/utils/__init__.py +36 -1
  217. endoreg_db/utils/dataloader.py +45 -19
  218. endoreg_db/utils/dates.py +39 -0
  219. endoreg_db/utils/hashs.py +122 -4
  220. endoreg_db/utils/names.py +74 -0
  221. endoreg_db/utils/parse_and_generate_yaml.py +46 -0
  222. endoreg_db/utils/pydantic_models/__init__.py +6 -0
  223. endoreg_db/utils/pydantic_models/db_config.py +57 -0
  224. endoreg_db/utils/validate_endo_roi.py +19 -0
  225. endoreg_db/utils/validate_subcategory_dict.py +91 -0
  226. endoreg_db/utils/video/__init__.py +13 -0
  227. endoreg_db/utils/video/extract_frames.py +121 -0
  228. endoreg_db/utils/video/transcode_videofile.py +111 -0
  229. endoreg_db/views/__init__.py +2 -0
  230. endoreg_db/views/csrf.py +7 -0
  231. endoreg_db/views/patient_views.py +90 -0
  232. endoreg_db/views/raw_video_meta_validation_views.py +38 -0
  233. endoreg_db/views/report_views.py +96 -0
  234. endoreg_db/views/video_segmentation_views.py +149 -0
  235. endoreg_db/views/views_for_timeline.py +46 -0
  236. endoreg_db/views.py +0 -3
  237. endoreg_db-0.6.1.dist-info/METADATA +151 -0
  238. endoreg_db-0.6.1.dist-info/RECORD +420 -0
  239. {endoreg_db-0.5.3.dist-info → endoreg_db-0.6.1.dist-info}/WHEEL +1 -1
  240. endoreg_db/data/active_model/data.yaml +0 -3
  241. endoreg_db/data/label/label-set/data.yaml +0 -18
  242. endoreg_db/management/commands/delete_legacy_images.py +0 -19
  243. endoreg_db/management/commands/delete_legacy_videos.py +0 -17
  244. endoreg_db/management/commands/extract_legacy_video_frames.py +0 -18
  245. endoreg_db/management/commands/import_legacy_images.py +0 -94
  246. endoreg_db/management/commands/import_legacy_videos.py +0 -76
  247. endoreg_db/management/commands/load_label_data.py +0 -67
  248. endoreg_db/migrations/0002_anonymizedimagelabel_anonymousimageannotation_and_more.py +0 -55
  249. endoreg_db/migrations/0003_anonymousimageannotation_original_image_url_and_more.py +0 -39
  250. endoreg_db/migrations/0004_alter_rawpdffile_file.py +0 -20
  251. endoreg_db/migrations/0005_uploadedfile_alter_rawpdffile_file_anonymizedfile.py +0 -40
  252. endoreg_db/migrations/0006_alter_rawpdffile_file.py +0 -20
  253. endoreg_db/migrations/0007_networkdevicelogentry_datetime_and_more.py +0 -43
  254. endoreg_db/migrations/0008_networkdevicelogentry_aglnet_ip_and_more.py +0 -28
  255. endoreg_db/migrations/0009_alter_networkdevicelogentry_vpn_service_status.py +0 -18
  256. endoreg_db/migrations/0010_remove_networkdevicelogentry_hostname.py +0 -17
  257. endoreg_db/models/legacy_data/__init__.py +0 -3
  258. endoreg_db/models/legacy_data/image.py +0 -34
  259. endoreg_db/models/patient_examination/__init__.py +0 -35
  260. endoreg_db/utils/video_metadata.py +0 -87
  261. endoreg_db-0.5.3.dist-info/METADATA +0 -28
  262. endoreg_db-0.5.3.dist-info/RECORD +0 -319
  263. /endoreg_db/{models/persons/patient/case → case_generator}/__init__.py +0 -0
  264. /endoreg_db/data/{label → ai_model_label}/label-type/data.yaml +0 -0
  265. /endoreg_db/data/{model_type → ai_model_type}/data.yaml +0 -0
  266. /endoreg_db/{data/distribution/numeric/.init → management/__init__.py} +0 -0
  267. /endoreg_db/management/commands/{load_report_reader_flag.py → load_report_reader_flag_data.py} +0 -0
  268. {endoreg_db-0.5.3.dist-info → endoreg_db-0.6.1.dist-info}/licenses/LICENSE +0 -0
@@ -4,12 +4,29 @@
4
4
  name_de: "männlich"
5
5
  name_en: "male"
6
6
  abbreviation: "m"
7
+ - model: endoreg_db.gender
8
+ fields:
9
+ name: "mostly_male"
10
+ name_de: "überwiegend männlich"
11
+ name_en: "mostly male"
7
12
  - model: endoreg_db.gender
8
13
  fields:
9
14
  name: "female"
10
15
  name_de: "weiblich"
11
16
  name_en: "female"
12
17
  abbreviation: "f"
18
+ - model: endoreg_db.gender
19
+ fields:
20
+ name: "mostly_femaly"
21
+ name_de: "überwiegend weiblich"
22
+ name_en: "mostly female"
23
+ abbreviation: "mf"
24
+ - model: endoreg_db.gender
25
+ fields:
26
+ name: "andy"
27
+ name_de: "andy"
28
+ name_en: "andy"
29
+ abbreviation: "andy"
13
30
  - model: endoreg_db.gender
14
31
  fields:
15
32
  name: "other"
@@ -20,6 +20,7 @@
20
20
  "max": 170
21
21
  }
22
22
  }
23
+ default_numerical_value_distribution: "uniform_default"
23
24
 
24
25
  - model: endoreg_db.lab_value
25
26
  fields:
@@ -28,4 +29,9 @@
28
29
  name_en: "Creatine Kinase MB"
29
30
  abbreviation: "CKMB%"
30
31
  default_unit: "percent"
31
- default_normal_range: {"max": 5}
32
+ default_normal_range: {
33
+ "min": 0.01,
34
+ "max": 5
35
+ }
36
+ default_numerical_value_distribution: "uniform_default"
37
+
@@ -7,6 +7,7 @@
7
7
  abbreviation: "PTT"
8
8
  default_unit: "seconds"
9
9
  default_normal_range: {"min": 11, "max": 13}
10
+ default_numerical_value_distribution: "uniform_default"
10
11
 
11
12
  # International normalized ratio (INR): 0.9-1.2
12
13
  - model: endoreg_db.lab_value
@@ -17,6 +18,7 @@
17
18
  abbreviation: "INR"
18
19
  default_unit: "ratio"
19
20
  default_normal_range: {"min": 0.9, "max": 1.2}
21
+ default_numerical_value_distribution: "uniform_default"
20
22
 
21
23
  # Activated partial thromboplastin time (aPTT): 25–35 seconds
22
24
  - model: endoreg_db.lab_value
@@ -27,6 +29,7 @@
27
29
  abbreviation: "aPTT"
28
30
  default_unit: "seconds"
29
31
  default_normal_range: {"min": 25, "max": 35}
32
+ default_numerical_value_distribution: "uniform_default"
30
33
 
31
34
  # Fibrinogen: 150-350 mg/dL (1.5-3.5 g/L)
32
35
  - model: endoreg_db.lab_value
@@ -37,6 +40,7 @@
37
40
  abbreviation: "Fib"
38
41
  default_unit: "miligram per deciliter"
39
42
  default_normal_range: {"min": 150, "max": 350}
43
+ default_numerical_value_distribution: "uniform_default"
40
44
 
41
45
  # Bleeding time: <8 minutes
42
46
  - model: endoreg_db.lab_value
@@ -46,4 +50,5 @@
46
50
  name_en: "Bleeding time"
47
51
  abbreviation: "BT"
48
52
  default_unit: "minutes"
49
- default_normal_range: {"max": 8}
53
+ default_normal_range: {"min": 0.5, "max": 8}
54
+ default_numerical_value_distribution: "uniform_default"
@@ -7,6 +7,8 @@
7
7
  name_en: "Ammonia"
8
8
  default_unit: "microgram per deciliter"
9
9
  default_normal_range: {"min": 40, "max": 70}
10
+ default_numerical_value_distribution: "uniform_default"
11
+
10
12
 
11
13
  - model: endoreg_db.lab_value
12
14
  fields:
@@ -15,6 +17,8 @@
15
17
  name_en: "Ceruloplasmin"
16
18
  default_unit: "miligram per deciliter"
17
19
  default_normal_range: {"min": 25, "max": 43}
20
+ default_numerical_value_distribution: "uniform_default"
21
+
18
22
 
19
23
  - model: endoreg_db.lab_value
20
24
  fields:
@@ -23,6 +27,8 @@
23
27
  name_en: "Chloride"
24
28
  default_unit: "milimole per liter"
25
29
  default_normal_range: {"min": 95, "max": 105}
30
+ default_numerical_value_distribution: "uniform_default"
31
+
26
32
 
27
33
  - model: endoreg_db.lab_value
28
34
  fields:
@@ -31,6 +37,8 @@
31
37
  name_en: "Copper"
32
38
  default_unit: "microgram per deciliter"
33
39
  default_normal_range: {"min": 100, "max": 200}
40
+ default_numerical_value_distribution: "uniform_default"
41
+
34
42
 
35
43
  - model: endoreg_db.lab_value
36
44
  fields:
@@ -39,6 +47,8 @@
39
47
  name_en: "Creatinine"
40
48
  default_unit: "miligram per deciliter"
41
49
  default_normal_range: {"min": 0.8, "max": 1.3}
50
+ default_numerical_value_distribution: "uniform_default"
51
+
42
52
 
43
53
  - model: endoreg_db.lab_value
44
54
  fields:
@@ -47,6 +57,8 @@
47
57
  name_en: "Blood Urea Nitrogen"
48
58
  default_unit: "miligram per deciliter"
49
59
  default_normal_range: {"min": 8, "max": 20}
60
+ default_numerical_value_distribution: "uniform_default"
61
+
50
62
 
51
63
  - model: endoreg_db.lab_value
52
64
  fields:
@@ -55,6 +67,8 @@
55
67
  name_en: "Ferritin"
56
68
  default_unit: "nanogram per mililiter"
57
69
  default_normal_range: {"min": 24, "max": 336}
70
+ default_numerical_value_distribution: "uniform_default"
71
+
58
72
 
59
73
  # Glucose:70–99 mg/dL
60
74
  - model: endoreg_db.lab_value
@@ -64,6 +78,8 @@
64
78
  name_en: "Glucose"
65
79
  default_unit: "miligram per deciliter"
66
80
  default_normal_range: {"min": 70, "max": 99}
81
+ default_numerical_value_distribution: "uniform_default"
82
+
67
83
  # Inorganic phosphorous: 3-4.5 mg/dL
68
84
  - model: endoreg_db.lab_value
69
85
  fields:
@@ -72,6 +88,8 @@
72
88
  name_en: "Inorganic Phosphorous"
73
89
  default_unit: "miligram per deciliter"
74
90
  default_normal_range: {"min": 3, "max": 4.5}
91
+ default_numerical_value_distribution: "uniform_default"
92
+
75
93
 
76
94
  # Ionized calcium: 1.12–1.23 mmol/L
77
95
  - model: endoreg_db.lab_value
@@ -81,6 +99,8 @@
81
99
  name_en: "Ionized Calcium"
82
100
  default_unit: "milimole per liter"
83
101
  default_normal_range: {"min": 1.12, "max": 1.23}
102
+ default_numerical_value_distribution: "uniform_default"
103
+
84
104
 
85
105
  # Magnesium: 1.6–2.6 mg/dL
86
106
  - model: endoreg_db.lab_value
@@ -90,6 +110,8 @@
90
110
  name_en: "Magnesium"
91
111
  default_unit: "miligram per deciliter"
92
112
  default_normal_range: {"min": 1.6, "max": 2.6}
113
+ default_numerical_value_distribution: "uniform_default"
114
+
93
115
 
94
116
  # Phosphate: 2.5 to 4.5 mg/dL (0.81 to 1.45 mmol/L)
95
117
  - model: endoreg_db.lab_value
@@ -99,6 +121,8 @@
99
121
  name_en: "Phosphate"
100
122
  default_unit: "miligram per deciliter"
101
123
  default_normal_range: {"min": 2.5, "max": 4.5}
124
+ default_numerical_value_distribution: "uniform_default"
125
+
102
126
 
103
127
  # Potassium: 3.5–5.0 mEq/L
104
128
  - model: endoreg_db.lab_value
@@ -108,6 +132,8 @@
108
132
  name_en: "Potassium"
109
133
  default_unit: "miliequivalent per liter"
110
134
  default_normal_range: {"min": 3.5, "max": 5.0}
135
+ default_numerical_value_distribution: "uniform_default"
136
+
111
137
 
112
138
  # Pyruvate: .08-0.16 mmol/L
113
139
  - model: endoreg_db.lab_value
@@ -117,6 +143,8 @@
117
143
  name_en: "Pyruvate"
118
144
  default_unit: "milimole per liter"
119
145
  default_normal_range: {"min": 0.08, "max": 0.16}
146
+ default_numerical_value_distribution: "uniform_default"
147
+
120
148
 
121
149
  # Sodium: 136–145 mEq/L
122
150
  - model: endoreg_db.lab_value
@@ -126,6 +154,8 @@
126
154
  name_en: "Sodium"
127
155
  default_unit: "miliequivalent per liter"
128
156
  default_normal_range: {"min": 136, "max": 145}
157
+ default_numerical_value_distribution: "uniform_default"
158
+
129
159
 
130
160
  # Total calcium: 2-2.6 mmol/L (9-10.5 mg/dL)
131
161
  - model: endoreg_db.lab_value
@@ -135,6 +165,8 @@
135
165
  name_en: "Total Calcium"
136
166
  default_unit: "milimole per liter"
137
167
  default_normal_range: {"min": 2, "max": 2.6}
168
+ default_numerical_value_distribution: "uniform_default"
169
+
138
170
 
139
171
  # Total iron-binding capacity: 250–310 μg/dL
140
172
  - model: endoreg_db.lab_value
@@ -144,6 +176,7 @@
144
176
  name_en: "Total Iron-binding Capacity"
145
177
  default_unit: "microgram per deciliter"
146
178
  default_normal_range: {"min": 250, "max": 310}
179
+ default_numerical_value_distribution: "uniform_default"
147
180
 
148
181
  # Total serum iron: 50–150 μg/dL
149
182
  - model: endoreg_db.lab_value
@@ -153,6 +186,7 @@
153
186
  name_en: "Total Serum Iron"
154
187
  default_unit: "microgram per deciliter"
155
188
  default_normal_range: {"min": 50, "max": 150}
189
+ default_numerical_value_distribution: "uniform_default"
156
190
 
157
191
 
158
192
  # Transferrin: 200–400 mg/dL
@@ -163,6 +197,7 @@
163
197
  name_en: "Transferrin"
164
198
  default_unit: "miligram per deciliter"
165
199
  default_normal_range: {"min": 200, "max": 400}
200
+ default_numerical_value_distribution: "uniform_default"
166
201
 
167
202
  # Urea: 1.2-3 mmol/L
168
203
  - model: endoreg_db.lab_value
@@ -172,6 +207,7 @@
172
207
  name_en: "Urea"
173
208
  default_unit: "milimole per liter"
174
209
  default_normal_range: {"min": 1.2, "max": 3 }
210
+ default_numerical_value_distribution: "uniform_default"
175
211
  # Uric acid: 0.18-0.48 mmol/L
176
212
  - model: endoreg_db.lab_value
177
213
  fields:
@@ -180,6 +216,7 @@
180
216
  name_en: "Uric Acid"
181
217
  default_unit: "milimole per liter"
182
218
  default_normal_range: {"min": 0.18, "max": 0.48}
219
+ default_numerical_value_distribution: "uniform_default"
183
220
  # Zinc: 75–140 μg/dL
184
221
  - model: endoreg_db.lab_value
185
222
  fields:
@@ -187,4 +224,5 @@
187
224
  name_de: "Zink"
188
225
  name_en: "Zinc"
189
226
  default_unit: "microgram per deciliter"
190
- default_normal_range: {"min": 75, "max": 140}
227
+ default_normal_range: {"min": 75, "max": 140}
228
+ default_numerical_value_distribution: "uniform_default"
@@ -7,6 +7,7 @@
7
7
  name_en: "Albumin"
8
8
  default_unit: "gram per deciliter"
9
9
  default_normal_range: {"min": 3.5, "max": 5.5}
10
+ default_numerical_value_distribution: "uniform_default"
10
11
 
11
12
  - model: endoreg_db.lab_value
12
13
  fields:
@@ -15,6 +16,7 @@
15
16
  name_en: "Alkaline Phosphatase"
16
17
  default_unit: "units per liter"
17
18
  default_normal_range: {"min": 30, "max": 120}
19
+ default_numerical_value_distribution: "uniform_default"
18
20
 
19
21
  # ALT and GPT are the same enzyme
20
22
  - model: endoreg_db.lab_value
@@ -25,6 +27,7 @@
25
27
  abbreviation: "ALT"
26
28
  default_unit: "units per liter"
27
29
  default_normal_range: {"min": 10, "max": 40}
30
+ default_numerical_value_distribution: "uniform_default"
28
31
 
29
32
  - model: endoreg_db.lab_value
30
33
  fields:
@@ -34,6 +37,7 @@
34
37
  abbreviation: "GPT"
35
38
  default_unit: "units per liter"
36
39
  default_normal_range: {"min": 10, "max": 40}
40
+ default_numerical_value_distribution: "uniform_default"
37
41
 
38
42
  - model: endoreg_db.lab_value
39
43
  fields:
@@ -42,6 +46,7 @@
42
46
  name_en: "Amylase"
43
47
  default_unit: "units per liter"
44
48
  default_normal_range: {"min": 25, "max": 125}
49
+ default_numerical_value_distribution: "uniform_default"
45
50
 
46
51
  # Aspartate aminotransferase (AST): 10–40 U/L
47
52
  - model: endoreg_db.lab_value
@@ -52,6 +57,7 @@
52
57
  abbreviation: "AST"
53
58
  default_unit: "units per liter"
54
59
  default_normal_range: {"min": 10, "max": 40}
60
+ default_numerical_value_distribution: "uniform_default"
55
61
 
56
62
  # AST and GOT are the same
57
63
  - model: endoreg_db.lab_value
@@ -62,6 +68,7 @@
62
68
  abbreviation: "GOT"
63
69
  default_unit: "units per liter"
64
70
  default_normal_range: {"min": 10, "max": 40}
71
+ default_numerical_value_distribution: "uniform_default"
65
72
 
66
73
 
67
74
  # Direct bilirubin: 0.1–0.3 mg/dL
@@ -72,6 +79,7 @@
72
79
  name_en: "Direct Bilirubin"
73
80
  default_unit: "miligram per deciliter"
74
81
  default_normal_range: {"min": 0.1, "max": 0.3}
82
+ default_numerical_value_distribution: "uniform_default"
75
83
 
76
84
  # Gamma glutamyl transferase: Female: 8–40 U/L; male: 9–50 U/L
77
85
  - model: endoreg_db.lab_value
@@ -82,6 +90,7 @@
82
90
  abbreviation: "GGT"
83
91
  default_unit: "units per liter"
84
92
  normal_range_gender_dependent: true
93
+ default_numerical_value_distribution: "uniform_default"
85
94
  default_normal_range: {
86
95
  "female": {
87
96
  "min": 8,
@@ -101,6 +110,7 @@
101
110
  name_en: "Lipase"
102
111
  default_unit: "units per liter"
103
112
  default_normal_range: {"min": 10, "max": 140}
113
+ default_numerical_value_distribution: "uniform_default"
104
114
 
105
115
  # Total bilirubin: 0.3–1.0 mg/dL
106
116
  - model: endoreg_db.lab_value
@@ -110,6 +120,7 @@
110
120
  name_en: "Total Bilirubin"
111
121
  default_unit: "miligram per deciliter"
112
122
  default_normal_range: {"min": 0.3, "max": 1.0}
123
+ default_numerical_value_distribution: "uniform_default"
113
124
 
114
125
  # Total protein: 5.5–9.0 g/dL
115
126
  - model: endoreg_db.lab_value
@@ -119,3 +130,4 @@
119
130
  name_en: "Total Protein"
120
131
  default_unit: "gram per deciliter"
121
132
  default_normal_range: {"min": 5.5, "max": 9.0}
133
+ default_numerical_value_distribution: "uniform_default"
@@ -16,6 +16,7 @@
16
16
  "min": 12, "max": 16
17
17
  }
18
18
  }
19
+ default_numerical_value_distribution: "uniform_default"
19
20
 
20
21
  # Hematocrit Female: 37%–47%; male: 42%–50%
21
22
  - model: endoreg_db.lab_value
@@ -34,6 +35,7 @@
34
35
  "min": 37, "max": 47
35
36
  }
36
37
  }
38
+ default_numerical_value_distribution: "uniform_default"
37
39
 
38
40
  # Glycosylated hemoglobin 4.0%–5.6%
39
41
  - model:
@@ -44,6 +46,7 @@
44
46
  abbreviation: "HbA1c"
45
47
  default_unit: "percent"
46
48
  default_normal_range: {"min": 4.0, "max": 5.6}
49
+ default_numerical_value_distribution: "uniform_default"
47
50
 
48
51
  # Mean corpuscular volume (MCV): 80–98 fL
49
52
  - model: endoreg_db.lab_value
@@ -54,6 +57,7 @@
54
57
  abbreviation: "MCV"
55
58
  default_unit: "femtoliter"
56
59
  default_normal_range: {"min": 80, "max": 98}
60
+ default_numerical_value_distribution: "uniform_default"
57
61
 
58
62
  # Red blood cell distribution width (RDW): 9.0%–14.5%
59
63
  - model: endoreg_db.lab_value
@@ -64,6 +68,7 @@
64
68
  abbreviation: "RDW"
65
69
  default_unit: "percent"
66
70
  default_normal_range: {"min": 9.0, "max": 14.5}
71
+ default_numerical_value_distribution: "uniform_default"
67
72
 
68
73
  # Mean corpuscular hemoglobin (MCH): 28–32 pg
69
74
  - model: endoreg_db.lab_value
@@ -74,6 +79,7 @@
74
79
  abbreviation: "MCH"
75
80
  default_unit: "picogram"
76
81
  default_normal_range: {"min": 28, "max": 32}
82
+ default_numerical_value_distribution: "uniform_default"
77
83
 
78
84
  # Mean corpuscular hemoglobin concentration (MCHC): 33–36 g/dL
79
85
  - model: endoreg_db.lab_value
@@ -84,6 +90,7 @@
84
90
  abbreviation: "MCHC"
85
91
  default_unit: "gram per deciliter"
86
92
  default_normal_range: {"min": 33, "max": 36}
93
+ default_numerical_value_distribution: "uniform_default"
87
94
 
88
95
 
89
96
  # Reticulocytes 0.5%–1.5% of red cells
@@ -95,6 +102,7 @@
95
102
  abbreviation: "Reti"
96
103
  default_unit: "percent"
97
104
  default_normal_range: {"min": 0.5, "max": 1.5}
105
+ default_numerical_value_distribution: "uniform_default"
98
106
 
99
107
  # White blood cells (WBC) 4-10 x 10^9/L
100
108
  - model: endoreg_db.lab_value
@@ -105,6 +113,7 @@
105
113
  abbreviation: "WBC"
106
114
  default_unit: "x 10^9 per liter"
107
115
  default_normal_range: {"min": 4, "max": 10}
116
+ default_numerical_value_distribution: "uniform_default"
108
117
 
109
118
  # Neutrophils: 2-8 x 109/L
110
119
  - model: endoreg_db.lab_value
@@ -115,6 +124,7 @@
115
124
  abbreviation: "Neu"
116
125
  default_unit: "x 10^9 per liter"
117
126
  default_normal_range: {"min": 2, "max": 8}
127
+ default_numerical_value_distribution: "uniform_default"
118
128
 
119
129
 
120
130
  # Bands: < 1 x 109/L
@@ -125,7 +135,8 @@
125
135
  name_en: "Bands"
126
136
  abbreviation: "Bands"
127
137
  default_unit: "x 10^9 per liter"
128
- default_normal_range: {"max": 1}
138
+ default_normal_range: {"min": 0.0001, "max": 1}
139
+ default_numerical_value_distribution: "uniform_default"
129
140
 
130
141
  # Lymphocytes: 1000 to 4800/mcL (1 to 4.8 × 109/L)
131
142
  - model: endoreg_db.lab_value
@@ -136,6 +147,7 @@
136
147
  abbreviation: "Lym"
137
148
  default_unit: "x 10^9 per liter"
138
149
  default_normal_range: {"min": 1, "max": 4.8}
150
+ default_numerical_value_distribution: "uniform_default"
139
151
 
140
152
 
141
153
  # Monocytes: 0.2-0.8 x 109/L
@@ -147,6 +159,7 @@
147
159
  abbreviation: "Mon"
148
160
  default_unit: "x 10^9 per liter"
149
161
  default_normal_range: {"min": 0.2, "max": 0.8}
162
+ default_numerical_value_distribution: "uniform_default"
150
163
 
151
164
  # Eosinophils: .000-0.600 th/uL (0-6%)
152
165
  - model: endoreg_db.lab_value
@@ -156,7 +169,8 @@
156
169
  name_en: "Eosinophils"
157
170
  abbreviation: "Eos"
158
171
  default_unit: "x 10^9 per liter"
159
- default_normal_range: {"max": 0.6}
172
+ default_normal_range: {"min": 0.01, "max": 0.6}
173
+ default_numerical_value_distribution: "uniform_default"
160
174
 
161
175
  # Platelets: 150,000-350,000/µL (150-350 x 109/L)
162
176
  - model: endoreg_db.lab_value
@@ -167,3 +181,4 @@
167
181
  abbreviation: "Plt"
168
182
  default_unit: "x 10^9 per liter"
169
183
  default_normal_range: {"min": 150, "max": 350}
184
+ default_numerical_value_distribution: "uniform_default"
@@ -6,6 +6,7 @@
6
6
  abbreviation: "TBG"
7
7
  default_unit: "microgram per mililiter"
8
8
  default_normal_range: {"min": 12, "max": 27}
9
+ default_numerical_value_distribution: "uniform_default"
9
10
 
10
11
  - model: endoreg_db.lab_value
11
12
  fields:
@@ -15,6 +16,7 @@
15
16
  abbreviation: "TSH"
16
17
  default_unit: "microinternational units per mililiter"
17
18
  default_normal_range: {"min": 0.5, "max": 4.0}
19
+ default_numerical_value_distribution: "uniform_default"
18
20
 
19
21
  - model: endoreg_db.lab_value
20
22
  fields:
@@ -24,6 +26,7 @@
24
26
  abbreviation: "T4"
25
27
  default_unit: "microgram per deciliter"
26
28
  default_normal_range: {"min": 5, "max": 12}
29
+ default_numerical_value_distribution: "uniform_default"
27
30
 
28
31
  - model: endoreg_db.lab_value
29
32
  fields:
@@ -33,6 +36,7 @@
33
36
  abbreviation: "T3"
34
37
  default_unit: "nanogram per deciliter"
35
38
  default_normal_range: {"min": 80, "max": 180}
39
+ default_numerical_value_distribution: "uniform_default"
36
40
 
37
41
  - model: endoreg_db.lab_value
38
42
  fields:
@@ -42,6 +46,7 @@
42
46
  abbreviation: "fT3"
43
47
  default_unit: "picogram per mililiter"
44
48
  default_normal_range: {"min": 2.3, "max": 4.2}
49
+ default_numerical_value_distribution: "uniform_default"
45
50
 
46
51
  - model: endoreg_db.lab_value
47
52
  fields:
@@ -51,3 +56,4 @@
51
56
  abbreviation: "fT4"
52
57
  default_unit: "nanogram per deciliter"
53
58
  default_normal_range: {"min": 0.8, "max": 2.8}
59
+ default_numerical_value_distribution: "uniform_default"
@@ -9,7 +9,11 @@
9
9
  name_de: "Triglyceride"
10
10
  name_en: "Triglycerides"
11
11
  default_unit: "miligram per deciliter"
12
- default_normal_range: {"max": 150}
12
+ default_normal_range: {
13
+ "min": 0,
14
+ "max": 150
15
+ }
16
+ default_numerical_value_distribution: "uniform_default"
13
17
 
14
18
  - model: endoreg_db.lab_value
15
19
  fields:
@@ -17,7 +21,8 @@
17
21
  name_de: "Gesamtcholesterin"
18
22
  name_en: "Total Cholesterol"
19
23
  default_unit: "miligram per deciliter"
20
- default_normal_range: {"max": 200}
24
+ default_normal_range: {"min": 0,"max": 200}
25
+ default_numerical_value_distribution: "uniform_default"
21
26
 
22
27
  - model: endoreg_db.lab_value
23
28
  fields:
@@ -28,12 +33,15 @@
28
33
  normal_range_gender_dependent: true
29
34
  default_normal_range: {
30
35
  "female": {
36
+ "min": 10,
31
37
  "max": 50
32
38
  },
33
39
  "male": {
40
+ "min": 10,
34
41
  "max": 40
35
42
  }
36
43
  }
44
+ default_numerical_value_distribution: "uniform_default"
37
45
 
38
46
  - model: endoreg_db.lab_value
39
47
  fields:
@@ -41,4 +49,5 @@
41
49
  name_de: "Low-Density-Lipoprotein"
42
50
  name_en: "Low-Density Lipoprotein"
43
51
  default_unit: "miligram per deciliter"
44
- default_normal_range: {"max": 100}
52
+ default_normal_range: {"min": 20, "max": 100}
53
+ default_numerical_value_distribution: "uniform_default"
@@ -9,7 +9,8 @@
9
9
  name_en: "C-reactive protein"
10
10
  abbreviation: "CRP"
11
11
  default_unit: "miligram per deciliter"
12
- default_normal_range: {"max": 0.5}
12
+ default_normal_range: {"min": 0, "max": 0.5}
13
+ default_numerical_value_distribution: "uniform_default"
13
14
 
14
15
  - model: endoreg_db.lab_value
15
16
  fields:
@@ -18,7 +19,8 @@
18
19
  name_en: "D-dimer"
19
20
  abbreviation: "D-Dimer"
20
21
  default_unit: "nanogram per mililiter"
21
- default_normal_range: {"max": 300}
22
+ default_normal_range: {"min": 50, "max": 300}
23
+ default_numerical_value_distribution: "uniform_default"
22
24
 
23
25
  - model: endoreg_db.lab_value
24
26
  fields:
@@ -28,3 +30,4 @@
28
30
  abbreviation: "LDH"
29
31
  default_unit: "units per liter"
30
32
  default_normal_range: {"min": 60, "max": 160}
33
+ default_numerical_value_distribution: "uniform_default"
@@ -8,4 +8,5 @@
8
8
  default_normal_range: {
9
9
  "min": 60,
10
10
  "max": 120
11
- }
11
+ }
12
+ default_numerical_value_distribution: "uniform_default"
@@ -0,0 +1,54 @@
1
+ # Client Tags
2
+ - model: endoreg_db.lx_client_tag
3
+ fields:
4
+ name: "coloreg"
5
+ description: "Coloreg related clients"
6
+ permissions: [
7
+ "local_base_db_read",
8
+ "local_base_db_write",
9
+ ]
10
+
11
+ - model: endoreg_db.lx_client_tag
12
+ fields:
13
+ name: "client"
14
+ description: "General client"
15
+ permissions: [
16
+ "local_base_db_read",
17
+ "local_base_db_write",
18
+ ]
19
+
20
+ - model: endoreg_db.lx_client_tag
21
+ fields:
22
+ name: "server"
23
+ description: "General server"
24
+ permissions: [
25
+ "local_base_db_read",
26
+ "local_base_db_write",
27
+ ]
28
+
29
+ - model: endoreg_db.lx_client_tag
30
+ fields:
31
+ name: "production"
32
+ description: "Production environment"
33
+ permissions: [
34
+ "local_base_db_read",
35
+ "local_base_db_write",
36
+ ]
37
+
38
+ - model: endoreg_db.lx_client_tag
39
+ fields:
40
+ name: "development"
41
+ description: "Development environment"
42
+ permissions: [
43
+ "local_base_db_read",
44
+ "local_base_db_write",
45
+ ]
46
+
47
+ - model: endoreg_db.lx_client_tag
48
+ fields:
49
+ name: "test"
50
+ description: "Test environment"
51
+ permissions: [
52
+ "local_base_db_read",
53
+ "local_base_db_write",
54
+ ]
@@ -0,0 +1,30 @@
1
+ # Client Types
2
+ - model: endoreg_db.lx_clienttype
3
+ fields:
4
+ name: "base-client"
5
+ abbreviation: "c"
6
+
7
+ - model: endoreg_db.lx_clienttype
8
+ fields:
9
+ name: "gpu-client"
10
+ abbreviation: "gc"
11
+
12
+ - model: endoreg_db.lx_clienttype
13
+ fields:
14
+ name: "coloreg-client"
15
+ abbreviation: "cc"
16
+
17
+ - model: endoreg_db.lx_clienttype
18
+ fields:
19
+ name: "base-server"
20
+ abbreviation: "s"
21
+
22
+ - model: endoreg_db.lx_clienttype
23
+ fields:
24
+ name: "gpu-server"
25
+ abbreviation: "gs"
26
+
27
+ - model: endoreg_db.lx_clienttype
28
+ fields:
29
+ name: "storage-server"
30
+ abbreviation: "ss"