diff --git a/api/oh.yaml b/api/oh.yaml index 9d6d244b8..205bad261 100644 --- a/api/oh.yaml +++ b/api/oh.yaml @@ -7,19 +7,19 @@ info: license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 - version: '1.0' + version: "1.0" servers: - - url: https://oh2.open-hospital.org +- url: https://oh2.open-hospital.org security: - - bearerAuth: [] +- bearerAuth: [] paths: /wards: get: tags: - - Wards + - Wards operationId: getWards responses: - '200': + "200": description: OK content: application/json: @@ -28,10 +28,10 @@ paths: items: $ref: '#/components/schemas/WardDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Wards + - Wards operationId: updateWard requestBody: content: @@ -40,17 +40,17 @@ paths: $ref: '#/components/schemas/WardDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/WardDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Wards + - Wards operationId: newWard requestBody: content: @@ -59,26 +59,26 @@ paths: $ref: '#/components/schemas/WardDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/WardDTO' security: - - bearerAuth: [] + - bearerAuth: [] /visit/{visitID}: put: tags: - - Visit + - Visit operationId: updateVisit parameters: - - name: visitID - in: path - required: true - schema: - type: integer - format: int32 + - name: visitID + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -86,21 +86,21 @@ paths: $ref: '#/components/schemas/VisitDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/VisitDTO' security: - - bearerAuth: [] + - bearerAuth: [] /vaccinetype: get: tags: - - Vaccine Type + - Vaccine Type operationId: getVaccineType responses: - '200': + "200": description: OK content: application/json: @@ -109,10 +109,10 @@ paths: items: $ref: '#/components/schemas/VaccineTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Vaccine Type + - Vaccine Type operationId: updateVaccineType requestBody: content: @@ -121,17 +121,17 @@ paths: $ref: '#/components/schemas/VaccineTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/VaccineTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Vaccine Type + - Vaccine Type operationId: newVaccineType requestBody: content: @@ -140,21 +140,21 @@ paths: $ref: '#/components/schemas/VaccineTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/VaccineTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /vaccines: get: tags: - - Vaccines + - Vaccines operationId: getVaccines responses: - '200': + "200": description: OK content: application/json: @@ -163,10 +163,10 @@ paths: items: $ref: '#/components/schemas/VaccineDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Vaccines + - Vaccines operationId: updateVaccine requestBody: content: @@ -175,17 +175,17 @@ paths: $ref: '#/components/schemas/VaccineDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/VaccineDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Vaccines + - Vaccines operationId: newVaccine requestBody: content: @@ -194,27 +194,27 @@ paths: $ref: '#/components/schemas/VaccineDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/VaccineDTO' security: - - bearerAuth: [] + - bearerAuth: [] /users: get: tags: - - Users + - Users operationId: getUser parameters: - - name: group_id - in: query - required: false - schema: - type: string + - name: group_id + in: query + required: false + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -223,18 +223,18 @@ paths: items: $ref: '#/components/schemas/UserDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Users + - Users operationId: updateUser parameters: - - name: password - in: query - required: false - schema: - type: boolean - default: false + - name: password + in: query + required: false + schema: + type: boolean + default: false requestBody: content: application/json: @@ -242,17 +242,17 @@ paths: $ref: '#/components/schemas/UserDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Users + - Users operationId: newUser requestBody: content: @@ -261,21 +261,21 @@ paths: $ref: '#/components/schemas/UserDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /users/groups: get: tags: - - Users + - Users operationId: getUserGroup responses: - '200': + "200": description: OK content: application/json: @@ -284,10 +284,10 @@ paths: items: $ref: '#/components/schemas/UserGroupDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Users + - Users operationId: updateUserGroup requestBody: content: @@ -296,17 +296,17 @@ paths: $ref: '#/components/schemas/UserGroupDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Users + - Users operationId: newUserGroup requestBody: content: @@ -315,28 +315,28 @@ paths: $ref: '#/components/schemas/UserGroupDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /suppliers: get: tags: - - Suppliers + - Suppliers operationId: getSuppliers parameters: - - name: exclude_deleted - in: query - required: false - schema: - type: boolean - default: true + - name: exclude_deleted + in: query + required: false + schema: + type: boolean + default: true responses: - '200': + "200": description: OK content: application/json: @@ -345,10 +345,10 @@ paths: items: $ref: '#/components/schemas/SupplierDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Suppliers + - Suppliers operationId: updateSupplier requestBody: content: @@ -357,17 +357,17 @@ paths: $ref: '#/components/schemas/SupplierDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/SupplierDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Suppliers + - Suppliers operationId: saveSupplier requestBody: content: @@ -376,26 +376,26 @@ paths: $ref: '#/components/schemas/SupplierDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/SupplierDTO' security: - - bearerAuth: [] + - bearerAuth: [] /pricesothers/{id}: put: tags: - - Others Price + - others price operationId: updatePricesOthers parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -403,46 +403,46 @@ paths: $ref: '#/components/schemas/PricesOthersDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PricesOthersDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Others Price + - others price operationId: deletePricesOthers parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /pricelists/{id}: put: tags: - - Price Lists + - Price Lists operationId: updatePriceLists parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -450,45 +450,45 @@ paths: $ref: '#/components/schemas/PriceListDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PriceListDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Price Lists + - Price Lists operationId: deletePriceList parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /pregnanttreatmenttypes/{code}: put: tags: - - Pregnant Treatment Types + - Pregnant Treatment Types operationId: updatePregnantTreatmentTypes parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string requestBody: content: application/json: @@ -496,65 +496,65 @@ paths: $ref: '#/components/schemas/PregnantTreatmentTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PregnantTreatmentTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Pregnant Treatment Types + - Pregnant Treatment Types operationId: deletePregnantTreatmentType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /permissions/{id}: get: tags: - - Permissions + - permissions operationId: retrievePermissionById parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PermissionDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Permissions + - permissions operationId: updatePermission parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -562,46 +562,46 @@ paths: $ref: '#/components/schemas/PermissionDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PermissionDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Permissions + - permissions operationId: deletePermission parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /patientvaccines/{code}: put: tags: - - Patient Vaccines + - Patient Vaccines operationId: updatePatientVaccinet parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -609,66 +609,66 @@ paths: $ref: '#/components/schemas/PatientVaccineDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientVaccineDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Patient Vaccines + - Patient Vaccines operationId: deletePatientVaccine parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /patients/{code}: get: tags: - - Patients + - Patients operationId: getPatient parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Patients + - Patients operationId: updatePatient parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -676,66 +676,66 @@ paths: $ref: '#/components/schemas/PatientDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Patients + - Patients operationId: deletePatient parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /patientConsensus/{patientId}: get: tags: - - Patient Consensus + - Patient Consensus operationId: getPatientConsensus parameters: - - name: patientId - in: path - required: true - schema: - type: integer - format: int32 + - name: patientId + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientConsensusDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Patient Consensus + - Patient Consensus operationId: updatePatientConsensus parameters: - - name: patientId - in: path - required: true - schema: - type: integer - format: int32 + - name: patientId + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -743,25 +743,25 @@ paths: $ref: '#/components/schemas/PatientConsensusDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientConsensusDTO' security: - - bearerAuth: [] + - bearerAuth: [] /operationtypes/{code}: put: tags: - - Operations Types + - Operations Types operationId: updateOperationTypes parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string requestBody: content: application/json: @@ -769,63 +769,63 @@ paths: $ref: '#/components/schemas/OperationTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/OperationTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Operations Types + - Operations Types operationId: deleteOperationType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /operations/{code}: get: tags: - - Operations + - Operations operationId: getOperationByCode parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/OperationDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Operations + - Operations operationId: updateOperation parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string requestBody: content: application/json: @@ -833,37 +833,37 @@ paths: $ref: '#/components/schemas/OperationDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/OperationDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Operations + - Operations operationId: deleteOperation parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /operations/rows: put: tags: - - Operations + - Operations operationId: updateOperationRow requestBody: content: @@ -872,7 +872,7 @@ paths: $ref: '#/components/schemas/OperationRowDTO' required: true responses: - '200': + "200": description: OK content: application/json: @@ -880,10 +880,10 @@ paths: type: integer format: int32 security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Operations + - Operations operationId: newOperationRow requestBody: content: @@ -892,26 +892,26 @@ paths: $ref: '#/components/schemas/OperationRowDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/OperationRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] /opds/{code}: put: tags: - - Opds + - Opds operationId: updateOpd parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -919,46 +919,46 @@ paths: $ref: '#/components/schemas/OpdDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/OpdDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Opds + - Opds operationId: deleteOpd parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /opds/rows/{code}: put: tags: - - Opds + - Opds operationId: updateOpdWithOperationRow parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -966,21 +966,21 @@ paths: $ref: '#/components/schemas/OpdWithOperationRowDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/OpdWithOperationRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] /medstockmovementtype: get: tags: - - Medical Stock Movement Type + - Medical Stock Movement Type operationId: getMedicalDsrStockMovementType responses: - '200': + "200": description: OK content: application/json: @@ -989,10 +989,10 @@ paths: items: $ref: '#/components/schemas/MovementTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Medical Stock Movement Type + - Medical Stock Movement Type operationId: updateMedicalDsrStockMovementType requestBody: content: @@ -1001,17 +1001,17 @@ paths: $ref: '#/components/schemas/MovementTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/MovementTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Medical Stock Movement Type + - Medical Stock Movement Type operationId: newMedicalDsrStockMovementType requestBody: content: @@ -1020,21 +1020,21 @@ paths: $ref: '#/components/schemas/MovementTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/MovementTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /medicaltypes: get: tags: - - Medical Types + - Medical Types operationId: getMedicalTypes responses: - '200': + "200": description: OK content: application/json: @@ -1043,10 +1043,10 @@ paths: items: $ref: '#/components/schemas/MedicalTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Medical Types + - Medical Types operationId: updateMedicalType requestBody: content: @@ -1055,17 +1055,17 @@ paths: $ref: '#/components/schemas/MedicalTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/MedicalTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Medical Types + - Medical Types operationId: createMedicalType requestBody: content: @@ -1074,31 +1074,31 @@ paths: $ref: '#/components/schemas/MedicalTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/MedicalTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /medicals: get: tags: - - Medicals + - Medicals operationId: getMedicals parameters: - - name: sort_by - in: query - required: false - schema: - type: string - enum: - - NONE - - CODE - - NAME + - name: sort_by + in: query + required: false + schema: + type: string + enum: + - NONE + - CODE + - NAME responses: - '200': + "200": description: OK content: application/json: @@ -1107,18 +1107,18 @@ paths: items: $ref: '#/components/schemas/MedicalDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Medicals + - Medicals operationId: updateMedical parameters: - - name: ignore_similar - in: query - required: false - schema: - type: boolean - default: false + - name: ignore_similar + in: query + required: false + schema: + type: boolean + default: false requestBody: content: application/json: @@ -1126,25 +1126,25 @@ paths: $ref: '#/components/schemas/MedicalDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/MedicalDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Medicals + - Medicals operationId: newMedical parameters: - - name: ignore_similar - in: query - required: false - schema: - type: boolean - default: false + - name: ignore_similar + in: query + required: false + schema: + type: boolean + default: false requestBody: content: application/json: @@ -1152,18 +1152,18 @@ paths: $ref: '#/components/schemas/MedicalDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/MedicalDTO' security: - - bearerAuth: [] + - bearerAuth: [] /malnutritions: put: tags: - - Malnutritions + - Malnutritions operationId: updateMalnutrition requestBody: content: @@ -1172,17 +1172,17 @@ paths: $ref: '#/components/schemas/MalnutritionDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/MalnutritionDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Malnutritions + - Malnutritions operationId: newMalnutrition requestBody: content: @@ -1191,66 +1191,66 @@ paths: $ref: '#/components/schemas/MalnutritionDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/MalnutritionDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Malnutritions + - Malnutritions operationId: deleteMalnutrition parameters: - - name: code - in: query - required: true - schema: - type: integer - format: int32 + - name: code + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /laboratories/{code}: get: tags: - - Laboratories + - Laboratories operationId: getExamById parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/LaboratoryDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Laboratories + - Laboratories operationId: updateLaboratory parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -1258,91 +1258,91 @@ paths: $ref: '#/components/schemas/LabWithRowsDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Laboratories + - Laboratories operationId: deleteExam parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /laboratories/examRequest/{code}: put: tags: - - Laboratories + - Laboratories operationId: updateExamRequest parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 - - name: status - in: query - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: integer + format: int32 + - name: status + in: query + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Laboratories + - Laboratories operationId: deleteExamRequest parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /hospitals/{code}: put: tags: - - Hospitals + - Hospitals operationId: updateHospital parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string requestBody: content: application/json: @@ -1350,25 +1350,25 @@ paths: $ref: '#/components/schemas/HospitalDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/HospitalDTO' security: - - bearerAuth: [] + - bearerAuth: [] /examtypes/{code}: put: tags: - - Exam Types + - Exam Types operationId: updateExamType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string requestBody: content: application/json: @@ -1376,44 +1376,44 @@ paths: $ref: '#/components/schemas/ExamTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/ExamTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Exam Types + - Exam Types operationId: deleteExamType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /exams/{code}: put: tags: - - Exams + - Exams operationId: updateExams parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string requestBody: content: application/json: @@ -1421,65 +1421,65 @@ paths: $ref: '#/components/schemas/ExamDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/ExamDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Exams + - Exams operationId: deleteExam_1 parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /examinations/{id}: get: tags: - - Examinations + - Examinations operationId: getByID parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientExaminationDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Examinations + - Examinations operationId: updateExamination parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -1487,21 +1487,21 @@ paths: $ref: '#/components/schemas/PatientExaminationDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /diseasetypes: get: tags: - - Disease Types + - Disease Types operationId: getAllDiseaseTypes responses: - '200': + "200": description: OK content: application/json: @@ -1510,10 +1510,10 @@ paths: items: $ref: '#/components/schemas/DiseaseTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Disease Types + - Disease Types operationId: updateDiseaseType requestBody: content: @@ -1522,17 +1522,17 @@ paths: $ref: '#/components/schemas/DiseaseTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/DiseaseTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Disease Types + - Disease Types operationId: newDiseaseType requestBody: content: @@ -1541,18 +1541,18 @@ paths: $ref: '#/components/schemas/DiseaseTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/DiseaseTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /diseases: put: tags: - - Diseases + - Diseases operationId: updateDisease requestBody: content: @@ -1561,17 +1561,17 @@ paths: $ref: '#/components/schemas/DiseaseDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Diseases + - Diseases operationId: newDisease requestBody: content: @@ -1580,21 +1580,21 @@ paths: $ref: '#/components/schemas/DiseaseDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] /dischargetypes: get: tags: - - DischargeType + - DischargeType operationId: getDischargeTypes responses: - '200': + "200": description: OK content: application/json: @@ -1603,10 +1603,10 @@ paths: items: $ref: '#/components/schemas/DischargeTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - DischargeType + - DischargeType operationId: updateDischargeTypet requestBody: content: @@ -1615,17 +1615,17 @@ paths: $ref: '#/components/schemas/DischargeTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/DischargeTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - DischargeType + - DischargeType operationId: newDischargeType requestBody: content: @@ -1634,21 +1634,21 @@ paths: $ref: '#/components/schemas/DischargeTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/DischargeTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /deliverytypes: get: tags: - - Delivery Type + - Delivery Type operationId: getDeliveryTypes responses: - '200': + "200": description: OK content: application/json: @@ -1657,10 +1657,10 @@ paths: items: $ref: '#/components/schemas/DeliveryTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Delivery Type + - Delivery Type operationId: updateDeliveryTypes requestBody: content: @@ -1669,17 +1669,17 @@ paths: $ref: '#/components/schemas/DeliveryTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/DeliveryTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Delivery Type + - Delivery Type operationId: newDeliveryType requestBody: content: @@ -1688,21 +1688,21 @@ paths: $ref: '#/components/schemas/DeliveryTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/DeliveryTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /deliveryresulttypes: get: tags: - - Delivery Result Type + - Delivery Result Type operationId: getDeliveryResultTypes responses: - '200': + "200": description: OK content: application/json: @@ -1711,10 +1711,10 @@ paths: items: $ref: '#/components/schemas/DeliveryResultTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Delivery Result Type + - Delivery Result Type operationId: updateDeliveryResultTypes requestBody: content: @@ -1723,17 +1723,17 @@ paths: $ref: '#/components/schemas/DeliveryResultTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/DeliveryResultTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Delivery Result Type + - Delivery Result Type operationId: newDeliveryResultType requestBody: content: @@ -1742,46 +1742,46 @@ paths: $ref: '#/components/schemas/DeliveryResultTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/DeliveryResultTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /bills/{id}: get: tags: - - Bills + - Bills operationId: getBill parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/BillDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Bills + - Bills operationId: updateBill parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -1789,41 +1789,41 @@ paths: $ref: '#/components/schemas/FullBillDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/FullBillDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Bills + - Bills operationId: deleteBill parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /agetypes: get: tags: - - AgeTypes + - AgeTypes operationId: getAllAgeTypes responses: - '200': + "200": description: OK content: application/json: @@ -1832,10 +1832,10 @@ paths: items: $ref: '#/components/schemas/AgeTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - AgeTypes + - AgeTypes operationId: updateAgeType requestBody: content: @@ -1844,21 +1844,21 @@ paths: $ref: '#/components/schemas/AgeTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/AgeTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /admissiontypes: get: tags: - - AdmissionTypes + - AdmissionTypes operationId: getAdmissionTypes responses: - '200': + "200": description: OK content: application/json: @@ -1867,10 +1867,10 @@ paths: items: $ref: '#/components/schemas/AdmissionTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - AdmissionTypes + - AdmissionTypes operationId: updateAdmissionTypes requestBody: content: @@ -1879,17 +1879,17 @@ paths: $ref: '#/components/schemas/AdmissionTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/AdmissionTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - AdmissionTypes + - AdmissionTypes operationId: newAdmissionType requestBody: content: @@ -1898,61 +1898,61 @@ paths: $ref: '#/components/schemas/AdmissionTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/AdmissionTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /admissions: get: tags: - - Admissions + - Admissions operationId: getAdmissions parameters: - - name: admissionrange - in: query - required: true - schema: - type: array - items: - type: string - - name: page - in: query - required: false - schema: - type: integer - format: int32 - default: 0 - - name: size - in: query - required: false - schema: - type: integer - format: int32 - default: 80 - - name: paged - in: query - required: false - schema: - type: boolean - default: false - responses: - '200': + - name: admissionrange + in: query + required: true + schema: + type: array + items: + type: string + - name: page + in: query + required: false + schema: + type: integer + format: int32 + default: 0 + - name: size + in: query + required: false + schema: + type: integer + format: int32 + default: 80 + - name: paged + in: query + required: false + schema: + type: boolean + default: false + responses: + "400": + description: Bad Request + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PageAdmissionDTO' - '400': - description: Bad Request security: - - bearerAuth: [] + - bearerAuth: [] put: tags: - - Admissions + - Admissions operationId: updateAdmissions requestBody: content: @@ -1961,19 +1961,19 @@ paths: $ref: '#/components/schemas/AdmissionDTO' required: true responses: - '200': + "400": + description: Bad Request + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/AdmissionDTO' - '400': - description: Bad Request security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Admissions + - Admissions operationId: newAdmissions requestBody: content: @@ -1982,20 +1982,20 @@ paths: $ref: '#/components/schemas/AdmissionDTO' required: true responses: - '200': + "400": + description: Bad Request + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/AdmissionDTO' - '400': - description: Bad Request security: - - bearerAuth: [] + - bearerAuth: [] /visits: post: tags: - - Visit + - Visit operationId: newVisits requestBody: content: @@ -2006,18 +2006,18 @@ paths: $ref: '#/components/schemas/VisitDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /visit: post: tags: - - Visit + - Visit operationId: newVisit requestBody: content: @@ -2026,18 +2026,18 @@ paths: $ref: '#/components/schemas/VisitDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/VisitDTO' security: - - bearerAuth: [] + - bearerAuth: [] /usersettings: post: tags: - - User Settings + - User Settings operationId: newUserSetting requestBody: content: @@ -2046,25 +2046,25 @@ paths: $ref: '#/components/schemas/UserSettingDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/UserSettingDTO' security: - - bearerAuth: [] + - bearerAuth: [] /users/groups/{group_code}: post: tags: - - Users + - Users operationId: setGroupMenu parameters: - - name: group_code - in: path - required: true - schema: - type: string + - name: group_code + in: path + required: true + schema: + type: string requestBody: content: application/json: @@ -2074,37 +2074,37 @@ paths: $ref: '#/components/schemas/UserMenuItemDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Users + - Users operationId: deleteGroup parameters: - - name: group_code - in: path - required: true - schema: - type: string + - name: group_code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /therapies: post: tags: - - Therapies + - Therapies operationId: newTherapy requestBody: content: @@ -2113,18 +2113,18 @@ paths: $ref: '#/components/schemas/TherapyRowDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/TherapyRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] /therapies/replace: post: tags: - - Therapies + - Therapies operationId: replaceTherapies requestBody: content: @@ -2135,18 +2135,18 @@ paths: $ref: '#/components/schemas/TherapyRowDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/TherapyRow' security: - - bearerAuth: [] + - bearerAuth: [] /therapies/meds-out-of-stock: post: tags: - - Therapies + - Therapies operationId: getMedicalsOutOfStock requestBody: content: @@ -2157,7 +2157,7 @@ paths: $ref: '#/components/schemas/TherapyDTO' required: true responses: - '200': + "200": description: OK content: application/json: @@ -2166,11 +2166,11 @@ paths: items: $ref: '#/components/schemas/MedicalDTO' security: - - bearerAuth: [] + - bearerAuth: [] /therapies/from-rows: post: tags: - - Therapies + - Therapies operationId: getTherapies requestBody: content: @@ -2181,7 +2181,7 @@ paths: $ref: '#/components/schemas/TherapyRowDTO' required: true responses: - '200': + "200": description: OK content: application/json: @@ -2190,11 +2190,11 @@ paths: items: $ref: '#/components/schemas/TherapyDTO' security: - - bearerAuth: [] + - bearerAuth: [] /therapies/from-row: post: tags: - - Therapies + - Therapies operationId: getTherapy requestBody: content: @@ -2203,25 +2203,25 @@ paths: $ref: '#/components/schemas/TherapyRowDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/TherapyDTO' security: - - bearerAuth: [] + - bearerAuth: [] /stockmovements/discharge: post: tags: - - Stock Movements + - Stock Movements operationId: newMultipleDischargingMovements parameters: - - name: ref - in: query - required: true - schema: - type: string + - name: ref + in: query + required: true + schema: + type: string requestBody: content: application/json: @@ -2231,25 +2231,25 @@ paths: $ref: '#/components/schemas/MovementDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /stockmovements/charge: post: tags: - - Stock Movements + - Stock Movements operationId: newMultipleChargingMovements parameters: - - name: ref - in: query - required: true - schema: - type: string + - name: ref + in: query + required: true + schema: + type: string requestBody: content: application/json: @@ -2259,32 +2259,32 @@ paths: $ref: '#/components/schemas/MovementDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /sms: get: tags: - - SMS + - SMS operationId: getAll parameters: - - name: dateFrom - in: query - required: true - schema: - type: string - - name: dateTo - in: query - required: true - schema: - type: string + - name: dateFrom + in: query + required: true + schema: + type: string + - name: dateTo + in: query + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -2293,18 +2293,18 @@ paths: items: $ref: '#/components/schemas/SmsDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - SMS + - SMS operationId: saveSms parameters: - - name: split - in: query - required: false - schema: - type: boolean - default: false + - name: split + in: query + required: false + schema: + type: boolean + default: false requestBody: content: application/json: @@ -2312,18 +2312,18 @@ paths: $ref: '#/components/schemas/SmsDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /sms/delete: post: tags: - - SMS + - SMS operationId: deleteSms requestBody: content: @@ -2334,21 +2334,21 @@ paths: $ref: '#/components/schemas/SmsDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /pricesothers: get: tags: - - Others Price + - others price operationId: getPricesOthers responses: - '200': + "200": description: OK content: application/json: @@ -2357,10 +2357,10 @@ paths: items: $ref: '#/components/schemas/PricesOthersDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Others Price + - others price operationId: newPricesOthers requestBody: content: @@ -2369,21 +2369,21 @@ paths: $ref: '#/components/schemas/PricesOthersDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PricesOthersDTO' security: - - bearerAuth: [] + - bearerAuth: [] /pricelists: get: tags: - - Price Lists + - Price Lists operationId: getPriceLists responses: - '200': + "200": description: OK content: application/json: @@ -2392,10 +2392,10 @@ paths: items: $ref: '#/components/schemas/PriceListDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Price Lists + - Price Lists operationId: newPriceList requestBody: content: @@ -2404,21 +2404,21 @@ paths: $ref: '#/components/schemas/PriceListDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PriceListDTO' security: - - bearerAuth: [] + - bearerAuth: [] /pregnanttreatmenttypes: get: tags: - - Pregnant Treatment Types + - Pregnant Treatment Types operationId: getPregnantTreatmentTypes responses: - '200': + "200": description: OK content: application/json: @@ -2427,10 +2427,10 @@ paths: items: $ref: '#/components/schemas/PregnantTreatmentTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Pregnant Treatment Types + - Pregnant Treatment Types operationId: newPregnantTreatmentType requestBody: content: @@ -2439,21 +2439,21 @@ paths: $ref: '#/components/schemas/PregnantTreatmentTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PregnantTreatmentTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /permissions: get: tags: - - Permissions + - permissions operationId: retrieveAllPermissions responses: - '200': + "200": description: OK content: application/json: @@ -2462,10 +2462,10 @@ paths: items: $ref: '#/components/schemas/PermissionDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Permissions + - permissions operationId: insertPermission requestBody: content: @@ -2474,18 +2474,18 @@ paths: $ref: '#/components/schemas/PermissionDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PermissionDTO' security: - - bearerAuth: [] + - bearerAuth: [] /patientvaccines: post: tags: - - Patient Vaccines + - Patient Vaccines operationId: newPatientVaccine requestBody: content: @@ -2494,46 +2494,46 @@ paths: $ref: '#/components/schemas/PatientVaccineDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientVaccineDTO' security: - - bearerAuth: [] + - bearerAuth: [] /patients: get: tags: - - Patients + - Patients operationId: getPatients parameters: - - name: page - in: query - required: false - schema: - type: integer - format: int32 - default: 0 - - name: size - in: query - required: false - schema: - type: integer - format: int32 - default: 80 + - name: page + in: query + required: false + schema: + type: integer + format: int32 + default: 0 + - name: size + in: query + required: false + schema: + type: integer + format: int32 + default: 80 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PagePatientDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Patients + - Patients operationId: newPatient requestBody: content: @@ -2542,21 +2542,21 @@ paths: $ref: '#/components/schemas/PatientDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientDTO' security: - - bearerAuth: [] + - bearerAuth: [] /operationtypes: get: tags: - - Operations Types + - Operations Types operationId: getOperationTypes responses: - '200': + "200": description: OK content: application/json: @@ -2565,10 +2565,10 @@ paths: items: $ref: '#/components/schemas/OperationTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Operations Types + - Operations Types operationId: newOperationType requestBody: content: @@ -2577,21 +2577,21 @@ paths: $ref: '#/components/schemas/OperationTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/OperationTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /operations: get: tags: - - Operations + - Operations operationId: getOperations responses: - '200': + "200": description: OK content: application/json: @@ -2600,10 +2600,10 @@ paths: items: $ref: '#/components/schemas/OperationDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Operations + - Operations operationId: newOperation requestBody: content: @@ -2612,18 +2612,18 @@ paths: $ref: '#/components/schemas/OperationDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/OperationDTO' security: - - bearerAuth: [] + - bearerAuth: [] /operations/rows/search/opd: post: tags: - - Operations + - Operations operationId: getOperationRowsByOpd requestBody: content: @@ -2632,7 +2632,7 @@ paths: $ref: '#/components/schemas/OpdDTO' required: true responses: - '200': + "200": description: OK content: application/json: @@ -2641,11 +2641,11 @@ paths: items: $ref: '#/components/schemas/OperationRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] /opds: post: tags: - - Opds + - Opds operationId: newOpd requestBody: content: @@ -2654,18 +2654,18 @@ paths: $ref: '#/components/schemas/OpdDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/OpdDTO' security: - - bearerAuth: [] + - bearerAuth: [] /opds/rows: post: tags: - - Opds + - Opds operationId: newOpdWithOperationRow requestBody: content: @@ -2674,18 +2674,18 @@ paths: $ref: '#/components/schemas/OpdWithOperationRowDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/OpdWithOperationRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] /medicalstockward/movements: post: tags: - - Medical Stock Ward + - Medical Stock Ward operationId: newMovementWard requestBody: content: @@ -2694,49 +2694,49 @@ paths: $ref: '#/components/schemas/MovementWardDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /laboratories: get: tags: - - Laboratories + - Laboratories operationId: getLaboratory parameters: - - name: oneWeek - in: query - required: true - schema: - type: boolean - - name: page - in: query - required: true - schema: - type: integer - format: int32 - - name: size - in: query - required: true - schema: - type: integer - format: int32 + - name: oneWeek + in: query + required: true + schema: + type: boolean + - name: page + in: query + required: true + schema: + type: integer + format: int32 + - name: size + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PageLabWithRowsDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Laboratories + - Laboratories operationId: newLaboratory requestBody: content: @@ -2745,18 +2745,18 @@ paths: $ref: '#/components/schemas/LabWithRowsDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /laboratories/insertList: post: tags: - - Laboratories + - Laboratories operationId: newLaboratory2 requestBody: content: @@ -2767,21 +2767,21 @@ paths: $ref: '#/components/schemas/LabWithRowsDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /laboratories/examRequest: get: tags: - - Laboratories + - Laboratories operationId: getLaboratoryExamRequest responses: - '200': + "200": description: OK content: application/json: @@ -2790,10 +2790,10 @@ paths: items: $ref: '#/components/schemas/LaboratoryDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Laboratories + - Laboratories operationId: newExamRequest requestBody: content: @@ -2802,21 +2802,21 @@ paths: $ref: '#/components/schemas/LaboratoryDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /examtypes: get: tags: - - Exam Types + - Exam Types operationId: getExamTypes responses: - '200': + "200": description: OK content: application/json: @@ -2825,10 +2825,10 @@ paths: items: $ref: '#/components/schemas/ExamTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Exam Types + - Exam Types operationId: newExamType requestBody: content: @@ -2837,21 +2837,21 @@ paths: $ref: '#/components/schemas/ExamTypeDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/ExamTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] /exams: get: tags: - - Exams + - Exams operationId: getExams responses: - '200': + "200": description: OK content: application/json: @@ -2860,10 +2860,10 @@ paths: items: $ref: '#/components/schemas/ExamDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Exams + - Exams operationId: newExam requestBody: content: @@ -2872,21 +2872,21 @@ paths: $ref: '#/components/schemas/ExamDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/ExamDTO' security: - - bearerAuth: [] + - bearerAuth: [] /examrows: get: tags: - - Exam Rows + - Exam Rows operationId: getExamRows responses: - '200': + "200": description: OK content: application/json: @@ -2895,10 +2895,10 @@ paths: items: $ref: '#/components/schemas/ExamRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Exam Rows + - Exam Rows operationId: newExamRow requestBody: content: @@ -2907,18 +2907,18 @@ paths: $ref: '#/components/schemas/ExamRowDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/ExamRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] /examinations: post: tags: - - Examinations + - Examinations operationId: newPatientExamination requestBody: content: @@ -2927,38 +2927,38 @@ paths: $ref: '#/components/schemas/PatientExaminationDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /bills: get: tags: - - Bills + - Bills operationId: searchBills_1 parameters: - - name: datefrom - in: query - required: true - schema: - type: string - - name: dateto - in: query - required: true - schema: - type: string - - name: patient_code - in: query - required: false - schema: - type: integer - format: int32 + - name: datefrom + in: query + required: true + schema: + type: string + - name: dateto + in: query + required: true + schema: + type: string + - name: patient_code + in: query + required: false + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -2967,10 +2967,10 @@ paths: items: $ref: '#/components/schemas/BillDTO' security: - - bearerAuth: [] + - bearerAuth: [] post: tags: - - Bills + - Bills operationId: newBill requestBody: content: @@ -2979,18 +2979,18 @@ paths: $ref: '#/components/schemas/FullBillDTO' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/FullBillDTO' security: - - bearerAuth: [] + - bearerAuth: [] /bills/search/by/payments: post: tags: - - Bills + - Bills operationId: searchBillsByPayments requestBody: content: @@ -3001,7 +3001,7 @@ paths: $ref: '#/components/schemas/BillPaymentsDTO' required: true responses: - '200': + "200": description: OK content: application/json: @@ -3010,23 +3010,23 @@ paths: items: $ref: '#/components/schemas/BillDTO' security: - - bearerAuth: [] + - bearerAuth: [] /bills/search/by/item: post: tags: - - Bills + - Bills operationId: searchBills parameters: - - name: datefrom - in: query - required: true - schema: - type: string - - name: dateto - in: query - required: true - schema: - type: string + - name: datefrom + in: query + required: true + schema: + type: string + - name: dateto + in: query + required: true + schema: + type: string requestBody: content: application/json: @@ -3034,7 +3034,7 @@ paths: $ref: '#/components/schemas/BillItemsDTO' required: true responses: - '200': + "200": description: OK content: application/json: @@ -3043,20 +3043,20 @@ paths: items: $ref: '#/components/schemas/BillDTO' security: - - bearerAuth: [] + - bearerAuth: [] /auth/logout: post: tags: - - Login + - Login description: Logout the current user. operationId: logout responses: - '200': + "200": description: OK /auth/login: post: tags: - - Login + - Login operationId: authenticateUser requestBody: content: @@ -3065,26 +3065,26 @@ paths: $ref: '#/components/schemas/LoginRequest' required: true responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/LoginResponse' security: - - bearerAuth: [] + - bearerAuth: [] /admissions/discharge: post: tags: - - Admissions + - Admissions operationId: dischargePatient parameters: - - name: patientCode - in: query - required: true - schema: - type: integer - format: int32 + - name: patientCode + in: query + required: true + schema: + type: integer + format: int32 requestBody: content: application/json: @@ -3092,23 +3092,23 @@ paths: $ref: '#/components/schemas/AdmissionDTO' required: true responses: - '200': + "400": + description: Bad Request + "200": description: OK content: application/json: schema: type: boolean - '400': - description: Bad Request security: - - bearerAuth: [] + - bearerAuth: [] /wardsNoMaternity: get: tags: - - Wards + - Wards operationId: getWardsNoMaternity responses: - '200': + "200": description: OK content: application/json: @@ -3117,20 +3117,20 @@ paths: items: $ref: '#/components/schemas/WardDTO' security: - - bearerAuth: [] + - bearerAuth: [] /wards/occupation/{code}: get: tags: - - Wards + - Wards operationId: getCurrentOccupation parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -3138,61 +3138,61 @@ paths: type: integer format: int32 security: - - bearerAuth: [] + - bearerAuth: [] /wards/check/{code}: get: tags: - - Wards + - Wards operationId: checkWardCode parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /wards/check/maternity/{createIfNotExist}: get: tags: - - Wards + - Wards operationId: checkWardMaternityCode parameters: - - name: createIfNotExist - in: path - required: true - schema: - type: boolean + - name: createIfNotExist + in: path + required: true + schema: + type: boolean responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /visit/patient/{patID}: get: tags: - - Visit + - Visit operationId: getVisit parameters: - - name: patID - in: path - required: true - schema: - type: integer - format: int32 + - name: patID + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -3201,40 +3201,40 @@ paths: items: $ref: '#/components/schemas/VisitDTO' security: - - bearerAuth: [] + - bearerAuth: [] /vaccinetype/check/{code}: get: tags: - - Vaccine Type + - Vaccine Type operationId: checkVaccineTypeCode parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /vaccines/type-code/{vaccineTypeCode}: get: tags: - - Vaccines + - Vaccines operationId: getVaccinesByVaccineTypeCode parameters: - - name: vaccineTypeCode - in: path - required: true - schema: - type: string + - name: vaccineTypeCode + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -3243,87 +3243,87 @@ paths: items: $ref: '#/components/schemas/VaccineDTO' security: - - bearerAuth: [] + - bearerAuth: [] /vaccines/check/{code}: get: tags: - - Vaccines + - Vaccines operationId: checkVaccineCode parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /usersettings/dashboard: get: tags: - - User Settings + - User Settings operationId: getUserSettingDashboard responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/UserSettingDTO' security: - - bearerAuth: [] + - bearerAuth: [] /users/{username}: get: tags: - - Users + - Users operationId: getUserByName parameters: - - name: username - in: path - required: true - schema: - type: string + - name: username + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/UserDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Users + - Users operationId: deleteUser parameters: - - name: username - in: path - required: true - schema: - type: string + - name: username + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /users/permissions: get: tags: - - Users + - Users operationId: retrievePermissionsByCurrentLoggedInUser responses: - '200': + "200": description: OK content: application/json: @@ -3332,20 +3332,20 @@ paths: items: $ref: '#/components/schemas/LitePermissionDTO' security: - - bearerAuth: [] + - bearerAuth: [] /users/permissions/username/{username}: get: tags: - - Users + - Users operationId: retrievePermissionsByUsername parameters: - - name: username - in: path - required: true - schema: - type: string + - name: username + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -3354,20 +3354,20 @@ paths: items: $ref: '#/components/schemas/LitePermissionDTO' security: - - bearerAuth: [] + - bearerAuth: [] /users/menus/{username}: get: tags: - - Users + - Users operationId: getMenu parameters: - - name: username - in: path - required: true - schema: - type: string + - name: username + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -3376,34 +3376,34 @@ paths: items: $ref: '#/components/schemas/UserMenuItemDTO' security: - - bearerAuth: [] + - bearerAuth: [] /users/me: get: tags: - - Users + - Users operationId: retrieveProfileByCurrentLoggedInUser responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/UserProfileDTO' security: - - bearerAuth: [] + - bearerAuth: [] /users/group-menus/{group_code}: get: tags: - - Users + - Users operationId: getGroupMenu parameters: - - name: group_code - in: path - required: true - schema: - type: string + - name: group_code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -3412,21 +3412,21 @@ paths: items: $ref: '#/components/schemas/UserMenuItemDTO' security: - - bearerAuth: [] + - bearerAuth: [] /therapies/{code_patient}: get: tags: - - Therapies + - Therapies operationId: getTherapyRows parameters: - - name: code_patient - in: path - required: true - schema: - type: integer - format: int32 + - name: code_patient + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -3435,55 +3435,55 @@ paths: items: $ref: '#/components/schemas/TherapyRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Therapies + - Therapies operationId: deleteAllTherapies parameters: - - name: code_patient - in: path - required: true - schema: - type: integer - format: int32 + - name: code_patient + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /suppliers/{id}: get: tags: - - Suppliers + - Suppliers operationId: getSuppliers_1 parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/SupplierDTO' security: - - bearerAuth: [] + - bearerAuth: [] /stockmovements: get: tags: - - Stock Movements + - Stock Movements operationId: getMovements responses: - '200': + "200": description: OK content: application/json: @@ -3492,20 +3492,20 @@ paths: items: $ref: '#/components/schemas/MovementDTO' security: - - bearerAuth: [] + - bearerAuth: [] /stockmovements/{ref}: get: tags: - - Stock Movements + - Stock Movements operationId: getMovements_1 parameters: - - name: ref - in: path - required: true - schema: - type: string + - name: ref + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -3514,21 +3514,21 @@ paths: items: $ref: '#/components/schemas/MovementDTO' security: - - bearerAuth: [] + - bearerAuth: [] /stockmovements/lot/{med_code}: get: tags: - - Stock Movements + - Stock Movements operationId: getLotByMedical parameters: - - name: med_code - in: path - required: true - schema: - type: integer - format: int32 + - name: med_code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -3537,72 +3537,72 @@ paths: items: $ref: '#/components/schemas/LotDTO' security: - - bearerAuth: [] + - bearerAuth: [] /stockmovements/filter/v2: get: tags: - - Stock Movements + - Stock Movements operationId: getMovements_2 parameters: - - name: med_code - in: query - required: false - schema: - type: integer - format: int32 - - name: med_type - in: query - required: false - schema: - type: string - - name: ward_id - in: query - required: false - schema: - type: string - - name: mov_type - in: query - required: false - schema: - type: string - - name: mov_from - in: query - required: false - schema: - type: string - format: date-time - - name: mov_to - in: query - required: false - schema: - type: string - format: date-time - - name: lot_prep_from - in: query - required: false - schema: - type: string - format: date-time - - name: lot_prep_to - in: query - required: false - schema: - type: string - format: date-time - - name: lot_due_from - in: query - required: false - schema: - type: string - format: date-time - - name: lot_due_to - in: query - required: false - schema: - type: string - format: date-time + - name: med_code + in: query + required: false + schema: + type: integer + format: int32 + - name: med_type + in: query + required: false + schema: + type: string + - name: ward_id + in: query + required: false + schema: + type: string + - name: mov_type + in: query + required: false + schema: + type: string + - name: mov_from + in: query + required: false + schema: + type: string + format: date-time + - name: mov_to + in: query + required: false + schema: + type: string + format: date-time + - name: lot_prep_from + in: query + required: false + schema: + type: string + format: date-time + - name: lot_prep_to + in: query + required: false + schema: + type: string + format: date-time + - name: lot_due_from + in: query + required: false + schema: + type: string + format: date-time + - name: lot_due_to + in: query + required: false + schema: + type: string + format: date-time responses: - '200': + "200": description: OK content: application/json: @@ -3611,32 +3611,32 @@ paths: items: $ref: '#/components/schemas/MovementDTO' security: - - bearerAuth: [] + - bearerAuth: [] /stockmovements/filter/v1: get: tags: - - Stock Movements + - Stock Movements operationId: getMovements_3 parameters: - - name: ward_id - in: query - required: true - schema: - type: string - - name: from - in: query - required: true - schema: - type: string - format: date-time - - name: to - in: query - required: true - schema: - type: string - format: date-time + - name: ward_id + in: query + required: true + schema: + type: string + - name: from + in: query + required: true + schema: + type: string + format: date-time + - name: to + in: query + required: true + schema: + type: string + format: date-time responses: - '200': + "200": description: OK content: application/json: @@ -3645,41 +3645,41 @@ paths: items: $ref: '#/components/schemas/MovementDTO' security: - - bearerAuth: [] + - bearerAuth: [] /stockmovements/critical/check: get: tags: - - Stock Movements + - Stock Movements operationId: alertCriticalQuantity parameters: - - name: med_code - in: query - required: true - schema: - type: integer - format: int32 - - name: qty - in: query - required: true - schema: - type: integer - format: int32 + - name: med_code + in: query + required: true + schema: + type: integer + format: int32 + - name: qty + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /reports/exams-list: get: tags: - - Reports + - Reports operationId: printExamsListPdf responses: - '200': + "200": description: OK content: application/json: @@ -3689,14 +3689,14 @@ paths: type: string format: byte security: - - bearerAuth: [] + - bearerAuth: [] /reports/diseases-list: get: tags: - - Reports + - Reports operationId: printDiseasesListPdf responses: - '200': + "200": description: OK content: application/json: @@ -3706,14 +3706,14 @@ paths: type: string format: byte security: - - bearerAuth: [] + - bearerAuth: [] /pricelists/prices: get: tags: - - Price Lists + - Price Lists operationId: getPrices responses: - '200': + "200": description: OK content: application/json: @@ -3722,74 +3722,74 @@ paths: items: $ref: '#/components/schemas/PriceDTO' security: - - bearerAuth: [] + - bearerAuth: [] /pricelists/duplicate/{id}: get: tags: - - Price Lists + - Price Lists operationId: copyList parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int64 + - name: id + in: path + required: true + schema: + type: integer + format: int64 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /pricelists/duplicate/byfactor/{id}: get: tags: - - Price Lists + - Price Lists operationId: copyByFactorAndStep parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int64 - - name: factor - in: query - required: true - schema: - type: number - format: double - - name: step - in: query - required: true - schema: - type: number - format: double + - name: id + in: path + required: true + schema: + type: integer + format: int64 + - name: factor + in: query + required: true + schema: + type: number + format: double + - name: step + in: query + required: true + schema: + type: number + format: double responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /permissions/userGroupCode/{userGroupCode}: get: tags: - - Permissions + - permissions operationId: retrievePermissionsByUserGroupcode parameters: - - name: userGroupCode - in: path - required: true - schema: - type: string + - name: userGroupCode + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -3798,40 +3798,40 @@ paths: items: $ref: '#/components/schemas/PermissionDTO' security: - - bearerAuth: [] + - bearerAuth: [] /permissions/name/{name}: get: tags: - - Permissions + - permissions operationId: retrievePermissionByName parameters: - - name: name - in: path - required: true - schema: - type: string + - name: name + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PermissionDTO' security: - - bearerAuth: [] + - bearerAuth: [] /patientvaccines/week: get: tags: - - Patient Vaccines + - Patient Vaccines operationId: getPatientVaccines parameters: - - name: oneWeek - in: query - required: false - schema: - type: boolean + - name: oneWeek + in: query + required: false + schema: + type: boolean responses: - '200': + "200": description: OK content: application/json: @@ -3840,21 +3840,21 @@ paths: items: $ref: '#/components/schemas/PatientVaccineDTO' security: - - bearerAuth: [] + - bearerAuth: [] /patientvaccines/progyear/{year}: get: tags: - - Patient Vaccines + - Patient Vaccines operationId: getProgYear parameters: - - name: year - in: path - required: true - schema: - type: integer - format: int32 + - name: year + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -3862,54 +3862,54 @@ paths: type: integer format: int32 security: - - bearerAuth: [] + - bearerAuth: [] /patientvaccines/filter: get: tags: - - Patient Vaccines + - Patient Vaccines operationId: getPatientVaccinesByDatesRanges parameters: - - name: vaccineTypeCode - in: query - required: true - schema: - type: string - - name: vaccineCode - in: query - required: true - schema: - type: string - - name: dateFrom - in: query - required: true - schema: - type: string - format: date - - name: dateTo - in: query - required: true - schema: - type: string - format: date - - name: sex - in: query - required: true - schema: - type: string - - name: ageFrom - in: query - required: true - schema: - type: integer - format: int32 - - name: ageTo - in: query - required: true - schema: - type: integer - format: int32 + - name: vaccineTypeCode + in: query + required: true + schema: + type: string + - name: vaccineCode + in: query + required: true + schema: + type: string + - name: dateFrom + in: query + required: true + schema: + type: string + format: date + - name: dateTo + in: query + required: true + schema: + type: string + format: date + - name: sex + in: query + required: true + schema: + type: string + - name: ageFrom + in: query + required: true + schema: + type: integer + format: int32 + - name: ageTo + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -3918,39 +3918,39 @@ paths: items: $ref: '#/components/schemas/PatientVaccineDTO' security: - - bearerAuth: [] + - bearerAuth: [] /patients/search: get: tags: - - Patients + - Patients operationId: searchPatient parameters: - - name: firstName - in: query - required: false - schema: - type: string - default: '' - - name: secondName - in: query - required: false - schema: - type: string - default: '' - - name: birthDate - in: query - required: false - schema: - type: string - format: date-time - - name: address - in: query - required: false - schema: - type: string - default: '' + - name: firstName + in: query + required: false + schema: + type: string + default: "" + - name: secondName + in: query + required: false + schema: + type: string + default: "" + - name: birthDate + in: query + required: false + schema: + type: string + format: date-time + - name: address + in: query + required: false + schema: + type: string + default: "" responses: - '200': + "200": description: OK content: application/json: @@ -3959,14 +3959,14 @@ paths: items: $ref: '#/components/schemas/PatientDTO' security: - - bearerAuth: [] + - bearerAuth: [] /patients/nextcode: get: tags: - - Patients + - Patients operationId: getPatientNextCode responses: - '200': + "200": description: OK content: application/json: @@ -3974,41 +3974,41 @@ paths: type: integer format: int32 security: - - bearerAuth: [] + - bearerAuth: [] /patients/merge: get: tags: - - Patients + - Patients operationId: mergePatients parameters: - - name: mergedcode - in: query - required: true - schema: - type: integer - format: int32 - - name: code2 - in: query - required: true - schema: - type: integer - format: int32 + - name: mergedcode + in: query + required: true + schema: + type: integer + format: int32 + - name: code2 + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /patients/cities: get: tags: - - Patients + - Patients operationId: getPatientCities responses: - '200': + "200": description: OK content: application/json: @@ -4017,41 +4017,41 @@ paths: items: type: string security: - - bearerAuth: [] + - bearerAuth: [] /patients/all: get: tags: - - Patients + - Patients operationId: getPatientAll parameters: - - name: code - in: query - required: true - schema: - type: integer - format: int32 + - name: code + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientDTO' security: - - bearerAuth: [] + - bearerAuth: [] /operations/search/type: get: tags: - - Operations + - Operations operationId: getOperationByTypeDescription parameters: - - name: typeDescription - in: query - required: true - schema: - type: string + - name: typeDescription + in: query + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -4060,21 +4060,21 @@ paths: items: $ref: '#/components/schemas/OperationDTO' security: - - bearerAuth: [] + - bearerAuth: [] /operations/rows/search/patient: get: tags: - - Operations + - Operations operationId: getOperationRowsByPatient parameters: - - name: patientCode - in: query - required: true - schema: - type: integer - format: int32 + - name: patientCode + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -4083,21 +4083,21 @@ paths: items: $ref: '#/components/schemas/OperationRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] /operations/rows/search/admission: get: tags: - - Operations + - Operations operationId: getOperationRowsByAdmt parameters: - - name: admissionId - in: query - required: true - schema: - type: integer - format: int32 + - name: admissionId + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -4106,20 +4106,20 @@ paths: items: $ref: '#/components/schemas/OperationRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] /opds/weekly: get: tags: - - Opds + - Opds operationId: getOpdToDayOrWeek parameters: - - name: oneWeek - in: query - required: false - schema: - type: boolean + - name: oneWeek + in: query + required: false + schema: + type: boolean responses: - '200': + "200": description: OK content: application/json: @@ -4128,114 +4128,114 @@ paths: items: $ref: '#/components/schemas/OpdDTO' security: - - bearerAuth: [] + - bearerAuth: [] /opds/search: get: tags: - - Opds + - Opds operationId: getOpdByDates parameters: - - name: dateFrom - in: query - required: true - schema: - type: string - - name: dateTo - in: query - required: true - schema: - type: string - - name: diseaseTypeCode - in: query - required: false - schema: - type: string - - name: diseaseCode - in: query - required: false - schema: - type: string - - name: ageFrom - in: query - required: false - schema: - type: integer - format: int32 - default: 0 - - name: ageTo - in: query - required: false - schema: - type: integer - format: int32 - default: 200 - - name: sex - in: query - required: false - schema: - type: string - default: A - - name: newPatient - in: query - required: false - schema: - type: string - default: A - - name: patientCode - in: query - required: false - schema: - type: integer - format: int32 - default: 0 - - name: page - in: query - required: false - schema: - type: integer - format: int32 - default: 0 - - name: size - in: query - required: false - schema: - type: integer - format: int32 - default: 80 - - name: paged - in: query - required: false - schema: - type: boolean - default: false - - name: wardCode - in: query - required: false - schema: - type: string + - name: dateFrom + in: query + required: true + schema: + type: string + - name: dateTo + in: query + required: true + schema: + type: string + - name: diseaseTypeCode + in: query + required: false + schema: + type: string + - name: diseaseCode + in: query + required: false + schema: + type: string + - name: ageFrom + in: query + required: false + schema: + type: integer + format: int32 + default: 0 + - name: ageTo + in: query + required: false + schema: + type: integer + format: int32 + default: 200 + - name: sex + in: query + required: false + schema: + type: string + default: A + - name: newPatient + in: query + required: false + schema: + type: string + default: A + - name: patientCode + in: query + required: false + schema: + type: integer + format: int32 + default: 0 + - name: page + in: query + required: false + schema: + type: integer + format: int32 + default: 0 + - name: size + in: query + required: false + schema: + type: integer + format: int32 + default: 80 + - name: paged + in: query + required: false + schema: + type: boolean + default: false + - name: wardCode + in: query + required: false + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PageOpdDTO' security: - - bearerAuth: [] + - bearerAuth: [] /opds/patient/{pcode}: get: tags: - - Opds + - Opds operationId: getOpdByPatient parameters: - - name: pcode - in: path - required: true - schema: - type: integer - format: int32 + - name: pcode + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -4244,69 +4244,69 @@ paths: items: $ref: '#/components/schemas/OpdWithOperationRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] /opds/last/{patientCode}: get: tags: - - Opds + - Opds operationId: getLastOpd parameters: - - name: patientCode - in: path - required: true - schema: - type: integer - format: int32 + - name: patientCode + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/OpdDTO' security: - - bearerAuth: [] + - bearerAuth: [] /opds/check/progyear: get: tags: - - Opds + - Opds operationId: isExistOpdNum parameters: - - name: opdNum - in: query - required: true - schema: - type: integer - format: int32 - - name: year - in: query - required: true - schema: - type: integer - format: int32 + - name: opdNum + in: query + required: true + schema: + type: integer + format: int32 + - name: year + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /opds/ProgYear/{year}: get: tags: - - Opds + - Opds operationId: getProgYear_1 parameters: - - name: year - in: path - required: true - schema: - type: integer - format: int32 + - name: year + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -4314,99 +4314,99 @@ paths: type: integer format: int32 security: - - bearerAuth: [] + - bearerAuth: [] /medstockmovementtype/{code}: get: tags: - - Medical Stock Movement Type + - Medical Stock Movement Type operationId: getMovementType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/MovementTypeDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Medical Stock Movement Type + - Medical Stock Movement Type operationId: deleteMedicalDsrStockMovementType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /medstockmovementtype/check/{code}: get: tags: - - Medical Stock Movement Type + - Medical Stock Movement Type operationId: isCodeUsed parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /medicaltypes/check/{code}: get: tags: - - Medical Types + - Medical Types operationId: isCodeUsed_1 parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /medicalstockward/{ward_code}: get: tags: - - Medical Stock Ward + - Medical Stock Ward operationId: getMedicalsWard parameters: - - name: ward_code - in: path - required: true - schema: - type: string + - name: ward_code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -4415,32 +4415,32 @@ paths: items: $ref: '#/components/schemas/MedicalWardDTO' security: - - bearerAuth: [] + - bearerAuth: [] /medicalstockward/movements/{ward_code}: get: tags: - - Medical Stock Ward + - Medical Stock Ward operationId: getMovementWard parameters: - - name: ward_code - in: path - required: true - schema: - type: string - - name: from - in: query - required: true - schema: - type: string - format: date - - name: to - in: query - required: true - schema: - type: string - format: date + - name: ward_code + in: path + required: true + schema: + type: string + - name: from + in: query + required: true + schema: + type: string + format: date + - name: to + in: query + required: true + schema: + type: string + format: date responses: - '200': + "200": description: OK content: application/json: @@ -4449,32 +4449,32 @@ paths: items: $ref: '#/components/schemas/MovementWardDTO' security: - - bearerAuth: [] + - bearerAuth: [] /medicalstockward/movements/to/{target_ward_code}: get: tags: - - Medical Stock Ward + - Medical Stock Ward operationId: getWardMovementsToWard parameters: - - name: target_ward_code - in: path - required: true - schema: - type: string - - name: from - in: query - required: true - schema: - type: string - format: date-time - - name: to - in: query - required: true - schema: - type: string - format: date-time + - name: target_ward_code + in: path + required: true + schema: + type: string + - name: from + in: query + required: true + schema: + type: string + format: date-time + - name: to + in: query + required: true + schema: + type: string + format: date-time responses: - '200': + "200": description: OK content: application/json: @@ -4483,26 +4483,26 @@ paths: items: $ref: '#/components/schemas/MovementWardDTO' security: - - bearerAuth: [] + - bearerAuth: [] /medicalstockward/current/{ward_code}: get: tags: - - Medical Stock Ward + - Medical Stock Ward operationId: getCurrentQuantityInWard parameters: - - name: ward_code - in: path - required: true - schema: - type: string - - name: med_id - in: query - required: true - schema: - type: integer - format: int32 + - name: ward_code + in: path + required: true + schema: + type: string + - name: med_id + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -4510,78 +4510,78 @@ paths: type: integer format: int32 security: - - bearerAuth: [] + - bearerAuth: [] /medicals/{code}: get: tags: - - Medicals + - Medicals operationId: getMedical parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/MedicalDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Medicals + - Medicals operationId: deleteMedical parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /medicals/filter: get: tags: - - Medicals + - Medicals operationId: filterMedicals parameters: - - name: desc - in: query - required: false - schema: - type: string - - name: type - in: query - required: false - schema: - type: string - - name: critical - in: query - required: false - schema: - type: boolean - default: false - - name: name_sorted - in: query - required: false - schema: - type: boolean - default: false + - name: desc + in: query + required: false + schema: + type: string + - name: type + in: query + required: false + schema: + type: string + - name: critical + in: query + required: false + schema: + type: boolean + default: false + - name: name_sorted + in: query + required: false + schema: + type: boolean + default: false responses: - '200': + "200": description: OK content: application/json: @@ -4590,20 +4590,20 @@ paths: items: $ref: '#/components/schemas/MedicalDTO' security: - - bearerAuth: [] + - bearerAuth: [] /malnutritions/{id_admission}: get: tags: - - Malnutritions + - Malnutritions operationId: getMalnutrition parameters: - - name: id_admission - in: path - required: true - schema: - type: string + - name: id_admission + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -4612,35 +4612,35 @@ paths: items: $ref: '#/components/schemas/MalnutritionDTO' security: - - bearerAuth: [] + - bearerAuth: [] /malnutritions/last/{id_patient}: get: tags: - - Malnutritions + - Malnutritions operationId: getLastMalnutrition parameters: - - name: id_patient - in: path - required: true - schema: - type: integer - format: int32 + - name: id_patient + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/MalnutritionDTO' security: - - bearerAuth: [] + - bearerAuth: [] /laboratories/materials: get: tags: - - Laboratories + - Laboratories operationId: getMaterials responses: - '200': + "200": description: OK content: application/json: @@ -4649,106 +4649,106 @@ paths: items: type: string security: - - bearerAuth: [] + - bearerAuth: [] /laboratories/exams: get: tags: - - Laboratories + - Laboratories operationId: getLaboratoryForPrint parameters: - - name: examName - in: query - required: false - schema: - type: string - default: '' - - name: dateFrom - in: query - required: true - schema: - type: string - - name: dateTo - in: query - required: true - schema: - type: string - - name: patientCode - in: query - required: false - schema: - type: integer - format: int32 - default: 0 - - name: status - in: query - required: false - schema: - type: string - default: '' - - name: page - in: query - required: false - schema: - type: integer - format: int32 - default: 0 - - name: size - in: query - required: false - schema: - type: integer - format: int32 - default: 80 - - name: paged - in: query - required: false - schema: - type: boolean - default: false - responses: - '200': + - name: examName + in: query + required: false + schema: + type: string + default: "" + - name: dateFrom + in: query + required: true + schema: + type: string + - name: dateTo + in: query + required: true + schema: + type: string + - name: patientCode + in: query + required: false + schema: + type: integer + format: int32 + default: 0 + - name: status + in: query + required: false + schema: + type: string + default: "" + - name: page + in: query + required: false + schema: + type: integer + format: int32 + default: 0 + - name: size + in: query + required: false + schema: + type: integer + format: int32 + default: 80 + - name: paged + in: query + required: false + schema: + type: boolean + default: false + responses: + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PageLabWithRowsDTO' security: - - bearerAuth: [] + - bearerAuth: [] /laboratories/exams/{code}: get: tags: - - Laboratories + - Laboratories operationId: getExamWithRowsById parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/LabWithRowsDTO' security: - - bearerAuth: [] + - bearerAuth: [] /laboratories/examRequest/patient/{patId}: get: tags: - - Laboratories + - Laboratories operationId: getLaboratoryExamRequest_1 parameters: - - name: patId - in: path - required: true - schema: - type: integer - format: int32 + - name: patId + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -4757,21 +4757,21 @@ paths: items: $ref: '#/components/schemas/LaboratoryDTO' security: - - bearerAuth: [] + - bearerAuth: [] /laboratories/byPatientId/{patId}: get: tags: - - Laboratories + - Laboratories operationId: getLaboratory_1 parameters: - - name: patId - in: path - required: true - schema: - type: integer - format: int32 + - name: patId + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -4780,48 +4780,48 @@ paths: items: $ref: '#/components/schemas/LabWithRowsDTO' security: - - bearerAuth: [] + - bearerAuth: [] /hospitals: get: tags: - - Hospitals + - Hospitals operationId: getHospital responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/HospitalDTO' security: - - bearerAuth: [] + - bearerAuth: [] /hospitals/currencyCode: get: tags: - - Hospitals + - Hospitals operationId: getHospitalCurrencyCode responses: - '200': + "200": description: OK content: application/json: schema: type: string security: - - bearerAuth: [] + - bearerAuth: [] /exams/description/{description}: get: tags: - - Exams + - Exams operationId: getExams_1 parameters: - - name: description - in: path - required: true - schema: - type: string + - name: description + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -4830,21 +4830,21 @@ paths: items: $ref: '#/components/schemas/ExamDTO' security: - - bearerAuth: [] + - bearerAuth: [] /examrows/{code}: get: tags: - - Exam Rows + - Exam Rows operationId: getExamRowsByCode parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -4853,46 +4853,46 @@ paths: items: $ref: '#/components/schemas/ExamRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Exam Rows + - Exam Rows operationId: deleteExam_2 parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /examrows/search: get: tags: - - Exam Rows + - Exam Rows operationId: getExamRowsByCodeAndDescription parameters: - - name: code - in: query - required: true - schema: - type: integer - format: int32 - - name: description - in: query - required: true - schema: - type: string + - name: code + in: query + required: true + schema: + type: integer + format: int32 + - name: description + in: query + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -4901,20 +4901,20 @@ paths: items: $ref: '#/components/schemas/ExamRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] /examrows/byExamCode/{examCode}: get: tags: - - Exam Rows + - Exam Rows operationId: getExamRowsByExamCode parameters: - - name: examCode - in: path - required: true - schema: - type: string + - name: examCode + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -4923,111 +4923,111 @@ paths: items: $ref: '#/components/schemas/ExamRowDTO' security: - - bearerAuth: [] + - bearerAuth: [] /examinations/lastNByPatId: get: tags: - - Examinations + - Examinations operationId: getLastNByPatID parameters: - - name: limit - in: query - required: true - schema: - type: integer - format: int32 - - name: patId - in: query - required: true - schema: - type: integer - format: int32 + - name: limit + in: query + required: true + schema: + type: integer + format: int32 + - name: patId + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PagePatientExaminationDTO' security: - - bearerAuth: [] + - bearerAuth: [] /examinations/lastByPatientId/{patId}: get: tags: - - Examinations + - Examinations operationId: getLastByPatientId parameters: - - name: patId - in: path - required: true - schema: - type: integer - format: int32 + - name: patId + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientExaminationDTO' security: - - bearerAuth: [] + - bearerAuth: [] /examinations/fromLastPatientExamination/{id}: get: tags: - - Examinations + - Examinations operationId: getFromLastPatientExamination parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientExaminationDTO' security: - - bearerAuth: [] + - bearerAuth: [] /examinations/defaultPatientExamination: get: tags: - - Examinations + - Examinations operationId: getDefaultPatientExamination parameters: - - name: patId - in: query - required: true - schema: - type: integer - format: int32 + - name: patId + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PatientExaminationDTO' security: - - bearerAuth: [] + - bearerAuth: [] /examinations/byPatientId/{patId}: get: tags: - - Examinations + - Examinations operationId: getByPatientId parameters: - - name: patId - in: path - required: true - schema: - type: integer - format: int32 + - name: patId + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -5036,39 +5036,39 @@ paths: items: $ref: '#/components/schemas/PatientExaminationDTO' security: - - bearerAuth: [] + - bearerAuth: [] /diseases/{code}: get: tags: - - Diseases + - Diseases operationId: getDiseaseByCode parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] delete: tags: - - Diseases + - Diseases operationId: deleteDisease parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -5077,14 +5077,14 @@ paths: additionalProperties: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /diseases/opd: get: tags: - - Diseases + - Diseases operationId: getDiseasesOpd responses: - '200': + "200": description: OK content: application/json: @@ -5093,20 +5093,20 @@ paths: items: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] /diseases/opd/{typecode}: get: tags: - - Diseases + - Diseases operationId: getDiseasesOpdByCode parameters: - - name: typecode - in: path - required: true - schema: - type: string + - name: typecode + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -5115,14 +5115,14 @@ paths: items: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] /diseases/ipd/out: get: tags: - - Diseases + - Diseases operationId: getDiseasesIpdOut responses: - '200': + "200": description: OK content: application/json: @@ -5131,20 +5131,20 @@ paths: items: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] /diseases/ipd/out/{typecode}: get: tags: - - Diseases + - Diseases operationId: getDiseasesIpdOutByCode parameters: - - name: typecode - in: path - required: true - schema: - type: string + - name: typecode + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -5153,14 +5153,14 @@ paths: items: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] /diseases/ipd/in: get: tags: - - Diseases + - Diseases operationId: getDiseasesIpdIn responses: - '200': + "200": description: OK content: application/json: @@ -5169,20 +5169,20 @@ paths: items: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] /diseases/ipd/in/{typecode}: get: tags: - - Diseases + - Diseases operationId: getDiseasesIpdInByCode parameters: - - name: typecode - in: path - required: true - schema: - type: string + - name: typecode + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -5191,14 +5191,14 @@ paths: items: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] /diseases/both: get: tags: - - Diseases + - Diseases operationId: getDiseases responses: - '200': + "200": description: OK content: application/json: @@ -5207,20 +5207,20 @@ paths: items: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] /diseases/both/{typecode}: get: tags: - - Diseases + - Diseases operationId: getDiseases_1 parameters: - - name: typecode - in: path - required: true - schema: - type: string + - name: typecode + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -5229,14 +5229,14 @@ paths: items: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] /diseases/all: get: tags: - - Diseases + - Diseases operationId: getAllDiseases responses: - '200': + "200": description: OK content: application/json: @@ -5245,59 +5245,59 @@ paths: items: $ref: '#/components/schemas/DiseaseDTO' security: - - bearerAuth: [] + - bearerAuth: [] /discharges: get: tags: - - Admissions + - Admissions operationId: getDischarges parameters: - - name: dischargerange - in: query - required: true - schema: - type: array - items: - type: string - - name: page - in: query - required: false - schema: - type: integer - format: int32 - default: 0 - - name: size - in: query - required: false - schema: - type: integer - format: int32 - default: 80 - responses: - '200': + - name: dischargerange + in: query + required: true + schema: + type: array + items: + type: string + - name: page + in: query + required: false + schema: + type: integer + format: int32 + default: 0 + - name: size + in: query + required: false + schema: + type: integer + format: int32 + default: 80 + responses: + "400": + description: Bad Request + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/PageAdmissionDTO' - '400': - description: Bad Request security: - - bearerAuth: [] + - bearerAuth: [] /bills/pending: get: tags: - - Bills + - Bills operationId: getPendingBills parameters: - - name: patient_code - in: query - required: true - schema: - type: integer - format: int32 + - name: patient_code + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -5306,21 +5306,21 @@ paths: items: $ref: '#/components/schemas/BillDTO' security: - - bearerAuth: [] + - bearerAuth: [] /bills/pending/affiliate: get: tags: - - Bills + - Bills operationId: getPendingBillsAffiliate parameters: - - name: patient_code - in: query - required: true - schema: - type: integer - format: int32 + - name: patient_code + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -5329,31 +5329,31 @@ paths: items: $ref: '#/components/schemas/BillDTO' security: - - bearerAuth: [] + - bearerAuth: [] /bills/payments: get: tags: - - Bills + - Bills operationId: searchBillsPayments parameters: - - name: datefrom - in: query - required: true - schema: - type: string - - name: dateto - in: query - required: true - schema: - type: string - - name: patient_code - in: query - required: false - schema: - type: integer - format: int32 + - name: datefrom + in: query + required: true + schema: + type: string + - name: dateto + in: query + required: true + schema: + type: string + - name: patient_code + in: query + required: false + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -5362,21 +5362,21 @@ paths: items: $ref: '#/components/schemas/BillPaymentsDTO' security: - - bearerAuth: [] + - bearerAuth: [] /bills/payments/{bill_id}: get: tags: - - Bills + - Bills operationId: getPaymentsByBillId parameters: - - name: bill_id - in: path - required: true - schema: - type: integer - format: int32 + - name: bill_id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -5385,14 +5385,14 @@ paths: items: $ref: '#/components/schemas/BillPaymentsDTO' security: - - bearerAuth: [] + - bearerAuth: [] /bills/items: get: tags: - - Bills + - Bills operationId: getDistinctItems responses: - '200': + "200": description: OK content: application/json: @@ -5401,21 +5401,21 @@ paths: items: $ref: '#/components/schemas/BillItemsDTO' security: - - bearerAuth: [] + - bearerAuth: [] /bills/items/{bill_id}: get: tags: - - Bills + - Bills operationId: getItems parameters: - - name: bill_id - in: path - required: true - schema: - type: integer - format: int32 + - name: bill_id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -5424,42 +5424,42 @@ paths: items: $ref: '#/components/schemas/BillItemsDTO' security: - - bearerAuth: [] + - bearerAuth: [] /agetypes/{index}: get: tags: - - AgeTypes + - AgeTypes operationId: getAgeTypeByIndex parameters: - - name: index - in: path - required: true - schema: - type: integer - format: int32 + - name: index + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/AgeType' security: - - bearerAuth: [] + - bearerAuth: [] /agetypes/code: get: tags: - - AgeTypes + - AgeTypes operationId: getAgeTypeCodeByAge parameters: - - name: age - in: query - required: true - schema: - type: integer - format: int32 + - name: age + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: @@ -5468,21 +5468,23 @@ paths: additionalProperties: type: string security: - - bearerAuth: [] + - bearerAuth: [] /admissions/patient/{patientCode}: get: tags: - - Admissions + - Admissions operationId: getAdmissions_1 parameters: - - name: patientCode - in: path - required: true - schema: - type: integer - format: int32 + - name: patientCode + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "400": + description: Bad Request + "200": description: OK content: application/json: @@ -5490,107 +5492,107 @@ paths: type: array items: $ref: '#/components/schemas/AdmissionDTO' - '400': - description: Bad Request security: - - bearerAuth: [] + - bearerAuth: [] /admissions/getNextProgressiveIdInYear: get: tags: - - Admissions + - Admissions operationId: getNextYProg parameters: - - name: wardcode - in: query - required: true - schema: - type: string + - name: wardcode + in: query + required: true + schema: + type: string responses: - '200': + "400": + description: Bad Request + "200": description: OK content: application/json: schema: type: integer format: int32 - '400': - description: Bad Request security: - - bearerAuth: [] + - bearerAuth: [] /admissions/getBedsOccupationInWard: get: tags: - - Admissions + - Admissions operationId: getUsedWardBed parameters: - - name: wardid - in: query - required: true - schema: - type: string + - name: wardid + in: query + required: true + schema: + type: string responses: - '200': + "400": + description: Bad Request + "200": description: OK content: application/json: schema: type: integer format: int32 - '400': - description: Bad Request security: - - bearerAuth: [] + - bearerAuth: [] /admissions/current: get: tags: - - Admissions + - Admissions operationId: getCurrentAdmission parameters: - - name: patientCode - in: query - required: true - schema: - type: integer - format: int32 + - name: patientCode + in: query + required: true + schema: + type: integer + format: int32 responses: - '200': + "400": + description: Bad Request + "200": description: OK content: application/json: schema: $ref: '#/components/schemas/AdmissionDTO' - '400': - description: Bad Request security: - - bearerAuth: [] + - bearerAuth: [] /admissions/admittedPatients: get: tags: - - Admissions + - Admissions operationId: getAdmittedPatients parameters: - - name: searchterms - in: query - required: false - schema: + - name: searchterms + in: query + required: false + schema: + type: string + default: "" + - name: admissionrange + in: query + required: false + schema: + type: array + items: + type: string + - name: dischargerange + in: query + required: false + schema: + type: array + items: type: string - default: '' - - name: admissionrange - in: query - required: false - schema: - type: array - items: - type: string - - name: dischargerange - in: query - required: false - schema: - type: array - items: - type: string responses: - '200': + "400": + description: Bad Request + "200": description: OK content: application/json: @@ -5598,145 +5600,143 @@ paths: type: array items: $ref: '#/components/schemas/AdmittedPatientDTO' - '400': - description: Bad Request security: - - bearerAuth: [] + - bearerAuth: [] /wards/{code}: delete: tags: - - Wards + - Wards operationId: deleteWard parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /visit/delete/{patID}: delete: tags: - - Visit + - Visit operationId: deleteVisitsRelatedToPatient parameters: - - name: patID - in: path - required: true - schema: - type: integer - format: int32 + - name: patID + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /vaccinetype/{code}: delete: tags: - - Vaccine Type + - Vaccine Type operationId: deleteVaccineType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /vaccines/{code}: delete: tags: - - Vaccines + - Vaccines operationId: deleteVaccine parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /operations/rows/{code}: delete: tags: - - Operations + - Operations operationId: deleteOperationRow parameters: - - name: code - in: path - required: true - schema: - type: integer - format: int32 + - name: code + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /medicaltypes/{code}: delete: tags: - - Medical Types + - Medical Types operationId: deleteMedicalType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /diseasetypes/{code}: delete: tags: - - Disease Types + - Disease Types operationId: deleteDiseaseType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: @@ -5745,141 +5745,131 @@ paths: additionalProperties: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /dischargetypes/{code}: delete: tags: - - DischargeType + - DischargeType operationId: deleteDischargeType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /deliverytypes/{code}: delete: tags: - - Delivery Type + - Delivery Type operationId: deleteDeliveryType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /deliveryresulttypes/{code}: delete: tags: - - Delivery Result Type + - Delivery Result Type operationId: deleteDeliveryResultType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /admissiontypes/{code}: delete: tags: - - AdmissionTypes + - AdmissionTypes operationId: deleteAdmissionType parameters: - - name: code - in: path - required: true - schema: - type: string + - name: code + in: path + required: true + schema: + type: string responses: - '200': + "200": description: OK content: application/json: schema: type: boolean security: - - bearerAuth: [] + - bearerAuth: [] /admissions/{id}: delete: tags: - - Admissions + - Admissions operationId: deleteAdmissionType_1 parameters: - - name: id - in: path - required: true - schema: - type: integer - format: int32 + - name: id + in: path + required: true + schema: + type: integer + format: int32 responses: - '200': + "400": + description: Bad Request + "200": description: OK content: application/json: schema: type: boolean - '400': - description: Bad Request security: - - bearerAuth: [] + - bearerAuth: [] components: schemas: WardDTO: required: - - beds - - description - - docs - - nurs - - visitDuration + - beds + - description + - docs + - nurs + - visitDuration type: object properties: code: - maxLength: 3 type: string - description: The ward code description: - maxLength: 50 type: string - description: The name of the ward telephone: - maxLength: 50 type: string - description: The phone number of the ward fax: - maxLength: 50 type: string - description: The fax number of the ward email: - maxLength: 50 type: string - description: The email of the ward beds: type: integer format: int32 @@ -5907,14 +5897,14 @@ components: type: boolean PatientDTO: required: - - age - - bloodType - - city - - fatherName - - firstName - - motherName - - secondName - - sex + - age + - bloodType + - city + - fatherName + - firstName + - motherName + - secondName + - sex type: object properties: code: @@ -5922,12 +5912,10 @@ components: format: int32 readOnly: true firstName: - maxLength: 50 type: string description: First name of the patient example: Mario secondName: - maxLength: 50 type: string description: Last name of the patient example: Rossi @@ -5937,7 +5925,7 @@ components: birthDate: type: string description: Birth date - example: '1979-05-01' + example: 1979-05-01 age: type: integer description: Age @@ -5946,21 +5934,19 @@ components: agetype: type: string description: Age type - example: 'null' + example: "null" sex: type: string description: Sex example: M enum: - - M - - F + - M + - F address: - maxLength: 50 type: string description: Address - example: Via Roma, 12 + example: "Via Roma, 12" city: - maxLength: 50 type: string description: City example: Verona @@ -5968,119 +5954,105 @@ components: type: string readOnly: true telephone: - maxLength: 50 type: string description: Telephone - example: '+393456789012' + example: +393456789012 note: - maxLength: 65535 type: string description: Note example: Test insert new patient motherName: - maxLength: 50 type: string description: Mother's name example: Roberta mother: type: string - description: Mother's status (D=dead, A=alive) + description: "Mother's status (D=dead, A=alive)" example: A enum: - - D - - A + - D + - A fatherName: - maxLength: 50 type: string description: Father's name example: Giuseppe father: type: string - description: Father's status (D=dead, A=alive) + description: "Father's status (D=dead, A=alive)" example: D enum: - - D - - A + - D + - A bloodType: type: string - description: Blood type (0-/+, A-/+ , B-/+, AB-/+) + description: "Blood type (0-/+, A-/+ , B-/+, AB-/+)" example: A+ enum: - - 0- - - 0+ - - A- - - A+ - - B- - - B+ - - AB- - - AB+ + - 0- + - 0+ + - A- + - A+ + - B- + - B+ + - AB- + - AB+ hasInsurance: type: string - description: HasInsurance (Y=Yes, N=no) - example: 'N' + description: "hasInsurance (Y=Yes, N=no)" + example: "N" enum: - - 'Y' - - 'N' + - "Y" + - "N" parentTogether: type: string - description: Parent together (Y=Yes, N=no) - example: 'N' + description: "Parent together (Y=Yes, N=no)" + example: "N" enum: - - 'Y' - - 'N' + - "Y" + - "N" taxCode: - maxLength: 30 type: string description: Tax code example: RSSMRA79E01L781N lock: type: integer - description: Lock + description: lock format: int32 example: 0 blobPhoto: - type: array + type: string description: BlobPhoto - example: >- - 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 - items: - type: string - description: BlobPhoto - format: byte - example: >- - aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUxRQUFBQzBDQVlBQUFBOXpRWXlBQUFnQUVsRVFWUjRuT3k5ZjVBYzUzbmYrZG51ZVh2ZTNuZG5NSU1GUjdzQXVDUmdpaFFSaUJRaGlaSmhVWlpJazZKQ3k5R1pkYkV0eFU0Y09mRzVvck1ySlYrNVVsYVZ5MVZ5dVhKbFYrS2M3M0xsa3lxWDVPVEV1WlBMUHAvdUpOdWtaVktHSThrQ1JRa21MWXJDZ3N0ZHpuS0F3VFI2OXQxK3A5L3AzdnZqN2U2WldRQjBZdmtIZHFHbnFxdG5wbi8zZlB2cDcvdjhuTnZaMmVIYmNtMTUvRDJuT25tVzN3T2NhVFFhTkp0TlhseGJPd3BzRnF2Y1k3UHNpNjEyYTZuZGFtKzIycTJsNTU5L3ZpYWxyUFp4NnY0SHkzWDV3aGMrZi96RkY5ZStkM201OWV2bGIvTU5OZDVZMnpqYVBOQmNQN0p5aE9HVitETEFrU05IT1hyNENELzdzNzlrL25xdWRuL0kzTGNCZlgxNS9EMm5Xbm1XZnhqNFQzRWNyd1A0Z1RqbGlhQ1gyeFJQQk45anMrei9BZDRFZkFaWTJvRVBBYzhDaEtIYzlPdk5yd0NzcjY4ZEJ4NHhoZzlKS1g0QldBbkRZQzFKZEFkWUE5YWJCNXJFT3U0Qmg0R3pBRzBwOHllZWVpNzlhNzcwUFN1MXYra1R1TUZsQWJnVldDbStyd1AzV0syL0twVENEOFM5TnNuV2dhVmllbE1ZeW51U3hCQ0draVF4UkJlajQ4Qng0QTdnSjlwdHRRUjg5OVF4M2d4OEYvQkg4Wlg0RERXK2IyclpLMEFNWEw3V3lmMzdULzdQbnZBQ2Z2Q0gvbEgrbDNqTmUxcStEZWhyeU9Qdk9SVVVIMVBnN2NETEFNMW1FMjJTaC8xQXZNNXEvVFZRSGVCSGkzVTNnYVVrTVJoakhnbkRpblk4Vk13ZkFZNUxLYmE3M2VnZEFGS0tGZUFrN2tHNUZUZ05QRmFzLzBveEJRKzk4OFE4a0Q3eDFIUGowNmVPZTJmT25zOS84c04vendNV3Z2bU41N1orOElmKzBWL05qZGlEOG0xQTc1Sy8rNTU3QXgvSXhoWWdtcGN5TWlQN283SXVub3ZqK0tCZkV3ZXpzVDNsMThUQmZKUWUzL0g4UTZHUUFHc3lrSWY2dytqNFlydDFmRGcwMjQyR2ZKTXhuSXUzOUQ5b0xxZ2xnRmN2UmdzNlNjWkhsdHNHZU5kUTIwRFVaV0JINWl0QVc5WkVCemloamYwL2xSU1BKTWFjYmJlWFh2bjBaOCs4QXRCdXQ3ekhIanExTUJoRUJ3RkNLYmNlT24zQysvNGYvR0h1UG5rdkR6NzR0MjlxYmYxdFFFL0pCLy9PNmZKKzNBUDBjRnIzaTdJdTdqZWo5S2VBVHdHeFh4UGZDendGTkVNaE93TWQxV1FnM3dWd1pMbDF6MFkzQWxnWURrMG4zdEpMd0ZLOHBSa09OZFFFQlppWDRpMGo1K2JJZ1VPaUx2OFUrRzVSNDRRZFp5Z3BLbHFTcHVhVmQ3M2p4R0VoSkl4dHo5cjBxRkpxMjlwMEcrZ0FQSC91cTcyN1Q5NzcxM0diYm1qeC9xWlA0RWFTeFZzNkhhOFdMSG0xQUNIVlNiblFXb3BpalJsWlpEMjRIM2hiTnJZVVU4c1RKVE5oSEFwNUFqZ1JieG5pTFdlWWlMZk1TZURSNFZDejBlMTU4WmF1bGdHZDRUQkIxQ3RxY29zZEdldzRReHZiQTA2S21uOEpRT3ZvZTRIRDFocXNUZDhFYkFNSUVSZ2NOOThHZVA3Y3MzL0ZkK2pHbDI5cjZFSis4c2ZlWCt0ZjdNWEFPL054MmdFZTltdmlhN0llWUVicEs2Mm1PZ3g4djE4VG05blk0dGZFaWw4VERJWVJNcEMxeERxZzVpTm9Mc2hwNEM0eFVSeGVjMEdXdjBtQTZGSVhVWmNFUVhneFRaTkRzaTdLN1U0VTh6N3cxdUx6S2VDQ0VNRlhDbURmNlh2K0FyRDFWM1JiOXB6YzFJQisvTEhUM29NUFBnaEFiMzFEQXR0K1haaDhuUDYzWGkwNGFyYWlrd2g1amxHV21nelpPdGpDYkp1VlpHUWhzNjFrRkJIV0pSU3NkWEJGRTQ4Y2tJZER6WkVqSGJtOWxYcjlnVVlwaWRhRzFCaUF3MU9mYWJTYXNSN3FlOEYvay9UOW12WFNYUHIrbjdIRFlXMTRkeUQ4TjJSWmxnSi9KbVh3NjRCTVIvWk9OYS9lbXFmWmw0RkR2L3ByLzZGM3JXdjh1Wi81OFdCbFpZVmYvK1FuV1ZsWjRkLzh4OC9zYXhQZ1RRM29UcWZqUGYxN241VVVyMnljZVc3TnExVlVZZ1VJcEpKRXZZaFdwMFdzalRmVUNRMFZNdFFKbnNrQWlLNW9qcTEwd1BqRXNRWWdqblZOYTRlZlhpOUNLWWxTRXFDbWRWS2RoMXBRVGVEdGVxaWJ3eVNoRVlaTHpYbTVCS0MxZVlOU2d0Um0zMmZUL09tVnd4MkF3NnZicTIvVjI1cXdKamNYYitsY2RXMFBuVDR1Z2ZIS3lwMTgvdW1uQVZiVzF0YldmdnJESC9ST3ZQRVUvL0RIUDdJdkI0ODNOYUJQbmp6SjA5Mk5RMHdBZmRBYUhYdTFnSHljcnZnMVFRYUhwWktVb0I1dVQ0QVlhd003Rm5EYW1iVWVudlRkNEErbnBiWE9TaERQU0tmVFpuVzFpMXBRQU9oaW0zamJBTlNhODNJTW1IWkxIZ0l1QmNLL0JEelE2L2MrcmtMMUZ1QW84QVhnbnY3RjNsY0JIanA5b25QM3ZYZkh3QmhvQVpmVzF0WUEvaDdPZWNQelgzMW04L212UHJQOUQzLzhJMzladC9HR2twdDZVUGhQUHZLeE1ZN0wzb256OXVIVmdoVy9KdGFGVkFpcEFKcEdtMmE1VGF3TFNsRm8yTUVWN2NCY2ZLN1dpM1dscWJVMmFHMEtEUjNtQUwzZW9BUjZyTGMwT0lET1NMeHRaR296dExab2JTOEJCM0ZleFA5bWFuNHZzUFRRNlJQTzJ2SHNNenovN0RNSGNVU29CbndDK0RrbXpxSFczZmZjOXkzY3RSdGJibXBBQTdTWFY5S2h6WTRQYlhiLzBHWk5tMlVlRHR4YlFKTWQwRnVHYkFmU25SMWtLRWx6R0d3WnVwY2k3RTZHSGxtaUxlTSs2NVE0VGdHQk1aQmxHWTJHUkVwQkhHdjh1dlRNR016SVlrWVczOGN6MnpyM2ZWcStqN2QwcUowUExnMTVhYk5meSthb0JmT3k1dms3ODU2LzQyVloxdFRiK29mdHRsNXBoK3FVcklsTGlUR2RqT3dOaVRGZU9yWmVNdWJ0eVpqdlNjYjhTSWI0dDhuWS9OMWtiTDZhak0yV0ZQNlBIbnY5bmVueXJVZjU1WC8rTTk1di91WW45dDMvZjFOVERvQzF0VlZ3citNSGdOdWlPUHFOcFZ1V01NWGdUdXZaMkNDOVhmeWVHTlM4SkI1YWdtQVdGNjJXWW5NelFrcUJNUlpqTEZJR0dKT2l0elI2cUNtME1pYTFUWUE3ditNSUwzeHpBK0g3WGx4byt1WUJSVExVbUMzZGxBdXFKUFkvRFd6S21nQzRaNjdtYjZmRzNnNjgyNjk1dDJmamJFR0ZDcDNvbytuWUhwWTEwY1BaMUg4NHNlbFhWNy94d3FYVmI3eHc2TmpyNzd4MDdQVjMvdVhlekJ0QTl0MFQraGVRdFdMK0V2Q09Wck4xUC9DS3JFdGtYUmJXaWFTWUptRFcyNllDZDVybU0vTlNISkFGeHFSRVVVRS9oaHJWVU5VNi9jdHhOVjlzTnhnV1lHNGNVSlRBYmk5M3dMbmhrVFhCSU5GTHhua3lid2R1OTJ2ZXp3SHZMSFo1MU5yMC9xQW1EZ01VNjkwVE9wdjVzOEQzNFNnV3E5OTQ0VnU1YnplazNOU0Evb1dQL3BqM3dROThDQ2I4Y2czNENUTXltSkU1WEs2blZEZ0RaaFhPRHZLc3pZcjFCRkdrS3lDN3lTbldWcXNZL0cxcGV0MnJMV3o5d1pEK1lGaUJHR0I0UlJNMkZISkIwVjd1bkRCYitvNENvREt4cVFSTWFpelpPTDhRTHNnMVlDV29pY1BwMkpLT0xlMUdpMEtUYnlZMkpSVEIvd0I4SjNEbTJKMTNmWXQzNzhhVW14clFQL3V4aitldFpabkxlZm1VbkpmSDVMejA0aTNUN1BhaU44UmJaZ3Z3WkEyeUxDV2J5K2tPSXJJY3VyMGh2aS9JTXI4Q00zaFk2Mk9NclVDZFpjQTR3OGZOM1RLRE5obkRMWXNaZzVnVFpLbUgwUm54SUNFeUJ1bytRZDFuc2RPazI0MVkvY1lHZzRzUmhpQ0lva1JhdTBQWVVHT2syTXAyeHVOc1o3eEV6aU8rNTUvd1BYL016azRlQnRJekkzUFpHRHNPUS85N2ZaOEZQVExuZ04vNTlGUFA1WHFndlkvOHpEL2ZkNmE3bXhyUUFNLzh5VFBnTlBQcU0zL3l6TzE2MjZEbTVlSE9ZcXRaVW9yZFltMUdtdVl6M05sYVo3NVRTcUdVcW42ell3ZDRiZHh5ditaampTVWJaMWhqQ1lLZzJuYTNSRmMwZzRIVDJDVmxnUW12MTlySXNCN0tzQjdteVNnWko2TWt4ZjJuVXRibE9Ca2xoOXB0ZVR0d3dkcjhnaERlTjRILy9JOC8rTmkrSFR2ZHRJRCs5Ly9tWDNrZi9EdW5nN05mT2x2K3RIYmZXKzU3Q2tDRnNnbU9YZ0IwRGxaV083UzJDT0ZmTlJBRVNOTVVJWnpydXB5bjQ1eDBuS09rKzU0VkFQZHJmclZOT1pYQWpxNW9WdGQ2cks0NWFySzYybU4xMVgwdWJkcGFtNXBTY2tIV1pRMDRoQnZnQjRBTTYrSFlqSXdFYW1tYWthYlpCYVhFTjYzTkx3QnN2THpLK3N1cjM4cnR1MkhscGdYMEQvL29UNVoyMm1sWlZmUHlpK1dnRDZCWERObzZCeHN6SzZacGp0WU9nSzFXQ3lFRTFscTAxcVRweEx0c3gxbWxwVVVCWXIvbWs0MHp2SnJudEhneHRWcXRhcnZvaXFaMVFORnVxNHAvQTFQMmJPZEtOeVBqQVppUjhjSjZTREpLR01TREdrQzcyVVpyZXlFSS9BdkFkeWdsUG9kTFd1RFhQdm5wOGJkdysyNVl1V2tCRFJCdEdhT2pxR1lUczBMT05qbU5vTzUvTmNzellxM0o4b3lMQTAwME5BUWlJSlFTR1hqNE94a3k4SkExa0ZKaWlwZ01LU1YrRGZ3YXFQbGc1bkdKdHN3VXNBVys3NmdIZ084N29CdGprTDV3ZnI0eHpxNVI4L0VEeDZtZmYzNE5kYUFKdFlEZVpZMGVaU1NGVFJ3dkpNbGhzeC9CamsrckxqRmFzN3pjaXRJeDIrbVlUMGdwYXdOamdrOC85ZHkrQkRQYzVJRCs5Qk5uYzV6SERUc3kySkU1SmFWWUNzTmcweFJnYTZpUWpkNkFXQnVhdTF6WXBmbXRCTFMxRmhrRWJpb29Sd25XYVRIRzRIbVRXNTlsMmN4K1dnMkZyQXVpb1NhK29obGVjZlBtQVVVY2E5YlhlOFN4cHRsMHg0LzZBMHlTWUlxM1Nsc3BJcTBCNG5qTHJBMkhDY05oUXJ4bGpwNzU0dm1yVEN5UHYrZlV3bC9zRHQ1NGNsTUIrcUdIVHN3Lzl0Q3BtV3NPNnZLVjFEbFJ5cFNuQjZVVXZkSXBVa3JwNmk1QkhBUUJhWnBXSU14elp6Q0l0SzRtS1VURnBYZkw5UWFDWmxUUW1PSTR3eWt6M3JTVXJ2V29QNWhzbXlTMGxKcGU3WXZBU2hHanZZSkw5WnFSQXN6M1BQNmVVMHZYUE5BZWs1c0swTGo0aGxZSjZzY2VPaFdVWU5aeEJGQjY5anJ0dGdQR1JzOEJKdGFtaXVOb0hacHdYZC8za1ZKV1doWmdxZFhhRGF5clJBaEhPOHBwV3FLaEppcURsYTVvR2djVXpRT0t4b0haZmE2dk8yVzdkT3N5cmNVMk1neHBUNDRidDVRNkRLdzFGeVROQmZrZm1UaVJBRGg5Ly9IRHVGekhyVTk5OXV3bSswQnVLa0EvOGNSelpqQTAzbUJvN25qNDNhZThOR2VjN25ESWwvS0VQTkM2a00xUkJpc3RBYlRiaXNSWVh1MFBrV0dBREIwdk50YWlUWXJOd2ZNOHNpeERLWVdVRXNZUWJXbkhuM2ZBRDNDZnkybEt5bTJadGdiWFFDNUlFRDdVb0hXd1FWRDM4SHlQb081aGR6S0dXNFo4RG9aYkJpa0NRc0RFbW1nUTQzblpPTXZOMlBPeXk4YWFjeWJOMWtROStKUVoyWnBKc3hyQVcrOVpicjdyL3VNcmJTbS9MeHBHOGFjK2UvYXJmL1YzLzY5SGJpcEFGM0laT0tpMXViL1RhZE5lYlBXU3hKUUJ4VjlMRW1laEtPbEd1NjJJSW1jUEhndzBKbkcvbThSaWtva2R1YlJzeU1JOEYwVWFLWU9ydklxbHFDa05udTFrMTF5bmxFRmZZN1l0WnRzZFcyOFo5TkRRV1hadmlrSHNOSHBKVTVSVTYwRXRRQnNOOER6dytVWlRNWXcxNzdyLytFa2x3NU80YkhPZU9IUCs5LytMNzl3ZWtIMXJZTCtXbkw3L2hBZWdsSHhSYS9PQlhtOXd1ZG1VNTR2Rko1UEU5SUFMd0p1U0pDVU1BMW90WnpZckhSdG1ERElVeUZCZ0Vsdlpua3RPUE0yTmpiRWNPN2Jra3FpdUllVzYvcHlqSENXd2pURXNMUzBSUlFVTjJyYkllWUdjRi9TNlVRVmtvS0ltMVQ3SHRwb3JxZjZZVUg2OFdQU0dZYXpmMFlzR2x6dXRkZ3hFMnBqUC85ZmV3eHRkYmdvTi9mN0hUbnNBWjc3NFhQVnlMMEQ5d1VFLzZ1Q2kwZDV0dGswSGVGSktFUmxqS3kvZGJsc3dVR2xxcFJSQlVHVzRWQnA2K3JPYW45WFN1d2VLMlU0Mm82V1hscTQ5UGh2MGRhV2Q5WERpeFJ6RVRqdTNtd3BSRTlpeFBRcjhDdkRGT05hSE50WjdoemJXZSsrUFkzMUpTYmtHbkFQT2ZlNkw1K1ByMzdXOUtUZUZodTUxTjROSDMvMm1CU0NnaHRRamc1THlFRFdPYmlmMjUwVGcvZmJjeUh6VHI0dTN6dm5pVHBCcHFPWlozZGlndFNESjhvem1BWWtaWjVqSWdPL2oxM0t5Y1liV3VnSzBjNUJNam11TXBkdnQwMm9wc3RURmNzaTZRQVlCWk5lMmNrZ3BDZnc1ZW9YMVFnWStadHRndGpPa0RKQlNJbHpBRVdiTDBtZ0laQzVwRnlZOGk3OU56ZitLRU1GdDJxYm5OdFo3UjNISnRUMkE1a0w0Q2hBOWNXYi9nUmx1RWcxOTV1eDVFMStKRFZCVFVxNEE3OENGWG9MN3MzOGVaNC8rRWk3YmVnR2cxWFF1YnpVdlVQT0ZYWG5LeStmWC9CbitQQzFsdEYwWkQxMktHVmxNbW1MU2xETERlMXFydStQSmFwcnN6OFZUVi9zeGxwTHZRNVc2QmZBVjRVSkZ1K25Zc3JqWWZoQTRENXhkWEd3L0NXenVWekREVFFMb1FreDhKYjdjYWJjL3I2UmMwODUrL0k1aTJTdGEyeC9YMnI1dk1Cdyt0N3F4TWJPaDNyYjArcHJPb2tKSVFUN095Y2M1WG0xeSszYlRDR01zclpaQ1NsSHhieWtGUzRkYTFlQnRldDFTT292dEt0WmFiNXVaWmFXRVlZQ1VnakIwYjRibXZLVHB3SjhLRWJ3cGNCcDhPYWlKeHhZUHRaNWNYR3lmQjg3ZmVkZXh5MCtjT2IrdnE1bmVGSlFENE16WjgrUFRwNDZiMVc0WEplWG5jVGJaQzhCL0h3ai9zTllXcGNUM0JiWDVYcW1aQWRhN3pqeXJ0eTE2MjJLTlJVaUJOYlp5WFZ0ckVZVVR4ZmNuQUowR2NoWHNYMnJvMGRWQVhWcHFvZVpsUlRmVXZFVEh1dHFmMDlKWnBabEx6ZDRNdzJvZjFxWlltNUtPN1RNcVZLLzBMMFdYZ1doeHNYMjVQK1dFMmE5eU0ybG96cHc5UHdaYTJwakR1S3FlL3ptMTJjK25ObXNwSlE0Q0p0M0pXNUV4ODVFeGFLUHhBNEVmQ0pwTmhURWdmQTlzUmlPVXlMcW9vdWFzdGZqMVdRZEpDY1RTVWdLZ3pRVE1TcW5LUHQxc0tkcnROcjFMTVRvMnFGQWhBb21zQnk1bXBCN0FEakEybUswaFBqblpPTWR1R3dmZ25ZeDBKd3ZTc2MzVHNmMEtjRkFuZWlFUTFBTEJWaUJnN2Z4cThORHA0L3RhaWQxVWdBWTRjK2E1UzhYSG93RHRsbHdQaFArZnl1VjJsQVNEaTExMFBFRFVKNXF2cks4aGcyQkd5NWJob0FCbXF3eFNtdVhHTHVEZmJSOEVRYVhOdFo2WTNCb05SVnprRzRxNklFMVQ5RkJqOUxWZDMwQlZBZ0VvNHpwUzNGdkhuZk4yZW1IUUg3eVFiQ2Z6Zy82Z0pVTlprM1ZaZStqMDhYMzd2Ky9iQzNzdE9YUG11VFZjTFk2Vm9rekFIK1BpSE5aRlBVeFZzdzJBSFNWWGJXdXVNUURjTGROcFY5T0R3bkplV2tWSzUwcXpBR1paejhPT0xLb3hhdzRFS25CWHRUeTJYSUJTb3puRHlVdjM5dWQwWWkvZ2lqbDJBTUw1RURNeStSTm56dSs3VEpWU2JrcEFBNXc1ODl3THdDVmMvZWZ2MU5yK3N0WjIzWTZTVW9PVFZwbmZKVVdZRFB6TXlMSjBxRlZSam5KZXBtQk44K1pwSzhhMFJhVDhIRzlwbWd1S1JrTWhDc3RIcWFsbEFmcDJwME83NHh5YWVzdGxqWmZBYmpaZEZONHcxajI5blY3UTIrbnE2c3VEMjFVb2JsOCt1aHlFOCtHRjltSjdHOWgrNHN6NWZWMEs3S1lFOUpOUC9yOGV3TW03NzkyTWRIb2VYNXlJVFBJZXkwNlVwSGt6SHVyVUMwUGkyR0lNeEhGYUZudkJaQlpxb0Jha2k0OE9KYUl1S3VwUmVoR1pBek5LOGYyZ21rcVA0bTR6WDBzcEJoY0g2RmlUNXpseVFlSUxuODMxVFJjR1doY2t3d0U3ZVlvNjJNUUE2bUNUWHIvUGZMTTVsbEtPTS94eGJMTG4xcnJSZUswYlhUQ3BQZVBQQjE5TmpPbWxXWmIrMFpmT216LzYwdjdWektYczZ3SEM5V1NxS0hnUE9LK2svS3lTOHZXNDFoRXBMcFdwa25aYjBYVTFuMmVrRjBXSW9rR1F2WWJWQWtCcmpSQUNwZFFNWndaSE9jeW9jS2tYSGhrOTFMVHFyYXYyTngyclVjcWQzM0hFRFJTQjVVN3JaemQ3Z3llankzcTdkVkQ5V2J1dGlDNXJ6ci80NnI0MjArMldtMUpEQS95clgvbEY3OXpYbmtVYlF5OGFuRmN5L0Fid3IzSFdqNkJYNVBPVjd1K1NPblNLTktuQ2pnMkFxSXVLS29BRDUrN3cwV2t3QjBGUUJUWEpJS2g0dVVsVFJGMVVZRzRWTm10WmNPa3libU54S3NjUm9OdUxmcmJiaXo3ZTdVWG5Xd2ZWbjMyTHQyWlB5MDBMNkovOHFYK1duM3pqdmVDOGFPZUJuMUF5L0JSd1NCZEI5ZVY4TU5DVkU2TVhSU2k1cXk1SGFZWnJLRnBLc2RScXVRRC9JS0RWYWxVNWcxWGliSkVVQzh5QXVkeEhhZVVBS20vaXROMTZzZDFnc2QwbzN6SWYzK3dOUHY3TXVkWGowK2RVUG9nM205eVVsQVBnb3ovOVk3VmYrOFIvR0orNi84UkNGQTAra3NFOXJWWWJWUU03aHRZQnhUUDlWWVR2Y0RNWWFGVEQ1ZnVsTm5OMjRyckFwZ2JtSUtqN1FFYTBsZEZlYk1PV3dZd3lmTjlSaSttczdpcktydVpqYlk2UWpvUDdOYjh5L2FtR3docUx0Z1hmSGhkVmtPWjhsTEowRGpVOE8wNi9tbzZEZnpLSXpSMVN5aGlJQmhjSCs1NG52NWJjZElEKzBSLyt2dHFSMTNYNDJDOTlmUHp3dzI5L0MvQWJVc3JqeGhpaWFFQnJJYVIxUUZYMW5uc1huWGN0Q0R6MDBGYlVvclFUcStaRVcrdHRRNnZaWWxBR0ZzMjdZdWdsM1ZCS2tlVVR1N1djbDlncnpwYWRqeDBPZlNiT21YS2d1ZHQ4QjlDN05BUzQxR290M2dHOHVITHJNbXN2ZC8reWJ0T2VsWnNLMEI5OC9DSHZrNTk2WWd6dzhNTnYvNGNici9aK0JYYXFCRkZqREZFMnErREtlblhUZFRoVVEyRkhMcmhmYnhkZ25aY2N1M1dKd1JXbllaZHZYYWI3Y3JkS3pWSktYWlZIS0VPSkdSbk1scm5LL0plTk00UVUrSmsvOHhBQjlDN0dkRzVwQWp5NDluTDMweXUzTHYvVUE2ZnYrOHpheS9zaUxmQmJrcHVtayt5UC9NQWozci83amQvTkgzNzQ3YldOVjN2L0F2Z3d1SEROVW94SkdGd2UwcDdLM1J2RU1kRWxnMm9JMGpSbmVNVVZXeXpCRlV5NXV6dUxyUXJRWVJneTZBL0lzcXppejBFUVZOcGFscGtzUHBXRzltb2VRUzJvTkxPUXpyVnVSODdVcHhxS1pxUGc4Z1dvNDZFN2o1VmJsMzhLK05YaGx1SDhDL3ZmUEhjOXVTa0EvY0VmZUVoKzhqZWVNSSs5OSsyeTI0OC9hMHp5VGlBM3h0QmFhSHZUZFRXaVN6MmtGTldnS2hDZ2t3ayswc3lWQWhPaWNLU2tFNWQybXFZb0djeDRFN044TW1nVWRXZWZEb3FXRjZJbWlLS29pdk13SmlXb0I4UmEweXlzSk41YzRUN2Zpb3A2SHBQcmFqVVUxS3FNUkEvNFg3c3ZEMzdpTCsvTzdUM1o5MWFPRXN5bjMvSEd0dytHK2cra2xPK1VNc3h4MSs0Wll5b3RQUmdNS3E5ZTZiTFdTWTQyWlgyNmpDRHdVRXBVRktTa0htbWFFaFFtT0dOdE5aVWk2cUxpd3FJbXlueS9LcnkwTFBCWWdqa3VOTGsyR20wMG9pYXFCNkdNSjRtR0dtdXNaN1lNMlRqTGdmL3U2UEZEdi9KWGZVOXZaTm5YR3ZwSFB2Qkk3ZC85K3UrT0gzdnYyOTgrR09vL2lHSXRwWlE1NEJtVElHVllXUldTSk1FWVF5ajh5bTJkSkNsMm5LTkNENTBVODNTMkR2UndxR2tkbWpoQ2RESnJMaE8rZTBDQ0lFRFVSVlhvdkJTZlNmQytsQUg1RGhXWWdUS2xxc3BTS1hNR1MzTmVxKzJzSVVYQ1FlNExQdytrZURFMTluM3I1eSs5Mkc2SHRjRWcyYmVWa25iTHZoMFUvc2dISHZIKzNhLy83dmowTzk3NGR1QVBjT1VKVERFSEhHZUdPUWFEQWUyMkMwaWFUbzFxdHhXTUp3NFVuVGdUV3dsb3BRUTVib0JZeGw2MGxITFpLRVgxcEdrM25SM1pTc3NDcE9NSk5YSHBWWUoybzAxRGF6WjZ6ckZUSkxzNmVyTGx2SlZWcGtzUXpNUm4relhmczBtYUEzY0VVdnpPMGVPSDNqY1lKQysyMjZFM0dDUTNCYS9lbHhxNnBCbnYrOTd2dWorNmt2eC91TElGT2VEWnpFRk0xQ1Y2T01EUGZZek5hQlVkSDZKTExqdEoxbHlHTjRWdWE4MFg1TldEeUx4RzJZRkNSU3pQQnl5RkFraFo3VThla216SDdhZW55MzNNZXFadHNidy95bGlzKzVoUmhwN1NyN0lHcWlIUXd6TG8zLzBlQkFJaEFqZklUTE54b0VRTldNdEcrY042Uzc5WWJyL2ZnYjN2QUQwRlpqblV5YXZabUtiV0p1OTAybDZ2TjRDYXEyTlhpc2d6VEZxVUQ3QVpMUXpHZ2hSZ0xDd3J3UXdHcGtZZDdkREQySnlsaHZ0eGM1aUQ1eGRBTG1XaWhkdnpQaS8xSnc5RFQrZlk4U3lnczl5alAwVnArZ1h3T3dWd3MxQVU5dkRDekRlWFZYRWlRU0R3dk9MM3dCOEhTdFJhQyswWDlKYSt1K3dhc044QnZTOHBSd0htM3dNSFpzQ3JTdENPREdtYVlFZkdhZWtSbFhZMk51TWFLWHkwUTQvVnZxVTE3M09zWFZnZFRFWkwrbXphQ1Q3dVd4WXdEdWx1cHl6UHUzMTJ0MVBhaFhZZmJHZDAxR3hXaXpZZTdiclBZSlRScnZ1OEdHVXNGZ1BPZnBwWFFKNFcxWmdxbFJETXJ1QUhQb0VMYzYzaDNpL0hnZDlSQytwOXUvbjdmcFI5cGFFTDNweWZ1di9FLzlSVThzTkFIRjl4UFFiTFF1RWJHNnVJdXB6UzBwS1dDcERDVVEvMGhISkVDVWpQcHgwNmdGVzBZMFl5bGhlbWZoK0hNMHNOczBrQ3lhN1l0MmhyOW9mQjFPcjlVVGJqak5GanA2RkYzY2VPTWtUZEowOG5HbDhwUlpJWUFpWHdBNTlrWUdpMm15VmgrVi8wVVAvVHpHaTZGL2V2bHQ0M2dQN2dEenprZmZJM25zZ2ZlUGRiNzlkYWZ5RUluQlpiUEtBWTlDUE10cUc5MkNLSkJrUmwwVVVsQ2ZPaUUreFFJK3NCS3MvUU5rTVZkdWJBejVDMUNXQ2J4VHROMUR6c09LZlZjSkZ2dVUzSXhnWnFFbEVMc09Ocng5RW5vd21XakUzSnM2S1N2NTBBVTZjWlBXMVJnYzl3YWpleHlhYUd0Q0I5bjhIY3JtenpMVU1nQmFvb05wbmxlZDVRcmxqN1VBOGZldW5GVnovMzU5L052U3Y3eWc3OS92Yzk0R210LzBVMVFBSUcvWWoyWXF2NkRBN0l4enB0MmlwMHlhZTRKTlF3MkZVZkkvQm9GM2Jwc0RiNUxJcnlCVW9LY3B1UVc2ZFcvVm9SR3oxT0VZVTF3NStiamNNSUExRWRSNHJKc2tENEJHTEs2MWhreHpSQ3I1cWFjckpjRmg2V3NrcHFtZlpWeXFBYm9RZWFXTWZsZit3MVZPTmZ2K1lOM0FleUx3QmRhbWVkMk84SFRvTWI5U3VsTU51RzdzdWJMbENva0xZS2FSVVV4SXhTa3RUU2JpaVN0QWdERlQ0cThDb3RIZFptYjFQWkFDZ2RYOS9hTWEyaC9ibmdLbUNYSWdJUHNhdGZpd3A4Vk9EVFVXSUd4STNRb3lWRUJXYVRaUXdHbW5iYnRhNVlYbmFteDlSWVZGc2h3b0NtYWdKNFRkWE1tNnI1aGhOLzY3WWZ1KzVKN3dQWjg1VGpnei93a0FlZ3QxTjZmZjFsTXpadkFnZG9jSlNqKy9LazlQRnljOWNvS3pXWTBRUjhqYnlJUzY3QVBGblZqRE1FZWFXaGc5b2tOczRUSVg1TklxZld0K09VTkhXQXpuYlM0cmNKWjA1U3k1enY5bFZTampKL0VSejE4SU1Kb0dPVGtlMzRtQ3pERkFYV0IzTmlSanZQQ1E5ZHVPMUZHRlRiTjFRakgrb2hpd2NYTHh1dDMvcmNuNzUwNFZyM2M2L0wzcmR5RkVPZWFLZ2ZOV1B6cHVueVdUcU9rTXFuUFhXVjBvT3MwSjc1MkNKM1FOVEE3bVNJT1IrMTQ4KzRzZ3U4a1kzVGdrdjc1SUNjZDl4WjFOVk1nRk5ZQXltbm0veE1MQXVwTmVUNUFtazU4QlFCa1hGMHBhUWJlU01nU2EzTFJ3eGNNZlF5WXErdEFnYWpqQUNmWUtvdml6Q1dRSGlrTmtlRkRWcTNLTFN4OUFZYUtTWHR4VFpCUGZCVXBzYlVPSmlNMG44Sy9OUzNkdU52VE5uN2dLYXE2L2JlNXJ3a2czRlFsN1hCUmFlVm80dlJUSG9VZ0Y4THNFVXNoYzVTQjJTLzBISlQ0WjRBM2hTZy9WcUFtREtUeWJDSkRBU2hkSllOS1dYVlcyVWlBYWt0bkRsQmlNbFRoR3BnOWRBZEo1Q2tSYmtFT3pJVnB3ZEhoN0lzcXlyOFoxbEdNUDBHc0tCQ1FWcVlEdFdVL1ZzbktVb0tNbURRSDlDbURST0srZWhyM3RBOUxQc0MwSVU4Q21DTE5tZEJYVlpsQ0thbEJHYjVXY3o1QklVelFzejVNNFhJQWZMQ2JDWkNoVjhMa01IczhoTE0wMktTYWExY3hGTUw5eURrdGNrRFlmVVFVZCtWenBVeEEybzd6cW9HUTlOdEwwb1JOWi9VNXVqRTBtcE02SWtxVXNiaXhHMVRKQjE0YmIrZHR6dnRPMDZkUHZIaHMyZWUrOVZEQjhQYXBjdjdKOVpqVHdQNmh4NS9sK2ZoTTB5U080QTdHbUZJQmw1UWdHUWEwTXgxeno0QUFDQUFTVVJCVkhia3NrM3lzU1VmbHlsUUFXUVphWjVOTkhTNWZsbXZMcnk2VjBwSk4yWittNklkcmJhcm4yR01CaWFjT0xYT3JGZUtVQTNTUkZkMjhhQWVZb3Nxb3JJZUlPc0JneTBYTkZYMlpDbmZJTlpDT2dZN2w2RkNnUjIvOXZoK2VsQnNuTm55dmNDdkNwOTlaWlBlMDRET3NvellwcDZvaTBldHpjbTluYXIxbWplR1NwK2xGakVId2RnaWhBSmJhRkNoOExNWXovUEpkakw4T1o5OFZHYW9TTVQ4Qk13bFlDWEFPTUd2Uy94NmlDOEUyY2hpaTZnNmc0OHFLSUpvSFVJdWdFME5xVTNJMDBtS1ZWQnZGdGRRN0Q5UW1HM1hJRWduazJxM1llaGh4bUIzZ0RrZlNZYm51MnVUQXZ6TUo3TXc3L3N3Rlh1dDVpQktOV0dnU0VZcGMyTlhtenF6V1I3VVJBMTQ1SzRUdDYxMEx5WXpqWVQydXV3THN4M3dYaUU4ZEZGVlB6VUd1OHNsVjFuR3NoUzhnbXRhVGJhVGtSZDVmcnQ3bldUcGRIc0p0ejhIWkVsUWxBdkxSaGEvN2tEdDFZT0tzcVNweFJZSnJpWHZGc0UxL05oVEl1ZXZmaHZBUkZzRHBEc1F6TGtKWEc4aC96ci9vdlJGRlprM2lIV1pPVjVMeDNZc2FrR05vcy9LNjVhYSt3VUhleHZRLyttM25zNTFZdEdKdldQM3N0UVlBaW1kWnZaQXpGMWpCNTVBK0FHZTUrUFArVld2azJ1SmxKSlFodmoxa0tEWkpodVpBdHlGczZXb0wxYzZkRXJuamswTk5qVUVJaVFRSVo3d3FneHZFUXJDYTFBYUZjNVNtbW1IVHdWa2IvTDV1dWZzdTBTQXNCNjR6Z0YxZ1IybktHZUZHUWMxOFVPdnZZZTlKM3NXMEkvL0hkYzNSUWp2RHVBT1d3eStVblAxUUxBRTg3VkFQZDJ3eDJhRlJsVUtUd1Q0Z1hCbXIxYWJVSVlWN1NqQkRPQk5EZUQ4dXNEYUZDRUMwdFFTUlM3N083VUpXZzlJYllKZjg1RU5pU2M4Y3BzajV4VmhxQ3BncS9tbW13cFFUdzhRcDhWT0J3QmVCOWdtbTNRSmdFbHREenRPc2VPMEptckJTWUJYTitOOXc2UDNMSWZPeHBtSDYvQjNmMUR6RWNMTEFTODNLZGljc09aNkJrclB4NS96U0F0SGhMOHpSVG1Bd051cEVsNmJxbzJTa21DcWpLNVlhSlhWdHBDTk5tWTg2NGl5MW9Ebkl3SUZPNUJtS1FnSWxBTGpJYVFrN2NjSXo4ZkdFVlpLL0VEQ25BK0JqeDVuVUpmMGVqMlVVdmdGOHc4YkRmeEFPS3F6azdHVEdjQmdhNEowbk9NWDlDaExIZmN2eHdDK2wwMTZpdHNjNDJlUVo0VENoendEQkdsbTNmL3VjL1RFRzI3clBQZG5MMTNWTG5tdnlwN1YwS1VFTmY5MklTYWVPMnBYMDRZMHp3azhEMVhhaVAzQWdkb1BTRk9uMFlOZC9EWWRKWWk2ZExibFlob015c3I2cXBwYW5TTklOYUVJZ1F4SlRVSnFFcXd4NlA0RUsyclJXVDg4RWVJSjk5QW9wVkJLMGVsMHBvNDkrNVlwdWJXY1Y0amkrc3A1bnVmRjI4VzZhWnhWWmp5QWZGZFpCaUdDeW9zS0hLTGcwZnRGOXF5R0xrVW45allWQ25SaXNUYkhuMzc5MW55d0ZqdHR2L1dFR3hoQ05iOFdtRXN0WFNiUmhtRkl1OTBtcURlcTlkUzhxb0pEalI0aVZRTWR1NmFFZ1F3SlpJZ0E3TGF1TENhbEhUdExUUUhxaWNaWFN1SDdQbUprMFBGcys0Z3dWQ1NGZlR1b2VhUkZZUnJoaTBvN3c4VHVMV28rZ2ZBd3Z1dENtMmM1SWhBWW01WnhMbU5yMDVxY1YvY0FULzZYM2UwYlgvWXNvTXRLUStDQ2hFb3RuWTh6TjJJYVoyNjZhc1BaQ1A0U3pFS0VCTUVrVG5xYWRvUmhPR05uQmdmbVVxUnFJbFVUbzJOVXE0MDFoclJ3YVFzWkl1WVZ0aWhJazAxVlJ2SURDV08zWG1rZE1jWVExQ1gyT282aDZyeHJIblk4MjkvUTh6ekljb0xpWHVqRVluZDhSQ0FRZ2NDbTF0VmxLRVNJQU1hODhib0gyWU95WndIOWYzLzJTMk1BR2ZodnNqYWwxV3E3SUtWZVVhKzhMc2dUamMzTGJxMGV3dmZKZHZuRTByazVGeGVSWjFDNHFQMUFrUGs3Wk9PRVZyMEpjMTdsRVBGcU9lMW00VGdaYWNLNlJFckZZTkJEem9mNE5nRTFqeTZBR2tVRFZLakFGK2hFSTJvQlJaY3FHS2VJWFo1R1dYeFBVMHVhelVITlVSQ3ZybUJrd1UvSkNob2h3d0NkRmcvS1R1WThpWE0rNmRoUkxDRjhUSjVoVFZhNWQwUW93STBuSE9wcnJIeExmOFFOSm5zVzBBQ1BQZkxXK1VES1E4QlZ0WmZ6NU9wMEk3TXI2RDcwQktMZ0tHV3dqeDhJUEJHUXBSWi9TcHNaSFZkYzJZdzB5VWdUMWhWU0tvelJ0TnNkak5IT29uR2xqenF3Q0VDN0ZWU2xEZFM4b3RlZkhYOWxwZ0RuN2pkQXBiRW5jUjdnQXBwTVlSODNOa1g0SGpiTHEvTlBjZ2k4cWFGUmFVc1BCS1RXZVNTREVEMGNvQnJ0cSs3UlhwYzlEV2c4THdEbWxWS1ZpVXpPSzdMeTliNnR5V29nYTljMmZRRUl6OFBtT1dtV0VmaCs1VXdwUVQwdFJzZVV0ZEREZWdtNHlZTXpHUFRvSE96d1d0SmFhTHV3MHJIRmpsUDhXbGhzV3hhRmRQdmYvWUJPaXd4RUJXb29Pbk9CQTNZQjVqVFBzU1VkS1IvTWRndmhRNXJPcElWOVcwUGZNSkxuZVpwYTB0UldEZzFlSTd6YmpDMnlHRFNHaGVsT1d6dXhma0NsbFhPYklwVEM2Sml3U0dHU3FvbXMreFdZWlYweEtOelVTZUswTkVCbjVTNzBsVDc2U3RXdXBTcnFPSDErb2hZVTFacmNvRE5Ka2dySTA0QzJJMVB4YVdQTGJsekZBTS8zU2JNTW0rVUkzOFBML1FySVlzN0hsQUVBcVFVME5CVkJFRjRWRkxWZlpFOERPdk04NmZ0ZVRZaWdjak1IcVFVWkVPc2h5QkF4VG90aFdJNlBjeE43bmlETkxaNG44SGVLT0FtQU9SL2ZueFIzQWNEekNzME03R1RnTDFaKzlNUWt6QldCK1lrMWhIT0NZVHBrZU1WWk9tUVFFRzhaUktqd3hxa0Q1aTZ0NzVwclJ1VFdaYUdidVF3N1NwMHBiblNOdk1RaTh5WExVbVFOVWsvZ1c1OHN6MXdkdlN5cnpKUnBudVBOSyt3b0pSMUQ0T1A0UEJCdERWQlNvZXBxM3poVllJL2JvWDNmUjRoSi9JUVFBWTFEaXpQckJEWC9LdHR0S1hreFlCUWljUGJaWXJCV1Zpb3FKWm5pNHlZWllyYmpha3FzWWFBandpSThkS0ExQTYyUmhhWXZOYUZxdEsvSldZTzZyRUpkUzU2Y3BoWTdjdFZHeTMwRVV4bzFLOHlOdmg5ZzdTNDdzKzlYWUE0OER4MXIwakpnYWFyOW01S3FCUGUzZzVOdUlESEF1T1RQcFphK2xwVGVNNitnR3A0bjhEd3hzVGdBNmRpVjZpcnJ5VjMzb01td21wdkNNWk5ZZzBrTmJhVm9sd082dEd3RU5DaTBjNEtxSy9SSW80dG1RVHFPS3NDV3RLSjBmSlRhM080eTM1VmR0VHhQVk9iSzZqb0xEUTJPVHBVeUErYXdBdk8ra3owTjZDekx4aFNsaVVvdGV5M1JKcTIwczEvRVBmdFQ4Yy9sZytCNlpLZFZ0VThBczYweDIxTWFldHZSanhMVTB6TFFFUU90U1d5S1NTMHlFSlZWb1N4dW8rcUtUdlA2QTBjN1N0MllvQjVnUnlrNm51MitWV3JuckhJSythUnBSaEQ0QkVYK29NMnlXV2ZTekwwb0hxUkVsNnI5d25WUFpnL0tuZ2EwNy9zbUVPS3ltbGRZbTQ3YnpSWituaUU4SDFtVHlKcDBHU3BrWkhoa2VGQ0RmR2ZPYVdEZkJ4R1FVUXkyUkFBWjVHbU9NYWFhZk44bnN3YkdocFpxSXVkd2c4czBkWTZSY1VJNEI4c0xMZG8xanpEUFNIU01HY1lFbnFQY3ZnZlVZR2hqL0xwUEtDUjVuaEhNK2N5bGxtRE9kL0VucWNhT1l1d29CZ3hxWHVMWGZOS2REQVBrTlI4N2wrSFhBNHpuWGxGQlE1RDVrUG1PY2doZmtHWSthZWE3bk11eGkvbUFPVnF5alRjSGdnQnZEakx5YllBVDkreVBIdUI3R3RDZi92U1pITGhjZmxmekN0VnVvbG9UOTdSZkN4REZBTStmTXQ5NU5ZOThuSk5POGVQTXB1UlpQcFBxVlBMejZkU3MyZG9hSlhjZVlBckhUREsybUhIS3dNeWEzcVNRVlp4MCtUYnhoSWNJQlY1QkhWUVFvdW9TVlhCbWsxNmIrcFFhdUt6Mlg4NTFNVWhWdTBvamhJMFF1U0NSODRJd0RKRHpBck50cjBvNTIrdXlad0g5eUNOdkxjLzkwcldXcTNhUkVWSTRVeVo1aE80UG4zYWRaMk5MTnNXWmZYOTI4SGk5UDczZFVJUkJXSUU2S2V5N2JhbFlYbWl6dk5DdWxvV0JzemVYL0hpNkdNNVY1MTZzcStvU0dRaVNxYkdCMDhCRjFvdm5WejFaeW1zcnl5L29OSy9BZlMweDI5WDF2dnhhMTdqWFpNOENtdUxjOWJhdUFGMDE4Q25Bck5yTlNqdGJvN0ZHazQvekN0VFQ0aGVjT2NzeVBOKzdLaUcxdEF1YlVWcVZEUU1INGpBSWFhdDJCZHJyU1JpRUZkY3ZvOTZtbXdXSlVGVGFXVTN0Szd3TzhOTTh1K2ExN0JhNUlKRUw3c0ZxTHlya3ZJRHkvbW05L3VmdVlBL0pudVZOWHVFd01HUEdmcHBoeHRUOE9aL1dvV1hNbFpobUFlUkJ6UTNpSmhyYVFBMHlzc0xDVVRnaGl2SzAwOVU4NWJ5aU9kVzExWitYTklJUU9kOUVoZzEydkNFTkliQWpqYWdyN0VoWGR1SlNoT2ZNYnJhd2h0U2JqWXBHU0NtWm15KzF1NnZGUVpDVEpCb3ZWSWdkUU9SSUVaREVHVkw2VmJvWXFkUFdWYlgvNHAvTTUzekN3R2VZYVVMWEhnQUFOZDlpR0VVd0xzTVJDOHRKSm5LQUwvM3gxL1pGNXZlZUJmU1ViT2hkV1NybXlzUUNJUmNVWnFxTWJGQ2JmZFVMYi9MS0R1dXk4dVNWbVNRQXF1bHE0NmxHR3psbEhRbkR4a3dHdUk1N1VOdWxNWE9xOUt2VUp2akNyelJ1WWxQbWNtWXFOeVdKcmtKRjVieWk1WHRFc2J1ZWRyTTUwNjRDcUpvTHdXd3JDMVZrcW1pZ2VjRFp2eHV0Rmt0TFMyeHViazd2WW90OUpQc0IwSytVcllwNzBZQ2xXNWVSQnhxWUt6SHlRQk5xR1dGRGtSUjlzc01zSTcyR2pUbWNjbHkwRnp0VlVIM1pXRk0xMnFobUM1bFBGVXpjVmM1QU5UdUF3UllQbUpBU0c1ZEZabVNSSk90NHRra3RvWEE1ZjZWMmx2VUFLVHZGdmd0Yjl0WnNYUFJVY0Q3V3BoV2d5MlpEVVd6UVV3OUk4MENiUnN0cDUwYXJ4Zkx5TXM4ODgweTFQSHNOZS90ZWxEMEY2RWUrNTFSWmM4VXJmQWNvS1YvWnJhR25SUzY0UDd3RWREcTJNdzZZWnJPTXl5Z0diNm81azMydDQ0ak9rV1BWOXlRWkVvWVRLNG9kVFRYNEtXSThSUEdBVmNBT0hPVVFnYXpvUmpuUUcwMkJ6NHpTS254MFd0cE45K0NVbWhvY3NFdHdUM2ZPVXJ1cVJJbFdpK2FCTnNNb3FqVDE4dkl5M1c2M0hEL05xT3U5TGpjOG9COTkrRlExY1BYbTRETy9lemFIU1hFVXZSV2ROOGFNeS9ETDNLYTFZRjdDZ3FTNWZBdWUxblM3WGFKeVVEZlZINldsRkFPLzBNd0ZnOXkrck9HeVczZnhRQk01TDJnVnRETWRSa1NSQWNxNkdSc2N1MlVxeUNjQnlkVkJQMWtSQXBxWkJGT1VWeWlaYkhjNFN5RUdaclpBZXJuKzJrQURIcnNMallVMWFCNVE5R1BEMnBVTTZlVXVYN0c4eGdWSjYxQ0wzZ1prbVN0YWN5bU82VVlEVm80Y3ZXeTFqdGhIY3NNRGVscmlLOUdqNzNyajBmY1dYei94dWErdGYrV0pKODYrK0YzZmRlSkZZOHdkMHpIRnF0bEVOWnNrV3M5d3hwWlNSRVc4eFVCcnpDV2ZwVmFEeldqSVVxdUIzYW5SditJQXUzaGdpSkNDNXk1c1ZOdS9maXIzYjJWNW1mWHVKTDc1NkhJSEhVZm9lSUFxNm5hVXFWVGxkMTlNenJIWDc3TitlVUlwTmk3MWFSMXN6Vnh6eWY5ZjZqbmNHUjNUdTZMcEhGQjBXb29GNGJQWWxHNGFTdlRXTnRGUTAyb29vcUhHMzl4azhYWExMQzVkM1RaNWJXUDljdmY4NE1LZmM5djNsT3daUURkYjdVZUJUNXZFQVNqVitoKzg2NDFISC9qYzE5YS9BcndJVkxVNVZQUHFVbDNUMGxLS2dkWU8yR1BvRGlhVmloWVBUQUtJK2xkaUJxOG0zSDNiVVo1L3lWbTNOamZjZkdWNW1aYzJ1OXgxeUIzcnlIS0g5VzZQWm1IdUs0RzgyM1Z0bUF3cWUvMUxsVGJkdU9RaTlOWTIzZld0dmVybXQwd0ZOSzMxQmxXYnVkNFZCL1NOTklNTldHeEtEalZDQW0rT2FLaFozU2dlTks4TDNNZmk2NWF2ZFN2K1pQckxYWGU4N25iZkYyOTQ3dXZybjdudXpidkJaVThBK3VodHgxaC9hZlZYQUZTbnM2VjdQUUtsRmxLdG56NXhZdm0rZHJ2OVdhNVRVYlBiN2M3TTIrME9MYVU0MXVtdzJ1c2hwNndjVGtOZnZZOFN6Tk95VnV4UDJRbC9QN0xzdFBkdUVFLy8xcmVPUWZYNkRzQTlmTll2OXF2MW1nY2FNOXV0OVNZYWZLWFRadTBWZDl6T0FVWHZpcVpkOUF6dkY0UFA0QnBGT3ZxdmRxOEg2S3JkMi9GYjJ6OEMvSHpxczNMaXJxTXZKaVA3Mk9xRlYxL3NIQXE5M3FXOTA1UGxoZ2IwbzQrYzhqN3plMmZ6eDk5NTZxZVYwOERqSm5ZaGRtYXZuRmF3RUhoOGxwSDUzd0F2R3hreWJaRE5KdG1jVHpiVXpCbUQ5RHphelNhRE9HYjFsWmpscG1hcDZYUDZTSUNVTFJZUHVwRFQvdVUrY3ZFb0FLdUZKbDdyWmJ5NFBxRVZYV05ZbnJKTmR6RXN0OXBrV3pIMm9zK2dPUS96OHd5dkRHa2NhR0RIZmhWWkI1QmxtdWhLektBWTRBMEdtanhKaVF2UFhmZmw3dXhObVBxSDF0WWlUcjErQXN5akJ3T1VkZHZHU1VvV3V4WkZpVW1SZ1NEYXRpU1JvYnU2eHVKUnQ1MFpKd3d2SitPb2EyckhqaDk1SHVENGN2Z0I0TjhDdEFGUkUzZTJsSG8vOEV1Kzc1ZjFUL2FFM0xDQWZ2UVJOeGg4L0oybkRnTy9TRFZzZythQ290RlFIa0QvMWQ3eHRjdURYd1R5bFlQdEdjK24zdElNNHBob09MSGpIcHNObDY3a1VQc1FoOXFIZUNseTREdDJ4QUU3RUQ1M0hPbndZdkVLRnpzWm00UFpTTHR1TkdDNVBjdDlyeVY2cERGWEp2UW11aEl6VExJS3pOT3ljb3Q3YUpxdHlYNVBIcnNOV3lURkhsdGFZblZ6RTlPZlBBQnhraEp0VzlwRktkM29HdnVkbHRYekd4eGZEaitncFB4azllTVlmT2NGZlJqNHBlNnJXM3ZLNFhMREFocWNSZVB4ZDU3NlJhRDJvWS8rM1BpWnB6NVhlL0dwMzYrV054Y1VLMmtyQjFpN1BLakFySWNhMVZEMHVqMmk0WkJCN0VEVW51TFd5ODJyQzlJc0hsemtPKzV5ZFZkS0RSMEdzNDZTZEZ1emZMQko5M0lSUmxvQXJEc29hRVkwb0htZ1NhT2dEbFhjODVTV0hsd1pFazBCdStsYzBSeFpWS2lGaWNsdzVaWW1tVHpFeVdPVHRMOTJNZkJkZlhXWEp0OGxneVNsTlMrcUpObmUyZ2FkbFNQbDR2Si8vN2RBVFlVaFNrcTBNZXpNZWRoWUF6enl0cjkxOVAxZitOUDEzMXArM1lMWGZYVnJUMmpwR3hMUWp6NXl5dnZNNzU3TmYrRVhmdnJPRDMzMDV6NXc2cDNmUGY3RXgzNmVzMC85SVNVa2gwUHRBRjFvNWJYQ1dxQVdWSlhwQWRCcU5HWS9tNnZqbUV2cFgrNHpLUHIrcmE1dnNMcXhQdE9aYWxwSzJtSE1aSkRYSFVRem1ycDVvRW5nTjY4SjZtbHBoRUVGYXBob1oyQUd6UDgxVW1wcHNlUjRmZStsOVdsQWwxSlRVcUttckVQNWFFYXJ2d2Y0cmIvUUNmd055UTBINklmZWVhSUc4T3YveHllODcvLytELzIyWEY2dS9kclAvRXorN0IvOG5nZWdXcE9iSDNXN3lGdVc2VFRiSEd0RmtFT2tZL3dDMEhFU2dlL1RhcldRaFVjdG5IT0twdXdZMjAwelZ1TWVaLzZ2ejd2ZmdidE8zczNYenozUFhTZnZKdDZjSFJDMkNyL0gwZGVWUmMyZHBteTFpdStKb1hsZ2tWQWVvdDArUWlJanNvc1dHUVF3c3BqdGJVZ3NqTngrNWoyZmJKUWhDaDZ2amVYNWx5ZUR5bWV2UE1lNUwwODhleWRlUHd2d2p1OXlKdHZ6Z28zSXdLNldHSFk2T1dGb01EVllPWHFJN2d2ZkJHRHB3REtCbE9qK0FHL2JFQnREVTZtOG9aUUhmTSs3N3JuTjY3NjZsUy9mRW5wN29XSG5EUWRvZ1B2ZWZKcjczbno2YTg5OCtjenhULzJQdjVDekt5cHcrYkQ3VTd1dnpLYkR0WlJpY2VucTBielJ1Z0kwd1BybG1JMkNCMSs2ZkhYYTF2dCs4SEh1TEFEOXlYLzVxelBMM25idlNUWTJlNndYWnJWMjhYeEZVYThDOVc1WnZLVkQvK0prWUJrTm5mTmtFQnZrZ3FTemZQVjI3M2p3UVQ3LzVKTVZtSC93SDMrSWMxOCtTeDczT2ZQTUM1TnJBMDRlZm0wejVmWGs2TEVqQlBPU2ROdVFibC90YlcwcWRieHY5SjNBbi8yRkR2QTNJRGRrK09pcE4zOG56M3o1ekl1ZitMVmZ2dTQ2UzBkdUF5QXE3TWxBbGN2WDMrelMzM1NhVXlwRmE4b1pzbjQ1NWd2ZjNHRDljc3g2d1lOUHYrVk9mdk1USCtIMFcrNEU0SmMrK2pGKzV6OStpbC82Nk1jQWVQamRiK1BzVTUvazRYZS9qUzg4ZTQ0alN4MGVmK1JCM25idnlSa1FSOUZyRi9Ic1grd3hLTXhyNWJ5VXNybjhPeDU4c0FMek94NThrSk52dnErYUFMN3oxRjNWTnFmdnU1T1RoNXVjZXlXdXBqaTUva0F3N3ZlditidnVEM2IvNURXVnlnRnZjVUhkK1pvWGRZUEpEUW5vczEvK1k4NSsrWTgvY3QrYlQ4TTF0UFBTa2R0WVByekM4dUVWQnRjb3lMSzR0TXlsVnpmcGIzWXhVOHMzVjFjcnpieGJ6dnpKQzV4KzYxMHp2OTExOG00QXZ1ZGRiNnZtanoveUlBRHJyL1k0K3JvT3g0NmR2RW96OXpZMzZMMzZYeGRtL09CakQzTHkxRWsrLytTVGZQN0pKL2xuSC9zWS8reGpIK1BrbTA5eDdzdlA4TkVmL3pEbnZ2d012L3lKM3dFY21EL3lvZmZ4ZzI4NU1xT2hOL3FhamI2NzV0Y0NkeWtsbUlQNXExMzJoUndDV0Z6WUd3a0FOeHpsZU9LcDU4WUFILzM3ang5ZmpYb2VkYStpSE1lT0hHV3BwZWhmK0JyOUMxOGp2clFKVnhKWWtMVEdDYTFibDVCUzBsL2ZRSzkza1lBY0QyRjdpTFlweWRqUThEenVQdVFHYnAyMjRtaGJBcG96di9VN0xOOTZoTWRQM3oxN1FtR2JQLzdNNy9QYi8vdS9CNWhwUmQ5N2RZTmp4NDRSa0ZVUkhNbldnTVhGRHRLSFFYY1Z1VkNRYnF2QkRDQTFlR1FFZFo5NDVMYTc2ODY3c0Z1V3AvL3dhVTdmY3plZGxSVmUvT3F6eE5HQWgwOGNvLzlkOTNIdVQ1OEg0Rmd4NXZ6QTMzNkFiamVpZTNHQUhLY3NGZjlrQktUV3Nyb1pzU2dGVW9JWnVZSHU5dXB6REJZa2Q5ejlIYnp3eFdmUkYvdFZIL04yV0hUSXJVRTgwalRHS2MyRkprYTRKT1J6cTVkdWVQNE1OeUNnUzRsMjVlTWRPM0tVWTBlUDBPK3Uwci9rWWpQNkY3dFF1OXIrZTJsam9oMjFMVHZEQm5RVU04M2ZWZEdCZGVub1VaYU9IbVg1MWlQa1hwTWpoUTE2WTJOOWtwcDByM3ZsRDRhR2ZyL0g0bUtIZnIvSHBkN1ZaUzM2VS9YcjVMWTdScjkzZlRQYlN5KzlCTUFEMy8wQWk0MTVBSG92dmNTNXA1K21WMWdOVC80dDk2Qmx1cy9xaFRXZS9NT25XYjJ3UmtkSmpoUkVmdjJ5WVZGT0JvV0haRUJZZHk4NE04cElSdGZHcEFxOWFuNk50SzM0cWcxdVlMbGhBVDB3dW5UTE91MTgxSm1jWnNCY3Jsc0F1RjBBOFhxaVJJRE9yaDRFYnE2dnMzUjBzdTNHMUFQUks3aDQ3MVYzWEhsZ2tjV2ljUG5pWW9kTHZUWGk2TnJjdEpScE1NZWpqR0VCckdhUkpiTjJZWTBQL3YwUHVuT2NlcldmZk9BQjJOWDhxTHY2UEt1M3JiSDYwa3NjdTMyRmRoYXpmdG10Yy9TZ3hPYXpaa1paSEtQVTBwc3ZyYk44K3hHV2J6OUM5OElHdW9nK1ZOSkhTWjltUFNUZWloa09oelFYbWpud3ltdGUzQTBtTnl5Z3J5V3I2eHY0eklLNWxOY0NzNXJLVUZFeVFKdTBxbkJmeGtKc3JxK3p1YjZPcWUyeUdFekZhblNtTENqOWZvK3ZmLzBjSnJxKzVyMTBxVWRZQUtvRWRRbmk0UzV0K2ZRZlBzMEQzLzBBdlVKYjk5Ylc2S3lzUUxnd3M5N2lQQnk3ZllYVllyMzF5NGFOd2RVV2lrVXA2QmUyU1ZuM2tmVWNNOG9vbzYyWGJqdEtkeXFLVUpzTUpYMGF6bTVmMHJ4WGdCZllRM0xEQWZxeDk1enlQdjNacy9tY1RjL0xPZjk4SUlNN2dkd1l2SDYvUjJzSEdnY253THJ2dmQvUG1kLytKUE4xajVhUWRBY1JOdG11b3RLWUMyYXZjdXhBWGRLTlFWRktTODQzTWRzeDRjNHNPRlI3RWRVNmhHbzdPN0dIeDR2Zk9FZnY1YSs3N1haVk55MURnK1pNaEtvTDVMaFlwaVI2WkVENE5JVlA3cGV2ZG5lOGl4c3ZjT1lweTRuN1R3UFF2dnNFR3h2citMMk5tVGRBVmhadExLTDVlbGNNMDhXVFJDQUlhaUJEbUVjZ2k3cldzcFpCbHBGYzZRT3V1SHVyTFpreGNvNGhxQWNvVkpGR3dmbFBQM0gyMjVUalc1RlBmL1pzWG9MNnh4NDcvUnh3SjBDdjM2WFg3OUk2T0FtblBIbnl2akxWazBPRkdROGdubklMMjdHYlNwbDJPOGdGQlZQUmR1M0ZJOGhHRTltYzhQS3k5YkVlOU5IUkpTNTFYMlJhWHF0VWJ5bGxqUTA5TXJUblBRYmJPYTNRSjBwbStlcm0raXI1amsvbjZCRTZSNDdTT1hJVUNUU2lQaHVyWDU5YzMxUzdpdWJDckhYQ2pLL3lyVndsL1ZmV1dUeDhsTHZlQXVxVk5icXZUTzVYbWJsalJnWlpsMmNBSHYzdWUydWYrY05uOTBSTXh3MEg2RjF5RG5nL2sxY2d2VjZYVG1lWlRzY0ZySC85UzA4RHNIajQyaTVpTmZWL2l4cXVNMWJCVThPR0l0R21TcW1TODdOZ2hnbVE5ZURhUERtY0x1bzRsWituNmdKVkQ1QzFRak5UMU5tb0ZYYm9BdFFHVmZVR2w2R2l0N0ZPYjJPZHpwRU5UcjdObVF1YnJVV2E5NTBtanZwa3c1aEdvOFZ3Nkx5SmZzMFFEeWUyRnlHb0d0eXIwTFZ5azNWQldKUmQyRTFPN252TGZWVlVkQWxzV1pjWWQ4NHZYZk9pYjJDNTBRSDlwOFY4eGhiZDYzVTVlZEpaSGZxdnJNMkFPZjV6Z25iazFLQkxMaWlrZEZTaXFsbTNLNWJaNnZpNllLNzJVMmhwV1F1d085bE1YbDhKWmoxS1VQV1FlTnZRQ3QxYlliQmR0cFlvRW1JVFRXbUc2VzJzOCtSdnJuUHMyREpIanMzYXg1dEY5c3R3R0YybG9YV1J3cFZPNlZNenNpU2oxUFVwRENkdnBFdXZiTURoUlpZT0wvSE1uemlQWkJSSHRJcUgyb3pNbVdMVlBXR3lneHNVMEZrUlpEOHc1b3ZLY1VBdkMrYVFDOHRzZGxjQmlJby9MRnpvMEZ5NnJhby9rZTh3MnlEZW03eldReEhRS3Q3SG5TUE9hdUszeTBGZ29abXppWllkWElueE00TXNFbW4xNVQ0WlB1bTR0QXdFVUV2Qnp3aDlRWkpaR3A2UHJEa20zWkt1NnFtbytVaS9oaDBicEFneGFZcjBjOXIxakFRd0l6ZGhaOEhaYkVvR0Z3Y2syMStqWFhnN1c3YzQxaHZnc2RoY3hGenBzYlBqVlE2a1NlbGdkMnhUbkdzWStKZ3N4MWk0dE5ubE8wN2NBWjdIdVRVM01Pd09pNVlYTXNFVEVrL0lGMDNPT1lEUC9PR3pld2JRTjZTbmNFb3VBRi9SMnFDMTRkaXh5UkRtbVdlZnVlNUdwY2lwY05IcDZrTmxpbFk1VDdkMU5RMnV4QXl1eEt5dXJjK0VlQUtvZzR1dVhWb3hnV3MvWElJWlFBcWZNUEFJaTlweW91Wmp4eGxCelp1cFR5MkYrUC9iZS84WVNjN3p2dk16OVhiVnZEVzFYZHZGSHJaMk9OVFNRNjlJVTFpSjVvWTZSaHRMVnNTTFFvaUh5eVVNbE5pT0xSeHNDUDVCbjNHd0RGT1hTM0s1czA4d3pvcGhTRHI3RWpzNHgxSE9ObUFsZ2syRllrSkZNZ1hHTk9YVlNkNFRSWEs5STYxM1BNdmU2YTNlNm5tbjMzbmZycHI3bzk2cXJ1NlpXVkdLWmU4cy9BQ043cG4rVmQzOWZaOTYzdWZIOTFzMkxEV1BkN0c4am1OSkhFL0JyWlVpN2ZmUlNqSGMzRUNQcHNkVjlhaFUxMEZyLzArcUc4Q2V0NDJ2WFdhak1aRVR0Uk5zU1dsMjRjQW4zT1IyVXdMNnFhZlBGWSs4NjR6MzI4K2NLNEF2UlpHazMwOVJTclBpVW1lYlZ6WVBCWFVGWkoxTmYvaXhOVFVKZVdVcXl6QTdDanRXcUVFZk5lZ3p2SjR4dko3Uk9SN1RPUjRUM2RhdEwwQU41SGtMaFY5ZWd2MWY2VHpSK29ISHZEaTluYmsrajNaY2JrZ3JzSTZWUW84eTlQWnMrYjd5M2pLYUNuTldmTmlIQWJteXk1YzJ1T3k4OUoydXZkVHhWRjhBZVBUaE16ZmxXZnd3T3dvSCswV0FDdFFoeklCYXVzTEh5aHNPN3FHcGFiY2FZRllOb0ZlY2RvSGo0dWk0b2RYRUFYcllvQlZRMXdZb2JXWkREcWFBa1NKZ2JDeGg0Q0huK3Fpbm9ONFBNTG5ZQ0RzYUZzZVNJR296Vm9vd2loaFhWQXpPUTh0ajAxN3Y1djN6TnJhdlBXSlFvN1RVU1RUalQ0RlRVejVDZHZNQzJvV3kydU4zZmZnL0FQSzJaQ25IaTQ5M3lLNFBrVDVzanNDMzA5MjdsSklDRCsxaTdJb25JNVorU2NEb3ZKMlFrblk3cGpDeklPaDJ5djVnQUJGS09vMTR2TDhBeHBYa2U1MXlZNVlFczAwN2QzZHZ2K0hITWlpMGF5V1Zua2ZpQkQ3VFlvd01OVTRNaTVPbjdrSjJ1c1FWbWN5MVBuSXhMclcvQWEwenRNNlEwb25jUjh2bG5HSXJ4TzRWdFdmZVE5VHF1c1lXMEpZSXRjNnRVd0FBSUFCSlJFRlVLUW45OGxxMklWbGVRWTFTdHRJTnRPeE04Z1ZCTWJGZmVlSDVMMDhlUHZ2R20vSXNmcGpkdEFmNzFIODZWN21WQzhDRmFxc1dIKy9VMTlYdDEycVJxOUxGY1V5N1hRR2hROUpiSSttdElhTU9rWnM0OGNQWkRkcmcxY3NNWEFkZEJlYmUzQnpoL1BIRUt5ZUpWL2FuRTN1MzcrOS9Uc0tRVHFQamJjc0ppTGFUSHUya1Irems0dUs1dE9KNHJFalRQcHR1czF4WnhZNWFtVG5FU3dlekdqQVRnR0ppbjNyaFMxKzdBUERNYzE4K01odEN1SWtCRGZESVh6L1RNb0NGcHd3d1g4Sm9IMDg0K1IxZnYxMjNBdkpCRmtiVFFrM1NXeU9RRWorVUJGTFduaHBnY0tXTU13OERjM1U4c0IvSXpiOTd5MDc2ellFNkhVOURtaVFNNmZiY0JIcS9UQlZXUUc2Q2VuVjFqVGp1RU1jZHdyQVUvNnhNNzVaN2hTWUJaQVhtS3E2KzY2NXBFYXBwd2FMMFJDc2duNWdQSC9pQUkyQTNiOGhSV21HQkFENFZ3T1B6ZDhiSE8vUWRiZGVscjd4Y2c3dDlXMEoycmN3bjN3ak1jU01MSXFNcFFBTjV1SGVHRXN3VnNJV2ozNjI4Yy9jN1RoL29sYlBOUzdSWDdrSmRMVituditVbVh1WThzM0loUkFYbzdGcS9CakpBOS9oMGJIMDBLdU9USk9tUnBuMjBMbm1yOVFGeWNJSHYxWUNHc2lHcU1yT3JDUlpsQVhpK2pGNSs0USsrOXZTK0Z6Z2lkbk1EZWkvbnlXZStXRHoyNk5uTEFLZnZmOUM3OUlYblp4NGlscHdrc0J0QVRaWVRobGY2VTZuaFNDQ3N3UnJMQUZoRjQrY2h3b2xUZXI2c0Jld0JUS1puL3RaYVl5Y0wwQ29CZkd5NXkxMTNUd0Y3SXBrZCtSTEh1blJPckRXZVh5NHM2UmFBbGo1cVQxQW95L0xKQkx6WnpJdDRkWU9kU1k1dVNkWXZyaVBhSFVRd3BKdDBVRUZRaTkzSHQzVUlsaVN2Ym00Z0pVVHRpT0cyUWxNV1ZYSVJZSFlObzd4azlxL0EzRmxPeVBkeXNpd3J5UUxEQ0FzTXR4V1I5QWtXUE84ZGYrV1VwMVNaU1huaEs2OGVxWkRqNWdaMHcwN2YveURudi9oNWJqUTlOM2gxazJocGxyMHpEM3pFQVhKdjZ2cVF5SVVJeGt4QmJHMGxyU1l4WmxvbzduUzdEQThZWVhweGZUWjI3YWF6WTFqcTJzYk0zOWt3NVkrL050dERmZEtsM1M3MTk0OXdEZEloM1U1U1hpY2RobGZITXd5bDhiR0liTHVjZ0svZVNZMFV3ZUwrSGhPeEpPdXpVaHpIWk5rSXBTMjlUb1RTMWhXS1l2cjlqWDNQUFNwMkpBRDk5Ny8vUnpqL3BSZkE5WFNjZnVodDlEY3VjZjc1WjVFclV3KzVkZVVLMGQxcis1NmYrd0hDV0lTeHNDaFExMU9pNHducWVvcUlTdkJXQVBZYlpJb1ZNV2VuMnlYZG1rcTV2SGh4Q3NqMCt0d2d3akhZZU9VOEFLdHZPRTIyTWR0OWVXMnZmUDBMbHk1eDZtVHA2UThDY3RNR3czUUs2c3JUTzRVdW1JSWFTakRQZlBiRzhLc1hoc1J4bWVyTFhPcFNhWVBTUHIxTzVQV0hxbENqemJ1aktQNVI0UCs4NFVIZHBIWlRBOW9hNndIRjZmc2ZmT3czZnYyWFBJRGVuWGNWZ0hmKytXZnByWjdFdjMyWmdldmZXSFlNbTUzZU1tbS8wWElaK0JnaWdoc0l3bGZldUFMMlBNdnMycjMzc3Y3U1MzejVqNmRnZnZIaUpWWnVuOTBjcnIxcHVxQTJYamxQZTJuV1UxNjRkR25tOXViMmRGTjRzdGNqelRScHBrbGlTZUtxaGZOQUxxK256OHUyRmFNNUlKc0Q0dWltaDg2eUVWbVd1ZjV3Q3pDSnBPK3BFVThEUDg1ZkF2cGJaME05UEhQbnlidCs5L3dmUG4vU3YrLzBtOVB0YkNKdlh5RXp0aFVNTTRMRmlEQ0tVYU1kUEc4QlUrUlFwZDBtQ3lBbCtVZ3pia2xHcHBReUcrMG9pZ1ZnUjlQcHJlSzVrR05zTlN5VTRrSDVyaUhBNHJ2YzlhbHZ1eFAyTEY5NHVXemxYRm5wMUJOZER6eFlOa3VkdS9CVm9LUXVBQWkwejVVckRXNjhMQ2NkTjhEV0dDREk4ejZaQmRtV25EelJJNTlBNUdKbXZaMFJIWXRyUXJSOHQ4RHNXUFQyR0wwelJwc3hlakxHNUFiVm1JM1ZqVHg2VjNaSVhjOEdua2NZU3ZTd1RIUmxPbThCT3crY3VlOGZBUjhEdnZOam56aDM3djU3bDcwdnZuUTA1Z25oSmsvYk5ld3l3RE4vY1BIK041NTV5K2NwRjJJTG9IOTV3MGxMSG1LTnRCak91Nms1VDYzVmlHRi9veGFwdCtPeXI2TXlxeFRXUFdlbDIrWGRiejNMU3JkYlh1NVlZZVdPTXV4WnVXT0ZlKzhycWNRR1Yvc01ydlpud2Z4cW4zUnNPSE5ud3BrN1ozVy9lN0drNzByZVo5K3dSdmRZTkROcHJScjlHMHFwZloraGFjRU4rcUh0cm1hNFZYY2tiZ003d003SjEzZC9DM2o1NWZXTnh3WWx2ZkNYQVk0U21PRW1CN1FmK05XWCtjSFRmK1doa3cvL1YzYy9jZDhERDM2SkV1RC9PeVdRdndKOHpqMXVrZzB6UnVuaFF4WUhnYUVDTW9BYTlHZkFYSGxuUDRvd2plYzljTSs5UEhEUHZaeTQ0d1FuN2loRG5hcWYrT3piMzFrRGUvUFZQcHVPbEdibGRUM1d1bE9Rcm5ValR0K1owSE9oeGVrN0UrNDlnSFFtT2xhR0NXbzdtemwycFJUWmptSTBMcThyTTNiL1lBTkFuSlNMeUYrVTJGMU5aM25sazI5NzY3My83RzF2dmZkMy85Mm56djg5NE9WQm12MVBMNjl2ZlB4am56aW5IM243cVVPNURXNVd1NmxEanFjK1U3WXR2dldCdDE1NjZ3TnZ2Zi84SHo3L3ZjQWIzbmptTGZ6TXovL3pmL2pZdzJmZWRmcWhoeXJTN25jYytrSmFReGpXSGhxbVhqbzYzdXhxRzRFeCtBMWg5OG96cTM0ZnF4U2JjNHRCeGt0YytkTXJOYWdyNjk3ZTQrenQ3OXduK3ZQaWwxK3NieWRoUUNla0JqUUFyWWpCdHRySGc2RzJ5MFdYT3hXdUczbm9nNndDc3hxbCtOVUV6U2g5TjhlQ0Q1MThmZmNuejd4eDVUZUIvd2I0T1BDL3ZlWE5yNVBkVHZ2UTE3dFpiV0Z2N3dDRzc1dmNQdjV2Zi8yRlgvMi9mK2tTZ0pUaFQzZVBkMzU4dVpNOHZqVk1pWmVrcDY1bjlGMEhtUjVwT203ak5ydzZSRTQwa2ZTSndxRE11eDZmNWRkdE12Z0RKWjhHa0xwTmw3WTVRNlhvT00rdDg5eWx3RExpT0dibDloN3RNR0pqMEdlMTJ3T1g3eDY1dk81TEwwOUhxZExyUTRTM2gvQkRjdXRVYU9kYVNyMHdSclQ4V3ExS1ZCeDY3cXlTWFU4Wk9icmdMTXNZVDJEWUlKaEpYZjY1Mit1eTNGdkc1QjV4TzZveUkxdGYvSVBQWHo1ejlvSC91UDdTK3Z2U3dmQ2ZiMTRkLzlSci9pRnVRcnVwUTQ1NSsraEhmOVlEK0R0LysvdmZBbndJK0I5Lyt6ZWZ1YkRjU2VnZTczRHZYZnRUZGdCMjEySWJySnBLVzVUYm1LbHNWRjhBeHJ1RzhhNUJMdnJJT1VXcG9VdU5kYUpvUm9PN1NvRzEyekZ0NTkxWHV6MUc0MWt2bXFtTVRxZFJhai9lSVlpU0dzeTVtUjJRaXNLQVltTElKeGJSOHJGYWtjN2xpS2RaQ3pkeDh4cmFSbVBuL2VOajBiOU11cDJmUHZmY0YwZ0h3d2MycjQ1L2FtVWxQRktZbUxlYk91U1l0eC83c1g5WWIxQ2UvTVJ6enpYdWV1Vkd6ek83NXNCQ2c5SVdhN1VUR0dvVHhURjdqazYzSGx0eXAvWUt6TnBZdERYSU9ibmkxUU5vRkZhN3MvRnc1cnhxcDVNd0hPN2prME1FMGhVNHBtZVFzUllVazRiMG04cG8xbTdzWkRaUTFuYmFhU2Q5RHc0QmR1d1lXci84bGMybmdiclV2Ymw1OHpPTTNzaU9GS0J2WUJjQUJ0ZkwzTEc2UHRzQWIzY1A1bmhUWTdPdlliOGFLcTFtOENvZ3B5UEYya3FQb2RKMG9nanBCMmhyNnM2OXlsTldHN1I1TU1kUnpDZ2ExYlFDUUEzcXdEVkk1VWJEcnE3eXdxaXh3UXVuZXVWRnkwZEd3Y3dtZHNma3RYZitKdXpxTi92RW05V085T25sL2UvL0lROGcyMUV2cDZOczBqM2VtVWdaRWljSmVxelJZODA0enhubk9YWlNnQkJvUUFnZmJVdU9hSzhsR2U4WXhtcUg4V2dJb1VSN2dwRzFETGRUd01kTUlBb2podHVHbFRnaWtRR2hnRVFHbkFnbDBjVFE5VHk2bm9kc0NYcHhYSmJRcGFUczFDNHZxNzB1Z1FlQkI2OUxPblNqa0xZdk9IRk0wdllGSm9lMEpVbGJraTNLUzRhQVZvaEdzTjBLQ1QwUElYeDJqR0hIR0l3eFNDbkpURTVteWxFcms0UEpvYjl0Q1lFUWFFMXlvcVVsd2xBV01wU0ZtZVNGbWVSWEFMN3p6WGZkS283dGFIdm9uLy81WHlrQTBsRkc1OWpCTy9Jd0NHcUcwaVNLMEx0Z2lvTEFPM2d0MjEyTjJSMFR4VW1aM3Bwb3JEV2xuSElZa1Y2ZmpYUEh1Mlg4MjNkOGRsRVVzWHppWUJhbjlGcktWbisvY0t2YXRhaGRRN1RvRTNxT0FHZXNTTUtJOGNTZ0ovNE1SVUpsMlk1eU5BbTJmcDM2TmQzTndKMkEyZzArazZwVVBocXByd0swTyswakhXWTA3VWdEdXJLUC9kcVRGeDkvL0hzdUpPMzRGSzdmbzNON2w2R1RTMXZwZEdab2Q1dGdWdHVPTTZNZGxyY1g5N0M3dXRZWnJIVEJrM2JuUUkxd2dGNjNSMis1UjMrcno2V3Z2Y3pnMVhMajFuM2RLb0VJU0oxY1J0SUFWVVVOWmhhbkN6RmFETEI3UG5waVNScXB3d3JNaVl6UTI3TWxiWFZJT0JVSVpoaVY1czJWeXI5NitDT09wdDBTZ0haMklSMWxOYUFQZTFBa3lzeUZ2eUN3THFVV0haT28wWmlvSFdKM2RaMm50YnVsZC9iOVlLb1IzaElreHhNNnh6c2t4eE04ejZQbjR1VmV0OGVkOTU1bThPb0dXMWN1TTNoMUF5azdKTGNsckowcU16Q1ZGTWFnZjRLdC9oWHl2YjNhUS9jekJTMmYwQStRTFo5MHJKQmgyVmtYdG54U3JkaXZCTTZNV0wzSm9ScE9DUTVwQmE4YW1hcnJaMy92L0Y5NjZKdkZmdm9ENy9QS0RqUHZxOHJhMW5LN1c0eUNNWVVYb0FFL0I1VmJXbnNsVFZia0IrU1RIRm9DRU9pV1g5T0JCWlE1ZWV2SVliSnRUZUNITmN0S04xa21DQ1NlbENBazZmWVlXMWdLYjRxSGZNOW45WFdyckw1dWxjRzFBZEhTMU5QMkJ3Tjhyd1RmMHBMazVMZDlHOE9oSmdHeTBaQ056WFhHV2pQV3NMY29TUllsMUxRRU9XSExJOTB4MFBJeENNWVQwT01jY01RMUU0dmVBeFpBQ2dFTEh1eVZLeWp1bGVWNTZlY01oa09BQzg5ODZybHZqSlg5Q05pUkIzVEQvcjNkTlkvVFB0dzc1eE9MNTlLc25qc2Y1NDI2MG1hcWlYd1l1UWFlZG51YWtlZ2N3bURmYzJwWWZTZHZNVituNmc4RzlCdXRwNUdjZDV0dXpySGRBZFlZWEU5SnN5RjZWeE11VHVQamlvMnBFaEN0VE9kNUNkNERUQXFCbmxqaTdyUjRWR21kMzZwMnBMTWNBUDVpZ0YvbW1DKzZmM205T1JuZ0tvL2J6T2NDaUpZZ2lVcWdoTDVIRXZrMW1MTnR6Y2Jtc0s0UVZ1bTdlZXRmeTJvd1Y3WjFiY0RXdFFFdlhYaDVCc3czc3N4eDFjbEZTUkoza0l1U05Cdlc0VVFabHV5UGx5c3dONEV0aFNEMFBGSjdRMG1La25majBiTkhIZ05OdTVVODlBVjN1UWNvZWlkT2VBRHBSaCt2RldBZC9ZQm91Wnl1TFJDVkhJTURkYXBzN1pXcjY0MnJRNGJicXZiUVVrSzJvOWx3N2RiTnZtU0FFNTM5VVc3L2dFbVhqcU1YRThWcytPcElFbXVyZ0Z5UlAzNDlhM3JyMFBOZ0w2ZTl2RHg5L2VuMHpwRmtSdnA2ZHVRQi9UUC95MGVLOTcvL2gxcS84SkdQVGQ3Ly9oLzYwaUFiM0xPNnVvcklBcUp1QnpOUzZDeER1Qm5EMFk3R2p6dmtDeHFUbDVXL3Riajh3ZU1GVGRTZ0t3MUR5VnB2eVBtWDFrRXJVcTJRRFhMRWt5ZFc2YlJtZXorRzI3T0ExRnR6WUhiZitCVTMzRHQyUE5hOU9LYWZaWXgyU3NCVnc3L1pqaE9yN3liMGxqdG9CQ3dldzJ4cjlBUnl4OVZuRU9pOUhIWTFNcEpVa1U5NDJ6TEx6Y2FwaGJ6UVk5M2lDQkV3ZmlOMjVBRU5JSnhYRWtJOE14eW1mM2QxZFpWMnUwMldaWVR0OWd3bFdMNnI4Zlo1UVUyMEtHc2U1OUFOQjZUcGtHNEFwKytkOW9pWXZEeEQzL1c2T3psNVlwVkJPbVJybUxMc2VqU0N1WGcyejJjOXVKbHI2ZHk4dGtsL05LTHZqckYvYmVTdXk3OVByaVl6N3orWUcvbUtXZ0kxeVlsOEQzVkltYnZiNjlaVDVNTmgrZm9kMTBtbnRUN3dPVWZWYmdsQVYrWjUzc1U0anRuWTJQQldWMWZaMk5oQXhqRnlOSm9CZGJGYmVta0FKaHBseGtTTEpZOXpWREhlUzRtVWtyN0xGL2VXRTNyZERwZjcwOWU1ZEdXRGt5ZFc2VHFPamtFNk83YjFXcXdYeC9UaUdGWlhPYit4UVZpM0lKYzhjN1dLbHJPdTIrQnREY3JZdkFuaXFDWEltMmVZS0p3Qk0wQ2FacXl0clpJNDFsVXBqMXpMOHczdGxnSTA1Y2F3eUxMTVcxMWRaWFYxbFkydmJ1enowbEI2YXRGZzF1K1QwbXZQaGc5aEtKbmZDdDcxdWp2NVdvT2pvNXJHQnVnbUhSSTVIMFBQZXVpbUJ0Q2xocnJzK1kwTitsbEdPQWV3dnRNUjdIVWJSWmtEWW5KbEM5UWtiNHA4SVNQSmNxL0xWbjlRWDFlV3B0bkJzcmRIM0c2SkhlN1AvZHovTlFIWTJWRjZxU1cxOUFUckw3MWN4RUdNeVExZUpDSHBRTkxCTHZob2s3TXpVdWl4QmlURGthWS9WS3h2cGFnZHc1NkY4VWl6WnlGY2lyQWVqSFlNL2FzS3RadXgzSW5KaFNrdmVVWlI3RkFVT3lTZHNOdzFTb2txakx1ZFlCWkNrSW03aEdTNUJSbWlKaVdQUm44N0kvVGdyazdNaVU3SVVtdUJmS3hKcnc1aDF4SzFnbkkyWndMcFZrbzJHcU4yUVNPeHdURkVaNW5jODJFQ0N3dmw1ZGh0TWNuclQyQnlpMmlCeVMxYVpVaUpKd25JdFYzNkMvM1J2a1YyU3dDNk1tT3NnVklvTXIwK0lMMCs0Tjc3U3ZiNzd1M2RmWS9QcmNWT0xKRXJNNnV4WWpBYU1XaDQ4OVZPajFoR1pGb3gwb3AwTUdRODNoOTNkaXZ4ZWFjRW9NWWoxRTZHMmRYWTNURXFTK3R5K2tobGJQUkxMNyt4V1piSm5mcFVlZjlvVEZhVjVLTm9xcFhvTEIycE9vMG9seVI2UjZOM05MTEJ3QlM1R0ZsZHo0aU94eWpIZFIyNXpyMStlbVBxaEtOcXQxVElFUVQrem5BNEdIWTYzUTdBY0RnZ1BENExCaThJS0l6TFN4dURXZkFJWEcrem5WZ0cyV3p1VmdTQ3RnTkJwaFZMeHdMMGppWmxTTkx0c0h6Yk12T21kaklpcDl1aXN0bSs1OEdjcHVIcVNoa3JiMnh1a0cxbnFQMXQwaWlsaUtJSXBSVEQ3ZkYwME9CWWhBYkdiaEJZNzJqQ0ZrUXVQbFpwaGx3S0tTZDR5Z1hVU2VKYkZzeHdpd0g2RjMveFgyMC8vcjczMU80enZUNGd1QnF4dkx6TVN5K1dvMC9DcGJrcVVBT1lPV2FscG9jT0k1L1Z6djV3VSs5b05uZXVvTjFHc1BMUXdXSkF0RFRsZDRvV2wvQWRaYTdkSGROMlpmWlJOVUsxbmRWZXVyTEtPemYxVS9yOVBrb3Awc24wcERyY1ZoQVU2SjNETXhYUjhiZ0dNNEJ5K2ZqSWtmbnBRNXFianFyZFVvQUdrSjcvcHpyTHZpTTN4b3ZETm1iWDBEbWUwT2ttREsrbklBUkNDR3p1c2dPVEFzLzFTd2dFMis0SFYwSWdmWjl0MzJQZ1NHZWtINUR2NVJTVEhLOGxFQzNCNXZVTWJTd3ZYaTZ6SWRVNFgrTE9EQ3UzelpHWHViUmR0cVBJeG9vOE45Z0cxYTJlUUJDSXV0UmRsYmtIU3JPbHh1aUp3Tm9DMy9jSmdvQnNsQ0VDZ1hVVnhYRXJSTFo4UENka3RQN0tPdW5tcG1OVkRkRXFud0FCNU9WcTJUdGlqT1pmeDI0WlFELyt3OS9uZmVTWFAxWW9QYVU4VW1ORjdtYi8xazZ1OFlVL091QjhEbGh0OGFXUDEvS1F2bzl1bEl3SHF2Uit5MUhwWlNzd1cyMG9XZ0lwZzVLTDJZMDBEWGNNNlhWVlU0UzkrTFdLaHJjRXRzZnMyU0JwUzRKQVlOem9sMmprc2F0U2R3WG1nZElFWG9EdnpqTFY1TGR0ZE5zbHlXeGZlTHJwMmxRcnhpWFBRMFpSUFZxVzUzOEo2SnZTR2lYam9YTERxVW9yWkJTUXV0R3N0Wk5ycE5lR0RQdjkra2YxcFYvVC80dVdnTjJ5ZjFwYmk3WVc2ZnN6b1BaYWdzTGxmdk5Kem1BclJTNEd5TUJITGdhczNkVmpqU25uM1J1ZDBGRi9XSHBhMHlqcVZGd2F4dVMxbDY0QVhiV1Vac2F5cGFhcFAyTm1GNFRkTlpoZFM3RG9FN2x5ZXBxT1pxN3I1MnBOdFZ3cTNaYlBmT2JvS0Z5OUZydGxBRjJaR3BjZXVvb1ZoOWRudmJKV2lrNnZWM3NvNjhCYTlYV0VRVkFEK1NCUEhYdGxzY09ibEtGSHB6MlhnYml1Nm5CajNucWRtQ3dUWkc3QnhVdFJEVkJqY29KQTFFQ0dFdFJiTytQNnZTdHJndHJNeGNCTk1BK0hHWjFicTI3eWRlMldBZlRZYUE4b2NsMXNBK1NxZER5K2k0L1Z0WlNvbTZBTGd4NFpPdTN5dHI5YnhkTGxsWEV4cFM5OGZPSFhHai9SWW9DZUZBU0JWNG9oZXVWd29Kd2JzaFVMZ2l6VGlBVkJISGZRRTAxNmJZaS9HSkNPTmNsU05QWENaa3llKytVa09SWnRjclNHMUUwQkRNZGowbTNOY0Z2VHFUZUlPVXljVTIxNUJJcysvbUpBNEdMdXdCMS9mK0EyZjA0VVNXbGJEZ1JQZEV2a1FSSHM1Y3QvOWN5cHp1K2Z1L0NObHpkdllydGxBTjJ3T21WZ2pRRUR2c3ZQcWtHS2xDSGFqQm1PVW1RUWtrYzUxZzNnaVVETWFBZEhTeEk5bXY2akYwZmc3ZTNMK2VvR0RWZmhLZHF1NHBobFE1VGUzemNDSlpodlpNUHhtTlE5ZDIybGZMMjBra0J1ZVNXb0p3V0ljc0dhWFl2ZE5lUjdvSGJLejlQclJwQzd5WFpKT1NoOGk5c3RBK2hxWTJUbllrd0EyMGhyV1E5a0VESjBjZzR5RUJTMndQTTlDaGZIcWgxTjVCcVVlbkUwMDRjY2hpRmhHRFp5djNOa010bVFyQ212dkRCM3poZlVmU01BRks2SE9mQm55R3NxTUNmdGtNNHhPZTNpcTBBcGZaamsrRUV3c3ltc3dCd3RPWS9kT0lQNExZK0NhdXdzdm52ZkYzVUwyQzBEYURPVmVmcFRPQmpZTU4wOGR0b0p3MUdLNy9sNHZvZFZGaEdJR3NnSG1kbzFoSkZFTHNtcGgzYlpDZWxHclZibW5xTW5jem5pa1c3b2YrdDlRSzRza1pKT0dPNy9oV3J2WEkyUjdZK2pveVZIVkxQa3c3Zzh2Z3JZZW5iUTkyN2czSmt6ZDN2bnpsMjhKZHozTFFOb3F2VFRucEVBdmhEWTNSeXhVUDUvU2wwZ1VHT0ZicFdnR3ZrQ1l6UzIwRVNpZzdSUWVCS2JDNWlBa0FFeUtEZVoyc0xZNXNoQzBISEVNbUpPU0RPV0VTTHd5VTNKSzkyTXNNZldNTXFHK0NPRnQ2MW90MEVialRhYTBCZm9uUkVzbGowWkoyNDdoclk1WVF1eUhVT2U1OFJMQVFNMXh1UnVxaHZJaXh4OGdUWWxNWTVzU1NJWjBPdVVDOHcwTnJaMmtpTkQ2ZVc1SWQ4ekFHV2o5T0ZreEVmT2JoMUFUKzNRd1U5VGxHUXpBRVpiQXVuWFRQMVJRd1dyRS9vemxGcEJLd0E1elp6TVcxWG1CbUN2d1BNRFBEK2dzQVpEcVRNdUE1K3hxMGpHN1lpNEhaR05GS0dyYjFRc1NtTXpkWlJKNU05VThySWRnKzhMZktkU3E1VEZGdVZyVm94UHZia01TK0JtSjQwdFN0M3h4Z0tNNHZnT2Q5UGpGbW40djJVQVhSekNtVkdaelhNaTMwZFA4anBGTjk3V0VJRHZOd1NDM085ZGdibFJLc2EyTE1OR1did1R4N05nQmtUZ0l4cU00eUhVUUlZcHlVczJPbnhRTllsOHBDL1FOaWZiYVR4M0tTQXpCbXZMWTdNMlIwL3NES2xrTDVrRnROOFN0UUxXdkxRYmNBZFFaMGh1QmJ0bHV1MXlOd0JyZG1jZGpTOEVmcVA2Vm9GWnRBVGhzUkxJbGZLVmJjaER5SllvYWJXcTE1MFkvTmFOZi9oSXhqVkJPa0JoelF6QlRlZ2ZQaE5ZRlg4cW5YQnQ4OXBiWjY2ZW51MlVZRGFtUUxuTWpGeWNldkg1bkhqVEtrOWRFbFBXNWZqVjZsQnYrTUdPa04weUhqcXZzZ1ZTRmdBaVY0aldsS1pBdGlUNUhyUmRWQnY0SG1wc1NjSTI2VWhoTUNUdHFDeDZWSlFGTGNnS0FTWW5kdm5zY0VFd0hKWEZrK0YyU3RKb0lOSjJXR3VMUTdtWXdza0lKbnFxUmQ2Q0xaVWhQZGdZRFBGOVNUWTI1SXN4L2VzWlljdldBRjBBVkpHajg3eW0vODBMUzFIazVMbXJMT0lqVzRKdUoySTVpWkErQ004bkx5eDViaERGZEFIbms1d0NNRmxHM202alhRenQzMkNoSFRXN1pRQmQ3RTFQelNJSWF1WjlXKzZaaUlJeUlSRTArTEg4bGtBM2VoblNrYW85ZUtYOU54bzNUL2srYWVZODd1VSthM2YyNkEvU21XbVM3UHBzblNMd1lOQ29WbGJEcXh1RDhuSDk2eG45Qmx0cXRwc1RMd295Vi9DcDBuRFZiU0ZLRDMyWUJYNkVzV1hUVS8xOU9EQkRDV1lBT3hvUnhPVjA4TFBQL2RGZmV1aWIzVVFRa0J1RDJ6OWg4aExVeWhiVDAyL29NOW8yckszMFdOL3NNOXhXTStGSnRxM0lKNEo0NmVCUUk4MFVpdG0wbkhBcHVYWW5ZVFJNUWNCV0ErVGRPWUg3eXZyWDkxUGlacnVsWjFZN3RzNHJIMlNWZCs1Mklvd3Jxd3NSSUR3Zm1DNklmRzZJMW1UWjhtT1BQU3pWdGpKUGZlcjNid2xRMzRxQTNpKzB6WlRuTGZBOS9FYXhvZUxiU0Z6OHVYbDEyb0FmTjJMU3lsTlhKK2MwVTZTWklwbkxXMGU1STZxNVBpUSszcW5CWEhscDNVaVJYUjZrcUFPODdlV3NmSy9LU3pldDZaMmp5Q2VTSlpnckU1NlBFSTBRWXEvQWFGT2ZlZVpTZExlcGJlVTk5YW5mTDk1MjlrMnRaNS83b3lPZndMdGxBRjBIRWdLUEZtVUFDb2o2V2lBcXJyZEpxVlZvalVXMEpMYkk2UnlMNkJ5TGlBSlJOL2lyN1F3TjJEMUpGSVFJVDFDNGJ5d2JhK0pRc241dHhEZ3ZXRGtlc1hsZHNSYVZSN0p4WGJHcXh3eHJpSlRBejNOWWJ3eXJqaFk4MHVzWncwelJPZDVtNkNxUWFrZWp4aG8va01oamdteWtzTHNXMmZqRlZtNC9RZWRZQ1Y0WitFZ2hFSXRodlpFdDN5OUgrZ0psVFVteDRFdDBOZ1JmRW5YajVieHo2b04vNCsvOXdJZWZmZTZQTGdEY2ZmZEs2K0xGelNNTDdGc0cwTndnbDlya3lxaEdtYXF4cHJ3QTM1dmV2OXd1TXdDRHVTbngvaWdsTWhKUndHbzNJVzU0NWlzTnJveU51ZHRSRkxIcFpPWldrcmdHODNyZlVZUkp5ZERGME1Qckk1UjJuWFp1YnJHU09yYTdGbi9SaDl6MWQ2K3QwdW5FTU5Fa1VjVFlHbVRnZ3dXLzVhTzB3azRzbnZ2OHRqaUVpaFFlQng1LzlJZi81NCtZOU5LSEwxN2N2SEQzM1NzdGdLTUk3RnNKMEFDSXhlREUxM3RNME5qVkI2TDBYcEVmWVBLOG1kS2FldW81WXBxTlFjcHFZeU80MlFDeE54bHo1L0dJeSs1L3NabUdEVjlZMzJBODExQS9uSlBQVUhNRHVFRVF6TFNMZGpveFNkS20wNG5MOXRCanJoZmJsZER6WFVQUUNzcGlFQ1VWcE1uenhxTE5rWTZUUkdkRGxwWkJyWDhPT3p6NXVOODUrY2lidnVlRC8vVGl4YzEvQTBmVFc5OXlnTWExVStRSGFGMEhRbUNOeFZoREZFVUVmbEJUN0thT295NFFJZDBHcU8yZW9POGFtZFN1bm81UVhkNGtEaVhHbGpGTkRlckplTVpMNyt6YTJrUER0T25vTUZNN21xalJ5VmVCT1dwSCtJcytTUktWbmhrSDdrVkJxaFNKeTM4SHJRQXptWUs2a29NTGhNQWNNSjFpaDZYMnVFa3ZBWnd5TzluSHpyei8wMy9OYmp6L0V4Y3ZiazVXVnNMVzV1YjR5SUQ2eUFQNjdNT1BscisrdUJOZ0VoOWJhcW1TN3FvQVBBbVE1M1VQc3ZROEJDREt2Z2IwUk5lYWcwM3J4akhkT09iVllZb1VDVmtscTd3emJmc2M3MnB5VjhoUjJoREpnR0dXellEeWtxdnFLZGRUSVJmbVJJcm1adnBrUzlMSXVORjFHNzdFYlY1WE90UEZGa2NTczFzMk1wR1hSSTErcS95TTFlZ1pMWit3NVdNbUJjVWVCRXduWW9Jc1k4L0hveVhwYi9UcHRmcUYyTG8wc1gvNEwzL1VmK2duMzM3LzkzLzB2ZEhKNy83U3l1MWhqWlBOcXpjM3VJK2s4T1poOXZqai83MlVMZk9KL3ZyR3UxU2FUUUh0TEFoOFpDQUlnaW03a2Q4Z0pKZStQOE9kcksxbHJNYzFtRGZTSVdJQk1qVW1jMU1ra1R1MVY3SHZQR3UrMXBiSTkydEFld3M1MmxheWE0S2RvbVF6amQwQ3FLS0xybE9YamVQcDhYWGFFZUhjUUVGbktTcDdQa3pPMkJiSVJiL093ZWZHWXNueFc0TGh0cTdMNEdyWDFDMng3VHU2cUV5aFJvcW9IV0dOQUpqNEQvMWtTNnllbmNpVy9xbitmL2luSDFFWFB3dmMvSUErVWg3NlhYLzlMZDdULyttRm1ZM2YyWWNmZlJENEh1RE5qNzV0N1hRNk5GVU1QVlBXRDI2ZzZLNGRpcVR2STRPQW9WSklmL2J4bzdFbWxoSXg5NDFsVGtRb2tnRlI2SmVBYWZSZlYyQ3VyaXN3YTFPVWx6a1AzWTBseSszcGdqT1VRSzQ4ZEMwQzVJWjJnNFpEQ24yUGVmZFVwU2o5MXY1Tm9kbzFqRGRLamc3bENrYkJZZ3pRc3M5L2FDTCt6dGtXOEF1OXYvRlAvcWE2K05tUHFqLyt6RlA3WHVRbXN5UGpvUjk1eC8xZXBmMzlsa2Yvd2NtQnZPOTdnZTg3TVh6dU5NQ1orMHJ1RE5reXhmcTVGMnN3Vng1YUNFRVErSFdoSmFwNDdCeGRRZE8wdFdVN3B2UFFRTzFmTUhuTkFBQU8wVWxFUVZTbGQreHNERHplMXZSVFZYdG9hL1FNb0VYRE93TXplZUJPNUZNSVFkdGxUT0lsU2VBdHpMeitVbHcyUDgwRGVyVlhIdi93MmpZeUVHaTMrVFJ1VTVrYlc3YXhGaFk3eVRGdU1LQnFUdXBucWdSMEk2YVA0cWdDZEhuc3EyY243Yi8yWTgwbGZDRms4K1BwaGVjL2R1NDNmdTVMMVQrVDlvTG4reEg5YTl0LzRjV1pJd05vZ0wvNnQ5NTM2bXV0KzM4UStBSGdEcm45TW0veG5xZTczSjRBWHJjYmUxZXVRdi9TZXYyY2lCemZGUm9DNFNQRFJ0N1dMM1ZZWk1ON0o4Y2pOcThPNjZZZll6UWpseHZPZHZabklEd0JRNWRhUzdjVnczUjJ0R29mWFcwREhyMGt4a3dNVVlPZ3NUbXlGVWxKUGxrZ2lhUFNTN3Z3b3prVUlQZEFtekhhTGJTcWwyUTl2VUlVU1BKQ29KdEt0SldvcHpiMFV3V2VaVzIxeDdrWDExbGJuU1hVMGJ1R3pucy9EZE4wcUJkNEdxRElkOVBmeTNlSHY1WnR2dlN2UjY5OGx1eVZ6N3JQVjFFUi84V0VKamMxb0I5OStJejM1RFBuQ29BM3ZmZGZQQTc4eE5hMk9RV1FiUDVPSWJkZjV0UnFyL2JHOTl5N3loOWZHS0lhdlJNUjFkQnJVQU82QXJEMEEyaUFJNGtpRUtYZWQralk4bC9kR3N3QU9taUl5MGRSaEd5VlFLNnNJckRwYjdtZWlibHBsSnljWG1mYWNtb21CWkdVTTBEdUQxTjZqbTlhZUdJR3pOVnhqcTBoOUFQMmR2TWF6RU9WMWh0SzVmNzM5UUNkYnBlVnpHclJWQll1dXI2VmUvNDdPbS85SDZwL0Y4SnVnZ3ZueEdLQ0tjWVhnS2V6Vno3NzRkRXJuNzN3dFhPZm1RQWtTYm1SL1BNRzlrMEo2RWNmUHVNQlBQbk11ZUpONy8wWHAxVHk0SWVqOVBPUEFHeGZPVjhrbTc4RDdrczl0ZHBqTU1qb2RtTzZ5MjAydmpyTEhWZDU2TURKdVZXQXJyUzZLdzlkcGIzU0hWV0RHV0M4bzhoMjlJR2dyZ0FOSmFpVFl4RzBvRDlvRUt5YjJSZzVjVklYZlpmSzgxc0JTdXNhMU1xRk9KR2o1YTBBRFNYb2tybU16SjRyajJ1cjBXYU1jcHZWQ3RDK0ordXhxNkZXTXlIUCttWUtucVhUamhpT1ZMbnBuT3VOM3JReEo5N3pzZnJ2d05Qa3Uya2RXdVMrYk81Vm5tYWlmejI3K054dm5QK3RuNm1BWFVxRHBIOCtHdUkzMWFid2tYZmM3d2tocUx6eTR4Lzk5Rm1WUFBoclVmcjVVd0RSOEFYOHpmODRzOWtiT1BCMGx5dTJ6U0hSWEFPUXphc01oSSsyaGs0VTdST2diODcxVlEzelZSdG52Q1FaamNjMW1Kdk1SZkw0YkZvTm9OZHQwSC9OK2FlbUprc3ZpVW5kVlBsc3FCRzZhNGxjREdhOE04eUdTT081Zm84b2tDaWppWHlYTmFrSEZneXk1Yy9QRk01NC8rcGF1eHkrWEF6QWd2NlQ1NUd2ZndnQXNkZ0I4UExkQTFtbzNnVzhLNzc3N00rZWZlS1R2NUZkZk83L1NkUHgvMXZkbVNTaEp4WktSK1I1RlAydFAzdVEzM1FlZXVYaDl3ZmRsVFh1ZmVDZFB6cllYUCtGTDc2eURsQWsyeTk3YTV1L1E1UFJ1OVRpSzMvY3RiWHlGUDNpS3lreUVFalhVU2NYUkVPeXdrTUlVZWVkcFIrVTFBVk1wemFxYnJ2QTg4ck5uRHRkcDZNUncrMk04V1I2QUhKUkVJUWhRY3ZEVEFxQ2xvZmZtQ0pVV3RFOUZrMkpZNHhGT3lsbGF3dk1KSzhIQ2FBY0tyRFd6RWk1OWVLSWFFa1NPUUhPb09YanVUMUJrUnZ5WFl1ZUdNYVQ4cnJLaTFzM0pWTlZKcXNGdTlGUTdNcXVLNzc5bnBOc2JKYVpqdFdWSHNWNEZ2QmFhOHpaZjB6Kyt1OHUvK0UyblhwN0U5R1NNSnM4S2Z3RkRlQ3hFSURuNzVBWG4xTi84dnhIMWVYbm4xWi84anliRnk5K1N6VXdiaXBBUC9iRXI3NloyOCsrRS9peHdlYjZxYTByNjJ5TUdtQUdaRFNYZmxxWWVxdE9Jcmx5VlNNZFNEdVJqeWdFdVN1c1ZJQ1cvalRzT0FqUU5zL3hoU0J5bm5pNG5kV0EzaE1SMm5uRnBCMmc5d1NSOUtlalRwTWN2eFZnM1VMd0ZxRHZObzNSWWtDUkcweWpqVE1BeG8zNXhaVzJaUDFxR2RmMjRvaGUwcTdCRENXZy9TQWl6eTNXbENGRUU5QmlUK0Q3d1hSR01jOW56ajd6Z0pZdUJJcVBSYlRiRWVHZUs3eTRNR2d3SEI0SWFLdWRoNTc3T1h5dmdMSTMzU242MXNkK0VYZzZiSTlOOXRMblhnR2VldUZmL2VNL2N5V3VteUxrZU95SlgzMnpmUDNaOThyWG4vMEJyVmtHMkxxeXptQnpIWTZ0ellRWWNrNTBYcnYxV0hub0sxZW5Ea0Nibk5nQnRRTHp6SE90SWRnVFJIRlU4OE1GbmtmZ2VUTjkwWjFqMHhBaUhVL0JMQmNGV3Blc1JIN0xuVDNkS2IyTWpjdDg5cndjbTdVRlVlZ1dvZ055RXBhVEozMlhEKzdGVWMxQUN0U1Z4endYNUxtbGNHRlVCV1lBMlFvQVVjczVBK0ROZXVpbTNmZm1OWXpPYXc4ZEg0c0lKZ3VvOFhnbTh5TCs1TE5UUUR2elpWS0Qydk1hTWh5Q2FpNnovS0dtL3ZKdTRJZUJJcjczdXdCNCtHYy8vWlJaLzRNUFAvc3JUOVQ1N2Q1dG9kZS85czJISW45dWdIN2tIV2U4SXRjOC9leVhDNEQvOWtmLzE5djgzdWwzeTl2dmU2OTgvZG4vdXZuWXdXWUo1dTdLR2hzanFMeHpaVTB0dnFxL09CMk9XVnRMT0pGSXJxU2FqdE1lelBOaUJzejFadEJZWk9CamRpM202ckFtT3F5czh0Sk5TOXB0YU8yUU5oaEUvWllnY09OWlpsTFVuaGxLYndvUU5XTGUwZGhNd1V3WlpzaWFNNk5Fd3RydDB6MUFGSVl6dlIyVmVTSWd6K2ZDZzBiSUVRUSt4bjNHNnZNZVpFN0VucmJiZUVaekdpOU9SdmxBODJWQ25qZHk3a0lDR29UN0x2Y001RGZFNWlPOSs3NzczWTk5NkQ5L3N2L2laei84N0s4ODhWVC8ycmhZN29UZTF2Q2JBL1czUE9SNCtPMXZuTFlxMzNFV2YvbStlK2c5OVAxRXEvOEFPRmw5ZlRiUEowRHJoWmN2a1Z6N1BBRHBiUTl5NXJrZklvNGFuaXFjQmRuWUwzLzgzckxrOUgwSm4vejBPc09ocHVOWUNxc0cvQ29ra0syeU43b3lHY2labWJxa29TSWxBNG1Vb1d2RmRIR3dVaGhqNjhwak5nY1VzZUJoQ292TlRabGRBVlJ1OEJjRWRpK0hTYlVJeW1QSUVTaWxhcThxM0NoWnRCUVJoUkhSVW9UdkI5UDdoVmVUNWFUWkVEc3BTOXRLRyt3a1J5eUltZmRYNDBiTWJuS3l5UmkxclluY0xPVEFNVEt0cmQ1SkVzZWNPQ1puam1jMHlraTczODM2UGYvRWZaOHByb2JFMklKWUtCZUU1d1VVaGFuN3p5dkxyYTd2TzhDS0tNZ1FRbGNZK2EydEZ6LzNqL3FmL3FVNkZObThtbjVEd1A1ejhkRGlqck40cTI5OVJOeHg5c2RCUGpKM2Q2R3M5WUJXMEFnbjB0c2VaTzNDTHhOSFB1Mm8wZTQ1VjlXcjFuRi9TM1AreFlQNW55c3J5Nzg1bmlmcXpJZHhnS3hBUGJhYTBKZklvUHpCN2NUVW50Wk95aC9aR0lzeGxpVHBJQUtOMGhZenlRbGFnanpmSS9BY0RaZm5RekVGZkNTQytodXZTdEY2WEhiK1dldlh4MUtCdVdsUlZBSzdZbE1kTjFwYXF5cWwzeElVZWZtK2dlZWo3T0ZVQ1pFcnIxZUFIbzR5RXRkbFdDM1dnOW9GVWdWSlJBM3FDcXdWWUt2dnNkcVVlbDR3ODdqbU5lQVpteENRRmtKb2dQZEVhdytlNmIzelJ4NXRndm9ic1c4NW9PWGYrdTFIZ0I4SDVvRU1nTTF6cjhvb1JMNWZlK2ZrMnVkSnJuMmU5bTNsRDF0NzZZVnB2RlpsREhyTExyZTdwVW1Ta09Gd2RpTmRlVVMvVmJJaDJVWTdtMjF3WmpSQlhWblUydCtKVjUzT2xWTFRUZVVCdlJJQS9vSW9nVHgzUE1BOFIwYlpQQ1ZtUVZRQjJWcFRwZ2tYNVQ3NTVPcDEvRmJwbmFzRjVZc0FBbE9UcVZlMjlvWVZsQU55RXNlMVNrRDFmZmgrTUhQV0duYmZVZC9XQmpZTnlLQUU5dGplbU5wQkNIOG1OR3FBdVRaakUwOFVtc0JQQytCVXRQYmdrMnMvK0tzLzBmLzBMejBGWmJydnRlYXgvOHg0T1I1NXgvMHpyL1hJVDM3aWV4LzkwUEQvQTU3a0VEQ0RZek9DZmZIcTJvVmZCa29nTjBNT3VTaVJUbDlRTG9ZMW1DdnJkR1FkYmxSV2c5bVpMd0prSzhRWHN6K2N0UVp0WnNGaXFuN2lsby9mbXEwU2x2Zm5Mc3ZoRWNucGNRYWVqeWtzeWkwZWYwSGdMMVFaQklQUzAyekhQSWlxVUNOYWl1cUZveHBkZ09OZFhZUGF1SkNqV3JRVm1PZHRIdFFBYXJTZkFiVmFQSy9GVWdWNWJoSENSNGo5N3p0UGorQjVBWjRYSFBqNFBKY1ltMVFZT2dVODJYdm5qendPWlZHbXFqeCtQZnN2OXRDUHVoaFpBSSs4NTMyZXZlZnYvMTBacm4xQTNQYm03OHpWWll3WEZXNFA1TWtXNk1rY0I4UmVVQ2YvMTFORGV2N2ZBZkRRYXBkVGNjNllDcnh1TTdmZ0NndlZrWXNHZUZ1YUYxK2M5bkZBR1dQN0U1Q3RrRmhLeHBPOEx2K0tCVUh1dVJrK2xlRXZTcVNRV0QwbVdLZ3lDNlltc1JGQXNPQ1hOd3JLdWNYZEhMT2JZd3RMNEVkNERYSkdDV1YzWFN0SFRjQk93RitzOHR3Q1UrVDRqbnN2cUZoQmd3QmZDRVFCZmlDeDd2V2tsTmhkamMwMElWRGtKU1Z2MGRoMDZZbkZhNVVkZjVFTWtBaVU4RWt2RCtydlMyME9XYjg2Wk8zYlR4TEZQaU9seXZ0Mk1waU1FUk1Qc1RBZEJsNGZRMThaMUtJN2pzb3hCREY2T3dNWjBIS2ZvZFVTNEc0amZGZ0E0WHNJMzUvcXlPemxGRzdidHVENUZIdFRQMWpzK1JpcklLL1BHTDk0OW9sUC9rMzExZWQvSWszSHJ5a0UrUy95MEErL3ZTeFI1eWUrQzN2L0J4Nng5My9nU1JtdS9XYWVxKy9NYzRVUUVhR1BWNzJQbnBSa2g0ZFp6OFhLcCtLY1U3RXJOaXlXR2liaG9rKzRPQzFSVitYcVpFbVN6R1VCM3ZuT0J6aDllbzNEVEVvZjJmQ20xbms3dXp2dGxGUGpNV3BIejR6K1cxZDBzSVhCRmdhVFd3SVhUdmllajhuM2U3YWc0VEw4Vmdua3dJMURSWDR3TXk0RkpZanI5ek82bHJDd3UrVnRWVjBjdjdUWFlIT3FibmVjbkxLWjdQK3VmL0NIdjQrMWJ6OXdNTDdjREg0ZFNyWHhhSVIwYVV4NUxFWlBCR003ZTNhdHVGRG1mMnJmOTJqUW9zemNubjZJTm9nNlRWb0FqMFRmOXRCTFo1LzQ1T00zUExEcTZhL2xRWWZaTTc5M3JyRDNmK0NVdmY4RFQrWW52bXNtdEJCaWYrd0pFUHBpSCtzOVFCUUkxQUZncjRBTVV5OGQrc0VOYWJYT24xK24zejk0Z3hpR0FXRjRZNmFnWnZ1bkhkc2F5Sjd2eld5MEFsR0MyQllWMEdmQlVCUVd2MVVDT1pJbHVFM1JXQ0N1aWxmUmpGVlVZNEUvQlhYZ3dxdFN3SE9XTEgxKzFoRm1ZL241dVA3ZGo1MDk5RE5QUTZpRzNNVmsvd0xWMjFucG1adi9hNEM2K2drRFFkMnFXNnAySFF5MUExbWJwcUJ1UHVrWHp6N3h5U2RQditlbjMzem9oK0NiQVBURGJ6L2pQZnoyTTk3RDcva1I3K0dmZmZHRCtZbnZlb2tHa0N2UFhGazZua3FkeVZicG9UZGQ3Q1piZ2lpbzVCbHkxQUZ4SGt5OU5GQVBoTW9iTk96M2VzbWhIcnJ5em1FWUlLVlAxRTZtdmRFTnEwQmRzUTdac1VXMEJINWpRMk55aTdKcUJ0UkNCQlNGcGFoQTdrSU5LSUVOSmFpYndBWnFUMjJOcmhsUi9VRGlMOG9ab2FGNUt5YVdmR0ptUEhYNVhyUDdocFU3U3gzRlQvK0haL2U5eHJ4U3JaMVl6TVRVUkpXOUN4K2tkK0dEUU9tVjB6bGRSZGtxUDBzNmRtY3JBY3FVbDZBbGlFS2ZvQ1ZRWTR1eUVQbmxCYVpwVU44UHl1TVFqVDRZTVNlSkI0L0Vkei8wek5rblB2NERoMzBmL3ovSVZSaFB3bWRLdVFBQUFBQkpSVTVFcmtKZ2dnPT0= + example: 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 hashCode: type: integer format: int32 readOnly: true allergies: - maxLength: 255 type: string - description: Allergies of patient + description: allergies of patient anamnesis: - maxLength: 255 type: string description: Current anamnesis status: type: string - description: Status + description: status example: I enum: - - I - - O + - I + - O consensusFlag: type: boolean - description: Consensus flag + description: consensus flag example: true consensusServiceFlag: type: boolean - description: Consensus service flag + description: consensus service flag example: true description: Class representing a patient VisitDTO: required: - - date - - patient + - date + - patient type: object properties: visitID: @@ -6092,9 +6064,8 @@ components: date: type: string description: Date of the visit - example: '2020-03-19T14:58:00' + example: 2020-03-19T14:58:00 note: - maxLength: 65535 type: string description: Note of the visit sms: @@ -6104,44 +6075,39 @@ components: $ref: '#/components/schemas/WardDTO' duration: type: integer - description: Duration of the visit + description: duration of the visit format: int32 service: - maxLength: 45 type: string - description: Service done during the visit + description: service done during the visit description: Class representing a vaccine type VaccineTypeDTO: required: - - code - - description + - code + - description type: object properties: code: - maxLength: 1 type: string description: Code of the vaccine type example: C description: - maxLength: 50 type: string description: Description of the vaccine type example: Child description: Class representing a vaccine type VaccineDTO: required: - - code - - description - - vaccineType + - code + - description + - vaccineType type: object properties: code: - maxLength: 10 type: string description: Code of the vaccine - example: '1' + example: "1" description: - maxLength: 50 type: string description: Description of the vaccine example: BCG @@ -6149,54 +6115,49 @@ components: $ref: '#/components/schemas/VaccineTypeDTO' lock: type: integer - description: Lock + description: lock format: int32 example: 0 description: Class representing a vaccine UserDTO: required: - - passwd - - userGroupName - - userName + - passwd + - userGroupName + - userName type: object properties: userName: - maxLength: 50 type: string - description: The username (must be unique) + description: the username (must be unique) example: John Doe userGroupName: $ref: '#/components/schemas/UserGroupDTO' passwd: - maxLength: 50 type: string - description: The user's password + description: the user's password example: 21@U2g423 desc: - maxLength: 128 type: string - description: The user's description + description: the user's description example: Lab chief technician UserGroupDTO: required: - - code + - code type: object properties: code: - maxLength: 50 type: string - description: Name of the group (must be unique) + description: name of the group (must be unique) example: labo desc: - maxLength: 128 type: string - description: The description of the group + description: the description of the group example: Staff members working in the laboratory - description: The user's group + description: the user's group SupplierDTO: required: - - supId - - supName + - supId + - supName type: object properties: supId: @@ -6205,60 +6166,51 @@ components: format: int32 example: 111 supName: - maxLength: 100 type: string description: The supplier's name example: Cogefar supAddress: - maxLength: 150 type: string description: The supplier's address - example: 25 Rue Ministre, Dschang + example: "25 Rue Ministre, Dschang" supTaxcode: - maxLength: 50 type: string description: The supplier's tax code - example: '5221' + example: "5221" supPhone: - maxLength: 20 type: string description: The supplier's phone - example: '+237654120145' + example: +237654120145 supFax: - maxLength: 20 type: string description: The supplier's fax number - example: '+237654120145' + example: +237654120145 supEmail: - maxLength: 100 type: string description: The supplier's e-mail address example: suplier@sample.com supNote: - maxLength: 200 type: string description: The supplier's notes PricesOthersDTO: required: - - code - - daily - - description - - ipdInclude - - opdInclude + - code + - daily + - description + - ipdInclude + - opdInclude type: object properties: id: type: integer format: int32 code: - maxLength: 10 type: string - description: The prices code + description: the prices code example: PRICES001 description: - maxLength: 100 type: string - description: The description + description: the description opdInclude: type: boolean ipdInclude: @@ -6281,24 +6233,20 @@ components: type: integer format: int32 code: - maxLength: 7 type: string - description: The price list code + description: the price list code example: LISTE1 name: - maxLength: 50 type: string - description: The name of the price list + description: the name of list example: default price list description: - maxLength: 100 type: string - description: The price list description + description: the price list description example: default price list currency: - maxLength: 10 type: string - description: The currency + description: the currency example: FCFA hashCode: type: integer @@ -6307,52 +6255,39 @@ components: description: Class representing a price list PregnantTreatmentTypeDTO: required: - - code - - description + - description type: object properties: code: - maxLength: 10 type: string - description: The code description: - maxLength: 50 type: string - description: The description + description: the description hashCode: type: integer format: int32 readOnly: true description: Class representing a pregnant treatment type PermissionDTO: - required: - - description - - id - - userGroupIds type: object properties: name: type: string id: type: integer - description: The permission id format: int32 description: - maxLength: 255 type: string - description: The permission description userGroupIds: type: array - description: The user group id items: type: string - description: The user group id PatientVaccineDTO: required: - - patient - - progr - - vaccine - - vaccineDate + - patient + - progr + - vaccine + - vaccineDate type: object properties: code: @@ -6360,19 +6295,19 @@ components: format: int32 progr: type: integer - description: A progr. in year + description: a progr. in year format: int32 example: 1 vaccineDate: type: string - description: The vaccine date + description: the vaccine date patient: $ref: '#/components/schemas/PatientDTO' vaccine: $ref: '#/components/schemas/VaccineDTO' lock: type: integer - description: Lock + description: lock format: int32 example: 0 hashCode: @@ -6381,90 +6316,81 @@ components: readOnly: true PatientConsensusDTO: required: - - patientId + - patientId type: object properties: consensusFlag: type: boolean - description: Consensus flag + description: consensus flag serviceFlag: type: boolean - description: Service flag + description: service flag patientId: type: integer - description: Patient id + description: patient id format: int32 description: Class representing a patient consensus OperationTypeDTO: required: - - code - - description + - description type: object properties: code: - maxLength: 2 type: string - description: The operation code description: - maxLength: 50 type: string - description: The operation type OperationDTO: required: - - code - - description - - major - - type + - description + - major + - type type: object properties: code: - maxLength: 10 type: string - description: The code of operation description: - maxLength: 50 type: string - description: The operation description + description: the operation description type: $ref: '#/components/schemas/OperationTypeDTO' major: type: integer - description: The operation major + description: the operation major format: int32 lock: type: integer - description: Lock + description: lock format: int32 example: 0 AdmissionDTO: required: - - admDate - - admitted - - deleted - - type + - admDate + - admitted + - deleted + - type type: object properties: id: type: integer - description: Admission key + description: admission key format: int32 example: 12 admitted: type: integer - description: If admitted or not + description: if admitted or not format: int32 example: 0 type: type: string - description: Type of admission - example: 'N' + description: type of admission + example: "N" ward: $ref: '#/components/schemas/WardDTO' patient: $ref: '#/components/schemas/PatientDTO' admDate: type: string - description: Admission date + description: admission date admType: $ref: '#/components/schemas/AdmissionTypeDTO' diseaseIn: @@ -6479,39 +6405,38 @@ components: $ref: '#/components/schemas/OperationDTO' opDate: type: string - description: Operation date + description: operation date opResult: type: string - description: 'Operation result value is ''P'' or ''N'' ' - example: 'N' + description: 'operation result value is ''P'' or ''N'' ' + example: "N" disDate: type: string - description: Discharge date + description: discharge date disType: $ref: '#/components/schemas/DischargeTypeDTO' note: - maxLength: 65535 type: string - description: Free note + description: free note transUnit: type: number - description: Transfusional unit + description: transfusional unit format: float visitDate: type: string - description: Visit date + description: visit date pregTreatmentType: $ref: '#/components/schemas/PregnantTreatmentTypeDTO' deliveryDate: type: string - description: Delivery date + description: delivery date deliveryType: $ref: '#/components/schemas/DeliveryTypeDTO' deliveryResult: $ref: '#/components/schemas/DeliveryResultTypeDTO' weight: type: number - description: Weight + description: weight format: float ctrlDate1: type: string @@ -6524,53 +6449,51 @@ components: format: date-time userID: type: string - description: User id + description: weight hashCode: type: integer format: int32 readOnly: true lock: type: integer - description: Lock + description: lock format: int32 example: 0 deleted: type: string - description: 'Flag record deleted, values are ''Y'' OR ''N'' ' - example: 'N' + description: "flag record deleted, values are 'Y' OR 'N' " + example: "N" + fhu: + type: string yprog: type: integer format: int32 - fhu: - type: string - description: The admission AdmissionTypeDTO: required: - - code - - description + - code + - description type: object properties: code: type: string - description: Code of the admission type + description: code of the admission type example: A description: - maxLength: 50 type: string - description: Description of the admission type + description: description of the admission type example: AMBULANCE - description: Admission type + description: admission type BillDTO: required: - - amount - - balance - - date - - listName - - patName - - patientTrue - - status - - update - - user + - amount + - balance + - date + - listName + - patName + - patientTrue + - status + - update + - user type: object properties: id: @@ -6584,13 +6507,12 @@ components: date: type: string description: Date of bill creation - example: '2020-03-19T14:58:00.000Z' + example: 2020-03-19T14:58:00.000Z update: type: string description: Date of bill updated - example: '2020-03-19T14:58:00.000Z' + example: 2020-03-19T14:58:00.000Z listName: - maxLength: 50 type: string description: Price list name example: Basic @@ -6599,9 +6521,8 @@ components: description: Is bill belongs to a patient? example: true patName: - maxLength: 100 type: string - description: Patient name + description: patient name example: Mario Rossi status: type: string @@ -6626,84 +6547,79 @@ components: description: Class representing a bill DeliveryResultTypeDTO: required: - - code - - description + - code + - description type: object properties: code: type: string - description: Code of the delivery result type + description: code of the delivery result type example: M description: - maxLength: 50 type: string - description: Description of the delivery result type + description: description of the delivery result type example: MORTALITÉ MATERNELLE - description: Delivery result type + description: 'delivery type ' DeliveryTypeDTO: required: - - code - - description + - code + - description type: object properties: code: type: string - description: Code of the delivery type - example: 'N' + description: code of the delivery type + example: "N" description: - maxLength: 50 type: string - description: Description of the delivery type + description: description of the delivery type example: ACCOUCHEMENT NORMAL - description: Delivery type + description: delivery type DischargeTypeDTO: required: - - code - - description + - code + - description type: object properties: code: type: string - description: Code of the discharge type + description: code of the discharge type example: SN description: - maxLength: 50 type: string - description: Description of the discharge type + description: description of the discharge type example: SORTIE NORMALE - description: DisChargeType + description: disChargeType DiseaseDTO: required: - - code - - description - - diseaseType - - ipdInInclude - - ipdOutInclude - - opdInclude + - code + - description + - diseaseType + - ipdInInclude + - ipdOutInclude + - opdInclude type: object properties: code: - maxLength: 10 type: string description: Disease code - example: '99' + example: "99" description: - maxLength: 50 type: string description: Disease description diseaseType: $ref: '#/components/schemas/DiseaseTypeDTO' opdInclude: type: boolean - description: Indicates whether the disease is an OPD disease + description: indicates whether the disease is an OPD disease example: true ipdInInclude: type: boolean - description: Indicates whether the disease is an IPD-IN disease + description: indicates whether the disease is an IPD-IN disease example: true ipdOutInclude: type: boolean - description: Indicates whether the disease is an IPD-OUT disease + description: indicates whether the disease is an IPD-OUT disease example: true hashCode: type: integer @@ -6711,74 +6627,71 @@ components: readOnly: true lock: type: integer - description: Lock + description: lock format: int32 example: 0 description: Class representing a disease DiseaseTypeDTO: required: - - code - - description + - code + - description type: object properties: code: - maxLength: 2 type: string description: Disease type code description: - maxLength: 110 type: string description: Disease type description description: Class representing a disease type OpdDTO: required: - - age - - newPatient - - note - - sex - - ward + - age + - newPatient + - note + - sex + - ward type: object properties: code: type: integer - description: The code of the opd + description: the code of the opd format: int32 example: 3 date: type: string - description: The date of the admission + description: the date of the admission nextVisitDate: type: string - description: The next visit date + description: the next visit date patientCode: type: integer - description: The admitted patient code + description: the admitted patient code format: int32 age: type: integer - description: The patient age + description: the patient age format: int32 example: 18 sex: type: string - description: The patient sex + description: the patient sex example: M patientName: type: string - description: The patient sex + description: the patient sex example: M ageType: type: string description: Age type - example: 'null' + example: "null" note: - maxLength: 65535 type: string - description: The admission note + description: the admission note example: this is out patient prog_year: type: integer - description: A progr. in year for each ward + description: a progr. in year for each ward format: int32 example: 18 disease: @@ -6789,19 +6702,19 @@ components: $ref: '#/components/schemas/DiseaseDTO' newPatient: type: string - description: New(N) or Reattendance(R) patient - example: 'N' + description: new(N) or reattendance(R) patient + example: "N" referralFrom: type: string - description: Referral from another unit + description: referral from another unit example: R referralTo: type: string - description: Referral to another unit + description: referral to another unit example: R userID: type: string - description: User id + description: user id lock: type: integer format: int32 @@ -6812,29 +6725,27 @@ components: readOnly: true reason: type: string - description: Reasons for entry + description: reasons for entry anamnesis: type: string - description: History of a medical or psychiatric patient + description: history of a medical or psychiatric patient allergies: type: string - description: Allergies of patient + description: allergies of patient therapies: type: string description: Current therapies prescription: - maxLength: 255 type: string - description: Prescription + description: prescription ward: $ref: '#/components/schemas/WardDTO' - description: The opd OperationRowDTO: required: - - opDate - - opResult - - operation - - prescriber + - opDate + - opResult + - operation + - prescriber type: object properties: id: @@ -6843,20 +6754,14 @@ components: operation: $ref: '#/components/schemas/OperationDTO' prescriber: - maxLength: 150 type: string - description: The presciber of the operation opResult: - maxLength: 250 type: string - description: The result of the operation opDate: type: string - description: Operation registration date + format: date-time remarks: - maxLength: 250 type: string - description: The remark of the operation admission: $ref: '#/components/schemas/AdmissionDTO' opd: @@ -6865,7 +6770,6 @@ components: $ref: '#/components/schemas/BillDTO' transUnit: type: number - description: The transunit format: float hashCode: type: integer @@ -6882,38 +6786,34 @@ components: $ref: '#/components/schemas/OperationRowDTO' MovementTypeDTO: required: - - code - - description - - type + - code + - description + - type type: object properties: code: - maxLength: 10 type: string description: Code of the movement type example: D description: - maxLength: 50 type: string description: Description of the movement type example: Damage type: type: string description: Type of the movement type - example: '-' + example: "-" MedicalTypeDTO: required: - - code - - description + - code + - description type: object properties: code: - maxLength: 1 type: string description: Code of the medical type example: M description: - maxLength: 30 type: string description: Description of the medical type example: Medical material @@ -6921,7 +6821,6 @@ components: type: object properties: code: - maxLength: 5 type: integer description: The id of the medical format: int32 @@ -6933,7 +6832,6 @@ components: type: $ref: '#/components/schemas/MedicalTypeDTO' description: - maxLength: 100 type: string description: The description of the medical example: Paracétamol @@ -6964,15 +6862,15 @@ components: example: 15 lock: type: integer - description: Lock + description: lock format: int32 example: 0 MalnutritionDTO: required: - - admission - - dateSupp - - height - - weight + - admission + - dateSupp + - height + - weight type: object properties: code: @@ -6983,11 +6881,11 @@ components: dateSupp: type: string description: The date of this malnutrition control - example: '1979-05-01T11:20:33' + example: 1979-05-01T11:20:33 dateConf: type: string description: The date of the next malnutrition control - example: '1979-05-01T11:20:33' + example: 1979-05-01T11:20:33 admission: $ref: '#/components/schemas/AdmissionDTO' height: @@ -7002,19 +6900,17 @@ components: example: 65 lock: type: integer - description: Lock + description: lock format: int32 example: 0 ExamDTO: type: object properties: code: - maxLength: 10 type: string description: Exam Code - example: '01.01' + example: "01.01" description: - maxLength: 100 type: string description: Exam Description example: 1.1 HB @@ -7024,7 +6920,6 @@ components: format: int32 example: 1 defaultResult: - maxLength: 50 type: string description: Exam Default Result example: '>=12 (NORMAL)' @@ -7032,7 +6927,7 @@ components: $ref: '#/components/schemas/ExamTypeDTO' lock: type: integer - description: Lock + description: lock format: int32 example: 0 description: Laboratory Exam @@ -7044,7 +6939,6 @@ components: description: Exam Type Code example: HB description: - maxLength: 50 type: string description: Exam Type Description example: 1.Haematology @@ -7082,11 +6976,10 @@ components: description: Laboratory Result lock: type: integer - description: Lock + description: lock format: int32 example: 0 note: - maxLength: 255 type: string description: Laboratory Note example: Note by laboratorist @@ -7100,10 +6993,10 @@ components: inOutPatient: type: string description: Laboratory Patient InOut - example: '0' + example: "0" enum: - - I - - O + - I + - O age: type: integer description: Laboratory Patient Age @@ -7117,63 +7010,55 @@ components: description: Laboratory status example: DRAFT enum: - - draft - - open - - done - - invalid - - deleted + - draft + - open + - done + - invalid + - deleted HospitalDTO: type: object properties: code: - maxLength: 10 type: string description: Hospital Code example: STLUKE description: - maxLength: 255 type: string description: Hospital Description example: St. Luke HOSPITAL - Angal address: - maxLength: 255 type: string description: Hospital Address example: Hospital Address city: - maxLength: 255 type: string description: Hospital City example: Hospital City telephone: - maxLength: 50 type: string description: Hospital Telephone example: +123 0123456789 fax: - maxLength: 50 type: string description: Hospital Fax example: +123 0123456789 email: - maxLength: 50 type: string description: Hospital Email example: hospital@isf.email.xx currencyCod: - maxLength: 3 type: string description: Hospital Currency Cod example: EUR lock: type: integer - description: Lock + description: lock format: int32 example: 0 PatientExaminationDTO: required: - - patientCode - - pex_date + - patientCode + - pex_date type: object properties: pex_ID: @@ -7184,7 +7069,7 @@ components: pex_date: type: string description: Date of Patient Examination - example: '2020-03-19T14:58:00.000Z' + example: 2020-03-19T14:58:00.000Z patientCode: type: integer description: Patient Examination Code @@ -7223,15 +7108,15 @@ components: format: int32 pex_auscultation: type: string - description: Patient ausculation + description: patient ausculation example: normal enum: - - normal - - wheezes - - rhonchi - - crackles - - stridor - - bronchial + - normal + - wheezes + - rhonchi + - crackles + - stridor + - bronchial pex_hgt: type: integer description: Hemo Glucose Test @@ -7245,16 +7130,15 @@ components: description: Diuresis description example: physiological enum: - - physiological - - oliguria - - anuria - - frequent - - nocturia - - stranguria - - hematuria - - pyuria + - physiological + - oliguria + - anuria + - frequent + - nocturia + - stranguria + - hematuria + - pyuria pex_note: - maxLength: 2000 type: string description: Examination Note pex_bowel_desc: @@ -7262,18 +7146,18 @@ components: description: Bowel Function example: regular enum: - - constipation - - regular - - diarrheal - - irregular + - constipation + - regular + - diarrheal + - irregular BillItemsDTO: required: - - itemAmount - - itemDescription - - itemDisplayCode - - itemId - - itemQuantity - - priceId + - itemAmount + - itemDescription + - itemDisplayCode + - itemId + - itemQuantity + - priceId type: object properties: id: @@ -7286,29 +7170,29 @@ components: priceId: type: string description: The price Id - example: '104' + example: "104" itemDescription: type: string - description: Item description + description: item description example: Acetone 99 % 1ltr itemAmount: type: number - description: Item amount + description: item amount format: double example: 1000 itemQuantity: type: integer - description: Item quantity + description: item quantity format: int32 example: 1 itemDisplayCode: type: string - description: Item display code + description: item display code example: Acetone itemId: type: string - description: Item id - example: '3' + description: item id + example: "3" hashCode: type: integer format: int32 @@ -7318,10 +7202,10 @@ components: description: Class representing a billItem BillPaymentsDTO: required: - - amount - - billId - - date - - user + - amount + - billId + - date + - user type: object properties: id: @@ -7333,17 +7217,17 @@ components: format: int32 date: type: string - description: Date of payment + description: date of payment format: date-time - example: '2020-03-19T14:58:00Z' + example: 2020-03-19T14:58:00Z amount: type: number - description: The payment amount + description: the payment amount format: double example: 500 user: type: string - description: The current user + description: the current user example: admin hashCode: type: integer @@ -7352,34 +7236,33 @@ components: description: Class representing a billPayment FullBillDTO: required: - - bill - - billItems + - bill + - billItems type: object properties: bill: $ref: '#/components/schemas/BillDTO' billItems: type: array - description: List of bill items elements + description: list of bill items elements items: $ref: '#/components/schemas/BillItemsDTO' billPayments: type: array - description: List of bill payments elements + description: list of bill payments elements items: $ref: '#/components/schemas/BillPaymentsDTO' AgeTypeDTO: required: - - description - - from - - to + - description + - from + - to type: object properties: code: type: string description: Age type code description: - maxLength: 100 type: string description: Age type description from: @@ -7395,88 +7278,80 @@ components: description: Class representing an age type which is typically a range UserSettingDTO: required: - - configName - - configValue - - id + - configName + - configValue + - id type: object properties: id: type: integer - description: The id of the setting (must be unique) + description: the id of the setting (must be unique) format: int32 example: 1 configName: - maxLength: 50 type: string - description: The the name of the setting + description: the the name of the setting example: dashboard configValue: - maxLength: 65535 type: string - description: The the value of the user + description: the the value of the user UserMenuItemDTO: required: - - altLabel - - buttonLabel - - code - - myClass - - mySubmenu - - position + - altLabel + - buttonLabel + - code + - myClass + - mySubmenu + - position type: object properties: code: - maxLength: 50 type: string - description: Code of the menu item (must be unique) + description: code of the menu item (must be unique) example: admtype buttonLabel: - maxLength: 50 type: string - description: Button label of the menu item + description: button label of the menu item example: Admission Type altLabel: - maxLength: 50 type: string - description: Alt label of the menu item + description: alt label of the menu item example: Admission Type tooltip: - maxLength: 100 type: string - description: Tooltip label of the menu item + description: tooltip label of the menu item example: Admission Type shortcut: type: string - description: Shortcut of the menu item + description: shortcut of the menu item example: A mySubmenu: - maxLength: 50 type: string - description: Parent submenu of the menu item + description: parent submenu of the menu item example: types myClass: - maxLength: 100 type: string - description: The main window class associated + description: the main window class associated example: org.isf.admtype.gui.AdmissionTypeBrowser position: type: integer - description: Position of the menu item + description: position of the menu item format: int32 example: 5 asubMenu: type: boolean TherapyRowDTO: required: - - endDate - - freqInDay - - freqInPeriod - - medicalId - - notifyInt - - patID - - qty - - smsInt - - startDate - - unitID + - endDate + - freqInDay + - freqInPeriod + - medicalId + - notifyInt + - patID + - qty + - smsInt + - startDate + - unitID type: object properties: therapyID: @@ -7520,35 +7395,33 @@ components: format: int32 example: 1 note: - maxLength: 65535 type: string description: A note for the therapy example: Sample note notifyInt: type: integer - description: >- - the notify flag: 1 if the notification need to be activated, 0 - otherwise + description: "the notify flag: 1 if the notification need to be activated,\ + \ 0 otherwise" format: int32 example: 0 smsInt: type: integer - description: 'The sms flag: 1 if sms need to be sent to patient, 0 otherwise' + description: "the sms flag: 1 if sms need to be sent to patient, 0 otherwise" format: int32 example: 0 Patient: required: - - age - - birthDate - - bloodType - - city - - deleted - - fatherName - - firstName - - motherName - - name - - secondName - - sex + - age + - birthDate + - bloodType + - city + - deleted + - fatherName + - firstName + - motherName + - name + - secondName + - sex type: object properties: createdBy: @@ -7753,9 +7626,6 @@ components: format: int32 identity: type: boolean - determinant: - type: number - format: double toRotation: type: number format: double @@ -7764,6 +7634,9 @@ components: type: integer format: int32 writeOnly: true + determinant: + type: number + format: double bold: type: boolean italic: @@ -7838,9 +7711,6 @@ components: format: int32 identity: type: boolean - determinant: - type: number - format: double toRotation: type: number format: double @@ -7849,6 +7719,9 @@ components: type: integer format: int32 writeOnly: true + determinant: + type: number + format: double bold: type: boolean italic: @@ -7875,9 +7748,6 @@ components: type: array items: type: object - height: - type: integer - format: int32 ascent: type: integer format: int32 @@ -7887,6 +7757,9 @@ components: leading: type: integer format: int32 + height: + type: integer + format: int32 maxDescent: type: integer format: int32 @@ -7898,11 +7771,6 @@ components: fontRenderContext: type: object properties: - antiAliased: - type: boolean - transformType: - type: integer - format: int32 transform: type: object properties: @@ -7929,9 +7797,6 @@ components: format: int32 identity: type: boolean - determinant: - type: number - format: double toRotation: type: number format: double @@ -7940,12 +7805,20 @@ components: type: integer format: int32 writeOnly: true + determinant: + type: number + format: double antiAliasingHint: type: object fractionalMetricsHint: type: object transformed: type: boolean + antiAliased: + type: boolean + transformType: + type: integer + format: int32 maxAscent: type: integer format: int32 @@ -7962,7 +7835,7 @@ components: x: type: number format: double - 'y': + "y": type: number format: double width: @@ -7979,7 +7852,7 @@ components: x: type: number format: double - 'y': + "y": type: number format: double size: @@ -7996,34 +7869,34 @@ components: properties: empty: type: boolean - width: + height: type: number format: double - minX: + maxX: type: number format: double - minY: + maxY: type: number format: double - height: + centerX: type: number format: double - x: + centerY: type: number format: double - 'y': + width: type: number format: double - maxX: + minX: type: number format: double - maxY: + minY: type: number format: double - centerX: + x: type: number format: double - centerY: + "y": type: number format: double rect: @@ -8031,43 +7904,37 @@ components: properties: empty: type: boolean - width: + height: type: number format: double - minX: + maxX: type: number format: double - minY: + maxY: type: number format: double - height: + centerX: type: number format: double - x: + centerY: type: number format: double - 'y': + width: type: number format: double - maxX: + minX: type: number format: double - maxY: + minY: type: number format: double - centerX: + x: type: number format: double - centerY: + "y": type: number format: double writeOnly: true - minX: - type: number - format: double - minY: - type: number - format: double maxX: type: number format: double @@ -8080,6 +7947,12 @@ components: centerY: type: number format: double + minX: + type: number + format: double + minY: + type: number + format: double xormode: type: object properties: @@ -8122,7 +7995,7 @@ components: x: type: number format: double - 'y': + "y": type: number format: double width: @@ -8139,7 +8012,7 @@ components: x: type: number format: double - 'y': + "y": type: number format: double size: @@ -8156,34 +8029,34 @@ components: properties: empty: type: boolean - width: + height: type: number format: double - minX: + maxX: type: number format: double - minY: + maxY: type: number format: double - height: + centerX: type: number format: double - x: + centerY: type: number format: double - 'y': + width: type: number format: double - maxX: + minX: type: number format: double - maxY: + minY: type: number format: double - centerX: + x: type: number format: double - centerY: + "y": type: number format: double rect: @@ -8191,43 +8064,37 @@ components: properties: empty: type: boolean - width: + height: type: number format: double - minX: + maxX: type: number format: double - minY: + maxY: type: number format: double - height: + centerX: type: number format: double - x: + centerY: type: number format: double - 'y': + width: type: number format: double - maxX: + minX: type: number format: double - maxY: + minY: type: number format: double - centerX: + x: type: number format: double - centerY: + "y": type: number format: double writeOnly: true - minX: - type: number - format: double - minY: - type: number - format: double maxX: type: number format: double @@ -8240,39 +8107,45 @@ components: centerY: type: number format: double + minX: + type: number + format: double + minY: + type: number + format: double bounds2D: type: object properties: empty: type: boolean - width: + height: type: number format: double - minX: + maxX: type: number format: double - minY: + maxY: type: number format: double - height: + centerX: type: number format: double - x: + centerY: type: number format: double - 'y': + width: type: number format: double - maxX: + minX: type: number format: double - maxY: + minY: type: number format: double - centerX: + x: type: number format: double - centerY: + "y": type: number format: double clipRect: @@ -8281,7 +8154,7 @@ components: x: type: number format: double - 'y': + "y": type: number format: double width: @@ -8298,7 +8171,7 @@ components: x: type: number format: double - 'y': + "y": type: number format: double size: @@ -8315,34 +8188,34 @@ components: properties: empty: type: boolean - width: + height: type: number format: double - minX: + maxX: type: number format: double - minY: + maxY: type: number format: double - height: + centerX: type: number format: double - x: + centerY: type: number format: double - 'y': + width: type: number format: double - maxX: + minX: type: number format: double - maxY: + minY: type: number format: double - centerX: + x: type: number format: double - centerY: + "y": type: number format: double rect: @@ -8350,43 +8223,37 @@ components: properties: empty: type: boolean - width: + height: type: number format: double - minX: + maxX: type: number format: double - minY: + maxY: type: number format: double - height: + centerX: type: number format: double - x: + centerY: type: number format: double - 'y': + width: type: number format: double - maxX: + minX: type: number format: double - maxY: + minY: type: number format: double - centerX: + x: type: number format: double - centerY: + "y": type: number format: double writeOnly: true - minX: - type: number - format: double - minY: - type: number - format: double maxX: type: number format: double @@ -8399,19 +8266,25 @@ components: centerY: type: number format: double + minX: + type: number + format: double + minY: + type: number + format: double deprecated: true TherapyRow: required: - - endDate - - freqInDay - - freqInPeriod - - medicalId - - notifyInt - - patient - - qty - - smsInt - - startDate - - unitID + - endDate + - freqInDay + - freqInPeriod + - medicalId + - notifyInt + - patient + - qty + - smsInt + - startDate + - unitID type: object properties: createdBy: @@ -8461,13 +8334,13 @@ components: smsInt: type: integer format: int32 - notify: - type: boolean - sms: - type: boolean medical: type: integer format: int32 + sms: + type: boolean + notify: + type: boolean TherapyDTO: type: object properties: @@ -8485,8 +8358,8 @@ components: type: array description: The dates of the therapy example: - - '2022-01-01T10:00:00' - - '2022-01-02T15:30:00' + - 2022-01-01T10:00:00 + - 2022-01-02T15:30:00 items: type: string description: The dates of the therapy @@ -8507,42 +8380,38 @@ components: format: int32 example: 2 note: - maxLength: 65535 type: string description: A note for the therapy example: Sample note notify: type: boolean - description: >- - The notify flag: true if the notification need to be activated, - false otherwise + description: "the notify flag: true if the notification need to be activated,\ + \ false otherwise" example: false sms: type: boolean - description: >- - The sms flag: true if sms need to be sent to patient, false - otherwise + description: "the sms flag: true if sms need to be sent to patient, false\ + \ otherwise" example: false LotDTO: required: - - code - - dueDate - - preparationDate + - code + - dueDate + - preparationDate type: object properties: code: - maxLength: 50 type: string description: The lot's code example: LT001 preparationDate: type: string description: The preparation date - example: '2020-06-24' + example: 2020-06-24 dueDate: type: string description: The due date - example: '2021-06-24' + example: 2021-06-24 cost: type: number description: The lot's code @@ -8550,11 +8419,11 @@ components: description: The lot MovementDTO: required: - - date - - medical - - quantity - - refNo - - type + - date + - medical + - quantity + - refNo + - type type: object properties: code: @@ -8573,7 +8442,7 @@ components: date: type: string description: The movement date - example: '2020-06-24' + example: 2020-06-24 quantity: type: integer description: The movement's medical quantity @@ -8587,12 +8456,12 @@ components: example: MVN152445 SmsDTO: required: - - module - - smsDate - - smsDateSched - - smsNumber - - smsText - - smsUser + - module + - smsDate + - smsDateSched + - smsNumber + - smsText + - smsUser type: object properties: smsId: @@ -8607,42 +8476,37 @@ components: smsDateSched: type: string description: SMS scheduled date - example: '2020-07-28T00:00:00' + example: 2020-07-28T00:00:00 smsNumber: - maxLength: 45 type: string description: SMS target phone number - example: '+237671302313' + example: +237671302313 smsText: - maxLength: 160 type: string description: SMS content text example: Hi Mario. smsDateSent: type: string description: SMS sent date - example: '2020-07-28T00:00:00' + example: 2020-07-28T00:00:00 smsUser: - maxLength: 50 type: string description: SMS user example: Rosi module: - maxLength: 45 type: string description: SMS module name example: OPD moduleID: - maxLength: 45 type: string description: SMS module Id MovementWardDTO: required: - - date - - description - - quantity - - units - - ward + - date + - description + - quantity + - units + - ward type: object properties: code: @@ -8656,7 +8520,7 @@ components: type: string description: The movement ward's date format: date - example: '2020-06-07' + example: 2020-06-07 patient: $ref: '#/components/schemas/PatientDTO' age: @@ -8666,7 +8530,8 @@ components: example: 21 weight: type: number - description: The patient's weight in case the movement is associated to a patient + description: The patient's weight in case the movement is associated to + a patient format: float example: 75 description: @@ -8704,31 +8569,31 @@ components: $ref: '#/components/schemas/ExamDTO' LoginRequest: required: - - password - - username + - password + - username type: object properties: username: type: string - description: User Name + description: username example: admin password: type: string - description: Password of user + description: password of user example: admin LoginResponse: type: object properties: token: type: string - description: Token + description: token type: type: string - description: Type of Token + description: type of Token example: Bearer username: type: string - description: User name + description: user name example: admin description: Class representing a Login response LitePermissionDTO: @@ -8747,11 +8612,11 @@ components: type: string PriceDTO: required: - - description - - group - - item - - list - - price + - description + - group + - item + - list + - price type: object properties: id: @@ -8761,18 +8626,16 @@ components: $ref: '#/components/schemas/PriceList' group: type: string - description: The group + description: the group item: - maxLength: 10 type: string - description: The item name + description: the item name description: - maxLength: 100 type: string - description: The description + description: the description price: type: number - description: Price + description: price format: double example: 1500 editable: @@ -8785,10 +8648,10 @@ components: description: Class representing a prices PriceList: required: - - code - - currency - - description - - name + - code + - currency + - description + - name type: object properties: createdBy: @@ -8815,7 +8678,7 @@ components: type: string currency: type: string - description: The price list + description: the price list PageInfoDTO: type: object properties: @@ -8873,8 +8736,8 @@ components: example: 89 MedicalWardIdDTO: required: - - medical - - ward + - medical + - ward type: object properties: ward: @@ -8912,9 +8775,9 @@ components: $ref: '#/components/schemas/PageInfoDTO' AgeType: required: - - description - - from - - to + - description + - from + - to type: object properties: createdBy: diff --git a/src/components/accessories/laboratory/Exams.tsx b/src/components/accessories/laboratory/Exams.tsx index 2efdcc498..7ce76b006 100644 --- a/src/components/accessories/laboratory/Exams.tsx +++ b/src/components/accessories/laboratory/Exams.tsx @@ -100,7 +100,7 @@ export const Exams: FC = () => { }; const onEdit = (row: LaboratoryDTO) => { - if (row.status === LaboratoryDTOStatusEnum.DRAFT) { + if (row.status === LaboratoryDTOStatusEnum.Draft) { setSelectedExamRow(row); setShowStatusChangeModal(true); } else { @@ -111,7 +111,7 @@ export const Exams: FC = () => { const onExamStatusChangeClick = () => { if (selectedExamRow?.code) { dispatch( - updateLabStatus(selectedExamRow?.code, LaboratoryDTOStatusEnum.OPEN) + updateLabStatus(selectedExamRow?.code, LaboratoryDTOStatusEnum.Open) ); } }; @@ -173,21 +173,6 @@ export const Exams: FC = () => { <>