From 9dde746f1d038afa6cfe84fa530d478768d6335a Mon Sep 17 00:00:00 2001 From: baksosapi Date: Mon, 6 Nov 2017 17:13:07 +0800 Subject: [PATCH] WD| Setup landing page. #4 --- LICENSE | 17 + build.gradle | 5 +- gradle/wrapper/gradle-wrapper.jar | Bin 53636 -> 52141 bytes gradle/wrapper/gradle-wrapper.properties | 8 +- gradlew | 10 +- gradlew.bat | 90 - opensrp-bidan/.gitignore | 1 + opensrp-bidan/build.gradle | 27 +- opensrp-bidan/fabric.properties | 3 - opensrp-bidan/fabric.properties.template | 5 + opensrp-bidan/libs/commons-validator-1.6.jar | Bin 0 -> 186077 bytes opensrp-bidan/lint.xml | 4 + opensrp-bidan/pom.xml | 30 + opensrp-bidan/proguard-rules.pro | 16 +- .../bidan/ExampleInstrumentedTest.java | 26 - .../smartregister/path/ApplicationTest.java | 13 + opensrp-bidan/src/main/AndroidManifest.xml | 195 +- ...ambia-EIR-DataDictionaryReporting-HIA2.csv | 68 + opensrp-bidan/src/main/assets/app.properties | 2 +- opensrp-bidan/src/main/assets/bindtypes.json | 28 - opensrp-bidan/src/main/assets/bpm.json | 65 - .../main/assets/ec_client_classification.json | 147 +- .../src/main/assets/ec_client_fields.json | 308 +- .../main/assets/ec_client_relationships.json | 11 +- .../src/main/assets/ec_client_service.json | 58 + .../src/main/assets/ec_client_vaccine.json | 45 + .../src/main/assets/ec_client_weight.json | 36 + .../main/assets/fonts/material-icon-font.ttf | Bin 0 -> 48492 bytes .../main/assets/json.form/adverse_event.json | 150 + .../assets/json.form/child_enrollment.json | 498 + .../assets/json.form/hia2_monthly_report.json | 58 + .../json.form/out_of_catchment_service.json | 101 + .../assets/json.form/report_deceased.json | 117 + .../json.form/stock_adjustment_form.json | 140 + .../assets/json.form/stock_issued_form.json | 159 + .../assets/json.form/stock_received_form.json | 142 + .../main/assets/recurring_service_types.json | 456 + opensrp-bidan/src/main/assets/services.json | 17 + .../src/main/assets/special_vaccines.json | 32 + .../src/main/assets/sync_filters.json | 6 +- .../src/main/assets/vaccine_type.json | 44 + opensrp-bidan/src/main/assets/vaccines.json | 597 + .../main/assets/www/form/blood_test/form.json | 1 - .../main/assets/www/form/blood_test/form.xml | 97 - .../www/form/blood_test/form_definition.json | 64 - .../main/assets/www/form/blood_test/model.xml | 35 - .../assets/www/form/entity_relationship.json | 26 - .../assets/www/form/feedback_bidan/form.xml | 750 - .../form/feedback_bidan/form_definition.json | 357 - .../assets/www/form/feedback_bidan/model.xml | 103 - .../src/main/assets/www/form/forms.zip | Bin 197977 -> 0 bytes .../assets/www/form/kartu_anc_close/form.json | 1 - .../assets/www/form/kartu_anc_close/form.xml | 28 - .../form/kartu_anc_close/form_definition.json | 112 - .../assets/www/form/kartu_anc_close/model.xml | 48 - .../assets/www/form/kartu_anc_edit/form.xml | 909 -- .../form/kartu_anc_edit/form_definition.json | 140 - .../assets/www/form/kartu_anc_edit/model.xml | 61 - .../www/form/kartu_anc_registration/form.json | 1 - .../www/form/kartu_anc_registration/form.xml | 505 - .../form_definition.json | 288 - .../www/form/kartu_anc_registration/model.xml | 80 - .../form/kartu_anc_registration_oa/form.xml | 1722 -- .../form_definition.json | 601 - .../form/kartu_anc_registration_oa/model.xml | 2450 --- .../kartu_anc_rencana_persalinan/form.json | 1 - .../kartu_anc_rencana_persalinan/form.xml | 334 - .../form_definition.json | 72 - .../kartu_anc_rencana_persalinan/model.xml | 42 - .../assets/www/form/kartu_anc_visit/form.json | 1 - .../assets/www/form/kartu_anc_visit/form.xml | 877 - .../form/kartu_anc_visit/form_definition.json | 282 - .../assets/www/form/kartu_anc_visit/model.xml | 85 - .../www/form/kartu_anc_visit_edit/form.xml | 1692 -- .../kartu_anc_visit_edit/form_definition.json | 246 - .../www/form/kartu_anc_visit_edit/model.xml | 66 - .../form/kartu_anc_visit_integrasi/form.json | 1 - .../form/kartu_anc_visit_integrasi/form.xml | 32 - .../form_definition.json | 95 - .../form/kartu_anc_visit_integrasi/model.xml | 45 - .../form/kartu_anc_visit_labTest/form.json | 1 - .../www/form/kartu_anc_visit_labTest/form.xml | 302 - .../form_definition.json | 115 - .../form/kartu_anc_visit_labTest/model.xml | 49 - .../assets/www/form/kartu_ibu_close/form.json | 1 - .../assets/www/form/kartu_ibu_close/form.xml | 33 - .../form/kartu_ibu_close/form_definition.json | 88 - .../assets/www/form/kartu_ibu_close/model.xml | 46 - .../assets/www/form/kartu_ibu_edit/form.xml | 576 - .../form/kartu_ibu_edit/form_definition.json | 182 - .../assets/www/form/kartu_ibu_edit/model.xml | 53 - .../www/form/kartu_ibu_registration/form.json | 1117 -- .../www/form/kartu_ibu_registration/form.xml | 467 - .../form_definition.json | 193 - .../www/form/kartu_ibu_registration/model.xml | 63 - .../assets/www/form/kartu_pnc_close/form.json | 1 - .../assets/www/form/kartu_pnc_close/form.xml | 29 - .../form/kartu_pnc_close/form_definition.json | 78 - .../assets/www/form/kartu_pnc_close/model.xml | 44 - .../form.json | 1566 -- .../kartu_pnc_dokumentasi_persalinan/form.xml | 1 - .../form_definition.json | 287 - .../model.xml | 81 - .../assets/www/form/kartu_pnc_edit/form.xml | 993 -- .../form/kartu_pnc_edit/form_definition.json | 157 - .../assets/www/form/kartu_pnc_edit/model.xml | 55 - .../www/form/kartu_pnc_pospartum_kb/form.json | 1 - .../www/form/kartu_pnc_pospartum_kb/form.xml | 15 - .../form_definition.json | 43 - .../www/form/kartu_pnc_pospartum_kb/model.xml | 34 - .../form/kartu_pnc_regitration_oa/form.xml | 1761 -- .../form_definition.json | 391 - .../form/kartu_pnc_regitration_oa/model.xml | 91 - .../assets/www/form/kartu_pnc_visit/form.json | 1 - .../assets/www/form/kartu_pnc_visit/form.xml | 760 - .../form/kartu_pnc_visit/form_definition.json | 190 - .../assets/www/form/kartu_pnc_visit/model.xml | 1 - .../www/form/kohort_anak_tutup/form.json | 1 - .../www/form/kohort_anak_tutup/form.xml | 21 - .../kohort_anak_tutup/form_definition.json | 73 - .../www/form/kohort_anak_tutup/model.xml | 35 - .../form/kohort_balita_kunjungan/form.json | 1 - .../www/form/kohort_balita_kunjungan/form.xml | 398 - .../form_definition.json | 108 - .../form/kohort_balita_kunjungan/model.xml | 47 - .../kohort_bayi_balita_kunjungan/form.xml | 90 - .../form_definition.json | 45 - .../kohort_bayi_balita_kunjungan/model.xml | 19 - .../assets/www/form/kohort_bayi_edit/form.xml | 228 - .../kohort_bayi_edit/form_definition.json | 61 - .../www/form/kohort_bayi_edit/model.xml | 27 - .../form/kohort_bayi_immunization/form.json | 1 - .../form/kohort_bayi_immunization/form.xml | 130 - .../form_definition.json | 105 - .../form/kohort_bayi_immunization/model.xml | 41 - .../www/form/kohort_bayi_kunjungan/form.json | 1 - .../www/form/kohort_bayi_kunjungan/form.xml | 423 - .../form_definition.json | 109 - .../www/form/kohort_bayi_kunjungan/model.xml | 49 - .../kohort_bayi_neonatal_period/form.json | 1 - .../form/kohort_bayi_neonatal_period/form.xml | 472 - .../form_definition.json | 149 - .../kohort_bayi_neonatal_period/model.xml | 59 - .../form/kohort_bayi_registration/form.json | 536 - .../form/kohort_bayi_registration/form.xml | 215 - .../form_definition.json | 174 - .../form/kohort_bayi_registration/model.xml | 49 - .../form/kohort_bayi_registration_oa/form.xml | 314 - .../form_definition.json | 150 - .../kohort_bayi_registration_oa/model.xml | 36 - .../assets/www/form/kohort_kb_close/form.json | 1 - .../assets/www/form/kohort_kb_close/form.xml | 29 - .../form/kohort_kb_close/form_definition.json | 55 - .../assets/www/form/kohort_kb_close/model.xml | 45 - .../www/form/kohort_kb_pelayanan/form.json | 1 - .../www/form/kohort_kb_pelayanan/form.xml | 28 - .../kohort_kb_pelayanan/form_definition.json | 146 - .../www/form/kohort_kb_pelayanan/model.xml | 46 - .../www/form/kohort_kb_registration/form.xml | 936 -- .../form_definition.json | 215 - .../www/form/kohort_kb_registration/model.xml | 55 - .../www/form/kohort_kb_update/form.json | 1 - .../assets/www/form/kohort_kb_update/form.xml | 20 - .../kohort_kb_update/form_definition.json | 72 - .../www/form/kohort_kb_update/model.xml | 38 - .../smartregister/bidan/AllConstantsINA.java | 221 - .../bidan/BidanHomeActivity.java | 393 - .../smartregister/bidan/LoginActivity.java | 422 - .../bidan/NavigationControllerINA.java | 69 - .../bidan/activity/BaseActivity.java | 866 + .../bidan/activity/BaseRegisterActivity.java | 433 + .../bidan/activity/BidanHomeActivity.java | 20 + .../activity/ChildDetailTabbedActivity.java | 1639 ++ .../activity/ChildImmunizationActivity.java | 1678 ++ .../activity/ChildSmartRegisterActivity.java | 381 + .../bidan/activity/HIA2ReportsActivity.java | 536 + .../bidan/activity/LoginActivity.java | 596 + .../bidan/activity/PathJsonFormActivity.java | 639 + .../activity/ProviderProfileActivity.java | 76 + .../bidan/activity/ReportSummaryActivity.java | 144 + .../bidan/activity/SettingsActivity.java | 103 + .../bidan/activity/StockActivity.java | 229 + .../bidan/activity/StockControlActivity.java | 308 + .../AdvancedSearchPaginatedCursorAdapter.java | 90 + .../bidan/adapter/ExpandedListAdapter.java | 179 + .../PathRegisterActivityPagerAdapter.java | 48 + .../adapter/ServiceLocationsAdapter.java | 96 + .../bidan/adapter/SiblingPictureAdapter.java | 52 + .../adapter/StockPaginatedCursorAdapter.java | 43 + .../StockProviderForCursorAdapter.java | 29 + .../bidan/anc/ANCDetailActivity.java | 459 - .../bidan/anc/KIANCClientsProvider.java | 455 - .../bidan/anc/KIANCOverviewServiceMode.java | 49 - .../anc/NativeKIANCSmartRegisterActivity.java | 371 - .../bidan/application/BidanApplication.java | 384 +- .../SyncBidanBroadcastReceiver.java | 32 - .../bidan/child/ANAKSearchOption.java | 43 - .../bidan/child/AnakDetailActivity.java | 194 - .../bidan/child/AnakOverviewServiceMode.java | 49 - .../child/AnakRegisterClientsProvider.java | 316 - .../bidan/child/ChildDetailActivity.java | 159 - .../bidan/child/ChildFilterOption.java | 42 - .../bidan/child/ChildGrowthChartActivity.java | 174 - .../bidan/child/ChildZScoreChartActivity.java | 423 - .../NativeKIAnakSmartRegisterActivity.java | 363 - .../bidan/domain/DailyTally.java | 27 + .../bidan/domain/EditWrapper.java | 34 + .../bidan/domain/EntityLookUp.java | 42 + .../bidan/domain/Hia2Indicator.java | 115 + .../bidan/domain/MonthlyTally.java | 43 + .../bidan/domain/RegisterClickables.java | 29 + .../smartregister/bidan/domain/Report.java | 157 + .../bidan/domain/ReportHia2Indicator.java | 134 + .../org/smartregister/bidan/domain/Stock.java | 104 + .../org/smartregister/bidan/domain/Tally.java | 100 + .../smartregister/bidan/domain/UniqueId.java | 75 + .../fragment/AdvancedSearchFragment.java | 1256 ++ .../fragment/BaseSmartRegisterFragment.java | 212 + .../BidanLocationSelectorDialogFragment.java | 179 - .../fragment/ChildSmartRegisterFragment.java | 597 + .../bidan/fragment/DailyTalliesFragment.java | 285 + .../bidan/fragment/DraftMonthlyFragment.java | 362 + .../NativeKBSmartRegisterFragment.java | 523 - .../NativeKIANCSmartRegisterFragment.java | 502 - .../NativeKIAnakSmartRegisterFragment.java | 507 - .../NativeKIPNCSmartRegisterFragment.java | 543 - .../NativeKISmartRegisterFragment.java | 511 - .../NotInCatchmentDialogFragment.java | 86 + .../bidan/fragment/PathJsonFormFragment.java | 459 + .../SendMonthlyDraftDialogFragment.java | 107 + .../bidan/fragment/SentMonthlyFragment.java | 244 + .../fragment/StatusEditDialogFragment.java | 276 + .../interactors/PathJsonFormInteractor.java | 31 + .../kartu_ibu/AllKartuIbuServiceMode.java | 49 - .../bidan/kartu_ibu/KIClientsProvider.java | 369 - .../kartu_ibu/KICommonObjectFilterOption.java | 41 - .../bidan/kartu_ibu/KIDetailActivity.java | 284 - .../NativeKISmartRegisterActivity.java | 404 - .../bidan/kb/AllKBServiceMode.java | 49 - .../bidan/kb/KBClientsProvider.java | 300 - .../bidan/kb/KBDetailActivity.java | 277 - .../kb/NativeKBSmartRegisterActivity.java | 394 - .../bidan/lib/ErrorReportingFacade.java | 26 - .../smartregister/bidan/lib/FlurryFacade.java | 42 - .../bidan/listener/StatusChangeListener.java | 10 + .../bidan/option/BasicSearchOption.java | 75 + .../smartregister/bidan/option/DateSort.java | 29 + .../bidan/option/StatusSort.java | 79 + .../BaseRegisterActivityPagerAdapter.java | 71 - .../bidan/pnc/KIPNCClientsProvider.java | 324 - .../bidan/pnc/KIPNCOverviewServiceMode.java | 51 - .../pnc/NativeKIPNCSmartRegisterActivity.java | 413 - .../bidan/pnc/PNCDetailActivity.java | 396 - .../AdvancedSearchClientsProvider.java | 33 + .../provider/ChildSmartClientsProvider.java | 560 + .../MotherLookUpSmartClientsProvider.java | 133 + .../StockRowSmartClientsProvider.java | 98 + .../Hia2ServiceBroadcastReceiver.java | 79 + .../bidan/receiver/OnBootReceiver.java | 28 + .../receiver/PathSyncBroadcastReceiver.java | 26 + .../receiver/SyncStatusBroadcastReceiver.java | 80 +- .../receiver/VaccinatorAlarmReceiver.java | 123 + .../repository/DailyTalliesRepository.java | 362 + .../repository/HIA2IndicatorsRepository.java | 221 + .../repository/MonthlyTalliesRepository.java | 474 + .../bidan/repository/PathRepository.java | 382 + .../bidan/repository/StockRepository.java | 359 + .../bidan/repository/UniqueIdRepository.java | 194 + .../bidan/service/HIA2Service.java | 1125 ++ .../service/intent/HIA2IntentService.java | 237 + .../intent/PullUniqueIdsIntentService.java | 135 + .../service/intent/SyncIntentService.java | 445 + .../service/intent/ValidateIntentService.java | 153 + .../VaccinationServiceModeOption.java | 53 + .../bidan/sync/ECSyncUpdater.java | 202 + .../bidan/sync/PathAfterFetchListener.java | 17 + .../bidan/sync/PathClientProcessor.java | 561 + .../ChildRegistrationDataFragment.java | 194 + .../tabfragments/ChildUnderFiveFragment.java | 418 + .../bidan/tabfragments/CurrentStock.java | 701 + .../tabfragments/PlanningStockFragment.java | 616 + .../bidan/toolbar/BaseToolbar.java | 31 + .../bidan/toolbar/ChildDetailsToolbar.java | 41 + .../toolbar/LocationSwitcherToolbar.java | 105 + .../bidan/toolbar/SimpleToolbar.java | 68 + .../bidan/view/IndicatorCategoryView.java | 148 + .../bidan/view/LocationActionView.java | 70 + .../bidan/view/LocationPickerView.java | 207 + .../bidan/view/SiblingPicture.java | 198 + .../bidan/view/SiblingPicturesGroup.java | 56 + .../bidan/viewComponents/WidgetFactory.java | 65 + .../PathJsonFormFragmentViewState.java | 39 + .../watchers/HIA2ReportFormTextWatcher.java | 89 + .../bidan/watchers/LookUpTextWatcher.java | 90 + .../bidan/widgets/PathDatePickerFactory.java | 54 + .../bidan/widgets/PathEditTextFactory.java | 125 + .../wrapper/BaseViewRecordUpdateWrapper.java | 60 + .../VaccineViewRecordUpdateWrapper.java | 32 + .../WeightViewRecordUpdateWrapper.java | 20 + .../src/main/java/util/AsyncTask.java | 693 - .../bidan/utils => util}/Config.java | 2 +- .../main/java/util/DateTimeTypeConverter.java | 35 + .../src/main/java/util/DiskLruCache.java | 953 -- .../src/main/java/util/GlobalSearchUtils.java | 98 + .../src/main/java/util/ImageCache.java | 738 - .../src/main/java/util/ImageFetcher.java | 310 - .../src/main/java/util/ImageResizer.java | 270 - .../src/main/java/util/ImageUtils.java | 54 + .../src/main/java/util/ImageWorker.java | 485 - .../src/main/java/util/JsonFormUtils.java | 1890 +++ .../src/main/java/util/MotherLookUpUtils.java | 212 + .../java/util/MoveToMyCatchmentUtils.java | 165 + .../src/main/java/util/NetworkUtils.java | 29 + .../src/main/java/util/PathConstants.java | 104 + .../java/util/RecyclingBitmapDrawable.java | 109 - .../src/main/java/util/ReportUtils.java | 52 + opensrp-bidan/src/main/java/util/Utils.java | 211 +- .../ZScore/ReferenceTableForDailyIndex.java | 13632 ---------------- .../util/ZScore/ZScoreSystemCalculation.java | 133 - .../src/main/java/util/barcode/Barcode.java | 17 + .../util/barcode/BarcodeIntentIntegrator.java | 432 + .../util/barcode/BarcodeIntentResult.java | 93 + .../src/main/java/util/formula/Support.java | 161 - .../java/util/growthChart/GraphConstant.java | 288 - .../growthChart/GrowthChartGenerator.java | 297 - .../uniqueIdGenerator/AllSettingsINA.java | 35 - .../util/uniqueIdGenerator/Generator.java | 153 - .../uniqueIdGenerator/UniqueIdController.java | 120 - .../uniqueIdGenerator/UniqueIdRepository.java | 97 - .../uniqueIdGenerator/UniqueIdService.java | 204 - .../main/jniLibs/armeabi/libfacialproc_jni.so | Bin 33968 -> 0 bytes .../src/main/jniLibs/armeabi/libiHealth.so | Bin 26260 -> 0 bytes opensrp-bidan/src/main/res/.directory | 2 +- .../src/main/res/HeaderVector1000.csv | 1000 -- opensrp-bidan/src/main/res/anim/fadeout.xml | 11 - .../src/main/res/anim/slide_down.xml | 9 + opensrp-bidan/src/main/res/anim/slide_up.xml | 9 + .../src/main/res/color/tintcolor.xml | 5 + .../main/res/drawable-hdpi/ic_action_add.png | Bin 0 -> 329 bytes .../res/drawable-hdpi/ic_action_clear.png | Bin 0 -> 592 bytes .../drawable-hdpi/ic_action_out_catchment.png | Bin 0 -> 1414 bytes .../res/drawable-hdpi/ic_action_settings.png | Bin 0 -> 994 bytes .../main/res/drawable-hdpi/ic_action_sync.png | Bin 0 -> 935 bytes .../main/res/drawable-hdpi/ic_bidan_logo.png | Bin 9658 -> 0 bytes .../res/drawable-hdpi/ic_check_bcg_scar.png | Bin 0 -> 9654 bytes .../src/main/res/drawable-hdpi/ic_checked.png | Bin 0 -> 836 bytes .../res/drawable-hdpi/ic_daily_tallies.png | Bin 0 -> 3489 bytes .../main/res/drawable-hdpi/ic_deceased.png | Bin 0 -> 18826 bytes .../src/main/res/drawable-hdpi/ic_error.png | Bin 0 -> 574 bytes .../main/res/drawable-hdpi/ic_icon_add.png | Bin 0 -> 377 bytes .../main/res/drawable-hdpi/ic_icon_bell.png | Bin 0 -> 575 bytes .../main/res/drawable-hdpi/ic_icon_edit.png | Bin 0 -> 738 bytes .../main/res/drawable-hdpi/ic_icon_hide.png | Bin 0 -> 3402 bytes .../main/res/drawable-hdpi/ic_icon_search.png | Bin 0 -> 1139 bytes .../drawable-hdpi/ic_icon_status_active.png | Bin 0 -> 479 bytes .../drawable-hdpi/ic_icon_status_inactive.png | Bin 0 -> 786 bytes .../ic_icon_status_losttofollowup.png | Bin 0 -> 1061 bytes .../main/res/drawable-hdpi/ic_launcher.png | Bin 0 -> 9632 bytes .../src/main/res/drawable-hdpi/ic_logo.png | Bin 0 -> 40562 bytes .../res/drawable-hdpi/ic_menu_white_24dp.png | Bin 0 -> 92 bytes .../main/res/drawable-hdpi/ic_more_vert.png | Bin 0 -> 662 bytes .../res/drawable-hdpi/ic_opensrp_logo.png | Bin 0 -> 8052 bytes .../res/drawable-hdpi/ic_sent_monthly.png | Bin 0 -> 3981 bytes .../illustration_report_empty_state.png | Bin 0 -> 65997 bytes .../src/main/res/drawable-hdpi/pulseheart.png | Bin 3217 -> 0 bytes .../main/res/drawable-ldpi/ic_bidan_logo.png | Bin 5380 -> 0 bytes .../res/drawable-mdpi/advanced_search_bg.xml | 7 + .../advanced_search_disabled_bg.xml | 6 + .../advanced_search_enabled_bg.xml | 6 + .../main/res/drawable-mdpi/back_button.png | Bin 0 -> 507 bytes .../src/main/res/drawable-mdpi/bell.png | Bin 0 -> 501 bytes .../res/drawable-mdpi/child_boy_infant.png | Bin 0 -> 4179 bytes .../res/drawable-mdpi/child_girl_infant.png | Bin 0 -> 3380 bytes .../child_transgender_inflant.png | Bin 0 -> 4331 bytes .../src/main/res/drawable-mdpi/flag_hrl.png | Bin 446 -> 0 bytes .../res/drawable-mdpi/flag_orange_rtp.png | Bin 1565 -> 0 bytes .../res/drawable-mdpi/flag_orange_rtpp.png | Bin 510 -> 0 bytes .../res/drawable-mdpi/flag_purple_rta.png | Bin 1597 -> 0 bytes .../main/res/drawable-mdpi/flag_red_rtk.png | Bin 1579 -> 0 bytes .../src/main/res/drawable-mdpi/flag_rt.png | Bin 16050 -> 0 bytes .../src/main/res/drawable-mdpi/flag_sc.png | Bin 1529 -> 0 bytes .../src/main/res/drawable-mdpi/flag_st.png | Bin 1463 -> 0 bytes .../main/res/drawable-mdpi/flag_yellow_rt.png | Bin 1370 -> 0 bytes .../main/res/drawable-mdpi/ic_action_add.png | Bin 0 -> 216 bytes .../res/drawable-mdpi/ic_action_clear.png | Bin 0 -> 338 bytes .../drawable-mdpi/ic_action_out_catchment.png | Bin 0 -> 879 bytes .../res/drawable-mdpi/ic_action_settings.png | Bin 0 -> 734 bytes .../main/res/drawable-mdpi/ic_action_sync.png | Bin 0 -> 646 bytes .../main/res/drawable-mdpi/ic_bidan_logo.png | Bin 9658 -> 0 bytes .../res/drawable-mdpi/ic_check_bcg_scar.png | Bin 0 -> 6885 bytes .../src/main/res/drawable-mdpi/ic_checked.png | Bin 0 -> 507 bytes .../res/drawable-mdpi/ic_daily_tallies.png | Bin 0 -> 2732 bytes .../src/main/res/drawable-mdpi/ic_error.png | Bin 0 -> 490 bytes .../main/res/drawable-mdpi/ic_icon_add.png | Bin 0 -> 305 bytes .../main/res/drawable-mdpi/ic_icon_bell.png | Bin 0 -> 448 bytes .../main/res/drawable-mdpi/ic_icon_edit.png | Bin 0 -> 636 bytes .../main/res/drawable-mdpi/ic_icon_hide.png | Bin 0 -> 1986 bytes .../main/res/drawable-mdpi/ic_icon_search.png | Bin 0 -> 878 bytes .../drawable-mdpi/ic_icon_status_active.png | Bin 0 -> 364 bytes .../drawable-mdpi/ic_icon_status_inactive.png | Bin 0 -> 629 bytes .../ic_icon_status_losttofollowup.png | Bin 0 -> 803 bytes .../main/res/drawable-mdpi/ic_launcher.png | Bin 0 -> 5014 bytes .../src/main/res/drawable-mdpi/ic_logo.png | Bin 0 -> 24231 bytes .../res/drawable-mdpi/ic_menu_white_24dp.png | Bin 0 -> 83 bytes .../main/res/drawable-mdpi/ic_more_vert.png | Bin 0 -> 663 bytes .../main/res/drawable-mdpi/ic_no_small.png | Bin 15250 -> 0 bytes .../res/drawable-mdpi/ic_opensrp_logo.png | Bin 0 -> 4234 bytes .../res/drawable-mdpi/ic_sent_monthly.png | Bin 0 -> 3246 bytes .../res/drawable-mdpi/login_logo_bidan.png | Bin 53118 -> 0 bytes .../res/drawable-mdpi/login_logo_main.png | Bin 0 -> 50088 bytes .../src/main/res/drawable-mdpi/logo_bidan.png | Bin 83926 -> 0 bytes .../main_image_load.png} | Bin .../main/res/drawable-mdpi/opensrp_label.png | Bin 0 -> 14179 bytes .../main/res/drawable-v21/round_button.xml | 9 - .../src/main/res/drawable-xhdpi/addchild.png | Bin 0 -> 2767 bytes .../src/main/res/drawable-xhdpi/hia_big.png | Bin 0 -> 7511 bytes .../main/res/drawable-xhdpi/ic_action_add.png | Bin 0 -> 366 bytes .../res/drawable-xhdpi/ic_action_clear.png | Bin 0 -> 552 bytes .../ic_action_out_catchment.png | Bin 0 -> 1953 bytes .../res/drawable-xhdpi/ic_action_settings.png | Bin 0 -> 1530 bytes .../res/drawable-xhdpi/ic_action_sync.png | Bin 0 -> 1396 bytes .../res/drawable-xhdpi/ic_check_bcg_scar.png | Bin 0 -> 14936 bytes .../main/res/drawable-xhdpi/ic_checked.png | Bin 0 -> 1052 bytes .../res/drawable-xhdpi/ic_daily_tallies.png | Bin 0 -> 5653 bytes .../src/main/res/drawable-xhdpi/ic_error.png | Bin 0 -> 929 bytes .../main/res/drawable-xhdpi/ic_icon_add.png | Bin 0 -> 406 bytes .../main/res/drawable-xhdpi/ic_icon_bell.png | Bin 0 -> 948 bytes .../main/res/drawable-xhdpi/ic_icon_edit.png | Bin 0 -> 1203 bytes .../main/res/drawable-xhdpi/ic_icon_hide.png | Bin 0 -> 3996 bytes .../res/drawable-xhdpi/ic_icon_search.png | Bin 0 -> 1900 bytes .../drawable-xhdpi/ic_icon_status_active.png | Bin 0 -> 723 bytes .../ic_icon_status_inactive.png | Bin 0 -> 1293 bytes .../ic_icon_status_losttofollowup.png | Bin 0 -> 1709 bytes .../main/res/drawable-xhdpi/ic_launcher.png | Bin 0 -> 11781 bytes .../src/main/res/drawable-xhdpi/ic_logo.png | Bin 0 -> 58641 bytes .../res/drawable-xhdpi/ic_menu_white_24dp.png | Bin 0 -> 93 bytes .../main/res/drawable-xhdpi/ic_more_vert.png | Bin 0 -> 1089 bytes .../res/drawable-xhdpi/ic_opensrp_logo.png | Bin 0 -> 10692 bytes .../res/drawable-xhdpi/ic_sent_monthly.png | Bin 0 -> 6354 bytes .../main/res/drawable-xhdpi/outofareabig.png | Bin 0 -> 17304 bytes .../main/res/drawable-xhdpi/stock_list.png | Bin 0 -> 1325 bytes .../main/res/drawable-xhdpi/stock_minus.png | Bin 0 -> 239 bytes .../main/res/drawable-xhdpi/stock_plus.png | Bin 0 -> 431 bytes .../src/main/res/drawable-xhdpi/stockreg.png | Bin 0 -> 8013 bytes .../src/main/res/drawable-xhdpi/syncbig.png | Bin 0 -> 12138 bytes .../drawable-xhdpi/vertical_progress_bar.xml | 43 - .../src/main/res/drawable-xhdpi/zeirbig.png | Bin 0 -> 24877 bytes .../bg_texture_blue.png | Bin .../bidan_logo.png | Bin .../res/drawable-xxhdpi/ic_action_add.png | Bin 0 -> 580 bytes .../res/drawable-xxhdpi/ic_action_clear.png | Bin 0 -> 796 bytes .../ic_action_out_catchment.png | Bin 0 -> 3124 bytes .../drawable-xxhdpi/ic_action_settings.png | Bin 0 -> 2117 bytes .../res/drawable-xxhdpi/ic_action_sync.png | Bin 0 -> 1910 bytes .../res/drawable-xxhdpi/ic_check_bcg_scar.png | Bin 0 -> 21443 bytes .../main/res/drawable-xxhdpi/ic_checked.png | Bin 0 -> 1734 bytes .../res/drawable-xxhdpi/ic_daily_tallies.png | Bin 0 -> 8028 bytes .../src/main/res/drawable-xxhdpi/ic_error.png | Bin 0 -> 1613 bytes .../main/res/drawable-xxhdpi/ic_icon_add.png | Bin 0 -> 467 bytes .../main/res/drawable-xxhdpi/ic_icon_bell.png | Bin 0 -> 1183 bytes .../main/res/drawable-xxhdpi/ic_icon_edit.png | Bin 0 -> 1521 bytes .../main/res/drawable-xxhdpi/ic_icon_hide.png | Bin 0 -> 7187 bytes .../res/drawable-xxhdpi/ic_icon_search.png | Bin 0 -> 2450 bytes .../drawable-xxhdpi/ic_icon_status_active.png | Bin 0 -> 958 bytes .../ic_icon_status_inactive.png | Bin 0 -> 1617 bytes .../ic_icon_status_losttofollowup.png | Bin 0 -> 2365 bytes .../main/res/drawable-xxhdpi/ic_launcher.png | Bin 0 -> 22152 bytes .../src/main/res/drawable-xxhdpi/ic_logo.png | Bin 0 -> 83049 bytes .../drawable-xxhdpi/ic_menu_white_24dp.png | Bin 0 -> 95 bytes .../main/res/drawable-xxhdpi/ic_more_vert.png | Bin 0 -> 1872 bytes .../res/drawable-xxhdpi/ic_opensrp_logo.png | Bin 0 -> 19583 bytes .../res/drawable-xxhdpi/ic_sent_monthly.png | Bin 0 -> 8476 bytes .../message_box.png | Bin .../drawer_horizontal_seperator.png | Bin 0 -> 4036 bytes .../res/drawable-xxxhdpi/ic_action_add.png | Bin 0 -> 928 bytes .../res/drawable-xxxhdpi/ic_action_clear.png | Bin 0 -> 1026 bytes .../ic_action_out_catchment.png | Bin 0 -> 4596 bytes .../drawable-xxxhdpi/ic_action_settings.png | Bin 0 -> 3303 bytes .../res/drawable-xxxhdpi/ic_action_sync.png | Bin 0 -> 3105 bytes .../drawable-xxxhdpi/ic_check_bcg_scar.png | Bin 0 -> 33863 bytes .../main/res/drawable-xxxhdpi/ic_checked.png | Bin 0 -> 1222 bytes .../res/drawable-xxxhdpi/ic_daily_tallies.png | Bin 0 -> 13034 bytes .../main/res/drawable-xxxhdpi/ic_error.png | Bin 0 -> 2639 bytes .../main/res/drawable-xxxhdpi/ic_icon_add.png | Bin 0 -> 708 bytes .../res/drawable-xxxhdpi/ic_icon_bell.png | Bin 0 -> 1903 bytes .../res/drawable-xxxhdpi/ic_icon_edit.png | Bin 0 -> 2352 bytes .../res/drawable-xxxhdpi/ic_icon_hide.png | Bin 0 -> 9853 bytes .../res/drawable-xxxhdpi/ic_icon_search.png | Bin 0 -> 4006 bytes .../ic_icon_status_active.png | Bin 0 -> 1484 bytes .../ic_icon_status_inactive.png | Bin 0 -> 2536 bytes .../ic_icon_status_losttofollowup.png | Bin 0 -> 3635 bytes .../main/res/drawable-xxxhdpi/ic_launcher.png | Bin 0 -> 25840 bytes .../src/main/res/drawable-xxxhdpi/ic_logo.png | Bin 0 -> 144218 bytes .../drawable-xxxhdpi/ic_menu_white_24dp.png | Bin 0 -> 99 bytes .../res/drawable-xxxhdpi/ic_more_vert.png | Bin 0 -> 3283 bytes .../res/drawable-xxxhdpi/ic_opensrp_logo.png | Bin 0 -> 26391 bytes .../res/drawable-xxxhdpi/ic_sent_monthly.png | Bin 0 -> 14085 bytes .../advanced_search_cbd_stoke_color_list.xml | 5 + .../advanced_search_rdb_stoke_color_list.xml | 5 + .../main/res/drawable/bg_gray_gradient.xml | 12 + .../src/main/res/drawable/bg_grey_borders.xml | 8 + .../src/main/res/drawable/border.xml | 17 + .../res/drawable/drawer_item_background.xml | 18 + .../src/main/res/drawable/edit_text_style.xml | 8 + opensrp-bidan/src/main/res/drawable/h8.jpg | Bin 33037 -> 0 bytes opensrp-bidan/src/main/res/drawable/h9.jpg | Bin 35980 -> 0 bytes .../src/main/res/drawable/helper_face.jpg | Bin 30507 -> 0 bytes .../src/main/res/drawable/issued_minus.xml | 4 + .../res/drawable/light_grey_background.xml | 8 + .../main/res/drawable/login_background.xml | 8 + .../src/main/res/drawable/loss_adj.xml | 4 + .../src/main/res/drawable/name_inits_bg.xml | 6 + .../src/main/res/drawable/received_plus.xml | 4 + .../src/main/res/drawable/round_button.xml | 13 - .../res/drawable/round_white_background.xml | 5 + .../src/main/res/drawable/scan_qr_code_bg.xml | 13 + .../main/res/drawable/search_edit_text_bg.xml | 14 + .../transparent_clicked_background.xml | 14 + .../drawable/vertical_separator_female.xml | 8 + .../res/drawable/vertical_separator_male.xml | 8 + .../src/main/res/layout-land/login.xml | 144 + .../smart_registers_home_bidan.xml | 0 .../main/res/layout/action_base_drawer.xml | 47 + .../res/layout/action_location_switcher.xml | 24 + .../layout/activity_child_immunization.xml | 17 + .../main/res/layout/activity_hia2_reports.xml | 18 + .../src/main/res/layout/activity_main.xml | 14 + .../res/layout/activity_report_summary.xml | 17 + .../src/main/res/layout/activity_stock.xml | 17 + .../res/layout/activity_stock_control.xml | 81 + .../src/main/res/layout/activity_test.xml | 109 - .../res/layout/activity_vaccine_report.xml | 27 + .../res/layout/advanced_search_client.xml | 208 + .../main/res/layout/advanced_search_form.xml | 434 + .../main/res/layout/advanced_search_list.xml | 81 + .../res/layout/advanced_search_section.xml | 12 + .../layout/anak_frame_immunization_layout.xml | 55 - .../main/res/layout/anak_register_birth.xml | 87 - .../anak_register_client_birth_status.xml | 40 - .../anak_register_client_immunzation.xml | 116 - .../anak_register_client_last_service.xml | 19 - .../layout/anak_register_client_neonatal.xml | 126 - ...gister_immunization_service_mode_views.xml | 60 - ...k_register_overview_service_mode_views.xml | 50 - .../main/res/layout/anc_detail_activity.xml | 126 - .../res/layout/anc_detail_data_layout.xml | 967 -- .../main/res/layout/app_bar_child_detail.xml | 153 + .../res/layout/app_bar_child_immunization.xml | 15 + .../res/layout/app_bar_report_summary.xml | 15 + .../src/main/res/layout/app_bar_stock.xml | 13 + .../src/main/res/layout/app_hia2_reports.xml | 43 + .../layout/birthplan_detail_data_layout.xml | 299 - .../main/res/layout/child_detail_activity.xml | 103 - .../child_detail_activity_simple_tabs.xml | 17 + .../res/layout/child_detail_data_layout.xml | 387 - .../main/res/layout/child_detail_profile.xml | 131 - .../child_registration_data_fragment.xml | 741 + .../res/layout/child_under_five_fragment.xml | 65 + .../main/res/layout/childdetail_nav_bar.xml | 64 - .../res/layout/content_child_immunization.xml | 290 + .../src/main/res/layout/content_main.xml | 98 - .../res/layout/content_report_summary.xml | 42 + .../res/layout/content_stock_overview.xml | 22 + .../main/res/layout/current_stock_note.xml | 15 + .../main/res/layout/custom_nav_view_base.xml | 415 +- .../main/res/layout/daily_tally_header.xml | 29 + .../src/main/res/layout/daily_tally_item.xml | 46 + .../src/main/res/layout/detail_nav_bar.xml | 133 + .../layout/dialog_fragment_send_monthly.xml | 56 + .../res/layout/dialog_location_picker.xml | 29 + .../res/layout/dialog_not_in_catchment.xml | 61 + .../res/layout/expandable_list_fragment.xml | 15 + ...l => fragment_child_registration_data.xml} | 5 - .../res/layout/fragment_current__stock.xml | 239 + .../fragment_planning__stock_fragment.xml | 522 + .../res/layout/fragment_stock_control.xml | 16 + .../src/main/res/layout/global_search.xml | 52 + .../main/res/layout/growth_chart_navbar.xml | 88 - .../main/res/layout/immunization_widget.xml | 31 + .../layout/item_edit_text_number_picker.xml | 38 + .../main/res/layout/kb_detail_activity.xml | 108 - .../main/res/layout/kb_detail_data_layout.xml | 525 - .../main/res/layout/ki_detail_activity.xml | 106 - .../main/res/layout/ki_detail_data_layout.xml | 267 - .../src/main/res/layout/ki_detail_profile.xml | 175 - .../src/main/res/layout/lfa_chart_layout.xml | 63 - .../layout/location_picker_dropdown_item.xml | 29 + .../layout/location_picker_spinner_item.xml | 12 + opensrp-bidan/src/main/res/layout/login.xml | 129 + .../res/layout/lookup_dialog_tree_view.xml | 10 + .../src/main/res/layout/main_test_bpm.xml | 79 - .../src/main/res/layout/month_draft_item.xml | 40 + .../src/main/res/layout/month_item.xml | 23 + .../src/main/res/layout/month_results.xml | 14 + .../res/layout/mother_child_lookup_client.xml | 84 + .../main/res/layout/mother_lookup_results.xml | 14 + .../main/res/layout/motherdetail_nav_bar.xml | 63 - .../src/main/res/layout/nav_header_base.xml | 66 + .../src/main/res/layout/nav_view_base.xml | 15 + .../src/main/res/layout/notification_base.xml | 80 + .../main/res/layout/pnc_detail_activity.xml | 108 - .../res/layout/pnc_detail_data_layout.xml | 714 - .../src/main/res/layout/provider_profile.xml | 21 + .../res/layout/risk_detail_data_layout.xml | 690 - .../res/layout/select_device_item_layout.xml | 6 - .../main/res/layout/sent_monthly_fragment.xml | 97 + .../main/res/layout/sent_monthly_header.xml | 29 + .../src/main/res/layout/sent_monthly_item.xml | 61 + ...mart_register_activity_advanced_search.xml | 66 + .../smart_register_activity_customized.xml | 81 + .../res/layout/smart_register_anak_client.xml | 43 - .../layout/smart_register_child_client.xml | 187 + .../smart_register_child_client_profile.xml | 101 - .../layout/smart_register_child_header.xml | 96 + ...art_register_client_children_layout_ki.xml | 29 - .../smart_register_client_obsetri_layout.xml | 82 - .../smart_register_client_profile_ki.xml | 163 - .../smart_register_client_status_anc_ki.xml | 48 - .../smart_register_client_status_kb.xml | 46 - .../smart_register_client_status_ki.xml | 41 - ...smart_register_client_status_layout_ki.xml | 37 - .../smart_register_client_status_pnc_ki.xml | 48 - .../layout/smart_register_cursor_fragment.xml | 65 + .../res/layout/smart_register_kb_client.xml | 232 - .../layout/smart_register_ki_anc_client.xml | 286 - .../res/layout/smart_register_ki_client.xml | 145 - .../layout/smart_register_ki_pnc_client.xml | 250 - .../smart_register_nav_bar_customized.xml | 27 + .../smart_register_status_bar_customized.xml | 75 + .../smart_register_stock_control_client.xml | 85 + .../res/layout/status_edit_dialog_view.xml | 173 + .../src/main/res/layout/stock_grid_block.xml | 51 + opensrp-bidan/src/main/res/layout/strings.xml | 637 - .../src/main/res/layout/tablerows.xml | 39 + .../src/main/res/layout/tablerows_ptcmt.xml | 40 + .../src/main/res/layout/tool_bar.xml | 224 + .../main/res/layout/toolbar_child_details.xml | 27 + .../src/main/res/layout/toolbar_hia2.xml | 78 + .../res/layout/toolbar_location_switcher.xml | 32 + .../src/main/res/layout/toolbar_simple.xml | 25 + .../src/main/res/layout/toolbar_stock.xml | 65 + .../res/layout/view_indicator_category.xml | 96 + .../main/res/layout/view_sibling_group.xml | 12 + .../main/res/layout/view_sibling_picture.xml | 24 + .../src/main/res/layout/wfa_chart_layout.xml | 74 - .../main/res/layout/zscore_chart_layout.xml | 67 - .../main/res/menu/activity_base_drawer.xml | 31 + opensrp-bidan/src/main/res/menu/base.xml | 9 + .../src/main/res/menu/client_activity.xml | 6 - .../src/main/res/menu/image_confirmation.xml | 9 - opensrp-bidan/src/main/res/menu/main.xml | 9 - .../res/menu/menu_child_detail_settings.xml | 20 + .../main/res/menu/menu_location_switcher.xml | 8 + .../src/main/res/menu/menu_stock_control.xml | 10 + .../src/main/res/menu/menu_vaccine_report.xml | 7 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 3418 -> 5232 bytes .../src/main/res/mipmap-hdpi/opensrp_logo.png | Bin 0 -> 4830 bytes .../src/main/res/mipmap-mdpi/child_boy.png | Bin 6810 -> 0 bytes .../src/main/res/mipmap-mdpi/cross.png | Bin 622 -> 0 bytes .../src/main/res/mipmap-mdpi/doneintime.png | Bin 1587 -> 0 bytes .../res/mipmap-mdpi/extended_is_child_of.png | Bin 2426 -> 0 bytes .../src/main/res/mipmap-mdpi/flag_hrp.png | Bin 817 -> 0 bytes .../src/main/res/mipmap-mdpi/flag_vg.png | Bin 564 -> 0 bytes .../src/main/res/mipmap-mdpi/hhreg.png | Bin 20168 -> 0 bytes .../res/mipmap-mdpi/household_profile.png | Bin 20109 -> 0 bytes .../mipmap-mdpi/household_profile_thumb.png | Bin 6172 -> 0 bytes .../res/mipmap-mdpi/ic_action_barcode_2.png | Bin 0 -> 454 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 2206 -> 2739 bytes .../main/res/mipmap-mdpi/icon_event_anc.png | Bin 2576 -> 0 bytes .../main/res/mipmap-mdpi/icon_event_child.png | Bin 3051 -> 0 bytes .../main/res/mipmap-mdpi/icon_event_edd.png | Bin 3271 -> 0 bytes .../main/res/mipmap-mdpi/icon_event_pnc.png | Bin 3236 -> 0 bytes .../src/main/res/mipmap-mdpi/ischildof.png | Bin 2225 -> 0 bytes .../res/mipmap-mdpi/login_header_logo.png | Bin 287 -> 0 bytes .../src/main/res/mipmap-mdpi/login_logo.png | Bin 11635 -> 0 bytes .../main/res/mipmap-mdpi/notdoneintime.png | Bin 2248 -> 0 bytes .../src/main/res/mipmap-mdpi/opensrp_logo.png | Bin 0 -> 2561 bytes .../src/main/res/mipmap-mdpi/qr_code.png | Bin 0 -> 4968 bytes .../src/main/res/mipmap-mdpi/register_hh.png | Bin 6068 -> 0 bytes .../src/main/res/mipmap-mdpi/station_icon.png | Bin 13819 -> 0 bytes .../src/main/res/mipmap-mdpi/thermometer.png | Bin 1754 -> 0 bytes .../src/main/res/mipmap-mdpi/tutoria1.png | Bin 96255 -> 0 bytes .../main/res/mipmap-mdpi/tutorial1bangla.png | Bin 115407 -> 0 bytes .../src/main/res/mipmap-mdpi/tutorial2.png | Bin 108653 -> 0 bytes .../main/res/mipmap-mdpi/tutorial2bangla.png | Bin 152597 -> 0 bytes .../src/main/res/mipmap-mdpi/tutorial3.png | Bin 114199 -> 0 bytes .../main/res/mipmap-mdpi/tutorialbangla3.png | Bin 152320 -> 0 bytes .../src/main/res/mipmap-mdpi/warning.png | Bin 1094 -> 0 bytes .../res/mipmap-mdpi/warningdetailcapture.png | Bin 543 -> 0 bytes .../res/mipmap-mdpi/woman_placeholder.png | Bin 7710 -> 0 bytes .../main/res/mipmap-mdpi/womanimageload.png | Bin 7474 -> 0 bytes .../res/mipmap-xhdpi/ic_action_barcode_2.png | Bin 0 -> 570 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 4842 -> 7248 bytes .../main/res/mipmap-xhdpi/login_logo_main.png | Bin 0 -> 50088 bytes .../main/res/mipmap-xhdpi/opensrp_logo.png | Bin 0 -> 6720 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 7718 -> 13399 bytes .../main/res/mipmap-xxhdpi/opensrp_logo.png | Bin 0 -> 12453 bytes .../main/res/mipmap-xxxhdpi/child_girl.png | Bin 6132 -> 0 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 10486 -> 19881 bytes .../main/res/mipmap-xxxhdpi/opensrp_logo.png | Bin 0 -> 18082 bytes opensrp-bidan/src/main/res/values-bn/ids.xml | 8 - .../src/main/res/values-bn/strings.xml | 134 - .../src/main/res/values-kn/strings.xml | 370 - .../src/main/res/values-v21/styles.xml | 20 + .../src/main/res/values-w600dp/dimens.xml | 12 + .../src/main/res/values-w720dp/dimens.xml | 9 + .../src/main/res/values-w820dp/strings.xml | 4 + opensrp-bidan/src/main/res/values/attrs.xml | 47 - opensrp-bidan/src/main/res/values/colors.xml | 87 +- opensrp-bidan/src/main/res/values/dimens.xml | 80 +- opensrp-bidan/src/main/res/values/ids.xml | 24 +- opensrp-bidan/src/main/res/values/integer.xml | 94 - opensrp-bidan/src/main/res/values/strings.xml | 862 +- opensrp-bidan/src/main/res/values/styles.xml | 117 +- .../src/main/res/values/tick_cross.xml | 26 - .../src/main/res/xml/captured_images_path.xml | 4 + .../src/main/res/xml/preferences.xml | 15 + .../smartregister/bidan/ExampleUnitTest.java | 17 - .../ChildDetailTabbedActivityUnitTest.java | 785 + .../ChildDetailTabbedActivityTestVersion.java | 59 + .../activity/mocks/MenuItemTestVersion.java | 222 + .../fragment/PathJsonFormFragmentTest.java | 41 + .../HIA2ReportFormTextWatcherTest.java | 76 + .../src/test/java/shared/BaseUnitTest.java | 32 + .../shared/BidanApplicationTestVersion.java | 117 + .../customshadows/FontTextViewShadow.java | 24 + .../customshadows/ImageUtilsShadow.java | 35 + .../ImmunizationRowAdapterShadow.java | 88 + .../ImmunizationRowCardShadow.java | 105 + .../src/test/java/util/ImageUtilsTest.java | 124 + .../src/test/java/util/UtilsTest.java | 48 + settings.gradle | 4 +- 732 files changed, 38341 insertions(+), 68768 deletions(-) create mode 100644 LICENSE delete mode 100644 gradlew.bat delete mode 100644 opensrp-bidan/fabric.properties create mode 100644 opensrp-bidan/fabric.properties.template create mode 100644 opensrp-bidan/libs/commons-validator-1.6.jar create mode 100644 opensrp-bidan/lint.xml create mode 100644 opensrp-bidan/pom.xml delete mode 100644 opensrp-bidan/src/androidTest/java/org/smartregister/bidan/ExampleInstrumentedTest.java create mode 100644 opensrp-bidan/src/androidTest/java/org/smartregister/path/ApplicationTest.java create mode 100644 opensrp-bidan/src/main/assets/Zambia-EIR-DataDictionaryReporting-HIA2.csv delete mode 100644 opensrp-bidan/src/main/assets/bindtypes.json delete mode 100644 opensrp-bidan/src/main/assets/bpm.json create mode 100644 opensrp-bidan/src/main/assets/ec_client_service.json create mode 100644 opensrp-bidan/src/main/assets/ec_client_vaccine.json create mode 100644 opensrp-bidan/src/main/assets/ec_client_weight.json create mode 100644 opensrp-bidan/src/main/assets/fonts/material-icon-font.ttf create mode 100644 opensrp-bidan/src/main/assets/json.form/adverse_event.json create mode 100644 opensrp-bidan/src/main/assets/json.form/child_enrollment.json create mode 100644 opensrp-bidan/src/main/assets/json.form/hia2_monthly_report.json create mode 100644 opensrp-bidan/src/main/assets/json.form/out_of_catchment_service.json create mode 100644 opensrp-bidan/src/main/assets/json.form/report_deceased.json create mode 100644 opensrp-bidan/src/main/assets/json.form/stock_adjustment_form.json create mode 100644 opensrp-bidan/src/main/assets/json.form/stock_issued_form.json create mode 100644 opensrp-bidan/src/main/assets/json.form/stock_received_form.json create mode 100644 opensrp-bidan/src/main/assets/recurring_service_types.json create mode 100644 opensrp-bidan/src/main/assets/services.json create mode 100644 opensrp-bidan/src/main/assets/special_vaccines.json create mode 100644 opensrp-bidan/src/main/assets/vaccine_type.json create mode 100644 opensrp-bidan/src/main/assets/vaccines.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/blood_test/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/blood_test/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/blood_test/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/blood_test/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/entity_relationship.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/feedback_bidan/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/feedback_bidan/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/feedback_bidan/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/forms.zip delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_close/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_close/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_close/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_close/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_edit/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_edit/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_edit/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_registration/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_registration/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_registration/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_registration/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_registration_oa/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_registration_oa/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_registration_oa/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_rencana_persalinan/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_rencana_persalinan/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_rencana_persalinan/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_rencana_persalinan/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit_edit/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit_edit/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit_edit/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit_integrasi/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit_integrasi/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit_integrasi/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit_integrasi/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit_labTest/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit_labTest/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit_labTest/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_anc_visit_labTest/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_ibu_close/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_ibu_close/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_ibu_close/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_ibu_close/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_ibu_edit/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_ibu_edit/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_ibu_edit/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_ibu_registration/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_ibu_registration/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_ibu_registration/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_ibu_registration/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_close/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_close/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_close/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_close/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_dokumentasi_persalinan/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_dokumentasi_persalinan/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_dokumentasi_persalinan/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_dokumentasi_persalinan/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_edit/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_edit/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_edit/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_pospartum_kb/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_pospartum_kb/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_pospartum_kb/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_pospartum_kb/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_regitration_oa/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_regitration_oa/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_regitration_oa/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_visit/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_visit/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_visit/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kartu_pnc_visit/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_anak_tutup/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_anak_tutup/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_anak_tutup/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_anak_tutup/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_balita_kunjungan/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_balita_kunjungan/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_balita_kunjungan/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_balita_kunjungan/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_balita_kunjungan/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_balita_kunjungan/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_balita_kunjungan/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_edit/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_edit/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_edit/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_immunization/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_immunization/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_immunization/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_immunization/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_kunjungan/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_kunjungan/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_kunjungan/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_kunjungan/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_neonatal_period/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_neonatal_period/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_neonatal_period/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_neonatal_period/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_registration/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_registration/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_registration/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_registration/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_registration_oa/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_registration_oa/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_bayi_registration_oa/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_close/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_close/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_close/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_close/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_pelayanan/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_pelayanan/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_pelayanan/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_pelayanan/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_registration/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_registration/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_registration/model.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_update/form.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_update/form.xml delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_update/form_definition.json delete mode 100644 opensrp-bidan/src/main/assets/www/form/kohort_kb_update/model.xml delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/AllConstantsINA.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/BidanHomeActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/LoginActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/NavigationControllerINA.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/BaseActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/BaseRegisterActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/BidanHomeActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/ChildDetailTabbedActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/ChildImmunizationActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/ChildSmartRegisterActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/HIA2ReportsActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/LoginActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/PathJsonFormActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/ProviderProfileActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/ReportSummaryActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/SettingsActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/StockActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/activity/StockControlActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/adapter/AdvancedSearchPaginatedCursorAdapter.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/adapter/ExpandedListAdapter.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/adapter/PathRegisterActivityPagerAdapter.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/adapter/ServiceLocationsAdapter.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/adapter/SiblingPictureAdapter.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/adapter/StockPaginatedCursorAdapter.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/adapter/StockProviderForCursorAdapter.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/anc/ANCDetailActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/anc/KIANCClientsProvider.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/anc/KIANCOverviewServiceMode.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/anc/NativeKIANCSmartRegisterActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/application/SyncBidanBroadcastReceiver.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/child/ANAKSearchOption.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/child/AnakDetailActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/child/AnakOverviewServiceMode.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/child/AnakRegisterClientsProvider.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/child/ChildDetailActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/child/ChildFilterOption.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/child/ChildGrowthChartActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/child/ChildZScoreChartActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/child/NativeKIAnakSmartRegisterActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/domain/DailyTally.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/domain/EditWrapper.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/domain/EntityLookUp.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/domain/Hia2Indicator.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/domain/MonthlyTally.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/domain/RegisterClickables.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/domain/Report.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/domain/ReportHia2Indicator.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/domain/Stock.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/domain/Tally.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/domain/UniqueId.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/AdvancedSearchFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/BaseSmartRegisterFragment.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/BidanLocationSelectorDialogFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/ChildSmartRegisterFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/DailyTalliesFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/DraftMonthlyFragment.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/NativeKBSmartRegisterFragment.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/NativeKIANCSmartRegisterFragment.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/NativeKIAnakSmartRegisterFragment.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/NativeKIPNCSmartRegisterFragment.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/NativeKISmartRegisterFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/NotInCatchmentDialogFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/PathJsonFormFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/SendMonthlyDraftDialogFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/SentMonthlyFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/fragment/StatusEditDialogFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/interactors/PathJsonFormInteractor.java delete mode 100755 opensrp-bidan/src/main/java/org/smartregister/bidan/kartu_ibu/AllKartuIbuServiceMode.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/kartu_ibu/KIClientsProvider.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/kartu_ibu/KICommonObjectFilterOption.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/kartu_ibu/KIDetailActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/kartu_ibu/NativeKISmartRegisterActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/kb/AllKBServiceMode.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/kb/KBClientsProvider.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/kb/KBDetailActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/kb/NativeKBSmartRegisterActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/lib/ErrorReportingFacade.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/lib/FlurryFacade.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/listener/StatusChangeListener.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/option/BasicSearchOption.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/option/DateSort.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/option/StatusSort.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/pageradapter/BaseRegisterActivityPagerAdapter.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/pnc/KIPNCClientsProvider.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/pnc/KIPNCOverviewServiceMode.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/pnc/NativeKIPNCSmartRegisterActivity.java delete mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/pnc/PNCDetailActivity.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/provider/AdvancedSearchClientsProvider.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/provider/ChildSmartClientsProvider.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/provider/MotherLookUpSmartClientsProvider.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/provider/StockRowSmartClientsProvider.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/receiver/Hia2ServiceBroadcastReceiver.java create mode 100755 opensrp-bidan/src/main/java/org/smartregister/bidan/receiver/OnBootReceiver.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/receiver/PathSyncBroadcastReceiver.java create mode 100755 opensrp-bidan/src/main/java/org/smartregister/bidan/receiver/VaccinatorAlarmReceiver.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/repository/DailyTalliesRepository.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/repository/HIA2IndicatorsRepository.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/repository/MonthlyTalliesRepository.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/repository/PathRepository.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/repository/StockRepository.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/repository/UniqueIdRepository.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/service/HIA2Service.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/service/intent/HIA2IntentService.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/service/intent/PullUniqueIdsIntentService.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/service/intent/SyncIntentService.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/service/intent/ValidateIntentService.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/servicemode/VaccinationServiceModeOption.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/sync/ECSyncUpdater.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/sync/PathAfterFetchListener.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/sync/PathClientProcessor.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/tabfragments/ChildRegistrationDataFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/tabfragments/ChildUnderFiveFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/tabfragments/CurrentStock.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/tabfragments/PlanningStockFragment.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/toolbar/BaseToolbar.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/toolbar/ChildDetailsToolbar.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/toolbar/LocationSwitcherToolbar.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/toolbar/SimpleToolbar.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/view/IndicatorCategoryView.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/view/LocationActionView.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/view/LocationPickerView.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/view/SiblingPicture.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/view/SiblingPicturesGroup.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/viewComponents/WidgetFactory.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/viewstates/PathJsonFormFragmentViewState.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/watchers/HIA2ReportFormTextWatcher.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/watchers/LookUpTextWatcher.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/widgets/PathDatePickerFactory.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/widgets/PathEditTextFactory.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/wrapper/BaseViewRecordUpdateWrapper.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/wrapper/VaccineViewRecordUpdateWrapper.java create mode 100644 opensrp-bidan/src/main/java/org/smartregister/bidan/wrapper/WeightViewRecordUpdateWrapper.java delete mode 100644 opensrp-bidan/src/main/java/util/AsyncTask.java rename opensrp-bidan/src/main/java/{org/smartregister/bidan/utils => util}/Config.java (93%) create mode 100644 opensrp-bidan/src/main/java/util/DateTimeTypeConverter.java delete mode 100644 opensrp-bidan/src/main/java/util/DiskLruCache.java create mode 100644 opensrp-bidan/src/main/java/util/GlobalSearchUtils.java delete mode 100644 opensrp-bidan/src/main/java/util/ImageCache.java delete mode 100644 opensrp-bidan/src/main/java/util/ImageFetcher.java delete mode 100644 opensrp-bidan/src/main/java/util/ImageResizer.java create mode 100644 opensrp-bidan/src/main/java/util/ImageUtils.java delete mode 100644 opensrp-bidan/src/main/java/util/ImageWorker.java create mode 100644 opensrp-bidan/src/main/java/util/JsonFormUtils.java create mode 100644 opensrp-bidan/src/main/java/util/MotherLookUpUtils.java create mode 100644 opensrp-bidan/src/main/java/util/MoveToMyCatchmentUtils.java create mode 100644 opensrp-bidan/src/main/java/util/NetworkUtils.java create mode 100644 opensrp-bidan/src/main/java/util/PathConstants.java delete mode 100644 opensrp-bidan/src/main/java/util/RecyclingBitmapDrawable.java create mode 100644 opensrp-bidan/src/main/java/util/ReportUtils.java delete mode 100644 opensrp-bidan/src/main/java/util/ZScore/ReferenceTableForDailyIndex.java delete mode 100644 opensrp-bidan/src/main/java/util/ZScore/ZScoreSystemCalculation.java create mode 100644 opensrp-bidan/src/main/java/util/barcode/Barcode.java create mode 100644 opensrp-bidan/src/main/java/util/barcode/BarcodeIntentIntegrator.java create mode 100644 opensrp-bidan/src/main/java/util/barcode/BarcodeIntentResult.java delete mode 100644 opensrp-bidan/src/main/java/util/formula/Support.java delete mode 100644 opensrp-bidan/src/main/java/util/growthChart/GraphConstant.java delete mode 100644 opensrp-bidan/src/main/java/util/growthChart/GrowthChartGenerator.java delete mode 100644 opensrp-bidan/src/main/java/util/uniqueIdGenerator/AllSettingsINA.java delete mode 100644 opensrp-bidan/src/main/java/util/uniqueIdGenerator/Generator.java delete mode 100644 opensrp-bidan/src/main/java/util/uniqueIdGenerator/UniqueIdController.java delete mode 100644 opensrp-bidan/src/main/java/util/uniqueIdGenerator/UniqueIdRepository.java delete mode 100644 opensrp-bidan/src/main/java/util/uniqueIdGenerator/UniqueIdService.java delete mode 100755 opensrp-bidan/src/main/jniLibs/armeabi/libfacialproc_jni.so delete mode 100755 opensrp-bidan/src/main/jniLibs/armeabi/libiHealth.so delete mode 100644 opensrp-bidan/src/main/res/HeaderVector1000.csv delete mode 100644 opensrp-bidan/src/main/res/anim/fadeout.xml create mode 100644 opensrp-bidan/src/main/res/anim/slide_down.xml create mode 100644 opensrp-bidan/src/main/res/anim/slide_up.xml create mode 100644 opensrp-bidan/src/main/res/color/tintcolor.xml create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_action_add.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_action_clear.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_action_out_catchment.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_action_settings.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_action_sync.png delete mode 100644 opensrp-bidan/src/main/res/drawable-hdpi/ic_bidan_logo.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_check_bcg_scar.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_checked.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_daily_tallies.png create mode 100644 opensrp-bidan/src/main/res/drawable-hdpi/ic_deceased.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_error.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_icon_add.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_icon_bell.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_icon_edit.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_icon_hide.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_icon_search.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_icon_status_active.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_icon_status_inactive.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_icon_status_losttofollowup.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_launcher.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_logo.png create mode 100644 opensrp-bidan/src/main/res/drawable-hdpi/ic_menu_white_24dp.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_more_vert.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_opensrp_logo.png create mode 100755 opensrp-bidan/src/main/res/drawable-hdpi/ic_sent_monthly.png create mode 100644 opensrp-bidan/src/main/res/drawable-hdpi/illustration_report_empty_state.png delete mode 100644 opensrp-bidan/src/main/res/drawable-hdpi/pulseheart.png delete mode 100644 opensrp-bidan/src/main/res/drawable-ldpi/ic_bidan_logo.png create mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/advanced_search_bg.xml create mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/advanced_search_disabled_bg.xml create mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/advanced_search_enabled_bg.xml create mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/back_button.png create mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/bell.png create mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/child_boy_infant.png create mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/child_girl_infant.png create mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/child_transgender_inflant.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/flag_hrl.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/flag_orange_rtp.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/flag_orange_rtpp.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/flag_purple_rta.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/flag_red_rtk.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/flag_rt.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/flag_sc.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/flag_st.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/flag_yellow_rt.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_action_add.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_action_clear.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_action_out_catchment.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_action_settings.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_action_sync.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/ic_bidan_logo.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_check_bcg_scar.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_checked.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_daily_tallies.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_error.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_icon_add.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_icon_bell.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_icon_edit.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_icon_hide.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_icon_search.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_icon_status_active.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_icon_status_inactive.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_icon_status_losttofollowup.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_launcher.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_logo.png create mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/ic_menu_white_24dp.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_more_vert.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/ic_no_small.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_opensrp_logo.png create mode 100755 opensrp-bidan/src/main/res/drawable-mdpi/ic_sent_monthly.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/login_logo_bidan.png create mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/login_logo_main.png delete mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/logo_bidan.png rename opensrp-bidan/src/main/res/{mipmap-mdpi/householdload.png => drawable-mdpi/main_image_load.png} (100%) create mode 100644 opensrp-bidan/src/main/res/drawable-mdpi/opensrp_label.png delete mode 100644 opensrp-bidan/src/main/res/drawable-v21/round_button.xml create mode 100644 opensrp-bidan/src/main/res/drawable-xhdpi/addchild.png create mode 100644 opensrp-bidan/src/main/res/drawable-xhdpi/hia_big.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_action_add.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_action_clear.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_action_out_catchment.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_action_settings.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_action_sync.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_check_bcg_scar.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_checked.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_daily_tallies.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_error.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_icon_add.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_icon_bell.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_icon_edit.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_icon_hide.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_icon_search.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_icon_status_active.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_icon_status_inactive.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_icon_status_losttofollowup.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_launcher.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_logo.png create mode 100644 opensrp-bidan/src/main/res/drawable-xhdpi/ic_menu_white_24dp.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_more_vert.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_opensrp_logo.png create mode 100755 opensrp-bidan/src/main/res/drawable-xhdpi/ic_sent_monthly.png create mode 100644 opensrp-bidan/src/main/res/drawable-xhdpi/outofareabig.png create mode 100644 opensrp-bidan/src/main/res/drawable-xhdpi/stock_list.png create mode 100644 opensrp-bidan/src/main/res/drawable-xhdpi/stock_minus.png create mode 100644 opensrp-bidan/src/main/res/drawable-xhdpi/stock_plus.png create mode 100644 opensrp-bidan/src/main/res/drawable-xhdpi/stockreg.png create mode 100644 opensrp-bidan/src/main/res/drawable-xhdpi/syncbig.png delete mode 100644 opensrp-bidan/src/main/res/drawable-xhdpi/vertical_progress_bar.xml create mode 100644 opensrp-bidan/src/main/res/drawable-xhdpi/zeirbig.png rename opensrp-bidan/src/main/res/{drawable-mdpi => drawable-xxhdpi}/bg_texture_blue.png (100%) rename opensrp-bidan/src/main/res/{drawable-mdpi => drawable-xxhdpi}/bidan_logo.png (100%) create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_action_add.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_action_clear.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_action_out_catchment.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_action_settings.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_action_sync.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_check_bcg_scar.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_checked.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_daily_tallies.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_error.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_icon_add.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_icon_bell.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_icon_edit.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_icon_hide.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_icon_search.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_icon_status_active.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_icon_status_inactive.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_icon_status_losttofollowup.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_launcher.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_logo.png create mode 100644 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_menu_white_24dp.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_more_vert.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_opensrp_logo.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxhdpi/ic_sent_monthly.png rename opensrp-bidan/src/main/res/{drawable-xhdpi => drawable-xxhdpi}/message_box.png (100%) create mode 100644 opensrp-bidan/src/main/res/drawable-xxxhdpi/drawer_horizontal_seperator.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_action_add.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_action_clear.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_action_out_catchment.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_action_settings.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_action_sync.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_check_bcg_scar.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_checked.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_daily_tallies.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_error.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_icon_add.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_icon_bell.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_icon_edit.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_icon_hide.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_icon_search.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_icon_status_active.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_icon_status_inactive.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_icon_status_losttofollowup.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_launcher.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_logo.png create mode 100644 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_menu_white_24dp.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_more_vert.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_opensrp_logo.png create mode 100755 opensrp-bidan/src/main/res/drawable-xxxhdpi/ic_sent_monthly.png create mode 100644 opensrp-bidan/src/main/res/drawable/advanced_search_cbd_stoke_color_list.xml create mode 100644 opensrp-bidan/src/main/res/drawable/advanced_search_rdb_stoke_color_list.xml create mode 100644 opensrp-bidan/src/main/res/drawable/bg_gray_gradient.xml create mode 100644 opensrp-bidan/src/main/res/drawable/bg_grey_borders.xml create mode 100644 opensrp-bidan/src/main/res/drawable/border.xml create mode 100644 opensrp-bidan/src/main/res/drawable/drawer_item_background.xml create mode 100644 opensrp-bidan/src/main/res/drawable/edit_text_style.xml delete mode 100755 opensrp-bidan/src/main/res/drawable/h8.jpg delete mode 100755 opensrp-bidan/src/main/res/drawable/h9.jpg delete mode 100755 opensrp-bidan/src/main/res/drawable/helper_face.jpg create mode 100644 opensrp-bidan/src/main/res/drawable/issued_minus.xml create mode 100644 opensrp-bidan/src/main/res/drawable/light_grey_background.xml create mode 100644 opensrp-bidan/src/main/res/drawable/login_background.xml create mode 100644 opensrp-bidan/src/main/res/drawable/loss_adj.xml create mode 100644 opensrp-bidan/src/main/res/drawable/name_inits_bg.xml create mode 100644 opensrp-bidan/src/main/res/drawable/received_plus.xml delete mode 100644 opensrp-bidan/src/main/res/drawable/round_button.xml create mode 100644 opensrp-bidan/src/main/res/drawable/round_white_background.xml create mode 100644 opensrp-bidan/src/main/res/drawable/scan_qr_code_bg.xml create mode 100644 opensrp-bidan/src/main/res/drawable/search_edit_text_bg.xml create mode 100644 opensrp-bidan/src/main/res/drawable/transparent_clicked_background.xml create mode 100644 opensrp-bidan/src/main/res/drawable/vertical_separator_female.xml create mode 100644 opensrp-bidan/src/main/res/drawable/vertical_separator_male.xml create mode 100644 opensrp-bidan/src/main/res/layout-land/login.xml rename opensrp-bidan/src/main/res/{layout => layout-land}/smart_registers_home_bidan.xml (100%) create mode 100644 opensrp-bidan/src/main/res/layout/action_base_drawer.xml create mode 100644 opensrp-bidan/src/main/res/layout/action_location_switcher.xml create mode 100644 opensrp-bidan/src/main/res/layout/activity_child_immunization.xml create mode 100644 opensrp-bidan/src/main/res/layout/activity_hia2_reports.xml create mode 100644 opensrp-bidan/src/main/res/layout/activity_main.xml create mode 100644 opensrp-bidan/src/main/res/layout/activity_report_summary.xml create mode 100644 opensrp-bidan/src/main/res/layout/activity_stock.xml create mode 100644 opensrp-bidan/src/main/res/layout/activity_stock_control.xml delete mode 100644 opensrp-bidan/src/main/res/layout/activity_test.xml create mode 100644 opensrp-bidan/src/main/res/layout/activity_vaccine_report.xml create mode 100644 opensrp-bidan/src/main/res/layout/advanced_search_client.xml create mode 100644 opensrp-bidan/src/main/res/layout/advanced_search_form.xml create mode 100644 opensrp-bidan/src/main/res/layout/advanced_search_list.xml create mode 100644 opensrp-bidan/src/main/res/layout/advanced_search_section.xml delete mode 100644 opensrp-bidan/src/main/res/layout/anak_frame_immunization_layout.xml delete mode 100644 opensrp-bidan/src/main/res/layout/anak_register_birth.xml delete mode 100644 opensrp-bidan/src/main/res/layout/anak_register_client_birth_status.xml delete mode 100644 opensrp-bidan/src/main/res/layout/anak_register_client_immunzation.xml delete mode 100644 opensrp-bidan/src/main/res/layout/anak_register_client_last_service.xml delete mode 100644 opensrp-bidan/src/main/res/layout/anak_register_client_neonatal.xml delete mode 100644 opensrp-bidan/src/main/res/layout/anak_register_immunization_service_mode_views.xml delete mode 100644 opensrp-bidan/src/main/res/layout/anak_register_overview_service_mode_views.xml delete mode 100644 opensrp-bidan/src/main/res/layout/anc_detail_activity.xml delete mode 100644 opensrp-bidan/src/main/res/layout/anc_detail_data_layout.xml create mode 100644 opensrp-bidan/src/main/res/layout/app_bar_child_detail.xml create mode 100644 opensrp-bidan/src/main/res/layout/app_bar_child_immunization.xml create mode 100644 opensrp-bidan/src/main/res/layout/app_bar_report_summary.xml create mode 100644 opensrp-bidan/src/main/res/layout/app_bar_stock.xml create mode 100644 opensrp-bidan/src/main/res/layout/app_hia2_reports.xml delete mode 100644 opensrp-bidan/src/main/res/layout/birthplan_detail_data_layout.xml delete mode 100644 opensrp-bidan/src/main/res/layout/child_detail_activity.xml create mode 100644 opensrp-bidan/src/main/res/layout/child_detail_activity_simple_tabs.xml delete mode 100644 opensrp-bidan/src/main/res/layout/child_detail_data_layout.xml delete mode 100644 opensrp-bidan/src/main/res/layout/child_detail_profile.xml create mode 100644 opensrp-bidan/src/main/res/layout/child_registration_data_fragment.xml create mode 100644 opensrp-bidan/src/main/res/layout/child_under_five_fragment.xml delete mode 100644 opensrp-bidan/src/main/res/layout/childdetail_nav_bar.xml create mode 100644 opensrp-bidan/src/main/res/layout/content_child_immunization.xml delete mode 100644 opensrp-bidan/src/main/res/layout/content_main.xml create mode 100644 opensrp-bidan/src/main/res/layout/content_report_summary.xml create mode 100644 opensrp-bidan/src/main/res/layout/content_stock_overview.xml create mode 100644 opensrp-bidan/src/main/res/layout/current_stock_note.xml create mode 100644 opensrp-bidan/src/main/res/layout/daily_tally_header.xml create mode 100644 opensrp-bidan/src/main/res/layout/daily_tally_item.xml create mode 100644 opensrp-bidan/src/main/res/layout/detail_nav_bar.xml create mode 100644 opensrp-bidan/src/main/res/layout/dialog_fragment_send_monthly.xml create mode 100644 opensrp-bidan/src/main/res/layout/dialog_location_picker.xml create mode 100644 opensrp-bidan/src/main/res/layout/dialog_not_in_catchment.xml create mode 100644 opensrp-bidan/src/main/res/layout/expandable_list_fragment.xml rename opensrp-bidan/src/main/res/layout/{main_bp7.xml => fragment_child_registration_data.xml} (59%) create mode 100644 opensrp-bidan/src/main/res/layout/fragment_current__stock.xml create mode 100644 opensrp-bidan/src/main/res/layout/fragment_planning__stock_fragment.xml create mode 100644 opensrp-bidan/src/main/res/layout/fragment_stock_control.xml create mode 100644 opensrp-bidan/src/main/res/layout/global_search.xml delete mode 100644 opensrp-bidan/src/main/res/layout/growth_chart_navbar.xml create mode 100644 opensrp-bidan/src/main/res/layout/immunization_widget.xml create mode 100644 opensrp-bidan/src/main/res/layout/item_edit_text_number_picker.xml delete mode 100644 opensrp-bidan/src/main/res/layout/kb_detail_activity.xml delete mode 100644 opensrp-bidan/src/main/res/layout/kb_detail_data_layout.xml delete mode 100644 opensrp-bidan/src/main/res/layout/ki_detail_activity.xml delete mode 100644 opensrp-bidan/src/main/res/layout/ki_detail_data_layout.xml delete mode 100644 opensrp-bidan/src/main/res/layout/ki_detail_profile.xml delete mode 100644 opensrp-bidan/src/main/res/layout/lfa_chart_layout.xml create mode 100644 opensrp-bidan/src/main/res/layout/location_picker_dropdown_item.xml create mode 100644 opensrp-bidan/src/main/res/layout/location_picker_spinner_item.xml create mode 100644 opensrp-bidan/src/main/res/layout/login.xml create mode 100644 opensrp-bidan/src/main/res/layout/lookup_dialog_tree_view.xml delete mode 100644 opensrp-bidan/src/main/res/layout/main_test_bpm.xml create mode 100644 opensrp-bidan/src/main/res/layout/month_draft_item.xml create mode 100644 opensrp-bidan/src/main/res/layout/month_item.xml create mode 100644 opensrp-bidan/src/main/res/layout/month_results.xml create mode 100644 opensrp-bidan/src/main/res/layout/mother_child_lookup_client.xml create mode 100644 opensrp-bidan/src/main/res/layout/mother_lookup_results.xml delete mode 100644 opensrp-bidan/src/main/res/layout/motherdetail_nav_bar.xml create mode 100644 opensrp-bidan/src/main/res/layout/nav_header_base.xml create mode 100644 opensrp-bidan/src/main/res/layout/nav_view_base.xml create mode 100644 opensrp-bidan/src/main/res/layout/notification_base.xml delete mode 100644 opensrp-bidan/src/main/res/layout/pnc_detail_activity.xml delete mode 100644 opensrp-bidan/src/main/res/layout/pnc_detail_data_layout.xml create mode 100644 opensrp-bidan/src/main/res/layout/provider_profile.xml delete mode 100644 opensrp-bidan/src/main/res/layout/risk_detail_data_layout.xml delete mode 100644 opensrp-bidan/src/main/res/layout/select_device_item_layout.xml create mode 100644 opensrp-bidan/src/main/res/layout/sent_monthly_fragment.xml create mode 100644 opensrp-bidan/src/main/res/layout/sent_monthly_header.xml create mode 100644 opensrp-bidan/src/main/res/layout/sent_monthly_item.xml create mode 100644 opensrp-bidan/src/main/res/layout/smart_register_activity_advanced_search.xml create mode 100644 opensrp-bidan/src/main/res/layout/smart_register_activity_customized.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_anak_client.xml create mode 100644 opensrp-bidan/src/main/res/layout/smart_register_child_client.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_child_client_profile.xml create mode 100644 opensrp-bidan/src/main/res/layout/smart_register_child_header.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_client_children_layout_ki.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_client_obsetri_layout.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_client_profile_ki.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_client_status_anc_ki.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_client_status_kb.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_client_status_ki.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_client_status_layout_ki.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_client_status_pnc_ki.xml create mode 100644 opensrp-bidan/src/main/res/layout/smart_register_cursor_fragment.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_kb_client.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_ki_anc_client.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_ki_client.xml delete mode 100644 opensrp-bidan/src/main/res/layout/smart_register_ki_pnc_client.xml create mode 100644 opensrp-bidan/src/main/res/layout/smart_register_nav_bar_customized.xml create mode 100644 opensrp-bidan/src/main/res/layout/smart_register_status_bar_customized.xml create mode 100644 opensrp-bidan/src/main/res/layout/smart_register_stock_control_client.xml create mode 100644 opensrp-bidan/src/main/res/layout/status_edit_dialog_view.xml create mode 100644 opensrp-bidan/src/main/res/layout/stock_grid_block.xml delete mode 100644 opensrp-bidan/src/main/res/layout/strings.xml create mode 100644 opensrp-bidan/src/main/res/layout/tablerows.xml create mode 100644 opensrp-bidan/src/main/res/layout/tablerows_ptcmt.xml create mode 100644 opensrp-bidan/src/main/res/layout/tool_bar.xml create mode 100644 opensrp-bidan/src/main/res/layout/toolbar_child_details.xml create mode 100644 opensrp-bidan/src/main/res/layout/toolbar_hia2.xml create mode 100644 opensrp-bidan/src/main/res/layout/toolbar_location_switcher.xml create mode 100644 opensrp-bidan/src/main/res/layout/toolbar_simple.xml create mode 100644 opensrp-bidan/src/main/res/layout/toolbar_stock.xml create mode 100644 opensrp-bidan/src/main/res/layout/view_indicator_category.xml create mode 100644 opensrp-bidan/src/main/res/layout/view_sibling_group.xml create mode 100644 opensrp-bidan/src/main/res/layout/view_sibling_picture.xml delete mode 100644 opensrp-bidan/src/main/res/layout/wfa_chart_layout.xml delete mode 100644 opensrp-bidan/src/main/res/layout/zscore_chart_layout.xml create mode 100644 opensrp-bidan/src/main/res/menu/activity_base_drawer.xml create mode 100644 opensrp-bidan/src/main/res/menu/base.xml delete mode 100644 opensrp-bidan/src/main/res/menu/client_activity.xml delete mode 100644 opensrp-bidan/src/main/res/menu/image_confirmation.xml delete mode 100644 opensrp-bidan/src/main/res/menu/main.xml create mode 100644 opensrp-bidan/src/main/res/menu/menu_child_detail_settings.xml create mode 100644 opensrp-bidan/src/main/res/menu/menu_location_switcher.xml create mode 100644 opensrp-bidan/src/main/res/menu/menu_stock_control.xml create mode 100644 opensrp-bidan/src/main/res/menu/menu_vaccine_report.xml mode change 100644 => 100755 opensrp-bidan/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100755 opensrp-bidan/src/main/res/mipmap-hdpi/opensrp_logo.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/child_boy.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/cross.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/doneintime.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/extended_is_child_of.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/flag_hrp.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/flag_vg.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/hhreg.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/household_profile.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/household_profile_thumb.png create mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/ic_action_barcode_2.png mode change 100644 => 100755 opensrp-bidan/src/main/res/mipmap-mdpi/ic_launcher.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/icon_event_anc.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/icon_event_child.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/icon_event_edd.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/icon_event_pnc.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/ischildof.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/login_header_logo.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/login_logo.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/notdoneintime.png create mode 100755 opensrp-bidan/src/main/res/mipmap-mdpi/opensrp_logo.png create mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/qr_code.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/register_hh.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/station_icon.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/thermometer.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/tutoria1.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/tutorial1bangla.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/tutorial2.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/tutorial2bangla.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/tutorial3.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/tutorialbangla3.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/warning.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/warningdetailcapture.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/woman_placeholder.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-mdpi/womanimageload.png create mode 100644 opensrp-bidan/src/main/res/mipmap-xhdpi/ic_action_barcode_2.png mode change 100644 => 100755 opensrp-bidan/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 opensrp-bidan/src/main/res/mipmap-xhdpi/login_logo_main.png create mode 100755 opensrp-bidan/src/main/res/mipmap-xhdpi/opensrp_logo.png mode change 100644 => 100755 opensrp-bidan/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100755 opensrp-bidan/src/main/res/mipmap-xxhdpi/opensrp_logo.png delete mode 100644 opensrp-bidan/src/main/res/mipmap-xxxhdpi/child_girl.png mode change 100644 => 100755 opensrp-bidan/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100755 opensrp-bidan/src/main/res/mipmap-xxxhdpi/opensrp_logo.png delete mode 100644 opensrp-bidan/src/main/res/values-bn/ids.xml delete mode 100644 opensrp-bidan/src/main/res/values-bn/strings.xml delete mode 100644 opensrp-bidan/src/main/res/values-kn/strings.xml create mode 100644 opensrp-bidan/src/main/res/values-v21/styles.xml create mode 100644 opensrp-bidan/src/main/res/values-w600dp/dimens.xml create mode 100644 opensrp-bidan/src/main/res/values-w720dp/dimens.xml create mode 100644 opensrp-bidan/src/main/res/values-w820dp/strings.xml delete mode 100644 opensrp-bidan/src/main/res/values/attrs.xml delete mode 100644 opensrp-bidan/src/main/res/values/integer.xml delete mode 100644 opensrp-bidan/src/main/res/values/tick_cross.xml create mode 100644 opensrp-bidan/src/main/res/xml/captured_images_path.xml create mode 100644 opensrp-bidan/src/main/res/xml/preferences.xml delete mode 100644 opensrp-bidan/src/test/java/org/smartregister/bidan/ExampleUnitTest.java create mode 100644 opensrp-bidan/src/test/java/org/smartregister/path/activity/ChildDetailTabbedActivityUnitTest.java create mode 100644 opensrp-bidan/src/test/java/org/smartregister/path/activity/mocks/ChildDetailTabbedActivityTestVersion.java create mode 100644 opensrp-bidan/src/test/java/org/smartregister/path/activity/mocks/MenuItemTestVersion.java create mode 100644 opensrp-bidan/src/test/java/org/smartregister/path/fragment/PathJsonFormFragmentTest.java create mode 100644 opensrp-bidan/src/test/java/org/smartregister/path/watchers/HIA2ReportFormTextWatcherTest.java create mode 100644 opensrp-bidan/src/test/java/shared/BaseUnitTest.java create mode 100644 opensrp-bidan/src/test/java/shared/BidanApplicationTestVersion.java create mode 100644 opensrp-bidan/src/test/java/shared/customshadows/FontTextViewShadow.java create mode 100644 opensrp-bidan/src/test/java/shared/customshadows/ImageUtilsShadow.java create mode 100644 opensrp-bidan/src/test/java/shared/customshadows/ImmunizationRowAdapterShadow.java create mode 100644 opensrp-bidan/src/test/java/shared/customshadows/ImmunizationRowCardShadow.java create mode 100644 opensrp-bidan/src/test/java/util/ImageUtilsTest.java create mode 100644 opensrp-bidan/src/test/java/util/UtilsTest.java diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..febcf50 --- /dev/null +++ b/LICENSE @@ -0,0 +1,17 @@ +Open Smart Register Platform (OpenSRP), formerly Dristhi software + +Copyright 2012-present + +Foundation for Research in Health Systems; Sustainable Engineering Lab; Columbia University; and The Special Programme of Research, +Development and Research Training in Human Reproduction (HRP) of the World Health Organization; Ona; mPower Social Enterprise Bangladesh; +Interactive Health Solutions; Summit Institute of Development; Interactive Research and Development; Johns Hopkins University Global +mHealth Institute; Harvard University School of Public Health + +Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may +obtain a copy of the License at: + +http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions +and limitations under the License. diff --git a/build.gradle b/build.gradle index 0326754..b7b9cbb 100644 --- a/build.gradle +++ b/build.gradle @@ -1,5 +1,4 @@ configure(allprojects) { project -> - buildscript { repositories { jcenter() @@ -36,10 +35,10 @@ subprojects { maven { url "http://repo.maven.apache.org/maven2" } maven { url "http://cloudant.github.io/cloudant-sync-eap/repository" } maven { - url "${projectDir}/opensrp-facial-recognition/../libs/" + url "${projectDir}/opensrp-path/../libs/" } maven { - url "${projectDir}/opensrp-facial-recognition-it/../libs/" + url "${projectDir}/opensrp-path-it/../libs/" } mavenLocal() } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 13372aef5e24af05341d49695ee84e5f9b594659..085a1cdc27db1185342f15a00441734e74fe3735 100644 GIT binary patch delta 17691 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 QWZ5;@_o5+N`!0|u0Eye;x&QzG delta 19154 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/dev/null +cd "`dirname \"$PRG\"`/" >&- APP_HOME="`pwd -P`" -cd "$SAVED" >/dev/null +cd "$SAVED" >&- CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar @@ -109,7 +114,6 @@ fi if $cygwin ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - JAVACMD=`cygpath --unix "$JAVACMD"` # We build the pattern for arguments to be converted via cygpath ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` diff --git a/gradlew.bat b/gradlew.bat deleted file mode 100644 index 8a0b282..0000000 --- a/gradlew.bat +++ /dev/null @@ -1,90 +0,0 @@ -@if "%DEBUG%" == "" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - -set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto init - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:init -@rem Get command-line arguments, handling Windowz variants - -if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% - -:end -@rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega diff --git a/opensrp-bidan/.gitignore b/opensrp-bidan/.gitignore index 796b96d..1512cc9 100644 --- a/opensrp-bidan/.gitignore +++ b/opensrp-bidan/.gitignore @@ -1 +1,2 @@ /build +/reports diff --git a/opensrp-bidan/build.gradle b/opensrp-bidan/build.gradle index 9de1bf3..aa44713 100644 --- a/opensrp-bidan/build.gradle +++ b/opensrp-bidan/build.gradle @@ -4,7 +4,7 @@ buildscript { maven { url 'https://maven.fabric.io/public' } } dependencies { - classpath "com.android.tools.build:gradle:2.3.2" + classpath "com.android.tools.build:gradle:1.2.3" classpath 'org.apache.commons:commons-lang3:3.3.2' classpath 'org.robolectric:robolectric-gradle-plugin:1.1.0' classpath 'io.fabric.tools:gradle:1.+' @@ -41,9 +41,6 @@ android { versionCode 10 versionName "1.3.1" multiDexEnabled true - ndk{ - abiFilters "armeabi" - } } dexOptions { @@ -70,7 +67,7 @@ android { } debug { - resValue "string", 'opensrp_url', '"http://46.101.51.199:8080/opensrp"' + resValue "string", 'opensrp_url', '"http://192.168.1.253:8080/opensrp"' buildConfigField "int", "OPENMRS_UNIQUE_ID_INITIAL_BATCH_SIZE", '250' buildConfigField "int", "OPENMRS_UNIQUE_ID_BATCH_SIZE", '100' buildConfigField "int", "OPENMRS_UNIQUE_ID_SOURCE", '2' @@ -110,6 +107,12 @@ dependencies { transitive = true exclude group: 'com.github.bmelnychuk', module: 'atv' } + compile('org.smartregister:opensrp-client-immunization:1.1.4-SNAPSHOT@aar') { + transitive = true + } + compile('org.smartregister:opensrp-client-growth-monitoring:1.0.3-SNAPSHOT@aar') { + transitive = true + } compile('com.android.support:design:22.2.1') { exclude group: 'com.android.support', module: 'recyclerview-v7' @@ -128,8 +131,6 @@ dependencies { compile 'com.github.ybq:Android-SpinKit:1.1.0' compile 'junit:junit:4.12' - compile 'com.flurry.android:analytics:7.2.3' - testCompile('org.robolectric:robolectric:3.4.2') { exclude group: 'com.google.guava', module: 'guava' @@ -160,18 +161,6 @@ dependencies { testCompile 'org.apache.maven:maven-ant-tasks:2.1.3' } -// Local dependencies -repositories { - mavenCentral() - flatDir { - dirs 'libs' - } -} - -dependencies { - //compile (name : 'opensrp-facial-recognition-debug', ext:'aar') -} - //Testing and coveralls coveralls { diff --git a/opensrp-bidan/fabric.properties b/opensrp-bidan/fabric.properties deleted file mode 100644 index d394572..0000000 --- a/opensrp-bidan/fabric.properties +++ /dev/null @@ -1,3 +0,0 @@ -#Contains API Secret used to validate your application. Commit to internal source control; avoid making secret public. -#Fri Nov 03 18:07:06 WITA 2017 -apiSecret=a411e97a2937382dd7eb3ff686a12a98b564f6d953cca4f86ab555bfd14790d6 diff --git a/opensrp-bidan/fabric.properties.template b/opensrp-bidan/fabric.properties.template new file mode 100644 index 0000000..a1fc397 --- /dev/null +++ b/opensrp-bidan/fabric.properties.template @@ -0,0 +1,5 @@ +# This is a sample of how the fabric.properties file looks like +# The fabric.properties file should automatically be generated by +# the Fabric plugin on Android Studio. Login to the Fabric console +# online to obtain the apiSecret, if plugin is not available +apiSecret=[Replace with Fabric account API secret] diff --git a/opensrp-bidan/libs/commons-validator-1.6.jar b/opensrp-bidan/libs/commons-validator-1.6.jar new file mode 100644 index 0000000000000000000000000000000000000000..c5526e9394a38e67d9853d8359d9ba16340a8fd7 GIT binary patch literal 186077 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

b0>rN+f8XZ%dR8%05( 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%0D~%lfC)lfrv}$iR5BRS# z)WE+joADGDue!emR^^c~;3`iTn7xEx+1?&nQaY;HSZgDTCjQvu@>yC z@mEKj(29mY&{0Wff+x+mt+qMd%3A^;uWKs(rvof#Ddloalq}cQlUVgaV^{3YQbzbJ zf>8G{r!-8tMVs?_zb05E^oVII6}clTV}8%0idjC$;4Q?s%54C(N_J<`HJ5a5g86{~gNYMLrg6AU8#t`E(F1Y3+0)>o%$mq0EI8EKuOS^PrdrY3_@w%kSL z90iiushaXhh#J(g#^%R==I2x%BSLj2;srNvZ&Qa>nbXc`_tV^YYxnxn8so7aHuX0B zsmg7^97yx1FaW8^OuY65kdt<#ZsMi_g?s`bh2w8kg3hK8+P>zdxElh;$wD(z=2vOK zEKV(;OmfTF{eVJyg90^sUe&@Xx)wfbp*KW6=!Y%se-W@G$w33=t$QFvIJW9?ttwc2 zZcsBwB3ybr6q9p{zndYrX-#+OKDuZt-3@9c7SUZ({Ww^t~P zB-P<`3hUiA!|{<4l2jNEtOBZGYtK`q-0lm!JAdurF!Sn4>h{ZXDf(u4OerET}6 zaV6zrHA1WOd^@tbBaFrHiMZH6&V{&BSPx-{ExeqK5D?^!!-3h)9ZzOPkJo?@Cb3Ja ztVQVs-S-lM?gD_k_;qzCpT$FXopV!Zlgq`T|R#)nkw8%*XZ_VwldhZnxhoiv~BYAH&*ADb8 zG$hpB9s*Nh3*yNPL#S+Y&k4s@VtV7!jI<`KU_aZ=P%pXLwAcxv$39v55h7zH_ibv^ zpIixOs#Kx&e-&Q!y>a9Rc^v69CP0MqdkufN!Gh}Y#))jw)f#US(YgK;^i&KeOC_KXR%Fyv%m^dyI z$YlP$Es#~4TM~B%;UU6H@bPrXl2N8_jCj%_9((FP!D3hKL+M2F6D#qk?SnNB9YcF% z$zkg&bsmw+3B&oT1kDF72utE7Y!+2BLn8c`f3%9by|Q54A+cbmj0w`zy@k;sVnKKH z_+uaHZ4wzAYP|8%T~-_ulV3PPdk%6H-;CO<5zU#@Jp&W9Uf51JII?ofG-x0!_QrH8 zj81sb7u#B=c%_KCqy8$6BYH0rCA&h)P8)AqBeD+u`ZqY{KMVi=`Xw;?nQND;W54A8 z5aJPk*7Cgn<6PU`)y2}z)R|t`(8kox#L(&ghGzdAR#d4rX^$<6@-5r(72Zi!dapQF z)KHkjh20!FcU?eBXo-d1Y?;1LnA@;v(=AV7j7QS#Hv zfsIZwMbI^fNVqj&#}?ZumnoDq(UIzT{p@``>0SSNluh3S0 zo1@)im{NT>gs}n|dQhU-gxh$5vS6eN-`)7|%)Nc7>l2sT$?$tRCPqeH&y*vTz4Em} zOR*7@w>-5FY1QPru;+T&e@73xxKC`qqz4JJx>Xz4lk1ndHIify0?+8%B$6MU$4@d|>l}WdVN|z~_K< z8%x|u;WI(C+EnRj|EjLVBt<(dmX^0-Jsl+FTS=oYMlKsOvAT#hJ}?5+YTpcOW9Jk_ zc@3R2EW7$f82sM4BXUnz!rgk4Qf(};uq2;nQjBGGjW8g;j>S&7^q@GeV5cAqPA$_Y zDq4Rs)jD+sZElob*g845$gASSi^<=1uiGzDRmyB^FH>E6p?XQbbPoyHk!J-`+=jOn zy|#^#pUt#*Yw2a)T)*MN+goCC%hMmyyEq2kG&lEct+ZWSz*b~O3xffU!j@aYFr~?* z$PccAK}N;24}7xWV45N%HwH@DyL!~{U~IV^DKSdjeL?mE^pKcl%CMdEF-g($P<6&K zD5*HbCg20wh3eJ`)&BmKZ`Wb|g{pHsv-KblPnx_FXeD1t`f1fT@^0?U74Ofd0ojgL z9f1dmL8Nzf)IjkbKZ#!J68n9le6^_Mb=G;u9r}Aq^jj6cb|pa12E2dXXi?m{jO};( zY^<(FsGQq;S+?01u`kq9yjdtOi`YPw7_n|%u_p>)Ew*aG2-O-NVvP=`9COJ85rq-H zWLNQ8h)*GioCD1g@B=))~VB*1w>xBR4Hm`80M zB;C;IG_b`oR6X5uBR*snjW;EJSQJ08^(|F=r72KFSH5<%=hcf0Ix z012OnD(v!;FPP|Nfy=O4vKV#H#f9#FY&rk=&i~i10f6d;wk}t{PA!Z zTbo##Te{FoDoe`!znJ7g)otZ}qsY`r3$=YPARtI3L`wM!t!XKa$FT*YGzI^p|Djfj z#?2&~Y~1$Elpi;L3B50!Msv;oX=3gP&%fsSqUJk?$?#!5CG_$?a!`6emw2`U-<#9=&Qopj?KTKtqteLVC zB*^uvl&)I3Mi}y(c6>$2ES&}eF2x!J2esg7rbjH(j>c8Ww=(M#!zYbhnauY^=+X|( zk?Hv`ve5UKu9BJZ=IV)O4=|<=wk0sG#znSX$S_|P-%vqG4o+a8#T4poN*gR2q_*=! z@*IaJDtTfdb6sai9f6u=;oW?!dfU0l z=BMJSo{^8^^@NqCkzgLZ1f50ySlT1e>#88~MUWR;o~x0XCm|0fRxoGW>P*tvbK1?0 zFuG*)$f?Oto3|w85$;>QJ!PmN*%Fi@79RX*Q@peI5b4;3?w>&CAyzL`L045xMuyiI zN@?CvkeE3{?5p68CfojNry7Ph#(}ENZuhrioR*&5`Y*EbOc;&u`*%FdP8JYsI+V)+ z5Ce)0;WWb|7*ZMP2tV#&g$>{(XXKWGg8%5BcbL0Oy!k7|8rUe}NGKbQg)j6PkQkYH z-hR}Q-vH6i53@9HC@{oDKgD!8JI*aI%UcTiP+qrq{Rh^?rB=5sDg`BD@KX1`xaETy zV7RYQ2Nd_nqoSDfMB^p2V-XtHB$3QoQ#fYjnJVU`Nc+h^;W~xBK8s80qHc;i;Jl`w z^D1W(15gk>7r{#xiaK^@bp_lr^iWxf%kJpQihXOlbSNX&#=>|N93!eG2XO5b7#|6dJe_Dx=)k;CD6l;=UaA(fx2v*)gyWv?-f`Jw+lVyi4BEW_>}H zJPzmrci(V>iRR#@f>G-zI2wXNby>dlj&E^3Af$tMgtmm|!*LSukp%3ne50d=?^&XF z<~ngZP~n`lkJQE$y9jqRKedduKkxf{5Io!6X5WG}-bEY#l=2yX#V8;aeXFsXm1wu$l-Y!cu3#<9*OW1dN{yB-k1isY4?C!O*<634juNTdwBD_vqXS1I(T z)`;COK2{^f-9qw_qN$IrL%sTcYl_3~7=wF+>ApmH#Hfa$<+$P?FZTM1Vr)H*FpEr$ z7VaXR+K5oypk3x(O4>%p?0omyF7yi_M+QC&5Y~uM6G<=|>JpEWSDc%?LKYLyL0J+l zv{2B6j~c%vh{VSFHq29O`NhJ$7SE*VXXz&vydH-;h}IfMwuwwrA4oz(D*rn?=ASRT zf4vHe7ujwYey&0>NB{uA|GhAFGBvSu5jJ!(`M=Vbgz-Pc@qfUy%!ZJ;_j#n0tk!On z(zx7|n{x{q!CDZtTl14oaWcDY5QzcK}cjQ&VVbkdh5DVA{NXn`r2e4{) zXwhsmY7D{l9Vd`a z0OZbLHinaDgHtulL&2eE*!Iv9@kZGCoiQo&z{Ru{n(d5)VgB6^&LZ9N2ER4tNF?g*v zhh;8=7m_H==i0k%_f&f%V)Jkh-#P3FG*NUXhN7+=zDxUr+6?nSb>HiaKviiUrvqy+ zyi%YudUyx@T=E?oG$to`du23;p8D#}4Hnq?!b;63oPJ&7*Jj!EMhV=h=gX<}g=^y1 z7qd2Zup`!dRPUR=%6hy6_$e#D1e|tGf20Thq4vmAjX7;j;NgE~n6p^}_+y(1apM<@QJZRAgI18^vbk=@Sm`Ksro*m9CH7@`rMtRmx{j9p7Oqe;`mE zE}HmvXg~tTCkut2RzbpoP(lxSj6gM}RSp|}(TwbHxjEENBj-0$pGT8pbqR`f>yiy` zg2vVb8~O2I1WZ3~rl;NYB46TR5blcc=zd>n#|QxuiL%Fkjyl!wGYHRnWBQ) zQi~cGxy0x~!chL!wgBHv{fGK}W#qLK5Xc>tez^2N{y+cJ{?8ElzvJmpO+Z5YBNCEb zDiV_9|93q7Kfv$*9ZZ$Mm|tkdR$L8d-R@5rB6=ru!iVKqV)U7C7~eCnyl0BvCib=W zWp^CG_yn30$1E)JniBydAA}2vu_r^s!o84gufCO#28z7CKK(s?yem;N_u<;{s_#{9 ze!Bg3Of#NO_q^ig>)Tw_ox1-pTzmlC>nV+VJRLsuakt&q^l)c`%6mF9?1P8%FQ9WM ze(wU=75w`wr(bXESz`<{vHZ%Zou6Zajv=i!qM z93?hWw){Z*t8yZ$G zt83T`@)bSo<;_(o>;?VG683_3wF`Sey?XSJ4S&?`rXTUz~{^uj61keY#NO%`xf6AUKt~;@R;YcBt zyP$vJ_bn7Ci@)i}7B-Z9PcyblxSsraL4r5g=t2K(n4|lL*Vu!h3M`g z{o?SWku3mJ3+@}+h0|{iyTow!^S|A@M0S_ymxl3#cairGz%EhU8T&(EmzeH={%06Z zY!@078IB+AN7!El&xJ@*KpElqF@6;Nzu@?BerWy7Fk1BM&;H}Xl4KSrd^miVd<4x% z&GZ%ki#HaOP^5l2e^P&ae_?+ge>{J#Jz-eqUMI|F4-Y~eD~jSy0#)-Lhdi?MAHa%{ zt`+^+A(E6(4!Bl~A65SntQh%P!`}fS`OnJ^pNsLM>%WDWBVEh;lSBF_psaA-7(dGX zX_z_kwVJ;nq>t*Ku(&D4kGB6Dwu5x73zxyW2KtLa`Y541aJLvg>i#X*4)V2@zaONJ z8Y&IHit(fGe}qXRUCa3sK!PZs%y7Dxdy4*Xm^AXWs=qcQhzcqQFNwLQ=|6^rU_c#U z14!3ia2bMY9JodFJyCxiECc}Mf)AoyPs0aMuIu3zG55m$mT~uZ{=3olJpQ|}_q6`a zkRV#9A1s6bdJlU>f)c==_q24;w(fCWk|#@74X?Awks8=Dh*b>os^N z>U9@96!Y5L{~Gcr-7h=*$lNarc@*p)8h+&JAA&qe_J<7z(L*ueFK@0DhLK6WM&K@> z{zl>Le)v^Nfc73saahbsss*Ek?HzJFGHL^Q16~7a15N{G1Az;Y3ziF-3$6=_3$_ND z2&xDs7>Nzp6vY&|6p0Ph6je9eHQY7gGW;@vHvHSLkd?$c)Du*Dl=kqAVHzvm7UmY> z7Qq&r7OocR7Rh%6>!@D{F5Yk>-J#rJ+#!>pJfb`zCxt&pj13d*A?>~2W3b|A!4;zr zLlYwr!!^RE!KXo{c|(IvgGYl(gTwNkYyvspE7EUNrLSn&5y)1AwMhD3F_t4RT2MZt z@O;Jd4rjEYpg;yjAxc!hgK+=kyq z;DqBuB!wqMsE4aZOovZLaD{V4)Q8tcIEOn&oQI!BP={+Hmtwe~xuLjWxFNftyP>*a zULjqfU7=iITp?efU!h)M(jn2I(V@^`&>_>I)1lH~mLQd&m7tVhlpvR&m!Otl%Af|5 z`6DA}-~oF$!%4&H!_&j$5r*M>$d(v`D8Z!uqzEdw&mQ%#XoNfRF2*2gKSn=(Fgbz_ z9q1s zeS|D>7{&|A6Dfik?zcxj{5Xs`EE_=plZ2B7$6L}JcACK$;UbNtT zu|qgd=CEswFh9iY-ZgTV%#$>XFMNpnX#jSO8pik(0=vcx13W#$_+p39UXbAg(P4y7 zRq#BBEX4~WoFFEQ;^`NhATA8;i5W(Z{`wg)J}gTXiXw|6iz!Pmgfv7S3J84@O8J8H zB!?hH=p%#?J_tMn*PbY>Yp)CDw?_b>kCjCUBY9Cnj6+^oo(^E8NUw?rc8DzH3kO^~ zCXDK7308{ys)2BT$Wp(E!{=kd=$>w2mPr3#f8>xMiWgQmUrZR~(=^Ny`Be>J2pOV! z5r#L%gwZ~o!*-Egb>XsjuRw$-WQg*G2kssdM*Xw}+eLoWLij<3s9&Vv*D+!APmeHJ zq*plv0VIs#g&9sC^GfkF4wFTGRYhn+!l+&Z;iWOJG*8E{e{a$OHiY!*1(zjw#erK! zzY;y=!NLG9T<{^Z*J=0=%4y|KytCb^6)okSpb(5E9^*DLYE{fNwh8Ib!3Ph+7h9L@;g*H`pA4Nd&Vy* zR``)USiXua#F52-i%2U&v_8glT8I={5W|-=D{V9!!iyLyceFru9H|_h9IYHG1RG5gjR(yYjTTJ-D;AKmtKAo^HMKo7h~XMkDUULcw%1A-({o4FeR(Zq5Cdf-Hw0=8rKe9`x1{`&$4VTGpc5n#Q^=MPZC$y1CtS+D!I!pwsOR1Z7-oCAts!px#2nYQ1+=CJ(ay17Pn2(MB-=tiUo=ajqIN6@kE<-0{k zLI`;kyZJ_*33=taWk<%a@))F$U=dgZ^4%mbfoM!-DKuCa7J))H4Ge~r_THamq=Jwx z1x^t?&ZI$T4>%$`0+12jF>^C-!m^Y{2#oMC1*60A2tz4hhJ>M{uzIYa zSok^CPz1aXYbXZ3g*6lf7mjXbe&YRyyn2!up=Wqv9HD1?;vXqxc;Xl-WqcAJ5hZ*< zffZtfCBS*2-I6L0u)D{=qc7PO3*G+ z#?L8wla;pvila`<6ptAt=oiuBc@@0@Qir%E<^#Jpz6BETX z#$LKbym*EPq;SeJo0z9z1$*{yPUQ+`NB@bb#)j7o z9p?4Ge5O(muh>M=U?WYKMSFfSFSRR4w&17NfH>Orp))`2FnP@S@A+@>B|bwzzrHY&;jt)8;^$Nv zY=3g>Gj1aF`#4w7DBoVBhtDBo`YZ5qFD6K>^YLyFUVOY}MDrTx{>`ajHXw-G$a_W( z=gz|83rnb(rZcxGX!vZ5FhqIzN@ma>`hxSL1V2-)N~XWIM4j{JI;>owYk~2WjAz>m z+Qy2>;c!Fu}dTh%`3cA4>Y$8@K>bDZ?~N~M{kEw{q* zI^2>=@@OGu`cB+_G4t;&83+5!7A8I?2@dmA{vUd2!@$BhN% zY}Sp8|4UmGfr-aV+rOumL%9ZfS)cAGwj!{y}bAa7UhpI_Bkybfn2M-9(Eq>Q#`J? z0#4Pmo1p27^z7575^e7>x@PF;{(Id`Ym{9zxntx0T69xvB0g^1FmEam29vk%0NI^Z zm~t#9US@(AatEY`vL|S2|Nh7RT+(5Zg2R;~&;M=4nM`s;zHz{c#qe{-7}B+EI0Vp>+7xZ_TQlY4$~HI4*cG)*NJY$JoW1ZT@=-OcYSQ>fI1#w z2jz(KJ3mi*xXkx5-K*RWPe@OgQ}s;0Rl8E1I(>A9W>K~JjZQY8 z%RJ49bmOY_pxRB+dGn^82n@ZPxa@-3x21@xO}@7OUR8D*+G5e+3*-S2_}b07KGTbm z^u+bXDPAF8ob+7XWCVr&4kQT?eXuwb*;YHm|JYFZ`J?w+;C3Q;h-_jg;q$x1P?Bdc zknAKof!BTF_Vf-Hlb^VPvM!Cfr`VVd$@m8v*cEHN_2b)z1U<56p$FqbUaOzguVCOP zHW;U#EIxhpsZyksciP&zM?{aFTceV)$cU#y{m;{=OW6>VTZ2T9Nzkka5tjcf{OaTA zzc^oUl5#?>^V|OS^xHtLKy&fJ*P*pq(CYJA!QDwV*WXAD_(Qo_BediT6}gV)OZT~7 z5rvYw@=&=ydtxZ^0&Tf7NL)~g3%0Q6n zW1~%~cYKqpNveaqk{px1|5dS=+FSEZlGn8jJh9|u-4K<0ZO&?E;lVGs7)fIi`mWkE zM+Un5??VI`i$j-+cBVFHrYhuI^S@%X!dCeV;~4wm1oRu}Q7qPH)lM_Y9KdImPMzGd z<_{Ux0!C^oehL04;)Ockw7ewn7)VgP28k$rWuywy;afH$5cQX;@58Bf!5^oxxd+Z) z4ao%R`co;RcP$@J`PMQw)mA@#>*!Ye>ro}(l+>BoVKDj4Fy_aoE|GzT7;IL)UTLR~ z!;u`}l9Q_E{xOFnDRVlvuFuduMRF)=$5z%|!g5!qzj}%)prM z(Dc8Db)Bd?pId$aqq2_KKlU5f8l^EgvaJ-+{W#Bo z=UGqN?=`1IUVZG#=!%8hjrv7WIFTpOg~+L@L_nVa+QrDJ-2}d4%?cqwCY87C?xy2) zMR}>jEsvAldY9fXmZNMEI)va7UmAoFLHgqaNKCUbSn3$SYyL_`I zNKB88aSQg_7Kf&{p~bl{R7r$(M+5BAXF}JZz+yjnw9pCh52d2DV}zl)>2vNuomUOMtUsot~h5qY9mLes)t3LfajENU1bc|Z6g0~^1HTt-21JTiyK>5p`_xH zU+1!RBc5rX+n^K?lr;$YXw#fQyt4V{)0;pd?k;1`1-y+=wHVF94U*it4feus?O!}@ zyQAg16d}IR;*COO=HT0Gb(3$rjlUBN%FNUbs)Q_>R$SFx>od4XB^_~d&wP*VKtlOU zJ&|4;)%x7iWmBXo{FPWDtU6j@ygNeTeNv!jAs2D}{fwA!ydvaIuj75p;IcD(?##6gs)x(m+0Ywe#LnK*Yr_M&Q#9j*$qgb zGGH2;sI3#{@aIWw2v~Y^XUtl7Y8!tqpdy#o%2S|c*6iHn$fX4BLM`VjcVDaZAN+gQ zrk|5-IuT9~y3{jOi5s6F7f-K0FE1#kqJ}jNKk-(QPK&&hRr@);Y>pMTBbQJ9;wBDh z|&sT|9nNe@qHkB02`O+H>&b+SB>EzQy5H8c1p|{~Y@* z4qJgln$v0aX$th%Ke*Ivw?)~b`m%yS4eI4>DO{ui8g3n%7azVa_P%$wprPUY8JyY0 zf39*DFPT$0yu)Y}H2uC_x4p^{_rD%&ad!86i^1WLGa|8{1GpV7@~xAqG2B8oQ3ZDp zltwh&vtJ^G=|4%Q+xD$iyfm9a0$S|52FKs$d-2Y9PKng$^O^`_D`c~p8jAx&`Sq)2 z7H|IhW$h%j9o%EQC-mU>Rg3j7BDXlZbuYaWhp5tVI!{&MuSt~ZpQ1|@=|8)Hw|}J8 z?Af%T>Dxrdq5~11H*8I-W;Ciw@ST<(!t#TI;#;+Hse9OWTZ7nlGpxZmTC?Dhe>j?5 zM|;QZ!2cB9s0z!Df^p3Gz{8AFBn{5G6XY0gO-%0 z_IUaFC5<)R4<|zB3cqq!ICWdx6hFQ7figtc_h#r&z<~REy;9-}%C{^Z+!xLK>w~Ai zzGEtEU1^c|tR41IBf|U-dck+QKKww|83<_HY(Zm)_Cp2_j;0Ao*>t2XT>>-w%o3uWx%mT$vHE#foHK357V zu=&jIn(tQ6fQ$~FXp=H&Gj|Zi31Kx|>EY7d@Bg~RN7P2Mjf=nh%m_t)ZVUQvr;5!d z6;9c=@*LV0*tp%QDdM_Y2>QC;qF&N)9b7E=M#SZ>*wQXo!VhE0+S*7%o>^d!dFFgw z^>iUW6W7?~bYuGRx}#mFEB{5OX{emmK7-WRK9F)hAbuT2$Hi7TX(2zI>%P8SZA5Wo za?G!L`1h?Y_W}~x<;Q!hZ|K})hqhA*9Ar3TQ_p4`(Ya%c&Ogv~ueb~{gBg|1l}InY zRT_PB_~y)qx;--HU2#WJZ+vxS-RZ_UK43(?RCHX&xq4diHySvgG4^G7KC|ej=qBaJo8{-=*6rAzh&@=T6ZpNk}GmPxyj+xj3pHOKDP z7gmEcdmoTERi|~$XLauj*9!J^aB7~d(N7LmU&q|cx)!a)*wLWt4%b|BUe;7)ZH`^- zu*mcR3`3eSY*DXtjE~yQHF~ulh>;n)A#IwiTnfW;p4#73>d$khQivWe^QL%OF?>@3 zSQqC?um!6G5-NpMzME!#M^0lWluheu6TXL@+^m{&Dc^H%SsEv$zV)y8xCW`M{s@frPRl!UG{e7$>G0w%}upQJYAgP(jD#ZN+xUg}M0jcNK95^*qN2MUcc)Ok~RMC5;?R;@*C@o&r6` zg}|wm;8heuoA(pBTz0%M?{OPwN`LklWjjCjyBwaVr*ny30yiWaFwe?4fnSqa2 z^|@~&xwl|O)9HR++`bu!IM3Bd&LGpMbbqbFy&h!oVaV&ujJ5gtVGr;7`?7&dJX{i6 z5l3qQ)VpQz50l2Kx
HSNEO43D2l5p<*Yb~<2OR8!Y_`QQoFS*vj~;t4gpiY#QT zjQ*t~)NcN?vjVAHa(7*_Dj~-!qd6_8@cjf&9Q!dUoBOiC)A#S3x6pZ|mZWGtBy=-N z&cY@BkY8haCD^13?ZR&DD+&+Q?CV60?xjX1nj`{r&Ps#LPmMlt?lR{ z#{mYWhcX9^cW?EhemV3BRtmYl3*@p3DrW0UP~u$AlmAtx-^aakM52;m0`=W>V@nV* zsSr_1``MVhs8Jrrn9)Hof4f1a$)pg*M5JEf;mkjbU|wZs1`n)n=?{l}0C zkApP9Y}R~IZ_{921dp22`cqp>(MrQoi=lYVT>MId;LlbXGfhyxE2uu98xpJswjWBV zL46wmK_SM*q^WBt(J1R_N~-dqVsi7@vA2k3@n{At}bnam|nFyCFNPJfN2YTnH`wHc#N&7 zD~(H6>&Oi^Y~Q+ajl#BaNI%fqxjU~~;(U~#0L#SKCf?@R<9qfx`2wA#mXi*T8g71O zZpAQq#w!2(a0XMWU0P{2ps@cH^Xb$5a{q6YO1n>$uI<208|87Ri4(FwXJ~!PfLB8f zhHyJs#N}JywkzpR4deb19HQQ+Q@90`UR~HsDHj}vCAAr0Q zkM{PTGC~@2Q_BV5K250VYWJaFr;hJV6AsocNx`aw{n_)jJrfTssJ~hz_S=Vn%;b+{ z@9?}`!R&Kd66Ml9=fd|tdp?<-=9un$3@q;Y+B6|R92MxAElTcdE#MPWM|kzg;e2+~ zLYUu*z&pS9&pr3Ao2Ji27qlh9<8$7b%;P>LjnF_Y%8tY-trkqvzD~hEj1~*R7n#Xa zs`@HT>E!#FZVz~^RMuKXt?ZvR?kdSFR=^j6cLG`NxK4L8qeXWVshh`kZllx3Xj|kA z(kW)C3fnE@izzSvsh!h_s)0;25I@F`OQ%Sz_0o zG+JgZ^Bvc9TU6-S-<;Z+aA{s>6DI|~4IyCTKi6rxs{Kk$skyWja}`pg2W?fQ4Z^Wa zQHolN&&MbRmyq6Z&YCZB*g7Hyvc4Y>Ohi)E@qEf)(A`OWJuYo6#^#$!={$Cf`>3oz3=! zOfI_MZH!B>78F+x(7WJoeWJL;O`ZB(mcugJ6yv(lh0Ysc!yN%xF7o3eH|am8dH{U{ERXq)2p)-bO#8$Ygc`B629r{t`v7r2AcOwZD2$7~jc!hGS%<*dF% z{g@j9SSuf=@35V~ety0qTgp=DEXsReev<$pxgK!~%+onnQvGVP^Z5-f`)rN~OZDtS zSmXBl0X=nTCD?*J_Vy!BP}DIPTRaFm60fpLxl#Vpf_>F^K9tP;(k0_4ox-cWS^Bio zKhECfyFu!Dobp6sV<=H@(ztW}rzV{@qL;(jCvVi3OO#oi{>?0i0SAv^7v^!UG+$IY z6@y`9aRjJ9xX2!_tMN_xcp-@H!0B^N06X`G_LZruoQ_@rKjUgUf>WkOXjG*_#+^x- zzUqA)4YUBfrGLKvyTeIbz_`9-dgFUUh~zZ2<-^CFBn6DPC9VjAfzhB#GWH~e56#{` z8g!;JDIoYdJKz#1Qy_?nkK__BbeisJypyVfXhXg)=&gGd4u^hY@uBPerfS8O^!dkk zWybsEe;SQX2TNOES3b<&efo|~q`(Tcc@b4#E`*G29r+oxg7QYvclccwYn)I|C66pH zT*!Z-0^RFvL^(~0ffd$`bMjF@QoN@j!$Z4wy$LJYLc#vXW$YhAFpHtP+1ReKoiF^+? zArOS!(o5nbe2(|8P1t{z_eQJ7oRejhQcJ-X{mtyU@}()6uld_4i$j%_cXFzY6 zJ0_~FhKiB2&Y-2Wa<@KS%!|<<%C5JXLDMIIrL}BVi_@wtgGhxtCsw?MK>c4ep3c(; z`mhzP=8vx9nT~zpqhN_UhMlW*zGsQfj)P*dF4Jo1QKOniQu#O_X|b8PN%(BlCBzRhh|em-NZ3N2^6@!ctg^xX?K6T6FEPo%5<>}W z0m}WAIFtToJ9cU^T;IFaWrIs_l)#QfJS2=A`4c=>v)Oo~C1JMwPygZDtabl~qw+O6 z*Gh7-vFCqiQw6&wc9i0RGPO*2p6>ICwzdZD0MmWA3PsyQi;@o@2Y`#Z@&}(4dqX}aK0z}Qj*VTzGbO#oL?N+8MrXkpwIi`N*NL? z+Tq07{XM23M0uABxsMX94%gvz!7VU@xTYZCO%CfB&${}xNdKmrCpBva` z_5#I;7tmQwFJJz3TBoD`lKyaz|EX=F8z#}WLe=0M%LBu^bz7n14gC4tl&>tO{8`BF zi()oqH7hBHZ==I#DAVFrh|gZidcA5vPX>tNIq`G!R5WwvCAd(8XDhETgFfjOMh$tj z-MBTE0j_o_WYWgv$FjZG-Dgo}Ab6!jqEmuwy6fS=equqRrS&1v(JPkIi>i~d-9UPq z;&g`cg6z7mq_Ct^GIvGPYplbur&Wc2i#ttU((5P@Hh4PbmOBcxKk9Rxaq+SLjW<)w z&t>Y;$hlx)Tx@(HBUwMx1Hvz*b+_R%m?;+IlC+8L64&@5C_I^#EtY!Fw@4aeHYom& zOgW_g_U1~IA_<>-{6Am~o34YW+3?BsH`Ovz7dM$c>j$HuBeG4w8o%DN8CsVqf7YF& zwvg}b)pHkoLgT$zvv^w5bDH)?g)uUe*rkp=j*|;UYoMj}*$o@>=}8tlhvaX$Tz7Vt zp!STMS!1t91G`2Sa5Y#q(Yrcr)+^K`liG^(fP(7~BksS;?d{fW`PYS$BJrwLqxyd) zkd^Mc)C&R!n1k%qz6&Slva>pO4!_f++`^Iya@ zV_h|=O~p40vPy-!1odeCxdwk{WDJV;T*Z@nMa@z^>pqSPU^=k4%DCE8W!x1xh7g%X zwf@&}(QwgWYakH9J!IxOS0qxgs$XYTS}?=ww?h9V7k=WhLSNhPMYvJW&;Rbr4^)L& zN3SD;zCZX!1d#bMv(tbQdGFG zQIpp6lg5%_oJDZPwmjw*qTc9e*eInB)P05Je!%>nyzUn z+&(KbIsE}t*DeZ9dX*83e~y6nk!mOwcii@i;Dd$ zbkwZ%_U=f}i-8tW%0X{71x=2HNr2~3e?E@nPp-hRyH;3Uyclo-QKWK&8i*IX>4 zsHP}O=XH8;E7+xUZt~P*^~n`>Fc!4DaiWv)@ePk$xn&m6v|ceb(0*0D)r^|M*J%k1 zC9G?2C@E>2)A5AbI5(-z67Y3i0(R_YB?F2p?!*n|2?T`QIeb!AZhw`|wc1;NPH9Mw zt8(XB1BsgEbcG+F67$&I#6BfG-cQ1o)J~zT4XVopFEQ0aRX7d#;~qQn*bm0YySz?= zs_BN3(3B%pxm!BLe~rCJ(|9ct zNGp3v&2*K$QF?hKm6*o1>H2t^ObvGFCO7HznBv}2an2T}&Vzi*{W*(L?5Ef`w+vtZ z@^m+SSi-J}a}b>sZgza{owK>5|1%h;rrxE03cKz?BZo@w8*=lS(5}K6XON!VAF1k7 z&idxI2hRHAyv71c%9A?Rc(tFWtNl#N+Z??=^2?5E{x-?qz8EgKu008q+1hKzbK3k`9b8jM4W6Kfd(uj|6TQ-_DN!%B-j?R6#5M9ca%^pXqFTjB3a_$9UUHopxgEH2B}o-@HDBE4PuFUB+I8!vCw>YQ|L)H~%eAxLq~5{b|wl&8zT_ zPpyAkr#FI|&sJErVWt0YO-ki6)Xd33&$0J?VEi+M^{j#(=!?@r0{Bp%;+?Q$(Afol z?{#6mEB?%^kE)lwrLS+8WPSnl0o~2v*-}m8e~Z=F+G*luM6gWD@j!JDa7L4dMYnw^ zX(_8m>9MWhT>Qq1n3`8Z-C(g%OtMkDK0t=+7~HF|vOA%}_^|F6Z08o}=Jx5~3vf)H zS6}Rpef7UE^ZHO{6S_X!0CV(mATbP}pM^QrKlvu4%oRyj+bD@ito^!8M3C-tv;GxF zrSHM>%7R@`z-k87EMGf}C!L_`AB&3@P|b4QnG~42G#D_M7Ua&97$9mhx0h|*+5|*> zvC^~U+ZWk+UFj#S8-4-p0$+{dPKJ^-EN6EqPp5y?u-TB9@TAS;OEwOj+pS&j30$76 zIvmD6s_jUee{^`I8BCL3lcv0lp&oN_b{brsHR8`q{+rv_^N-WtiAP?=RjYTA2_2Q*Kosm2i3XL~ZprPg5mH`n2Q}bBEs+e93BaZ&>q$Zd$fdAmnqV z*O!b4avBsa7@y|JFZ}zTi@}et;=LV@>M4`-YZv3*ptAP-_IAl}ohvg39tTvvlD@d; zW69Kt9ck9V;T`o6>h7Sv#|Aaaw>Qt*N;aP3d59PKv7Ip@%Qln2^U){cn#N-Wzi(r9 zWHv7<%ll)~Ap_SH1Kr-@W=(zy4HQBrGrXJNPTA_IG?YAOgp zAWa~7#;7dI@afl)ap~t{F|J~|W3flYvd2-PfXMlVNp_L$%^Nz90D*Vu%sRVGzzV-0rDobMwmt6Hi0<2jizR3`&hZIZ{2i*HiF#rJ3ScyS4bw&cLH&AsP%(6SuW zjVsHSHduug;w$Y3k$=ERuK$7qd>8Wf8azZic|E`$yd5b`S*yqR>vDGSv+CrCiVe4V z?F6Q$QVue=+sviH9*08qqR)#WY2pWLV)WZ1(Hv=F=?KJgSIDBV*VeI{#|X!keYNaS z1EdJ<#7>4)Ib0w>CEX<{ogZY7GG@?*LUZh-b4itdeqOZDvuM24GikimGnRj{edcnx zeWc-a)l#RWkz-VKCf_xc!*pueC!8$u79$LoBe`@TQZHSyRr`4~OP7(MYAJ^5HENlb}}CXCjQqyK<2M$||Xc9W_e z!yZ2(XYZF9Y?JeYJ?TeLsZ71IM8QFIJdn7_H!$ex)7!xx{EA*FxP5yjuT9RqdluRH z@JyHGJi9qd%-9L@1~Bw(ATd^C$FY8Ij<0Jji>HY#QU@7XX}J&&*wYG>uj!(C(x4>(z0$sOD_% z74IwEsB!vyeGig5+q39=MOs0+T%sMI3QR-FT|C=)acHYnTAo-$p3mxU(42$?bYp@m zo?mQ3nzhm3-xh<{rR-~Zh3&D_rAv<#^vv^^c;5YXyM6BPS+LKof7VM>-1(o=LWEjd zd))ohk<#Ze?s@{@`kXFkH)S&?vbAd`>{Tn86aA!_GqmwvSN#)D`jArnt1Fk&?iDxL z`k}9bdqj$xpD+13+}Gi1X%0MH>I*h~>243{|86s<=V-NQGxvMEm~y_kWaU20LAu-N zE4d_4A~f`>)b<`wCe z;nn7s;MME*%`4Y0$E)2h<+jMLxVV->K=EAsyr%{`%*$Nry5y+Dt?#KnDE14-%|wyp zj-VlBLuZlIECG%7Mb1NC`;}JH)0P$LxZgZz{tEx`kXO_Eg-^lg!7|pv(GP*2H>Bvh zP`*{n+E#^jmm$sjPFrMPIMo^*&3@ts@w$OV+Hh{$A-c$4%O4(vt|dVu`F|-LR#9IC zzH~`?^-C5P5A+r7^amCFg$~SFK%eIZp{R2&BRiOZ1d`Lyx&*g$Ua9aBkJOtI?>6X? z*3f;j?p=vj9rRXUz0_y!k4)EQ-B7<|w4~(pj+a=p?;e{Ngr@89I>Z5$^8JSUaq6X@ zurjbTsZ-+D8wc?EJqLk`)m%AyQ4i6^5%TGDx4B5~k81bjtgx94&$X0m-(Kd4V{n(( zsm2ONsMuiAn^s9qc|zTuq?)PP2@DINU&sN=aTIgg3BOtT}KkQ5YcW3BC*EWWKA`{SOMl=(iM)f=c?@ zK17H8kW}tHHr8z~Yaf-iBr76IEIqc^vv^xfpN;OD5!7nVq<>Guk=H9%DADvfNSuHk zy!&SPan9RLrZS1?4M|?2yWhr;&QT=?Uj~z)r29lfmZprI0%e=9c85k-L8j)5@BGk0 z&;1}pHi4~s$Vmf-x;N@u{&EW#^P)f3-PH5$NBj89q15xHz1u1GM!nlf z$9(3g{_|DSYu*RwOauOW8S(dIr{jDfS0{yh_T2j7+4Naz_s z2MCpn!cpafZ6O(x!+&nljKZ<;#BC`pMK^$hl2)P@Q&;jWQ&%DmlPusqsfdPL$&EHo zQ7d7ZsVf0f(T$oQahta(ep{v~ahtIzp@?ctNh^t(sb-u@aW1})>2W`IBHz>Wu%Vk7 zV`a7(n+3#f;niEX6B8DK{uI zIB`PyKv#)3UYoebFt~SO;6PCEinx>m^eH%ZBIKZ5>59CR8Ke{3H1T|JtH_%=Pu{~a z`2G<2CWeV1nU5&oLvZUv)eS3C-dJ9ul-QugA>++2CW4e^!T_V-s)=7W`b-3A&133>Acvw8K zj{LpJdqX~I$!JCqmgAxG#0lF+I7h4RHxu)w49RtKzp%mnLzqT$?Yk2jZPn-tdNtT+%JkwY8}c>NgZn8v@iTl z1lDOfw+RElOI7a_llQ-qHg$&R;03N37t{w+XHFUx3_DfyJK{W_gN}HqdX~7#9ab)@1LS| zo<}EvqzR_f`b=8@~nnc3a0GY;_MKg$|5Pmw6;F4SQs z^bg>0>&wt-NXW#ueXYQ@KzbjQeJw4MsLzm%9NblpQ zmN1W4C2Wk3c&>mKDdIfWt&gAwQrcu$0qd=(V1|uWRItNlDk@lE%M}%zuNyDv(}bLD)hFNAu5)(mIW&1ww69Br?!?^s<^h6F{+xjmKCb0ww4~Mv$mFLD)jc2 z5h|AUmL)3X_Lc!Er}maPs<`%+396d*mNlxWcCXJ=XYF2JsL(sS2B}y&yymHtJG^?S zoI1Q_sNy=jMyYB#yq2k^I=s56&N{rNsL(sThN)OOy%wpIJH7g;oI1U}QpI(8jZ@Wh zdaY7TbzVm*efR&Rl{<952M-Bn@%a1M?I?=-QbruPI}JuWNZ>-^6%Yn&DSs;UnStmq zW&3U5yI^tFc@3Kc8PuTQzrq^IFb8F@hcc`|AsuFr_Y&kC4SAgWB~&~W8dxeA^_&hg zvUsrN_UXZN_RFD`!e86pE+nWy*$z7(>De5|E7%DuxP) z7-$Q|KxJc~Ef@oB!5C-@#z0#T17zp11_9ep)i#h<5Awf(29g8ypqLS898h(B3*e~% zd6qy7dY1M9bN&0&LUZJV;*tPcfy(eganM-#p%KPF)69iT(x51~`zH|bQ1=uPh>!?} zgcKx(AVCd@Vn|p*Viyv)kVuBa-{)fiYH>rN84{k5_zekoNQ6M*@22d7TI7((hlCj< zen0{X5{ZydgTyQ(*db9530Fw`f&>aA3jgj=&~wHK?RlKgQ^*N*8=<*1LbgW8)(F|$ zA)7m7bBAp1knIw(T|&0M`_(06LxpUpkPQ{`LxpUAw^a;ei-Bx0knQiDtN_^*Ae#bY zn}A{`Aln3Fn}BSY(32}@&GOy}AwRIO?`5Hu zEEFqi%5q<5-FlEx%a_aaC%C{I$PhfZ~8 z4F|i&3*YDz2c}8TMF!o7jm{*|Qv(@bas(zz5D%GSfEfg1fRs+a>lH9Zfm{>-sen?ru=_=PfI+DSfOP;a z2bcq39e@b{ChYS+1kr8)^8%a>Fay9E0KWnl4D=90UjXb4a67;P02=^I1Td&g0HU7* z{1o7K025Q)?JHv5yW+s^c|dIf5FHJ$1i-lfGXty%Fh0Pbb~=cb2bdDzcz~$^Rs|SL zod?uT2hrmIn*&@6FqrecF2IBUgW7r^ngL*JfFl4V2UryttfWf?5K<~JBZc?m=WNQ0Mi1j1~8bn7pUD1 zqE`X72e=X78wc=k{4@6y=%+xx2l_qG5K0Kyw1k33MaSjX=8t?GE%M(3e1?0*wlE4A3z^D*&wk^aRio zKr;f(2y`XTl|b7AZ4dM@(8oX%0ZjySCeWEc8vxDAb+=y$9`@jI3?4+_kqI6K;Gu_q zzp{RHY{YfvO^AO_kAH8Af3L@N*E(>zCIW2w`1iNK&QBD5@5dN@pFuR>&ls@TiQRj; z_6&rr0~aIw`*wur`zL_F0O>hhi`cw6CU^LAi2wr82mE8YPuFrC|6JmL?n~emzS;Q^ zm^OjO6o|(KWlD&4FarprjN)EMSa5zy!QiKuI>>$pB2zo1Nw$cQWvJ3A$0h1B}xdl+pzr0@3%Y z4+i}0!!|oPL9SOImmEL^z?&6dZh#*F3`#WutOKwuzzqQN0?ZHa!vX(e5bX{yFTi>L zR{+cjFfYJhpvNHk5@2tDeF5$OSP)>r=z9TBn+Qas0{j$U5rDI~?rxay?|r!d2DOPm zG_)Bd05$=*8elGf`2YsBGeNWhz?1;109*_(n7S|6NCKdCCWxK@*c@PJ&dmUWYbU;7 z-W{N}0f=S<7#m<2fb#)n0T|4?1JpJE(Ukye0Bj9#J-|EwgL!v=+G`-%9$-#@bpS30 zm;+!i?+#FV4MZOU><+Lu!0iAF01W2s2Wks~Xd-}70hRzb7hqH291^M z9*vdF8I9G@Pqi6k#Ihns>awEzcul2|yy~2O%9@-cIWsXi$+u$kAID+Z0@+yg!qT)> zeR=9L(w5~#i5NOcrFjiG>T-5s;D2Yt%9FmqwE6q6>c!(|t;X0iX0*dAit1JLl;Y#S zV_Hv11zlfhKd&vPfTBI8Aiq85tDKLRoPw{|n53WBn5@6pm~?>Hn0%mE`A4{jl=vqR zDX9n%(#Z`RiEOs$i5#{piCnfwi9EIhG@gs9G`@>$G=YmPsz~*_s_6B&s(AIuswDMV zsxo0{%w>PjR z`q*OA+%8tAK5AGg!nA2sk($5AnyNaKA~#-&knU^XOpLT8q9Iu7P!(>tElRMtQIT4B zo;6iNAW8m~H%xlWjVUqh5RHa^DO)wDp{EGb_PvVKVszG29f1_N6)#MB){QN(>=1`W zZ>d_fyJ52^!FE7JYDqq8sv%vH+>SR~dc}<;vF#9(#&@Y$^-<$=5vEKov z6uA>`1X9<^f-1t%c($;EI|Eiw>v<8{a=Jpux1&ciaPHX3#7(VXz@-nkFhDNUz-0uu z=*a^YB;cX}xxj$SEO4oST-KGA(wFAG6r1iAQxKTvIJaKpe)aUi#y~3 zjb#P696>IOz~u&VfwDXVE~vo88yZUwa3KUPmsG%I0J!i&SrALGTojb)v%O(fC@a&d z5jz>#+G3YJY2nI9gJbIqDFp-#ThljX3I%sNXxfQ5`w*dsBaO^j`JZv7c!D z+0lTi%(0(v{l!tCYQ(Xhc>VR!w(7{SpHThX(MQ#1Cw^k}kB;Y5WlsD=*3jG5rW)an z-G9=9JEi%`oZP(uCPB!g0GU`JlQ1y3@8|?wYFsCMyN&7~_wX;YM_d(zObU=G0+^1c z8WB5k?J@o^U2}9zh^$d~Og18}{B0UDg%TzCO?^|v)w$UW*}w`(S;llSM}-;VkdEtM^d30~=T zzS_Gudb#`jp#S+R@WUOOgW&1C^zadss7x+bi>Pqc&;t21UN+wi3Xxh0J9f6h)WXjE zc7c}q%+-wjqRg)-ekhrZnUiwI=5FV|YM-ptn#cU%gzixJ&-+mR>m4eaVW< zd6K%<3fX{}QSB>tPE4=P#nxN(!p^MBbj#eY$?}4ioUS~+6L=O+)f3*no#@ye<32ub zYpmU#==8rK_>B7pZ9qzP$YP)_7#G(_cHqRAl!2I*g0YW@Z1tnbU>_5$$@6n#Kk`r` z=4P5ucwA3ijJ=QKbiP&;B9!q+l+hZ3DMK?31Gmt@FpQYk{K*3Mo@gxz8*-g-*@RYY z?I0hv-UuEcjL3N^&{m9FVF{+F`l*7Y-ut2hzPAx&;EIUeoQzlfLh4Sauq?G$WO$MB zW3@&uKaW;3H2WJS52lN82=Q++@m}9Vdr3_-!<@3uLFHMGQqP=3SoKKIocEg0?Pwgn z(VQr%eRQl&tfxHX3ENkWd#dzf)9a-LGCY3zh zEb&Q=Rfrgy0Dwy7|qgP*(Kt5Wzf9%)sM5%;MY;r9kE)mZ<5iT z94S)#d5~Z&osL}qd#s5*H1!K+g*Z*=7>lW7{-c#Ottw;!h1%#E<#iudiLHG&Q7Reo z`)_+b!UesasrsUE9nFV77tF`THVnzAMHMJpb{@N>9_u@T- zkEGbXQVuJGHHvk!vyorSR{2vczTCA7|N6y;=&6?E6fOugAKEz;bPz6+TqUpR*;ovEC(8C?EdVoTC4`GN zNid9U{{EVr&LcyT~PRdIWf`Z(ii@Pdw1VdmXM@ z`Cd%&9oPQ*z2~8lNWZ7fxg_QtmnkSn!weJZ1dyVDcnx*BGPI1{_Y`k^!w*A?mv%yc3@qdj}OJ7O~Fym6+EEZhs%kn3eii+i!<69 zxtZB9n%LXg+S@tPyBXP7ni{#-JN-8n2YXuv2Pb<6Gba~IGiMbyg)td=X*wx6CCL)i z6FEAWu}$UYLsV)GGIGjHY${A_)hzXOEH#P_mnce1EKF?MG&1xw@%#J(u~85 z^e3{_a^n+YV-vJr>19TTWToha7&oNpXoh5EWEr|>5FbEO`scv^b4t)sLEz@Wv;~hI zJg@}I1^th=92WU+ZiFsmYv%E9w;WDal~b8k#N@A}meP6LJ6u@wEo@PkSn-XhqCn25 z%afUES&5bQf(edK6zp=ix;M1T&CZ+sa>S{(2zlEt$)@otBN46Sw3^t!{)5i{GIBwF{+Ge*?54LNW zr6K={+GLy9bnMl#9v=7O)iNzsboEfcdn?tF<-*q+II`)pv3^pxaxl_?6iR)q_gZm@ zm(9PuKF)OyW75$!jXWqJnf1jzFBPICdGCxIu^s+a^7~4tIn0)JXG-#E<-(gJ7#RaI za%NJ~Y}G;BiDU>2Ygwfl#{MKp$&u)%!qBsboTlZ_M7RKBEH`;DVV-W3tT)b z`26XZP=hmePm+LDZ(ut~q?Y?auvuwcU%$-~VE}VIc(}n~*pIwTgFCd@uFp6~;9)!4 zXWyUt;(}~7*t`2^LTPsXWH{$F1XeP!ooQ;)&QSx+B4 zVEUgv--sHynEl6RoPT=_B&zB`i)Ha+RJIQ-hKoqah^SaB3LnfzJ5uLIiM+N%XW}A~ z3n~>Awx~_#(fMj!tFM8DPPAcg65w$lLuBzGt|ZZe4t-ujZam8)N-{%&p9Uajfzip{JQ(OU4Q zMd~eOq5D1d<${2k>4Wrrr^BY#?aR$Lv$>Bl<%>zkUk~YHGUgNZTi5H}kR?_iq*2Wg zES1g&mNqQmkS@EWJ}Ow6p@vs3J|noPNWZk{Ofh)&c&_qgj2Fjr>Z733%A>=OGyP8n z)$a<@I=2VKcfR_vM8vtslnhItE3*F{!Qw?W`xb8OmWnzhic^|VVIZuIYr0X zLwVQW%Y(PO2G4A_Bg9&>e>u=mY;lQ2%NZVMQkQ@Eb=E>qQ{EQy8=hsO-1izfemh@H`)phC1U7GeeNm6H zCRCm2MKysTB5&lw$**IT$QnK*a(Xb(C_yYJofRB|aRp}$hNC2eU8 z>atZ4bPrxmGfSyOJIkK&s%)({CP^i>;D;S;uFlOoB&SVOUTx4J)I!OhlBhLGxD<_R zM3Knvm!O3Sq@EcKT)=`Z`6@d2Mjs!{Z%g(gly&q z4?eef5^a&WPuv9v!RIrc#Rt7Y{p5&AZTe*-4b}&@p(~TnGT1^}=J_tn)z}XG7qwH- z>lhUMjMO%1!D-pTAqt5LQZAW}@3UKFWpgJjUzsDE>%8jNVdrITPfVHuB4%!$v`5Oq z{BdyDPYc4C??Q%3bf-QD(fha2-=h{NnIR>wB_LGyz9chV7}(KiiSamKrZd|r63ob* z2~M)Fo6Yc-KO}dxp=2>y9g_|M~o8F>2~pCL^u2j@aOWDg#2{ZGdWr++^UV*HO! z2nNjmw)FO)_O1O=Kkl8Lf1etPB5xv{zp3WF89ly^cs+N6IrU*p4%PT~DW3Nv3%pY` zjYs}#=N;}6%IE~GpE*!9!!#QPTQAQ&JEJ{swK~^cnDZzXt5s96D2*m^4VwiUY}#nk zwvR2J+^d9jsz*nkGQ$(&4y4Qvi|$}@zLZDEeLL05lOAa8 zXaCbiKg=eX#$=mkZ8r>Ymq`G{NmC+`Te#;^YZuF6XHV`6#@aii)A_Z9!!Ua7$zKyK zOa5q=^R2O$Bx6WQ+Ox0Ajz|)*(J)x(&qPPqloRE#eCOBODL?38qnDEJzpk-#PL35T zB)v+(7W3o6q5C*OFqCs-`j!JB1!dfDJu19~ahURIM(gV-?Q0A;k%;Z9USIF39m_dztH~(Z&sy-)@h-0$)`h zZLEm?ad2^UbrHZt8Q9p6#y3dIjHJkoaQ5NFlGr}(%aqur%No^Lyy2}rrzictwnU{-l^=+Mx2`4r^y0$OK=Gu|B zi{)L{N!$Le*PFFL)G5pw#J#}}uX@F7o;C({wu@MiM%Xs6K<4 z?v>!xV(oUQE-;;>XTp+)N_0y5+VBCFuyc7N+vJ}P37oB;Fc%}S61u*0q(=@ZvT<)1 zauuC0)v0yV6tk8dT&^#i9G>{p1O}FC#p#WFH;c(MoEtgBLXql%d6pIMgs^=JPZJZ2 z?R{ZbjGa#(@Z~jIzKFD^Y|;K#wSFz^(fEZDU6c=5arCAw4Dq#I^;Hdx@u=`-(H6xS zqDj zn-0o`s9z}NIR(Cvu+ZMW(=9U2=v#M>j@8oyKSLd@9#+F!%AkB&yE;G35;dr|J>O>6 zq@7g$%9GaC)J5N?RZb?FBEELAsX4eQ;+jW*I|V;{qB7Lqld}ac!$ovNP3rb1y?p6f zZ=Y?msR*BIL^^w?fLTQ2;bPL{(n#&(V_tRJ&IXaX&ovia6b$)S7#Y#OslSj%V2S1k zKW2jCBKlGkZaLY=WB0(0G|Sr0c>i1`sghn>n5rJptXNaLH&->)SZaR|Cy|oH$s4x{ z>Bm6m>tiQ4*SU>6<0Z-mu6mvYrGB4vTlcvszDw($i;*&gL~~Q%O>x0w%~!YrgXXng zoj_l$j^ zdOPdV90nu)wkZ|C7Wp(oirA%cauV6W5&124G*hHuXmYX+9h-dbaYCo7rI-BfRI zKf&eddLXW7}i`DyN8qewmbak zIa(shsi57fr}`;jx69Mx8az{7N4y(BXQ`;-CES{m`Q$5$?@+DKhVhzARK-6cYV9ls z^(*i>FzBt%$q(~pvKQ6m3E(V&%R8PAbx%<1owX?}#MBn$%j!(AEUHCWIKpJOW=uat zOY#V)Du(C;hTCm5T@ao)Q!p(if#36vwY)*#X{;i0$vAgdal380iFeQM&+{qVU=27t z%T@oTJ5|&2YKvg)&e6>{Fo{QM(GpiJA#?&WkJ&|9nEeDtq-rCh)GD%S+#=E#^>O06 zV4lZil1ks1T7TPgv7DN$=`-UIJ>(-IYKSNkGeVz(b314c;<;5kR;gaB8Q9cwX@^->WPkM2& zQoLT*;7*!dmZBk>FaL$}IW^o~ui(dCxC7H<%)k-toabGKPk1+Ie9ums2bi-0iQz)_ z^Gm8UO@_tfeQe&wsn`zqLkNO4w)IzmH$xawauXrQ76ye;L zUfG)kz7_Udt3&EN|BG%$(Ub^uC}kx#P2wtc ziLaI1Vb9;V>g`e-C7^zP+SKz4bI`QNT)g4OqmTJf-*bh=ho)G`rEQ1y2f7pX3hQH$ zS=Ubve|-04J?nlqJRkE!%4}RhL;b4>*ngk$|32n*c zJ0^D?m8jEHh0`)CBvF8QZJPxczRzxv&pTMB5qXzT3;rM~;41`>Dqd z(!{BQ>`c}0w$$)@N06M57|w3V;h)i9>TacKTvZLeZwm@SLeUWRZ(Z{yZdz;AZ7uqy zR^g`B#UAR>Q#az3Z?PCvqt+Ui{?_mu`KF*uyJyl`Ua7Jyg_!@>^z7A#X#-YKSbX!r zPg5hK4@O+(3$&K)6|Xo)>x|S&P2=^aX@8ilR3FsYmh=2bS&%fh<9_R?!`F|d$DCdk z0DeqXI}|9)qeNfg&NuF5mmONTImg9HNEe-QeOY!F3 zB(Q{63yUO(9>Q_SvTp6XPu&Au6bs)Rwtv}8TMS06W??XiaCUsM~?D*I&_#45&pCn@61UQs5#xOl9$HA&8L5j?+$mso6 zT6h}y8HF_b;nZ76BgKtzG=@gOSUgi5gee0HjC37E4!%d6Ij#@=2GuS;qZ%Sm?xu-k z#Km&&TG6p{)$y)A6)-m;)R)~jRZCH?sGVpabvA$RCVsb*JvcF0Sry?UPO^>2E$N)# zBhbuxp!YD3_>sSuHQ){{#s_cu7yR?=In20|92%-l z%&R(NLV@yESQ4J1yid>D88OD-Naf&Ig2NDu@VCi&@Nu0~W>JhVtgPV#uMt#Z-uxm_ zB!9ShShaGz5_fVga!Y7?dGqJUPeSMR?nky?E1Zz-=R8s0Ot(Mx9lhUP*2x`=ka?lC z`aV@k*=#%}>E%Et^852Z@0C8A9!Y)YRL^~s*TV74z}?S$zV#QBVO*qP7@xY?Uc4{f zA5%ni8IchhAmYN$TjLn@k~{oVgxnHoKk0iY;MMVHQ*LMt-rT}RDp=qW6}qnc&tu)c z9tB6I$)oYWb>&QOF-`ja`6&30MTdoih2&jrjm@0?>&nCB$|H8uZ@?usUN>uUTPn=! ztREeSkU%h~X;ZYV zw*Xy#l>hR2)p-JU?Bg+!z~iRy9QeoB;@Rst;W97#MrfLiH)uqN(X%Js6(EorToCbM zJ#otmId6nOqt}HB*^pC2% z@6tTG@oVeO!jh4D(oV-OG^VyuLf+2*g5yg6O=5V7%g_VLR|%*QUdz8oL!&ljRPL0o z1=+R?kUFQMLO!lO4X5RaRv}5uwfp$Kha`6yxwqCsXX@yKqFmk=99b3HA(YUHGQH&B ziuseo2rjsqz3pP&(uX{(0=pwJ^7U6{>cJ9^1^T_+-^Ypyw90WRyT_pJz z!zhbP;nSF|XmI#cWn&F|tzTH=S+^g!Yu)K{ zwekGn@%z8ubo_I_``0~^>jxd>7qBPlKm6aU{rZnR^1tqg`LWgV!a`_b$FFN(NE~-T zll^iw)M7LkNa#qdj`MskKQ@}K32ZcKT|M-}bZq$Wh^HWV8T|V`%X#Y!SR*Skuq&~P zeO;ML@)Z|v_ifJ-tkLH2Tw?l<@B3CiJuF^aR~l?^EDW?THxc8kjdEYXuOH!T=wZ~( zQ#fJ}xlEjx?S6MYpv}x2W;4Q6G4t%HaZ%s!DmQGU7aeC_z+5`8p3|gm78_dN4{~TV z;J(%5RbCY7e0v*QA{ogBH|J+Fby7|gJ3Yx}( z7xZuN(dPf>D&i{t_bTGbI^ZiKw7ci+@86J0Vm@0vnNlYY+Pr%GO%jGi7dE}vMY$E* z&w-9k!7t|jTrl7%J`qnY>)iwYgv|^#l?Z!e&v~7TC3|qO^6q>SJ3x$2C02|&qGl#0 z&m*l11D<+xTM`GC&+H42{Ek!QdN2X!iJ&IdlZGLtw@>^e91Pf+=3JF`{3FlGwQap8 zmciX&j?~IrOUJ8pQM!}5VwzUmka@ZI$ch|C`5TAC(D01DU{xHuAYa=Ov8^Q0BCDie zS$3F8GB$V6s^g&dDZeAOd?NRr*ns?t+oi)A;=a#X?w}}pRk4cvZ5+|l_?$yG9DRef zr`&_h0{tCacBS-bZ`oLXsnyYynlgVs;6UAcO)9v_o!Kk@rfxxzghWN_#)?-WC~1Dk zFi;4qt8))oMXXfyb~L7W-LcbbMs(+zUP>EdSzvxc;*^j2g=RjSbYflVFadZ|0nbH9tBt?Yy=*gR>G^A{Un9rpJE!)>|^;PNG?a*H6LC z)LH$mTfEH?Z8 zemV5d9sOTl0!my@2%+~hB=8bY_cEDTAy4QHx+LYR}sti zjqd^3%k$eJg#Eg%-RX3RCADLQ?q-D}Ow;it#F&pu_k)R2dc#BZOjiWn)fdhkOOe;! zAkPj<701*5@~W3Yv69kZ!hEG1F7ZxZCa<*(>seI1D4*S#>Yh)Vg}I*8A*^1t&P;vN z@&=K5DpW&5IJmem4FTLd8b&;CejKqh&juy_20c=6TCthPprRP&K4@ zZy(Q;5S>lbcp;WBxun77DgeU}gLh7}GHD5A_;w`7Y8WDrCX>mcFg@9XnfSA}fBH-R z$Nmg)O8dac!_g1vg$L|EJkLhDG^z}J;b`Y^h_UIS4WFK0Ap8!9Vme>IZQOS}$S`QkeH~R^x_YM_r&- z#JU%k1n96?uK)c_)<1W?f88xDZa#!KgI%%z)l@q)d#Y*Dib>3ce9#8i+_q*L5$b1lK#2)B}$&R-v$UyngOHPxY@{)T*y!xSta>^m6Y0foJZ*AN6Y(* zwuYQ~Q7;!GZ^Cc|In!>{6JVS^jeGPz8pN>$X%oQ{(0lbpxU(iam`OLS)b=^)Ta zShwEHBjX3h{j=ccGJP~HopvE(*J|9NXHS{vG9*_Ji_zU$XLLz07-b7I>E7-J^wi;XZ0)iJ>%i~dXA>1ToVz2S=2&l_|H>J|@M zLzf!9=2vg39+&ag$to1=X)Wm+3Dt>9luQ+?=ordgjfs*!!|#4WX3<|Z;x|h(USO^L zj6?9rPQp~L5OG^Sqqfe-6ExjwQ+)N=zxhA;v&ozj&2i{*v4!rVE86Ycgku@pl z8S7L_vkWoXNIs%Q^-Eq~911d@+abg&*v5GJy3JW#ru0vaxK5kqy+X_rcIgVDuq}c& zl~3vmk9e3+1A z1;-U;g%J6yBeVBgZA259!=?vT=$^7$l3_bbXp@R>*hEE5jQtVpC+SGuZn8xv`v>-S1iq4W=%D8=?Zw&DOB^{S z$&jLLmE=1b-g}RhOc=W>>ZW$EA5^9=%9Sjv?j=ap!&08>qhLDAn{FWdW5*Qd8MEl~ zxG$pU@g5S&%Veb3g}R;5 z(^Rjko%*Z?vc zQ-{x7TV^AV5(YWygCF%*wQuI7e(?OhVx_hq-ho3w}A!5ri z`zA8LyFX%L!#U@7TO{M)RSxz(({6ulj=wzHMC&OzX9ry2a>W_{XadPJ+cvG)T}{m%Y($Jd z^U!Hi4e{6eCr_gZ9XFTI`6Qw*$To(0s)aZ^dXiQ762qELQ{corge9Jsyf+>wG4@u| zHM>ealJE6yReAgl-HigN&qg#|m6ftyvVe(MsFGC0N}fn#B*ZvRvnb(Ln>sAab+@EN zrn{x@P44aE+{wT@7aJyWqk4V35qta6)!rtCGnao-9&nmDc>a8ara(|>kZG0%L!RncC9{?~YvIj| zl*n5wDTl+!b1zS#cp~KdUFqL>`og5#hT0Z~HA@s{J#dFcclG&8 zBiN>L-_ashSKH~9MTlCXRS&Q(nkElOdDy5Eq6TMVmL-(J+z9nU4HYQNLl#r%RAIP> zSqx4a1_{l!#yUtXlew>HQeue7@iG!Gbf}CGcRzf)d-|?tQ^8F>)57|Y@4{jyGJk%x z#+j%0)L}n)U3qZEWjSlXY)%s)`-?Bjs^SSn2d&RdMv#6lS!5I(FRxqX?!gYS8uem< zTua}l#$M}5KZ7n*xI>{{O#E&m_<;}V4zg?#V!0c^K`$mF!`~tZsyYy2Yl1M97M0jgqJzMiwfha_!&mPT?#Mn-@A%%fO(xP;<{fSJ zjmSVx+w+`;$A^uCSv%{RKi4N$ud=x^gWDUOyFIJoN0zltm%1?<_XAN;(Dt`b-mV?u ziPU=3a<&?l@5gZ}H!DW{S^QR`Q5F9VQN2#wtF!-}epj!tI!*rk*O;nPfBbg7y{~q0 z-dlE?@9sL!aCq5raF@{5o1!w!UFYRJpDtRTJx*}X&ZRgmShkEO%3C&zzf@ecj=wyW zaq5(FQxY(YZ?D_t?QyL2u$sT={*l%ff1H|eG3it%y;jU9tS%`1IRKUK9BYE&;DNgud*y|I^nycx$7wU5B z<+Yl>knlu1uklT{J-G-zCc$l!zp_(7X+(^{3CCwTz!w;J*yUK(Up=>R61*1r{-i^O z{Zek8)21o|uWTSFu{X5^IiUuBMu#&H&p1uC$lQYT4r77Lt*xN)2R~cHhtA3$oF^|j zKB%GFCHF~OYrnM0OJ@7bw`9OH)ESI=Y{W^vJa=H zMMI?wBc;m;m#DqBo3YM%MTFUzS`BXrh8+Fg=I<$O)srnh|wK6oy>`Vj6%Ph>B2 z`n`PB+e>$J;Xi|Kf3nu|_GKWqjZdSMd*vtRE56!!Q~8Ssg0YQ`ubJz9tBUd?Rf)Cx zX-QK1X4wX>mz2p7wAHiWNpk(h&t&ZzglkYxZ0<*+{)AB9y~^)2p}*^jILxg3gUy(= z|Ea&TdBc}43N^CoFgJhP&+%$M}p8>_&?vM|Me~WTI>a*H#j|M`d@t?CTnkJ{$Jn1)hD3eR^Cyp{#r~eKku=; zniNLY{#-qcCpjHVL60IOa?m0djv?Z_WW!OcV?L*CFU)=Z)L|DsJL7{Q>chM|8g!(M z{t(_j4|SUZVq?+l-%^hByGg0O7^-EpU%lx#9`j}$j`0`#{rt0zrc}-|RvwgE9xn&E zp0v=*D=&Q!q4%LA2D;lK;i#N!%QHp}wW07RjZLS%C=tjjC`+X&^{_+sl8Rd0PiBT< zp%|TN+Gtoo+GNrgwLaH$Gc> zTi){ay5i&IGJWUXe3Z|SD+kTfEve9PlqE(4kCC@H6Uc(3(JY%4FWzW`yV={>RxGZ@ zHEWZ~_>}Ca-h#K4QHPN1#_!q*Ia1+M4L_Cs@XkJYm!d`Okm=ELS(2o%P|38jU(slJ zEkiUn^Z^S8T^WUb;;pp%m@TUTYkHJVa!^{-(0W*S1exs~halJZ%Ep*OHA;WAVtvc* zO~dvdY&ZgSdPbIpC81txV_MahuI8TvlWM?f#-&j~wUSTtV`Zx~@eAUkY}E+_QZ9=J zhC3`*T8+M%iOIiB5eoWrq<#R`r5f~Doi$Lyz?zMdGECa*;w%4L&8sM#g1M@>JVz3| zhAOYQ2A|{%`?bq+=bRVM^C{Dxf8=1Jc=t7%B;>i$YjifVSyT5tGxw3&gJvtmXbbnu z?GH~fdd{EdccT#vyP%IHaxsZX8yO;wAQ$(%H_8e^MQ#h^M2R%%{!A{5-~H?;CJ@yz z)#xYg5$VS(mYyG*A@Y?|zO3|uStvptg=LuPS0SqVZL-LH_t~WP!qvXCONTXDRZNdu+bHGtb!PpZnr! z1vFLZ7k(I*^ok~?DAQICKg`~weK?Ztdi^K@Q?>uW82Cc#T~M?LvQ!ue=A(z`3o3<( zq+cT)V{)t>nJ}Hi=4jUz0>jc=%(z4bt;lv%b0XDQw_+~6$5Z;xT)=8Kzf(Cge7 zI1m4C_(7Mi-x)1#$7&&J#VM;SEDuhf3WSHrg?Lbh514bOz#B_we`ucna50!k81D0Y zo7_pC1pKZe+n&-=V28KRV~i<{m!V-fIcB!9z?Pm}4z+15)O zJ0xMAuRI|6T|`~lj*$E!4p-Do>EKmRnaIDLrl>-vDQX>*HCCD9s2`m0-%3j07(bQT zAqjVEqo>{)8tmH@LT~+&s&Yjwob?{g>r)Veis2t(8`3|Pu2(-K*K^Ce8Ts`*%xg~! zVlV}0f@weXCWzKsjNRTit%=+qTiH=IqMBe+5|Y+qP{g7ObgJCmXHo7?ASf6NPD}88 zgjXP{_(ss({(3_zju2M5zT_&7nVE8};4<=P+Ert(NWoP&MyoRut)FMwLKEl`AWaCK7;g=K2z5?VCJT*ypcbT=t{8juo4h9PZ1m*Cdc zc#ONTo0Tfszn_9$pwU5OUCUT=+rED0z219!YWwQ>0_aO}rwK)k7DX6Tci(seU%AW1};~M3$g0R~K$ruJ&}it}OB0Q9$f@=uoH-3xl!X9RXM52a_Ih^$0Lnxrzd zmYiiUAlUj#AtDjV>PWPVXoEmY7ZB7i+O*fv-I6XU_)IH8rjezX(CMbj-rpnJteFV4 zPfiEX4|kU-b;|Yz)>4{4D6H6xnqnF^lfE`aO++Tnp%f)&Ow(0@M0FDPaB4pq3cJf? zs7~wZvQDOIV*51Z(`r>;{^$~h_>I+CsN}1)ubVASV1A4yvSvA)X=bGn1X9wtyPU;> zUe?d(q^iLr*`?B{+MsxlmfPPwa&g@|YO=cg@ZE?%B#}yNwtf`ISsF1voNZY)9LSE# zuZEpt9!C`93la8|)EYd^WqV>XIG?&$nWjTjT7wp&TQyqY6o*th>Z~Xm6^=&oaOEUT z?0k`s9-X$IK3Kx88%i$bhh4Y3#185ZsHN{#p&>e2oRN{;#MRuk#lhK5Ww7F@M)or? zO2ekzXezUi116QD8bk6=O^$7ggQZmqRbiFrxaMw%dR&=0V= z2`jSoS=iLDQSl$o9I39nY_lV|cdz(nzFUDpFG@W9;Hd!gZcNBA3mawoZq-G4g=OSvP5al41| z656wSAO+NU8xJwWs!>3_P2dh1*xho3B2Q!v?_W`E;qCZiYYLIK%No@~GAosot*tCX z>x#(@^n+oB1vmHnJe}h?oA^AF=&dAThV=Atl-=Fwsw!j%bIEY~8L4yKbk5TnoD9c3 z=m*s%16z;MU!`WrZ_{dK68Ch$ANQi%aZMlQR^^F&>-F%$3$Y^Z-b+ew zi4^M*+)3ZaNZPMYub))9V09 zlegrOsaFv})GN?$W1x3DD&Ag9UwK5S8E<$&xA}bg@S)UK^a6CC|54cyWpCE=H`x&B zFgwm(+X%M{B3LzJ0n1e}9r>{o=vyY1?;yhbf#FB$Vn@WERbn3cqV2KHvT^zW>C&eR7?9UR_;f18@WVIHb6<~KWapl_e*tsr$KE9pf z`fF^C6G3r>L6a^qrj(hi2OI5|Mrc8Q6o3=ESrLMlT=VE@8tcblc%pgJMYp3ZwQrzi zblF`!`+Bi|vTv;xP)5c542)2Kr1i*A$8NfV#z6^Ixj>>IlBZp8#j+FFkg!6 zp<6Ak7Zlu~fi{P5nj0XK(5Evwdu6Pm|bVjuWBVTUxKw+S3>RG}%;E zHIAT{oE30xH$f1NuI;CItFTOHVyyo5y|<#IQK4v5SUDWMi3slUJ_3enMCc+?BsoNJ zO=n`7Rirsb#%8|CZ`Lkt_jpEQmup77#|;4??nF!WAe@?CaJDdRW`AE_^OMakE zk2q^6Ar&{5fkSK0VxT3_(j}M>TXCN)5meb@cwtr4_zYCT+FCRUX2-`fX!kDxbBnD- zQdY&4DqXP}xH^XzX1CC>Wn}{n0@u1A7`rP z#2KiDVJv=P3~M8Y02`*u;m2wzP!q=wIYYM{d6I<=qo*D|1)*P!+!SnXNA2}!pA@~2 zL()VVB9jDs#M)wMnh3Pv3^Llu=%B!_0C$eiEI6<%=*&{G@Z1fbiBVN4<;6ji4`*uB zo&r|93)$#QsxUiosM*^LYWI-C>n`yj$V=PA;5Jkqq0?$eaEL4|<5ZcZnIlLMcN(XM zdS#^l+681dP|Zlq?Kb$$)Y4LDJ7YC0id{AI&TJ~N#izW9GKj#Q&~|Z@t-2&hH@<3hpscsww|$k#?~CA@_SFRE=hfwHlqA zxAuJ19j5aYWxJ-uW2frlojxA${$wZD@yg*2fu@SW86yo8(vj&%)fDfQZS%w+Vm&{^ zV1`vnxEQtK<{ANC{MsZ9RT-y@YuWJCg{c~&(!3n*)eTh!i3hq<4JgXqgkW3|{5 zFlH4-N~7&PZA73Ly~S9vVfBs1S=JDKqeOQ!l0~*41r|ZQ5Po25%H$ z;fn$*}!NuTG1;#>I;l?R4<$N9tvPw@(jAO<2;`{DUTj-*6q8V#%>_SqF z{h>``4k(Vv@8TlC;{e6z6rBk>qTUYWu|ud&AA1JK!Y>ifUJ9KZfNUO$`rRIJfAHrh z|IF;c%>v(1!jY=4%a92NpVY+HHZ%iSZ@Rc&pTtgQNYqQ+^BxxF4*mrgdt8d zCO#Vmv?D2q45%0D7mDr4YovA@mwnDdhiFhovTJSK_@fM1EkK?X^nq7AtCNphEgq-+co=yHsTR?F*^J7zsG|dv&YuEhHyoa}utRWI-Rwq{QI>AZ*JUI^BVU0sel zho5h#x^A%Yo|JwWV!7RLT^+2|YNdQ=-Nr#}7v*&?C6D@D;{6qz|IVC$r;)kk2Ugg3 zyVK}*fc}qe*8inw5~DaS3n&2ZLoyKwrjXS!9ejM+JbJWx9p&Xr63XQHhv2NG?p6DgB=h?Y1 zM`>T@uC?4T*W;zV##hl}LINrVYA`{sN#6E?;VwoI?R!kL?*=YB9%2-U< zdG56@9;)Osr`uvLh#e`V=e`NxWqThaJzIG{idoA=uE5wEs zPHTI9Zl%tj?F;($=)Yz%PD-&sJTvx8yA`k%e97BLao0zf0ErBArUw5?0XPhV9u4dY zZqYFA^+3Ht==xEc0M4OB!1omy@xnTRFZF>QD(DS6Xy8M<9|QQ$64~D_<^Npde^?O5 zcr{9)e*E}8>pwXEQ^@(>Er^W&G$9^gS~zWtJU0EIVvRN<@8C8r%OR~yimo;qP)$`% za{cYeor_WrtOnZfixxk!=56O~djm)cJ~>&sR4=lD2EqI7%Io83zLzw@QWa>REzxbf4q@O7h|ImUmp++u~MqgBj ziC|RpxiTt-yiRS)uVWIWDnWCmv`K?78HLdCjFUn2YGDLo?>b5{e&Q-6fxMqU)Zz!j zH~E84@P+3+=T~1LHG3Cg0S zi2)TF&?D|^XY`)OCLP?^F{)Kd@kmudB~1xw*3Ph<-Raq|@msK7T89JZvomxli}?%Z zEC*8hq!-JpDFj z%zfaxIJtc&n`~2hx}VEp6GL0LJqy<9F&IrlBRe>IxdY_QX()<%zOXxpO5#PzC&?$g zO2zB|LnX14FV>g5X36FD1o35+N*K$K<}W9#awk*US zacUvt{&M%3wxz)Z2I2~WvnYiyKqM+|ViKf`BCb=U`Xfz1n|ywF=l=TnJ2@gd5HdUX zN394c6ry+BjAQ`>9LLob;dP@jF-IHn6C6ztUGH5veJLn{mztekfSAV0Ijm^WR)#*a zpbSpcFkp*kZ>cz2(cGEHih--F&mfYJ@1Li<>UjM$5-&;AFf#NUM$xu{ zXj}Pa=3==T{NFnHw(7CfrU+9dv)W|$E_ga|jfBD-1|jt5w6H}DYcw-FoFNGM4AzFM zg+njQ+fs5fa(a2X(rwUfX-B^^Pi9^pV6r`1zl5j>Ako9i3`wDOLCpm#`+NH$MEJGo zD3t=WJW3g&3`z-wb)e9a7mR-utU%oEEez_@ZokAV44T~7*_8>^%sIc%yKy*+7DpL_<#p) zq@Na_O!ykiq?PY*sG|xkfWt&Ij;qDk6HIhSvUT7GUq$WsUqIf?3^d!T)u#CyL-a0B zg^5U@U!H+yjT?UW*DwO8;8pekLV}?N%oxVF*E8207p}@lVq+l|`E%B>Te^Lrz=N0sUUoEM%tkl`!hf}G+k0mSL)<;1!5 zvv%*T;H&}K)c|LIphz<|q?X!;NBwwVd~h{4Qlq38hTXpan%=AyPq@DD@e#4UC>MgC zT_q(AuSVQ>=xDgnq;|?(6|NVq0ypo9u1nInd$!dHvUb~x+Wp~EY=x!d{hKb_vQ4AZ zr%QnTXZa~ZhGI)>djmRzoDvi+(8h*-G3|8fyYEIuKn>mZE@u7eX;*W0)rS0Pv6S_a zIc*d>`>L319AS{N1BC5)?h|f%w6_8MokN{ICB-EbA&gmZ2i_GwMGuF zr)*bx2E|SAX;Ek0kDN{V8 zzcTB9N0-21=ki^(-o`{zo9J0c+sp9{2&`K-6y8SW^hRN%-NS4^ykUi{Bpe_~k|Y_;d!C^}JKp3G_m?l3JZV%8Ndtdp~A=_QNIUh{3Mo%T`3 zWL__wJ47xYd5zQ3ueI3?TL8jo1D&m)u9ExEnDc3UEA)kdbnVr`sL);pGM$5TxhT!N z6Y<3(WT>#EfL#qwUHCyh`IoX)I9m2E$0&m|0Vq`CvssX3=*v~HUpp1oL^8?0o4Q?0 zE1uj|H5e4qC86@hBvADM-CT~Fv}xHiH(vhO-^^twqE@scopG>lEdA8XPuvFFdYlAY z*;%?@kv#U`qTQfkQY;#o!e1UT0wMCh%=W$pve%5%YS>Vq5U(dAcX%03(R>v~c=g>8 zNMPgLy=kV;`cp74#XdzWQ_u_sbAnbsi$+fWHp4nk?}Mi}>I0F5k7p~6GXnOVGPR(e zCX~J)Chy%y1wEfX1nLoK-M0*2SrIeeqXzC&*BP zTs;2F+OVZy_Y9&`q28NF;DY{SJ=s-4lnm5F38pDN+5J7YAqr3-6($#kvk#tUef(DisGip9yJ|ij@G(50X)N{m!9rLejK0;Y zB0uUtBlp5Cd^d?cCN+rS9uM~chKmxusT=54!08iEZ#w;pnL@iSkRlE;_tZvWh|EFe zLQi%g>$B$%X`8i6p$e+o281T_sf87_g=dGMT`A*}TyT;2uyxvC2kOgMSzyR@k3)TQ zIGx(;4*wxRbV7#>>zER7T68uh%^MJL{Vyjvzq>;S53mqB6QE|h0{@&ycY>7%q4MUd zjBzdd4D@kD42!loezXZ-XkaZVBEWYaAS%&!KOCd0EPYTi@0W|V_L>bKJJqrTR>sxt zNUm5O1wQ?c9%Kg6ArmA2)*_)#Y#R-+^%6wmbrLqR)MH z($*W;QO_?PJ-UiKzMtv}16nst;y|&s~h6Wa!QyOoNfGDs8aHU7Vl{b6mh2nECypX8JI#O1#o^58Smfft|Z3WO` zpDcU{kT6pQwzTNZuJ|>SYf%P2ORfgKhyMq7=+MzZb(Et%*+%WmT_YcdhIrA0zYuP; zR|t^CgkuQenm3mrqwnyrya~(>#yt|w$Z?p`(#x;V=j`A#mVJSOU=QeN)_shMQHq$$ zKR)wF)AC#xJFMVK=Oo@1%c#yTi@5=F6XGU#dpPGxE77$?JZTb5JPn>=vZ)Lp|3vf^ zEq8AifiVl6K>b6V&pJ@yG$xxLhMlem)$>CDhS*ieG^&1CL$68@;>nX9(K1pHaeF&o7IU}P}tEH;0VO_mfKsN;%_8Ljug>P-Nk zLSdMwC!l3GX_Pnz`vOt;0&sc(L*H_d_u$rG1_|Y!x7@BdPPU)--k+X7!hYxq%8Zbw zBBJ-7BW}mbCy#5J4rW=CHyDVFP}WMSClMUbuzF-^n6$P|S6eX_me-$gA=XN@6YQ1x zHyf>%E|;UX8fi{h4T}H_H2NO~E;(!0oT)aCq#}5|oV=FJ@%i?W<6pJ6R&*hYjNjgy zE;x@<$!=#?&YJaCVgSOX{3>neY|&u3aH(0xpAjFQj}RuJ%zTrb+oHz-xF?yct04sa&Ed_go1qh`nvi1mIlWx)t?pqJ}u6mv=W9l=C zw?7<;H!z_OE**I}qm-EtKpL?2i=Lf)n0H+sVD2vMg5uE{|sc<=d@IjFFvr zLXA6DFB~J^OS}ti)~t@qe64PS%_J?W)d=hf-F%XS?hb+-`c!8ZL2kZYs6xE0u(?$1 zF8TMwpcAq{GK&z_hzsODBe%>kGqcta%Y+XpOP>B%-VGx1)~M8?js5F=D@o}>x~=$8e=Q; zLf4%-DaSTZEoQ*@1In-`>xx!E7f(7$P$=U!<&ANxM!ps;zQxT=Whz`sGSMPE%L05g zFD|tz1p0h>$CF>_TP*2YNXtC{^1iv8Aei3*pWPK$$0E=&V;EZxr}X4eDO_xgA91RO zo@B2u@NTY%ymk&bo3?G`D~;yiRQnF}7tj7qt$*j4A7Agg$9HW>`kQA`|Ia-8n`=+T z&e+A;#Yx%3_W$mAd(X#>g0;#tu4PT z9L3>e9QVf|(5?fYv3mB|i%x^+xck5@#7ynIZv~v+A+|@*zUK|@xg=iO`TD^0k!CN=1`xoU*UJt1La!ux`G=9YvzHqHhq<#?8z76ZUrDr% z0HVX`3kvb%LK-HXlzF(5hMRe?2Bz%7`p9L|>GjA=7aAv2&2)KS3^%U3ky2++CF?&}4j`v)MAs#I6kj#(;F4YSIql zGSvKPrjln$KrW|3nF_kVtB(q%r=8WNKB6Qr^_-nhr>&{ds_s6rMY(a4A?^|bNe<3o zg>W95$a<6NpjhBAmNu~^)8jYz= zVb$J<;BXx$X*Y~+RbsM`#n~_`lUh@}jn9y~DLib-c!7^`I7ZMfGSnDW2t@>UgTY~n z#cHTdm>Ck)9-S~_bz2xtPCmre?38MZX&1FL%~QBRf79X0aN|%Q%(x)Uu~b?JH7eF# zAV@(>rnSO-WG>puS4x>pqdNj_&LLAW4Ol8Ic}2?2zLP;`?)b5&^?>ry>^b0-oo}T! z22p+STQ|0m)i5nPxnt6>rz#D}k|=L}E=U(Q`$r_FcCvG|SX!*Du(L1%#BO^m5_`n~ zaxUC12oBvo2@V`l?SV-*A^l68o=vWx3TS{z)OCH4vB^T|;HGYgnZz-Px!8W{EE4DU z^flb+*&u1x2e)do6PLv7XddyqaW?1fh&DiXtx+y_HvebmZn(r&4?~5Y&-V#%z?hz# zsL9@ZM84vf&(72oZ@!Yu6!rIh6q*4zUnph-;qxRLbrO~mWQ`2~qYSbRN5vNd6?;V~ zsp76qc5F1N*@ca!ya%#M9WD+4mD>J5xU?#dk$;dP{&A4# zdJs`4MC4c^Lz?DtIt)7Iv>T6C0a2c@8aj+#4&}6_U3wKNNzr+o3ynN?>tyUz7@0<5 z#a<2Ef6IflbIT8y(`C+G7Ew$F(`jN(houL`yd`yt5 z2YK1k0bdc-f#!falqKTqo2ED^PXk1r^@C!vCAQ_rF3(~|3;XnFgiGByM~lkT=9RuM zx%*eAN@AOA0*go8h6sC&32jK3_dsfHIGUS5ToOerD@14oj-cMxB((p;wM{5Q${tbONE$MlNRY>p8SxA&|Q-dIvR2|it*S}R=GG)pU=ZwHVPRX#}aitq_} z*&f}Ju9I(OmLf^^dIMhKm2A!D?NXT0&Ko*~JOVwPG^+1Y<5V6+WpIS_pdG^Nit=dG zWDd@fI=84Q>O?LqYK1{1NHtDQ#2uAtH!#6n7N5M!Iergx`L6))Q7!J!i189aHthqppCvZ^pcju6VDmc*RbcpjYYg zgW%6~g>l7QoDmrV@_gqo-_@;MzSs`QpSoen3(`qB_o*RIER#L1r8y{TG&YA`c%;m5Q&+|Dk;D(kwM?#W@x{z}9fIS;6x zfLB|B@?s8)2Y&w`{@=O&@5HCMGcc?ACVs{Lm*wMsnZ;S7s-vVOg6_+jos`56$Usv= zpi)(XDQMoj1K278k5xR23Le;UNsukL?!C(q7Q4-^>wXaJruzrV^FXA9sicTW*3KE5 z?j7tC@KLs|I`;Z%jT(Z3|8y4i?a$SH!`oHv``wNk-w*a!NA&O6re*tI&)^hWy2 z{JC&b818W^_ucBd!*ATDnq0hnF1nk$!!kgmd0Nc!`r#a@I?PfYldh3V6V|rL0WnO% zVwEVPEL67J)HNEfGkzcJZ%1K%bo9aZgGe27dl?l~&}F2RPmaslEKpRct@1Q!7BWw@ z8kDpdwoB9NODt{b4cXrjK=aS~4ZhH5F+y3H3D zP7T6D{RM_4r@2PvQjfwpJSBRM3}N4`^$sUDN<`f zEQjv~VLBWW4SIJFLl?9HukqK^S#(w!sh|&N1e(j;t#}9}v16_W^d+P#c&g!cWQ}~Z zqcG{NmT#6T>v%|%qa=x(c~oUK_I1K`a;6A29@y+DN{o0R@EgvaoFr067N)&4wDT;9 z93xSkmj*;Fp{(wXsn25v9lEbdEQfU*UI6R-Os1MCma=22>bZb8uJrXXie$Gisn%nu z5ZI7^X_1b`)vYfD9D-e|6^|@SFV(HS4K^aD| zbmxq7I0VlXAq+gZMWiDqZRL=%5^}MS6rWNgY6pS5vSvmRfIUEf)+Y&sLO&jcw200J z6Vcs_-G!BeCd=KwJc-oPXWv<$-xKlNmg{)>rVREyR#)4gcE+taPXcwt)4Vn1qFfEy?cT$;m{eInE$jT-cwM4)&s139%I=0 z8$zjTqA9GxHT=?h-V@ELPbEff5hJ;%ouUL8DUn=(Of;qiO?zw~8(=C}n-Wa*Y#|}6 z64ic4LUQnrV(k?8gIRE3@RFo3z;pAB=)L($mH>y_@nerN-pae5J^}`UKmM8N#P#FHE;e2JuTTNSB_WQNw&4p8++rQIvuVl zN7fvS>lyx3hvHPm|0job3Gc!7odP-gUX==jr+62pAU}*3$_^Za$B|6P***xJa0Fdv zkFBCa>97N}1=y$gT_{}+{Bnn9-myo7#_$YARQN&ayoecO$XcV+X z95l6hvaP-lnrh;B=afcm zNJ1oAc}POymzLdJQgy<)&p?Z8EmyFWt!eQv(yX_vzP~a|Vr2mj2LMcwyOw1KKg$a4 z>4r1h+HhwXWqv#0(6>Aa=pOb&#{YGemMHud?fG7gXw7(!#K{;3pVJL?fWS%i_J&(n zm6y~Ek%(&>C_~g|3UAzWYU~u=Y@{|+QKYq5*? z%w5s5EH-5O180YbwKvub*Z;Q8=HtXCcY?y;^zI)$W`F1Yzej|;8Aq(v?>REVp#MLb zhQ#*(nSUu6#Q*yBUz&!>h9i~;Jdcrtu0@M%aLy1rIFkclD#;|^Mlk#iAru$F80%03 zVwhHp8j{DLrCJNx0r%|y6y6V&!-zn--G0W9s@9%eVp&96SbjP62DHx^;HM6V~I;pUNg)oSaB}^23%cU0` zg9&Up3y|F9sBDE8A69b1Z4??q7N~2$a*vqJ&=ofZS}_Ujc|y-wR;*HmwbHd3jXP^l zMaXe3)4187sl{GPx*93meusHF8m`V;fNELARYjQuu5ej#sM62GPv*dC@YG;dF%5O0 z&#aISSgx)oZ}T)*h?VOot-9=KSo-8ggK4G8?VgYB##A1N*BL_Xq&2tP;5jLT$8~FS zWhlp4Fb0Gf=P zLiMkt{H2Tm!2p0h2@?{AgzD3wW!HPJkV?d~Hw5rp83E|}26P0+Fx zu#u7!f=+(ngGF^dGu^H}0KJ~4;q&FzuwAO6>OUiu-ho``(<{3zhSy3NgZH~0H2Prg8yD zQctyG1rux>41c#ZoD17}D-NdCk9glGR9~irS!1S3RfZ|1ML98G%lK40U34lHhKugp zMdiiEWB(jX@AHvNNXwTtM{>Hx)Cn5NVu5n_sIoeFsohYO(wVG>=v-5vRffto!$pf} zQPW$a1$imJQLYqYnwIVm5h`P8D&?`{k9B4sDYx>&55Dozv7UzbNn2AUC}^EC8xOHq zHRCSqycJ0al{v~rS@cViC0Py)O3J|$^9#Syd%#0;(d}Rj{B$RayYWRTt;!ZkyEEh4 zDf3WMJ(C+@Bacw|b>$bC-bmiT!24Qm1 zCmw{@GIgiH4IJX9#?HShl57aB4V{rUc{@gH+NVD+%tk2)`=#Cbgjj2bl&&4DU{$kzG=EYVrV|K+95uPG1?^+`?bD|v4DEn^V zr{#K=>rkC`D52JJYONv@PpeW{BBy^4{oWOzH@je$6&4}sEYiC(LFPRHw3qOn(rIgT zI8Kkr^PvULwI#g(Imd={QwX-@4l|@bKOMh3$RXkgx80XT^QKk25G;Xu`t}F*^~~76 zS$F+U-ZR6h&^pF;$dE8Kh=9ztgLRk63^87A6L5wQQTo9q)j*mq_C6aO@QKm|_O) z{NrD9ESKc(M@H4>-m(LO=`;@sb9_V1hna{ELK{AS!w#2-Ic{}bo_VK@3$@}u%? zKKidt`x3PeFXSZ@U$U+&3D>Z?csRmPV0d*`q*TFz)LHRBVL%Caz=A@X9P7}jK2x)d z3=lvSP3raaWz;HhWCSagk9wQG^FFyl}hPJJ5_iJd)fXa{y^?cccfcjI3d!2)xf%y;H4n^^?qUG zGxAHP8&5%g#YQ6%15eFpShV^kCT^>uEVTs*qA4Z9c`ITKE1NG+e0;Q^wVP zuP$^u*tFH_qMQ|@7A9itZ~4B$aU?FDODF5jwJxlQOKy?K!0oo8uUdw)Ze!>Q`A4c( z&&)m+QC{+$;Ue?mB%1`74%%C;9LB|X-n7Av`J zUUo7GYa?I4r9lR?ry%QQ7V728VqXbmSff*{klF>KxX*P~oQ%?n9*c<=~Mb~L%qsTNx|H<5xk z$TG9buStOr8LrFVL|&x=!DfAx87@NF+1DDc3PVcG9Z=8`Xc4jk5nm2w4 z@Yee9=c-)AmODmtte=@!btqauPH3rT_p3!nV)4eoVtxn3GhdB_Ls{JF5f>YghQ(|R zWq4N|yuR^*@#_=Ye~iP_Y|t3aV}8dtApX#W5I1VjuG>T8RlIEooqUN3JoOK>e!OqlnTKR8|1qQ2?SxPJ$AZTf1??ov^9T0 z{GwjZMT??_aLc7u9Uu%&Xa2RA?_j+GK)Q#>;_Z^wtx{j(%m^e~tGpcA)hUTO;K-Ac z`q)~MT*D>Yv5IOo(o%YE@6uj;mT7-RA~hUa9&Q*Wdoiy4k)%%n&X8Ru0;hO;AHpIo z#KW!S83^VzzGY`#_`25G$LshE@(jJUte_C0Im{x}Hamgfp5om8< zTUg!_u2!LBa7{_&fgU0dutcQf^#~;pxv-s#6=+a7&fp>-rGSaFVK|?oY-m zo`PQzl9*~ZgD7Cxvcb<$F?H=+**Tus+i~u?67DN#w6xdAC3R#WZKl4^L+%}D8D|6u zsB2Vad28vHqCLYe#`}W!jvx~xt`j#g*@*5Ie#te*6uVigLuMsoBiqI%Kz!`V6S88q z_{cv2TK-63V#WzKky}}@)4gfDu)bokf?|?C@U%5_kI-?VDa>^{LG!S9_lA#D-SGK@ z{O-x*M?KQO+^36ztQ3}v6|r2cie{C=PhW_RUO>om_C-3LP(_aIFc)HJ)kj#5=sPeU zVD+tWcC^}v5JY2ZNh;cMN9}rXXjZdz?`os)j&dUKifbqv+eUqwFu$e0bg}-p62wZt7 zvY}I9(W%-NF$y`lu&~lqT2Okw?)z!I(qfI@iHF5vrIAbEz>cLbl2vw1=9^gBTB18<-akJ$u^4PqjWF7V9&cyFHqCUnO@M_K{?g?Raeb@w z;p1!R$3F#k?_Sp@a8Xnm*VIcEv_8||gE;5!4>WUw?{Aeupf`hfP1zlNt=I-Vqo6xk zW+qeyV`q&&Dgrd|6-9~SfD*)Zn+`cxRNV7PrJT%QKcq*PrWtBX$Y4<^edoYAIvP?H zo)~w0HAbw7jLhU{$r`tC{cx=hT@)2R~`N4-^Q6kkz+7neHT!nv_8~H^32_eYS5=AYnmdbiHwu^7W50 zz~6J3f6sDs4yWE%zRLjSFh71U{iiJFUkT1X9fkjGCRDX@LQ?tOGU~KOx+N)~39VT@ zMj}Jkj|!|=Ju7&mC`m9o5BQr^V?BhKVw_a*rglt6VHEBa=r9V;STrgHL#+1{ny>$B zFPamQ_vC_=84dJzSa!G9v{&x4M_rfO^~Vd6Kdd+AkR{Wy!MGi#3YBYPnA(N*WvDYlEVUX0N_-hh1%7kE7-MkB0)~>l zbMBs&k*Gx;L>45_TsaZ2Gg7fXuWBd*zmNd%gkaCtyt!1(3zD4bJth4#Z<_EN=C}Eo1AsJ09NY3w#%|_UtVJtz~=h z0b}i~4~|;N2#dDaNAhd+fsyvyErji_1+}oBXUtICB(tsM8p_6f5Cl;oHX0Vo1>Rul zC)tN9s3t)*O1e)+mSz@{6)irv9uJ#$Z!Ti%+GCdJd~l(Lv7kqugEm2CykF+Ucn# z;MUdfy=K6<$1A@ixr0O}s$L3|Ld^D3Y(`H`mhLfqW4zAiMIJJdfGlRM>vdxF|RdO2Py&VM9dOS!rtc%ouC{I3`^z66B_~8G5wF1>~~i|t3H(lh(}u#?dvJwY55D- z6sGR}&s;&!w(@WWYy^~BO$F3jhE5-AfvdofO$Y5xa;zwYT=2j8oofm^WY z?9=tCPJGv@FZ=+`u#><~ZPR-a0dx$41|9gful?d#)F5@goPw&s)ry29VKik*n{$~#Fzaj{+jDeH$w#9vk znet;zIDcQU__X#jS6EE!uIueh=U}nfPDD??0KH3b{+7`k3b3tY8tn8f2 zJ55a;x++n4R{jrX-_&Jkm}Z$7wr$(CZ6m|BZQHh$VcWKC+jhi6b@lXA_07!mTIUCR z7w6G_HyX;>gL^v+Sh=k|h^-rcGELK(PB#s}O6G`z#kNY}I64g0_T#FRiMs+J!1r@u?$Pp&L&A zJ3(+>EVnGED3~1wn!pzkJcB@}NU{hnV7(}q7lfvWSro{QOXMtt3l^P>(w8hlkmTl0 zb0{2k?5qFHJ)zK1AE4C?vb01)1N^%5&>{=Mb?!u?os9gJV7MnA(MOzrAAdd&F_5=j zy#32)F=ybW;n$VD+$RxPPQN1jAFBoF zbm(ae9StwlJ!}Y@;lFiq{8zEy-t$Yc^20o&bL)+SDrKFiwG>#vU><0QXSJzW52}nB zPhGAjVmCq>I5_z3avCM4?pbN?CQY(rBD6;2h(v^_6sa^ISft#*zNHtrG#sc` zTE`MXO%#YPblJFh4R4f9ixGMgjVX(SBZ4SK8#*Q#T@f_gBWWApDB}!^$5)iV2zXjE zqhv)bX$*P^%q~cFI+IuHfGG?0EQ+pIvA}N0;zyE)rATgcje=(Md!2|9fNiB&|Ij3( zE1nCP)+d@Z4;ugNf7lq;qf*`j!`S+}K`uADn3g-~{flB`|L?j@EubcRi%ah=?h43L z)k`ojg+VJka^D_3k{O7;zf?I>G8edTo+3Z)h3&rB-}T6Ta~Tdg=4u)PE{jGquVnS) z><9Pr$F_0tg{rxT?BxoV-%XiPqS#2ygIlDvbRZY^k~GXK56=Cr5Pg9kC_<617@xx0 z_&R{^jUa%e5iE>TtCi`B5}aTW$ zH|^rWWXB9ZMe)K@sQ%Oo0W;wK1jz2h(C)Low(^j+HSy^D!x!cYR!$t-OL zDs-=Y!w9yp+f@#9RGiAAnl$!S@~$w}w6_c=Pwjx`4QcvZ(TnLPACH^B9yN}(=r8DW zg=r-IdP#VfS%~s!fp$3RlgAKddDvK78IJoklk#T>}DRa@P_Lh2{LS=u%}BqxtE3MJ-^0_ENt3WgclHca4H zMxbY$-qTJ)BgYp%iG_eLGOIzZaP*k!s%R<-4HWti5KR@B zNZAR&ScS-i@TjlMWN=Vac|}O+=eDh8gvsQS0&8?s@F4rLuD{8&hH6Pm=nAQVIE)Ax zpj`L$c-zoAF{O<;#n{va&XR|#*B?NfJ9#S1LLpEl2_&?wj z(8N+Q@}XYg(k0A5SUy3!(io(4SQQHq8=7z_(Tq4w!x_L|_ zi4@|5j4j4rHWvq7r=vL?vPtpx9Q{fDUh6`ql6loYLQH)D*_1q>ctV1e?)@GkT0nGc zjvyhE5?`W6m~+_e#ePotSm`}hCDK7u;*QP;WKgRWIEahTs%@z?Y!EZRS?eT!6Xye_ zaB0QRzcN%L z@GsGjXP#7?Ln3_KSHQw`A{f~X-LrN(O#`a7IqrSg;Ajb>2ywqHyOje4RZ)$ zVe7jx{0@2#Awd3 zDAQC?;HL%C>+g_=-^chvOsw(ftNI@WEIaf}igYot{>at%JCxEm&mPE|VL-}i<^Cv% zm3u z{Wv3=XW;#*T$g+a2|H?NDsL@F4l`vjkpAdTL#zwn8Q%lg`uWJ2AG<+W6^NyW9fDK> z{Hefqu?Us4{i{MZnd|5XhsV$kU|bV)xVE)#GN_9+*?8lY?f4u2rlNOaoT*6BeWD5?^oj?1dAjuPoXd1wc zroyd!r0#JngwGY}e>P2o08H3HXJ;!0^y7 zqQ9>OL9l~KHAB5T=2&SjwZzGs?(5i7=o``qq5K$bY1tWmJ9EV_P8(6mzwb0DqS+tP zytZr@pznC@2J|&)3#(bu7ZH$Z0y|{<&XR-yOPuL1brM(zH`G=uy<1qs+=qb4l@FC@ zy(Mo@8T3-!HMvzNJTip1fZ#BFrNF)mgyqFGW8tYRXZS4+B6+PD0O$rNH{;(LO!CPh zOK_skUB1WeIpkoT#FwuNgY64uc`9<13j4y{(*J}MJDQtqwv`BJnY@%4eNRT}FpNab zOkADAkQI^BEHD=nTi~KvpJ9IRiW*d#0~OzwDO*KVaq9@Bmuz~~bEF^`TsCD`W!tLO z7q1F5TLtPxrYu8t)>TlfWNHYI>;wHrMDYj9l9aRy4BP(V3n;X42g+q3T^Lf^3l zwjkgqm=K5A0BNK2TLX^!4QLiM=wy~B6sPl-kPEzfN68Ez@UPtxiSO@Uv-@6f+}^)K zueO|(uUc<>p`=w?!EZu_20s#7#=jHyd&BAqH+(}3mJ#vO| zPi^XI^#-+YQaRN_$6lmMTt$?C1<+4o;XhQnRoAl_di%DMRN=n<4pIU8PFu!D@@Chl ze*Xf@?19yS`fzy0klCNib4G=FN$J*Dp*P}|a3p6`mn;Y6GNBC_r7bHq-)Z+ytnHr_ zc-S7Xf8GnYY5}h4`OjFwe_ikX&*JwFVOT=(-01y}le*6jt@i(481~O7uKzlc{0-R*?ViVovNLx20!)}KDjiLx--6pbOuXotQ;5w06w2-=#aZQO-9BA=w@eO-WtoI z>8EKW?qc#l!)^IOE$^AB`0&(%(y;Tz%Q(8I=g;U}??)(hj>EOl>J5DUR2KVl z$FbKm`!xGM-m-T@OOErHbet65%1*L@91}NQ10yTbKvg8 z@pBOFLUCi>Zq0&hw?@+3%@;-vCoPY}WK;all*z6qjPH`OYegOx8g}1LmwH3I?=JU? z1rBe-hWS*7<(4-$LxSHpMO-_E$3uH7rw9cFK|wi&H>lw$gTi|Q1hYUvMZyblBp#J0 zJZxNKWYr!rO41Aa&TK8 zh&m&lRF4B*R{IRa9Yi3 z@@&y(Hv>f(xH|6gVSYOFOQ}sHrCqD}uVI=IT-_DwIid2GG>G=v99c0!co2AzKF+&y z6`91}>irofT31PclcBI4HfRX5+BR$b9cGsXpe1#hY;?c?lvbw zwy}_Rn;_D+7k8&8DVuq=TypX7dYdZHGx2N~>^i1~;Ga;?g!uyvDvu9N$gfR+El!gq z#=F#Bw&3&XHzt-<#ZSY?<~{pN-b;Xkvki_spb*qVGOBE}p0M!p2)-)OWYFEc_U=7w z!K+(aw|^sh@8RoV5y9>8I%IP(%`337QVJh1`PQON|bu3*3c+(W49O7g(!Vj+qX+ zapS`2L%k8+asZRv8HF>R#py$f4jXgZjfcQgfzi?1r*K1kMn!7U{Qh&WkP@f~wF`)M zR04EAzk=CEjIV=2rUQScjIYzb9K?m#muc(J$4$9W?<%6V{muOA+ro=9mf-VdPM}-l zK#678X(0P{x2SV!mpLx$NX))HqCRQ+FW(P^i$=oTXybUILBOfdtcYJdo`FI9eBiOo zeDbJ5onIMmxk9NhaogETm9nYeq;eWFnOn}CAvuo8K7^qZJ(`n|_rg1*Y~thY^G|g2 zmj!3}xKz5z)@EDNAWGB0_@d52(Ru4t=G0-Nlz#E>7oZqj|6^S7Vu;W^26x+mD>63} z#>HY}<4JC0Ur>@W z5~8z{U6_kF9bEg$hXP9(E;maVPY?1#Av^A&*JQ=66PF#gs-5Bil&)bGY zOAJxGqtrSg)G}MH$j4l)ev4AuJ*>Vro{%2bw*I!)UT=rZhHf&5c3QqwPmk4^R&&Jp zQePN2l9vD~lGRkZkrMZf@7YI9)+?=1z7D~Ktr?nHOU1x;0G6r+C{B$Kj|JLU7b8ky zN$pzXzM;l3-B>(04djdq`o?z@Xtn3iAEPK1S@`H&wS+?O9#UHX9(>%|7>sL!* zauKzmbVw!2%Lju7DKm_#KKXE_*M~OW?;&OIZ3A;(GD@IBMeB5D3+6R9C6ToDaLT_} zse*;C%t~E>H)V=v}Y1r0&FR;KEaHl*Viu4!uB z!wTJff!%#^4_+|&xNu{ztNPV-9Xv|A=7x)rg0^qkg44hYR5 z(^`@5Y@NyupWe|>q=4sg_Q>ZSE$_bigr#F=aI7zsJBEDB3i1qeqX26on0H*qO7RCNqzbDAP`q1x}1$Yb-cWA{ zu(l_HHdE5BCBbHm#aJWrRYUC6KoWXV_Rj+-7R zS}(sTqO4#)7jFR{$&lTu3X&qDRKKo^?9I;Si`L_+L*6gXCrsb-l|=e*Oa^0H#sCfU zjb!|t=s03SRKL0>j;*G;{VRUjTBYEFm#&LA2@rIUumn$PVJ+g<)nZ^z)(u-EV zZlh%M6$-&Aun%p+*V(4SM{N3bG%YGO=CIww+C@56=cptj1FL3Bl?mzKS97=~r*ex` zY|-X`Pp`2>+&|gtb@_M;{kgcUUGwv&E8a8q>(+&sSjp^}Mk6*0m`BCx)tBD2mMSWt zc7M$n3Xe6nqfpQk2Ip7;bb+Wt{L2TF&#$l9cZ(a3XQ#w|(gpz{&T^gV$c3<*hie{q z3vU6wi)AAL=3~U+zftlJsYhWu)SkOpqs z9z!RrgpxmXH_u4^93F}`%}0&+NQ`=&-#C^e6&6Jt?aV#w_`V!l(%Okw1AWdoU$tf) zJy?vDbl2kifgq{^GwxU$(ld&xGw3nY{8D-{bPI(dOBQ~ zemhrE>`$@uDo2<=lTe~#cE5%cmOXc(K;2RuG;n09+DJBov{2jI%A-gZ4Gx@B&};i_ zrBS+rHFP5VVUqoryZHRpiAdtEBb>lHHj79YnZO!n!wJtV|7Nr*jvAB?|2%W%jNLtG zTcqZ-*|$1}sS#HG07QDy=EI(xuUjJ=jIs??2=HN|RzFM3;A193zThvWL3R4)YkC zJbcnMDd-x%+@Inrbd|8sIU4T* zO8`q87mv~Iml=_yZaiR`FNN&`j3_}KAX&)BXB9-u{#Z)|Bb-^qOc2RptAvNe3qqsX zULT(bL0kbWJ@UA9eyD<`9AXMs5t%(CE<8eLk^gw0kY?UJRv;=_jqnoyyEEc^m>xNX zlcu!PI}ORN1sysra_170Ks)6Vx!OI&16*7UHYvTH<&i!C9FJ;Kr5NV2S_qVa6pTe7 zgJh|06pIPPWE_jclkbB<7l8@8D==V&#|6a5(C#r#^4cy!ut!p~qfNtVN5zs?j!RE0 z$&Z8ou&evmPVnD)MB?8jgrELU_G4Km_CM(n|0(GH?_J`bYHlUt>FsFV@q(r0}9h5xm`!5hvY!v%9bD)`VJw1^;f7#xS zbZ*p5Je`F!J#v^zXY3pw@ZY<-Z7LtV-Z@`)W7c&5Rzh9+L-%#T#_h-=!8_27PKdEX z0@x5leu*A_q;9a&h|-Q93Be`kp{2%0l@j8LkivlIjeZqcLhwtCZ^7&(UdV>X4@kig zV@F5VMKf|x0B9+f>tharmn$@8&E;)``mPYp#5qYQFO#(*iqskdEAW25Z0+T+d=lhN zv%UVQRXME9cW??i^hQUx2t`ZW(PSA#W+v}+P z+d9tz9TmxuBrrsVdDM_ZpOuE*HkHX7?!0B2B~iS$pqXB7++vkIwGO;K8R>>sXKy4_ z1qB`mnas%oI+gQB)U{13E7loEzjRh{NS#oTNg`;XMWa?SD9=fBq@MrSSGf{d>vxWm zw(fE_=z>7qeTP|+mbtiCdg(zZ&qYS|uvR}8w{c<;8U>m1kS3l`-o&3-TQ`SEfg030 z6o!(h@NncHQ-NGKEolpBD|Zw+ccHOE+O~P5O4BUIXHG7(ij^QU8#2qe8cE~Y68xmffm3GICbD>u$F$_9@yGfW_Acyvb$nlpR^FY z)BCxeGlUT#Clo^H*sJLd`}m|z^q|~%DV9(rND6-QoA_B9%{VjcmpQJYcAC#U<_eTS z)Q~kIS1RxuKluyu;l!@CY(CnDueKCAQLK+Cq9lO)qE1R`EJy$j5st>25a}C-PD>DJ zwMk zJumNe`}_K^Y*sJkL6cVTEm!g1Pe;F+xa9>%sm?^|u&c?S_EOku@DLzKwX{}qFBfdYd8F0^9XBBFD>wi zq`pc_BlxVSW@S$Ymtdt4>E$ga`#k*DlWYlP{u~Sz#ACiTm(?t1!(AM4`D*(rs{k|3 z(F1vKm8A9e9DqdN4qe_D)CjtNWvon6jaKlOp6k@!ukllQO}WAt_#+4f?_^TIkIFul zuQk^a)OGebw|c=i7<=9jY%KA#iDD^ZK@#>ceIepjzbxrA6#`q>-}o?PBOo0k5WT$6 z0w2Lq*wnzx(kd>|M;2rG+o7NDnc~YC`^__U=={zR#zhz|Gj1;=ZTS)Bp(JN&2$x5A z+M-lz{ruRHMQYMX9VJinX7Gw`9LA$?I)B@-9`d_-yVbt6C{zPO&GKCQmk8N1^7(TUFEOb>7G=k|>5 zFSlESp5Ynf0XxB7)RxrNfB>Ft3(SjAVJ|tjeq2t5TjenrzsODW!*pj5p2Iyg9}Pu~19U-%=!vtduFK7q1Q) zUxCL~6c^D17?TZNSINXH_!-Zb$WO5g4p=Ku z`ZqF~RanleK6AeE6Sqv)+iXxa-Pf%Zw|WhC^S;Dn*W2dBQoN?^G3GJJ&Hpe6rPL-2 z8#Z9|TQ5&8={XBH2V50goDUhxZ(lK0AK+phHOZ=q6uosZSBlKDp6}IxB^MT(btqNO zE_6oAH%)?m)k$9I#dtu{pR}j%--lkrfo)0K8z!%a{?4N^~zXaD@i{S9d5kt`+ianF{f=P4aDY7Ui3 z1{Vwbm_F1&*EOU8r$h1$4nfN+l?sS<^q3vm40aA(K4?j@P>UE>q@4>x*}2yno*#Fv zYzD?N8m{;jUOdi=H4=|}48dh2pyVZ*>FY8BZJmF*8mz<9AJQY1!UIgj89scJ6YRbK z`{BwrJoC-Lk*YRgL@^vZ^iPTK2Y?KJK}SS>c3V!pVvM9g3zd6n4|1g9WkaY5Im1mb z82X#^T=(FYA*DbGfAHUuKqXuoo=X^1gfNQynUgNn=2(AOAaBjL#6lc=En;%MY{ix( z^mm&%fdbwM-H!1R$Y`oIpJqA@NX2 zO^*Je9efG9Q@A|-HkMp*U|juQ8G+H#F{{Xc8!I*ioP5YRyKQK>YuLGK=y-w5^w~n{ zN2kt+i7ERlpr^?BRQ=j{F>&AfxDv#8NfZiymB8n4 z!pDljr6Ba=%Y+0KPT2u6l`p``Nq`%m821E>zyCuI^soKu-#gj;G6PY?597)3hw;Sy z|GZHP*;whBS^pQJPelJuO#deVS{9KXiF-cTT0?^z85s`A=x}@_{Er-ejafwLQ@{hD zfoqRmdtSu)rg6Kl8>9Tb?5(+!^f$MIEG+UM)}`)}WM zHRxT2Dj@h?*Vq+h{A%%3H~|z}t)4<(^563S#y}GiE%*-oY>mX4Bb;)B<(AMVyxX|tm%TNWYT3y4)0U4YUTNI58 zYw1eL#GOO9~{H$qVk1enUPEXw`nXGbzJ4(2M# z{sg-!sTgjgk={c6EfKD0kZOi#uO7ekHW00!fw|ynh;-F^1bU4j%9kqf&QPW^J`|B|43S!O}40rd$f+k~y9q zl&Y(@ZYfxw{~Q(w2j;NH2E_+qcx}|rSE5mgKa{Awgd0JL52KnrVbhwecQjIW6vJZb zh3omHZ#W${vqKEh@eSg9L-+ukJ-v799W<@_0=7LbcuKmuoP;3mqY5G>p@mL_eli9( zY8vy5p69XAFVOtSD{saRwMXzq7YHsDpOr6(K-%sLq+mF&CK_gmPMaHFneRuU4r+6g zT#>T(yZeRg6mSZWR$&Rh4wa0SOeci8h3c}dZoG`fLG$UyI((Zdf0_u2@ELRj7qrYg zkbtWtP`-{Q5`L?YRm1>3FaP%&YqZ|i?2XMo2K>MN`TxBvmL56-z<B1szc%*@S_a;6$caxgjCsxFA^%CFIe-(;(5zM zmh+;fvi#5a;!|>`#kIS~LsheT=aa~F$ENo2=hpQg5tN7b!B~jwozM33`t`H+*7u^U z4jaHPWLG-mryh^9{b{q0+Z3i1(BXx79pv|n-(T4vAZ*DH>^CuvFQgxmlb@W>TOqJW z?=f#LbkIEhF^ap0FHG1x0WtG%aL~4?MRa~ibhEzVAW|e!;sLd$a-nm0po*(##qh<5 z7~rDt#&FRjOz_4C>EQKX!*IrkM{v=^SfZ(tY}s@%wg9_Aed2)$;P>Dqa5BVHc$p%u z7`u*r^Wc!+5nvJEl3G9P!Y%1HP<_mSCJ0r;ToE&ZE8-`_nxZF!nzAdxE7B*V8+)_XT9SJuyeeK}a_#G)XJbmxbFTUoX z1|Xhr_>G(M`#Q(qpn_l`9(X&D>K| z7b~vsT!6WDzhYtY9Cj`QxG!#j+Qu|@V|izkFTsM_#<()Lwybs1SXb6Dp&pW~c&xjr zkPH`ntE(rp4a~yZvQWIrv?pLhm)FjytYDtk+KyC81}_EF+S~(;;q9X_l?g1?sbM@S z2RApu>5i48>U$q(bXIUqAUy!IX(l%M@)a8r456#;OWW=(6@6?S^>3cR`9^54&T>tWm-{HSjBq%{D_KmJ@27v|Ky7AswFKxxxwur?be43R^qk5m zsxjSFni{U#RcZDY(dmVvdh0n_m-INL85 zc>(d92Ls)~>w8dp_XzlH<3n};88}`sI}9SL!+H%#*a7&{uo(AXJXgTF{dF*J;0Ze- zVlZy$T{ppO_GJKhtOIfTWuaaI;d2H`pjyU#WifBjJ(oh;?PB1c_jm$@3Cm#m4%B)t zxw*S&WMOfk^>VBtmYc~hU_s!*H#fUJc(lWDblA{FVlbwk-2wb`*}CUbwlOu2b*`T) z_uY5A33)=^7v_Hxb^v!D?vE&pYm6y)47FJu);Co*O{g(j41F-Kk5M+2vt!cw4h}gW zA2K+TsSoR}QlvRhsyC-+kQ!{Axg{%0s0uAxmPeKwqqPtbtnuy zYWk+8p`mV(ekody(pam=ut*?ZqkOKqQP{}>bFoGKG~CmQv9D$ANRMFQ zj^!uAS$N#cp|qCL{D+%VQFXauXtI`mI9sDcpEkxpPMZcNkz1QrUMmEz9nV9mCLZq!kvWRXnf5od!aq78N$ni7Lf{=x~)R`Qhd1h1hfhn^ir z)XkpR5|p6H%WEHQehp>PGiTu{tAi@_n#sEyOM?;YvqnF52jS|sLH4D}4y*Yk@se2* zH0()7V`^FMRYNNs39MP;uidO!l110yMb|3Gj>FFN?cz}x`N5lKzINr#sjO_rEJ+3# zMl*?6WS1WqiJLqJtm5aDO10INTwScjIepW--P;4+4;h@SFCCuX7|c6+Q>-J>pHjzz z+p`U(k8%o3NYFQVHuiTE!<2dps5M8A6l8&A2_4&wZ*86$d(}=!CHcd&nxrK|^IK8p zA6j2ENYiD(jpie1qmm7cy~b9W8Wz>6qEGn=QUp`x69mT!+yIaJMahlzfdbi;A7$}B z9=dC59XNTR+o!=5(VeDfBhB|+UsGKpe-4q>E`|F$d5Q1dA$1%>%p&#HbyrlGcp4N1 zy0&(VyNpn?4=ngNrTn;SV1FU>R#>n5-f+br?7&5;vf6u3DK9&G$%H7e0npYCjB};; zY@gAZ(e7A(iM%lQ6oYa1v3zxdm5@7`naO>-cm)x?}SOKnoV(_9jVtHzP zkYkDxvLxGiO0X2X;1MCCreFmg9ODrilLs98J;tjUAaxKd**Ay`q`SKZ-S2KzX;Z%_ zu6iXrLVaktp+RATzN!`%nhnL36%LdgTpU~!{)DuNINJ~UC(dmoe#WL}*n`a>=nWQ) zw%pe@ODHdi?{S01zuqfHe=w&4ZTl;HRrxLxhl4cnhIw_5Q3Wy59K7~lFas9%Hmj3> zGq^!_^~;Wl7%{Dli8Tx?b&a3L|JsgF5=#)2>Y6s>BJvy}QGmJu1T;k73Hb=q9D>E; zt&8W?$M!x9Q@UdyDN`vLBnHLXRChKXU!;J(kwd`{VL){?jcmyvWBpdT|tWIV3w#!kCc}c!E6vKd{`+CQZd; zvX>&t1vnsr3$tPq(HzP$&ax1x%A5-)NCo}vN*O*OUyKGGI>fGxY|n4M@;8TRW8o=}ZSg3&{o@N_tICo(0ORdk#P#ofqwP~|!IBq+;AuE1O+Kd5j&KpANVoO zz*pqD7td3q<$+?yCPp;I3hV%+!$%3Ugv}h`m)gU-!^bS)`;8(-H@N1`lnU{PKnp4V z`}(d}EVg8uQIbnLWkPBTz=zGdgUIAoOuED7&lADBtP+1JY5GtasU22TG!eQiOBD0* zIGg&Aq7>qUqERNnKEOQMJrg>np(n<)YzqD8i(@uzVy!qOQkv9}K6Haf82PYfnV(8p zuWm6&DZrQ%;$%IO7^2*i3l~vvE;ho>uP0w>b^k<<+FH_zDZF_=5!*yQC16PvDCTQ`~e{B02jqv z_YBZO5T*xgSQwFrJBBlb{8hfj+6gGoLy&4yA{xvih&%cP*3cwiru#GN%&BC$z^ax- zAPGPFe83BVP`%_gR?w7Ssk+=>C@088mZ8PjvRWxrtCFBfw8d{dN{%;=xHY+Q68~5#f!rTF&t~$G=)O!O!Ii@!xX49|3$Hd#OzcK2m-L)Kd@fbjq~MH+mnGtfozFzXw?WH2Ds7- z^I%q^*x{)f{=`rN;_5+wHJ2mY!Kaylfvy0+ITFL2%~k0s*r1Cs(?zUFu;QxX&+;X0 zIn7?k)$UQu+@OKR0OFdYm^Rf#y`if9vIc(Q@6%i9Ury?L|Me_%t^LO0q%!Am1I7C( z@4f#8G(8HX!~J8M-3|Xw7~)^As(-(?ih~H)Qhy%y^q~G6pX zTv^H%Hdu@3-q9|`CY{>HbyI5Fe(zK-q5|eEd;eIH6(gJ&cxGjV)1Gs!}%+fgy#x9owm`acR znGQ#p_g&ZbT-WbY9nU#F6M!p`^LiWMAyAQH?C2txPZ%qxeQIbNPnc|S)1Lu)3%jv? zw{#datbrkiAE8({(7W{Pyf`9Y$yg+PV!Jh1mh4i&u`qfP*=+b&^tKCpLp=>W5Yx`s zl#Ish*$LxUm>oKN7YL>o(?*^CNz{?*Y5A4kB=`L;xE{Ebs9=Yc0=>@l*?i|OGw>Ee z5=f9TB)e;7@2>hWJ}abf9pj@MK~?~@FyAUeW5tN0{^y4CUM`W~rk}0-O+9z`q!uwq zC8U-v)y#3bGLB>^1b7iOFWOrR5Q;E@PcVlYj(uYqrR1D(W74vSM*2fzY$25bQ_?N$ z`lD;w`bzoe_s5M^*ct4jO+ ze3I0h$ii%%AYpb421RDusZ?sE1^p`8cB-vw1iEb51dfQpVNyA9t$SQn$O?)8nC6@1 zVbWN6$`q;-C}M=t$oGMIWUNh;a60kFdf$IzkS*}W%gBy>XP1}5|4^E8-=|C)Ss^>- zv$405E#zmcN5~x2Krm0S1!ZKRV4&UyI%-I@Vv=G$g%q z+mC>6blI|{j;@$dI^<-~$RM8e+$Ltx)+hok&AHJVv|c{lc361S{di4{H?EgpcfG)@ z(owUX#({bJJHa2=RoI)5o8|OE^A8c)?vDEP3FDZ#bOeR=qlM*$rh&cPQW}%^@4FKC zBeJ3NCa{e>Q zA*tsIGRqH56+gmP=X{Vz?u|2RY;5XwcOGr-?4>gm%z^mo6jj9(7<$Gc|5X)`T!&iN} zTuRF%+}VS4uJuqd!vfBBnrV2 zn&17*gO#5)b#dDLam{$7Sq5!^ybN*Rw0>5D2QoD1Fs8*g^Q0M zca&Mp+jS_(wCUbQV?;bZAN|QuH@c-Tw5(hvqG_*qxI;LU4C1XKTF-pyK=o>C$!f6) z(m2lEbsv~_wDww@c+&MKgHG$6(Zv9ncdy6qkN9>AxV9m>-+(R{D`Osylvl{A@NoG> zpAagub+9f;!amtc4C2MFEDt?FJ)2hX5W+3WQ&t(12J}V#O7p6diHok?Q6;-eV zjuY~M?*OSW>dmEQ59?eJob?`30=uD=^&((ruNqx(mY{=X3~;+X|K%-0dV-1n!Htz> zjbE>u>6)`ZI|$w4P)mu+)F#v+H(!= z^*(*q`pYj-GY2SK3UN_!lSFd#LMo6$O;uzU5A_WzuGJvWq?Y#bJq~5N&a##*0=s2` z!hz24D24fQQ#v{#6~*c6y!Wy@(mz+x2wG!TXk?H~h9Vk;5Ri9UTTcvq#t$g1KgmBS zaH>DC%{)XYAer4LSPkJO;a-Q`&F-In~u_R5`mcp3+U*O7AAbl@t{q zV-*4iM62%=E0?OZ3Jhj#{v_5{Dmv5L|D1pSI_3U-{#{9|6hZvhazP>e`bG7BgW><% z#H&=*aKThX{)#5{IG7y~KUljB0vXP$B4AfQT$@|yE!~4uCLE5ou@b<;9yid4rb?S7 zEA&g2RCM2!886~9gEVVJwl%Xn2JmZCqrBWp8bpk_8S>YO1-{^B#E7C{dHUmZlU6@{ z(K-EmSwGEsm-FrLN#ZNmLSBHGlT-^U%QAOCj>9wDe@yJjFA~uBA&irKw2J^ceRD$$ zKK*u+8Tl*wc^}v_Eu?zng`#Vyf0_N5)zA}h`)*fw>yQ|HJ9#$v`sGHeshf1)$a6ac z_vSu?LAy7GsDq*aQdYuMy6+spo2rJf`qYe>vGVlQk%lt~4GAs=3<$)2wIk0s%8XfY z=1hm(@qWT%TDwbF46rr5NJazSpwx!0jhj1uZdBLheM z-=fGa@3CDim1A;EqEKgwf}{J^z zCe+R$fpnJ5GZi5d*Y}#Th;cqZ#Nc!e(LvU{)XFbKa9%{$i_ew3r)&vr#-VU&0$UeT z%Ht_N{*uNC#)h}bQFSI8omcMq0AT0I_NNAH4|B_oZk3uG|Bx)>Zo-Ccj_Axg>yqR@ ztyWk4MdJi%H7#k}d7leY3SFiig5XcpvPMkGtU3vcB3Fuym}yvllh*GrIa~!x*n>i7 z0Fa{)k~*zu36;HF0LUq|W}C@%;5Xpc@RC^{R=EY+aSElIHk5)Qdnx8)cOexyR1~Qu zBnxX1YCym**14#0C2_&K0&^00ptZ!z#z9V9wEJj*(o2yFlmTWks~ag~Q!9BgjrpWu z*2oAI=>myh$$_8u2_bO!gnIRa{=Q0#;Hun1I<6yeh4KJ@vX$-N4UIhxG^IxA45w1S+ez=w_|UvqAW75XD_f2IUhq|NFyU;Biv1a*y^iB`oQRptI6N7 z`cUcRR8z7AE=O2GDy$Wo8_p0$S6?VA^%uQO?YydL^mo!Mq7-zB{^JzA<`m8G^8=Ru zVJ<2l0598W>0TGhdvZWn@3=T}LDao;_V`&jg#lYYehF(=txGSjYDygIBOWz#d(F-n zmNQ(SQ@cM|M|pA?WzG6kwsI1+u~s8Q1oK&Dg}?_|?U*lTX_F zg+KBA{UdMj*MoZXab~hY?sRfPONbQJQ98@$km7`6Gc#X{W^;++n@yLw0za)QUm_ky z>6{Sw>aQ9>P;M;0l}r(#la(sXpZHI9c(K5;?d3O;Pamgx$BLh@$muEuuqD}=G`T^A zptKd1K#I*F?KkO8SODBU8OI%(hnWxSw>X^;xHWi@fm)AIo}Ib^!(q)QZbMwhRhM|L z5hI_}3lA-4(ADSG3l&%O7_%!Qah9BrOVTj9S8V!E9toCH`bpYaqKs?tq{-vlSE%@F zxL~snGsLDv&6|m)YI*xl-OML^21c;~uq1qN8| zn2=?8RFv|Yo1Mcvo*&9i$r65LAL>&@ejKV%_N$v5!8L&`pr2xIvD3wiAX{H;C(^ht z7fCMYtk8b>z&;fQz2p)>dTk^(*-iH!M*`V-a4u10uc+KknG0IP23D|}3=%&Y$aKM- z7HMA-%~_5}wZ&K3Aa|n7SUL*5$feXh@r*rQ@`#jdgKONuo8RHow->`O7~87=)06|c zNj=)cp39-jPLXqExkub~jA?K-+NhTY-I0;S>gKOtCGzcZIxze5sJnMWf5T0>c z7AvQ{1xc58G)NuCWzIePa6N^qlUx~nOm2{0BAi-kCPVL&2g^0(FqAT9AdDBZRWuKr zW}nV~{1n-&NF&l%PPnRiG}4Z2j4=l7Yv#c`u}m&@yfMWAb7Gp~x3|fUaB1+MVPZk* zt2%B;&5z5fCmw0X9 zRIsJE!k!We@e<)n6)!?1n=>b9 zj#|XKN?Y}u<1=>WZWpq<54U~^CGDTPF<@D0^qdvSCwtV| zj*e)*rCAi~l#|zDbiBn%uV!s^^MM~%R)&7;-rNLRN#JV??T0h1%iy7<2sjPNn7YOg z_spl0ydJ1u?{WGM+y1LEeud*7y04$!)|jsw71y5e`o^jc4@%MsQ-wcmp4*WwsXF&}hiyk) zd|TCqlgtb2J+w;9Zzmtv`_mJ*DcSN0wuR{$Ge>jHvaHE7mM0(9FVLuT(73WOVXFAz z@yGiU&dP00K0dGPf8{@g)16Yb9~vpsC>tRYcpnLRQLYQ`sR;fFYDizNquHo)=EU(M zezy_>@^mvx=T)@LZw`nJ{KjT?+Q9>3_f;h>9)7jpW|!Ms|C$r!(px!u?>#w`;IJ~5 zb?$jiW#_Sktf>1n6^#|o*dwwRRNq;Yu%Iz}+Jun-`R=9u*@wLokNfA==WMg?8Xdkg zbMjF4eY>Bhf30d58@hKMe{^G0<^J6k0aHzNcJbm_*UAf4A54_KIoxEu;nq%H?b#_s zQ-9=L%=>#!qV(bPUCvf+jFqf4FJ1PtHw-yxIIA^g)OLGq-x=wv%5!aNORP6Ce~Y=i zI>YjfYLZiB@!Z?TN6ZXgdUQ-YN9Ff@rgi=uN~sddk^{A&7n6&8W;M2LkJjJ)@%*@7 zM++h}>$Yy<8oU~r|L9)k2)!$oF?FlOMdI50*^Zq0r4J|Drt2%OsUJJHRLnBV&6X^@ zaru;gc*w2T6WaO@e`$8RT6M27sO*@UcpH1>(a8s983~iti0u=uo3A&p7<=ub&Q6au zmmLcO)&BL+Qx5HTl=_W!qpy0}ao=QL%Q0ydA(6}P*-ZGkK*@EX;qlZjtuNbIObgyL zTl34A6?PZ)*dLzvOZeG}29Fz(<6aK0_x_Z;F-;Z+Z%F$w zo_E;1*>9Gz!YZXIPL}>wWfWgoyvMp@8RPle^{;0&A1J!~c-MEUF6C4_cxhKy)qY~) z`2^Fyj&-pPW?M8Ii+RudRi!QNM!}`<8dc4IRBz>W7W)WlxK^Xe{%H#xbM;f(&nM^D z^H-11uf5cH&s!SsB6YjNlommh?V~>y|JGD(@?=kajEaAJOa6J=mkCk#n+`>Yd~TYo zu4q61MSYseC8Nw&)mxq7-u?Ad_rv9_|L%D7L(qnG4L^TaXtMoXYL~WE=ZMx$I3wYD zLPGvpt(o-}3A3E}UcOI6uJ$Qe@htxvou$Zw9$4yIvWPiEYp51ORaKR-BzlQU-qzns zj>3CK+3-#Q%)Zbjmmy!>9K2YjY#l zGMZS=K`tr*dl|Buj^aNepFqpK4Y_P2{EBQnHP98%Tg(-fy;t;ZRyELtnu_Zf2$UcG z!eEg=AQDP&$jA%e=r!;~AN>UpkVr0IHHXg&;YdYdoG7B&lW?N0Q;8CDC88+Uaev_c zA!A!lL;9x%54H`sjTibV8P;e-oh=k1yN$MlwoJ_HX#pk5HFs9yI4)R-^IN_VoL5~qBvy#&7Ow1V-X#3p9APgTEsUR7pK_& z3{rM0_|ZNHS_gAn+Uz$blChG?P=UK|huIdIpLD|LjkcSYi8a`8cDW=^>SEYuDiHdge% z+fc|-(}3dLB%$Oof7ve#DS_^Gj%F|%a561*C}g6^rZ_a%j>G2)LpWl>nikPY<4U6r zZ2~nGgBp0q6$W%6F}cY0TBa7)S>r{(uRTLW4S)zVHB!llsc z+VGcC#=rx($3Z*fl{Q6_%K~5_kRA;2aa^{&`$BIg=f$q}4j$w#R4)qJbpVtb55ov@ z+=-&eWzEy+qOyfjxc^4wxqZ9GyRiZ3Z9g-<1!kb9pBGO+Wyb96PpR%e21a1YnF?*- zQ!dK_ei#r2b&$i_U~Z(8CldCz*;L>hS5E6z9@tCOtmhu30!1!cYD0q~`;%IvNHBe^ zfR7D4WPm)W_V1eYApA7^>l>^QRVF!NaNHMrvF#kDOV>(?0$RRXdDIz9?xDe8Kwr@& zmoNZ5Uo!^ROMxem$N3da zE;CwB7t$_DEanP>qtU$RpALvA>sX0?Pn8*rd>9<@E<3Z4E|dejM!=`Q*|O!YcjLi| zW59}d9%d%e#bJAT_8sR&u8vuotx+L7@h#OQCe7v@6foXmDjm`n)T!B?Jox zgZd`89?mYL=wWXe(!XbjTy>*iX-yD}ueE!2VpoWk%RZJ;$aUfhxnf>0YJmO#i0T&0 zDkC01$6bwxVdz>x0YJ_iGXl-Yn1gf2<;!C*z;wX?^$& zK@50m%SR=9z`O~pg(s0y_XdIM8Wkq&!|rcV1XB29f>{KZbfq4VB*SXyLXuS3l$qg1L8q;D076)ZTEQj`Qh4vV~kJDzuN>3YWXM!Wu`jPGpC%R~! zVInaV={oA1YT5>C0`|bT_`2tgD+La!0V|k%N`{P7E_YQlzlESg=IQvXyTGN8-^Y6> zlA%3M5-eKH?Y;9w96^{q`QNPo7gfV1nD~{Nz%U9hsyY`bWRebsTn~i$a2d?1@B`Gi zRTSdM3z_bX*0D+;D95guWaNU^IflgH_G#>(P^`$yrCcAq&LhBw8elB^M5KK)6^^1@ zqPaH2@UC067Xm;4zQJef7s+&?Fl@;7WK&MFj{f%TYjc2fglQxTm#yllbRo$C@H6X> z^)8k+)*cK7H<>v8=I@~kN8ls!QS96{^{RcK*G>tj5n8?|-U`Qtpb$cE z57Qwz1dIj~Zi4aLUonXb)%{mZ`u_!4M~M`RBDrEIk1N5#AshjUPt697;6XIviMK$ToVAbGd^#Je>n(TD!9Bo^FvZV&39l?JTtir8w4D(ia`bW z-E8G?h-HTX@=0AaRT-M5CPsLXYB04SPO3 zr5tJ0XTZKH2`{h#Jq$q)W1Jq5Qz*b#;?LY`3Jd>N4+;jxbx;CNsvk`$WKuY|n^Y_2 z`6BoINva_;3hCseYDr!VWrydh1%hS%gg~;xS*FF73P({5Dejmd6J5&Hj&<`(KSYDi zT>)?r4zO$iT|f-M_HLW##id+3GJV4d%?03`ewkU|NEeu5G(-p>qe`rI1_qCEn4#ef zTJB00hK=2=!w?O3aw@={sExm2_Hqebz$I`p7*|L&XTqLpiJZ`_XmVMNHw98R8=#7K z_np^Gqy_8=XmA$}ZF1T9016CLd=DRdh6=D}NZ|+CHz5=NeIpGD)$dp}tUgE{V^1!? zFCuD$QNWSsaqlrzSR5qmu)7!I!)}oj(i$^D|qn5>c^RRN*xpvuO~hq#NuJF|qsq;3ui|Tj^pF=2c{q9wc(G zufF0dmiLKtp>TvnPE*)7jPQvNv7ass*;}wElglD9DR9uNCf5M_s2;wE csLG*~jIP`$!MFf7FyQAYtRvUwL-oM;AG(dwtN;K2 literal 0 HcmV?d00001 diff --git a/opensrp-bidan/lint.xml b/opensrp-bidan/lint.xml new file mode 100644 index 0000000..76079fe --- /dev/null +++ b/opensrp-bidan/lint.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/opensrp-bidan/pom.xml b/opensrp-bidan/pom.xml new file mode 100644 index 0000000..fd972da --- /dev/null +++ b/opensrp-bidan/pom.xml @@ -0,0 +1,30 @@ + + + 4.0.0 + + org.opensrp + opensrp-path + 1.1.5 + + + UTF-8 + UTF-8 + + + + + + org.eluder.coveralls + coveralls-maven-plugin + 4.3.0 + + + ${project.basedir}/reports/jacoco/merged.xml + + + + + + diff --git a/opensrp-bidan/proguard-rules.pro b/opensrp-bidan/proguard-rules.pro index f1b4245..3d94caa 100644 --- a/opensrp-bidan/proguard-rules.pro +++ b/opensrp-bidan/proguard-rules.pro @@ -1,21 +1,17 @@ # Add project specific ProGuard rules here. -# You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. +# By default, the flags in this file are appended to flags specified +# in D:\adt-bundle-windows-x86_64-20130514\sdk/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html +# Add any project specific keep options here: + # If your project uses WebView with JS, uncomment the following # and specify the fully qualified class name to the JavaScript interface # class: #-keepclassmembers class fqcn.of.javascript.interface.for.webview { # public *; #} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile diff --git a/opensrp-bidan/src/androidTest/java/org/smartregister/bidan/ExampleInstrumentedTest.java b/opensrp-bidan/src/androidTest/java/org/smartregister/bidan/ExampleInstrumentedTest.java deleted file mode 100644 index 8856f7a..0000000 --- a/opensrp-bidan/src/androidTest/java/org/smartregister/bidan/ExampleInstrumentedTest.java +++ /dev/null @@ -1,26 +0,0 @@ -package org.smartregister.bidan; - -import android.content.Context; -import android.support.test.InstrumentationRegistry; -import android.support.test.runner.AndroidJUnit4; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import static org.junit.Assert.*; - -/** - * Instrumented test, which will execute on an Android device. - * - * @see
Testing documentation - */ -@RunWith(AndroidJUnit4.class) -public class ExampleInstrumentedTest { - @Test - public void useAppContext() throws Exception { - // Context of the app under test. - Context appContext = InstrumentationRegistry.getTargetContext(); - - assertEquals("com.example.opensrpbidan", appContext.getPackageName()); - } -} diff --git a/opensrp-bidan/src/androidTest/java/org/smartregister/path/ApplicationTest.java b/opensrp-bidan/src/androidTest/java/org/smartregister/path/ApplicationTest.java new file mode 100644 index 0000000..8ce0eea --- /dev/null +++ b/opensrp-bidan/src/androidTest/java/org/smartregister/path/ApplicationTest.java @@ -0,0 +1,13 @@ +package org.smartregister.path; + +import android.app.Application; +import android.test.ApplicationTestCase; + +/** + * Testing Fundamentals + */ +public class ApplicationTest extends ApplicationTestCase { + public ApplicationTest() { + super(Application.class); + } +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/AndroidManifest.xml b/opensrp-bidan/src/main/AndroidManifest.xml index fb4e34c..d279024 100644 --- a/opensrp-bidan/src/main/AndroidManifest.xml +++ b/opensrp-bidan/src/main/AndroidManifest.xml @@ -1,43 +1,27 @@ - - - - + + - - - - - - - - + + + + + + - - - - - - + android:icon="@drawable/ic_launcher"> + android:theme="@style/PathAppTheme" + android:windowSoftInputMode="stateAlwaysHidden|adjustResize"> @@ -45,92 +29,97 @@ - - - - - - - - + android:launchMode="singleTask" + android:screenOrientation="portrait" + android:theme="@style/AppThemeNoActionBarAndTitle" /> + android:name=".activity.ChildDetailTabbedActivity" + android:screenOrientation="portrait" + android:theme="@style/AppThemeNoActionBarAndTitleWithEditButton" /> + android:name="com.vijay.jsonwizard.activities.JsonFormActivity" + android:screenOrientation="portrait" + android:theme="@style/AppTheme.NoActionBar" + android:windowSoftInputMode="stateAlwaysHidden|adjustResize" /> + android:name=".activity.PathJsonFormActivity" + android:screenOrientation="portrait" + android:theme="@style/AppTheme.NoActionBar" + android:windowSoftInputMode="stateAlwaysHidden|adjustResize" /> + + + + + + + + + + + + android:name=".activity.SettingsActivity" + android:screenOrientation="portrait" /> - - + android:name=".activity.ChildImmunizationActivity" + android:screenOrientation="portrait" + android:theme="@style/AppThemeNoTitle.NoActionBar" /> + android:theme="@style/AppThemeNoTitle.NoActionBar" /> - + - - - - - - + android:theme="@style/AppThemeNoTitle.NoActionBar" /> + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/Zambia-EIR-DataDictionaryReporting-HIA2.csv b/opensrp-bidan/src/main/assets/Zambia-EIR-DataDictionaryReporting-HIA2.csv new file mode 100644 index 0000000..f5465d3 --- /dev/null +++ b/opensrp-bidan/src/main/assets/Zambia-EIR-DataDictionaryReporting-HIA2.csv @@ -0,0 +1,68 @@ +Under 5 Clinic Attendance,,,,,,,,, +01,CHN1-005,Attendance child health < 12 months (male),n0uHub5ubqH,Number of male children aged < 12 months who attended a clinic this month.,"COUNT of male children aged < 12 months [Sex, Date_Birth] who had >=1 encounter during the reporting month [encounter_date] at this clinic.",Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +02,CHN1-010,Attendance child health < 12 months (female),IWwblgpMxiS,Number of female children aged < 12 months who attended a clinic this month.,"COUNT of female children aged < 12 months [Sex, Date_Birth] who had >=1 encounter during the reporting month [encounter_date] at this clinic.",Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +03,CHN1-011,Attendance child health < 12 months (total),C8vB7dH9ab4,Number of total children aged < 12 months who attended a clinic this month.,"[CHN1-005] + [CHN1-010][Non-editable in the form]",Integer,NA,Monthly, +04,CHN1-015,Attendance child health 12-59 months (male),fl4bPFJRI5j,Number of male children aged 12 to 59 months who attended a clinic this month,"COUNT of male children aged 12-59 months [Sex, Date_Birth] who had >=1 encounter during the reporting month [encounter_date] at this clinic.",Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +05,CHN1-020,Attendance child health 12-59 months (female),ZDSUD6VHnoh,Number of female children aged 12 to 59 months who attended a clinic this month,"COUNT of female children aged 12-59 months [Sex, Date_Birth] who had >=1 encounter during the reporting month [encounter_date] at this clinic.",Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +06,CHN1-021,Attendance child health 12-59 months (total),sZQXZ069Vgj,Number of Total children aged 12 to 59 months who attended clinic this month,"[CHN1-015] + [CHN1-020][Non-editable in the form]",Integer,NA,Monthly, +07,CHN1-025,Attendance child health (total),YAY7yKAkSvq,Number of total children < 5 who attended a clinic this month ,"[CHN1-011] + [CHN1-021][Non-editable in the form]",Integer,NA,Monthly, +08,CHN1-030,Attendance from outside catchment area,WFxN7txijYV,Number of total children who attended clinic and are not part of clinic's catchment area,"COUNT Number of total children who attended clinic and are not part of clinic's catchment area (i.e., total number of out of catchment area form submissions that month)",Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +Growth Monitoring and Nutrition,,,,,,,,, +09,CHN2-005,Child weighed 0-23 months,adkGrSGNt3L,Number of total children weighed aged 0-23 months who attended clinic this month,COUNT number of children aged 0-23 [Date_Birth] months who had at least 1 weight encounter at this clinic during the month,Integer,"Growth Monitoring, Out of Area Service",Monthly,Some children may be weighed twice if they come for a another visit during the month due for example if they was a stock out on the earlier visit. Only one count should be recorded +10,CHN2-010,Child weighed 24-59 months,sSxqU6qPyXr,Number of total children weighed aged 24-59 months who attended clinic this month,COUNT number of children aged 24-59 months [Date_Birth] who had = 1 weight encounter at this clinic,Integer,"Growth Monitoring, Out of Area Service",Monthly, +11,CHN2-015,Total child weighed,xIGHv5CY2fF,Number of total children weighed aged < 5 years who attended clinic this month,"[CHN2-005] + [CHN2-010][Non-editable in the form]",Integer,NA,Monthly, +12,CHN2-020,Not gaining weight 0-23 months,H5cadfqRh7I,Number of children aged 0-23 months who were weighed this month who did not gain >= 100g of weight from the last weigh-in. ,COUNT number of children 0-23 months [Date_Birth] with [weight current visit - weight previous visit < 100g].,Integer,"Growth Monitoring, Out of Area Service",Monthly, +13,CHN2-025,Not gaining weight 24-59 months,xWDkbLq9kji,Number of children aged 24-59 months who were weighed this month who did not gain >= 100g of weight from the last weigh-in. ,COUNT number of children 24-59 months [Date_Birth] with [weight current visit - weight previous visit < 100g].,Integer,"Growth Monitoring, Out of Area Service",Monthly, +14,CHN2-030,Total not gaining weight age < five years,e10sC5c4pRz,Number of total children aged < five years who were weighed this month and did not gain >= 100g from the last weigh-in.,"[CHN2-020] + [CHN2-025][Non-editable in the form]",Integer,NA,Monthly, +15,CHN2-035,Weight between -2Z & -3Z scores 0-23 months,lcpx7xdVC3z,Number of total children age 0-23 months whose weight is between -2Z and -3Z scores,As per WHO standard,Integer,"Growth Monitoring, Out of Area Service",Monthly, +16,CHN2-040,Weight between -2Z & -3Z scores 24-59 months,hi9sRtkzimM,Number of total children age 24-59 months whose weight is between -2Z and -3Z scores,As per WHO standard,Integer,"Growth Monitoring, Out of Area Service",Monthly, +17,CHN2-041,Weight between -2Z & -3Z scores < five years,WOZUqhR5W37,Number of total children age < 5 years whose weight is between -2Z and -3Z scores,"[CHN2-035] + [CHN2-040][Non-editable in the form]",Integer,NA,Monthly, +18,CHN2-045,Weight below -3Z scores 0-23 months,LpkrzZezPhP,Number of total children age 0-23 months whose weight is below -3Z scores,As per WHO standard,Integer,"Growth Monitoring, Out of Area Service",Monthly, +19,CHN2-050,Weight below -3Z scores 24-59 months,AzLJv6qTtPO,Number of total children age 24-59 months whose weight is below -3Z scores,As per WHO standard,Integer,"Growth Monitoring, Out of Area Service",Monthly, +20,CHN2-051,Total weight below -3Z scores < five years,OM9x7oS2qke,Number of total children age < 5 years whose weight below -3Z scores,"[CHN2-045] + [CHN2-050][Non-editable in the form]",Integer,NA,Monthly, +21,CHN2-055,Weight above 2Z scores 0-23 months,gdrQ69fCF8B,Number of total children age 0-23 months whose weight is above 2Z scores,As per WHO standard,Integer,"Growth Monitoring, Out of Area Service",Monthly, +22,CHN2-060,Weight above 2Z scores 24-59 months,ke26q8KPQPM,Number of total children age 24-59 months whose weight is above 2Z scores,As per WHO standard,Integer,"Growth Monitoring, Out of Area Service",Monthly, +23,CHN2-061,Total weight above 2Z scores < five years,Yi4grVdr9Q5,Number of total children age < 5 years whose weight is above 2Z scores,"[CHN-055] + [CHN-060][Non-editable in the form]",Integer,NA,Monthly, +"Vitamin A, Deworming, and ITNs",,,,,,,,, +24,CHN2-065,Vitamin A supplement to infants and children 6-11 months,DSbbltBORY3,Number of children age 6-11 months who received vitamin A at this facility in this month,COUNT Number of children age 6-11 months [Date_Birth] who received vitamin A [Vit_A_Provided] at this facility in this month [Vit_A_Provided_Date],Integer,Vitamin A,Monthly, +25,CHN2-070,Vitamin A supplement to infants and children 12-59 months,JfY9vBHsyzF,Number of children age 12-59 months who received vitamin A at this facility in this month,COUNT Number of children age 12-59 months [Date_Birth] who received vitamin A [Vit_A_Provided] at this facility in this month [Vit_A_Provided_Date],Integer,Vitamin A,Monthly, +26,CHN2-075,Deworming dose 12-59 months,B8nBT4kGhtB,Number of children age 12-59 months who received a deworming dose at this facility in this month ,COUNT Number of children age 12-59 months [Date_Birth] who received a deworming dose [Deworming_Provided] at this facility in this month [Deworming_Provided_Date],Integer,Deworming,Monthly, +27,CHN2-080,Children who received insecticide treated net,G4vWZAJ0uz7,Number of children who received insecticide treated nets at this facility in this month ,COUNT number of children who received insecticide treated nets [ITN_Provided] at this facility in this month [ITN_Provided_Date],Integer,ITN,Monthly, +Immunisation,,,,,,,,, +28,CHN3-005,BCG dose (< 1 year) at the facility,ZTeQmMrVmNR,Number of children < one year who received BCG dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received BCG dose [Name_Vaccine] at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +29,CHN3-005-O,BCG dose (< 1 year) at outreach,,Number of children < one year who received BCG dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received BCG dose [Name_Vaccine] at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +30,CHN3-010,OPV 0 (< 1 year) at facility ,rwNWKJC4dIO,Number of children < one year who received OPV0 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received OPV0 dose [Name_Vaccine] at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +31,CHN3-010-O,OPV 0 (< 1 year) at outreach,,Number of children < one year who received OPV0 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received OPV 0 dose [Name_Vaccine] at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +32,CHN3-015,OPV 1 (< 1 year) at facility ,J3Kd9wHj7mR,Number of children < one year who received OPV1 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received OPV 1 dose [Name_Vaccine] at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +33,CHN3-015-O,OPV 1 (< 1 year) at outreach,,Number of children < one year who received OPV1 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received OPV 1 [Name_ Vaccine] dose at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +34,CHN3-020,OPV 2 (< 1 year) at facility ,Jbxssr389B6,Number of children < one year who received OPV2 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received OPV 2 dose [Name_Vaccine] at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +35,CHN3-020-O,OPV 2 (< 1 year) at outreach,,Number of children < one year who received OPV2 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received OPV 2 dose [Name_Vaccine] at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +36,CHN3-025,OPV 3 (< 1 year) at facility ,dqsYPg0F8DJ,Number of children < one year who received OPV3 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received OPV 3 dose [Name_Vaccine] at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +37,CHN3-025-O,OPV 3 (< 1 year) at outreach,,Number of children < one year who received OPV3 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received OPV 3 dose [Name_Vaccine] at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +38,CHN3-027,IPV (< 1 year) at facility,D2pqQ1bux6B,Number of children < one year who received IPV dose at this facility in this month ,MANUAL ENTRY Number of children < one year who received IPV dose at this facility in this month ,Integer,NA,Monthly, +39,CHN3-027-O,IPV (< 1 year) at outreach,RAbXk70XDMq,Number of children < one year who received IPV dose at outreach conducted by this facility in this month ,MANUAL ENTRY Number of children < one year who received IPV dose at outreach conducted by this facility in this month ,Integer,NA,Monthly, +40,CHN3-030,OPV 4 (< 1 year) at facility ,poPXN7Wn3RL,Number of children < one year who received OPV4 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received OPV 4 [Name_Vaccine] dose at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +41,CHN3-030-O,OPV 4 (< 1 year) at outreach,,Number of children < one year who received OPV4 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received OPV 4 [Name_Vaccine] dose at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +42,CHN3-035,DPT-Hib-HepB 1 (< 1 year) at facility,N7VEEjo8AdV,Number of children < one year who received DPT-Hib+HepB 1 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received DPT-Hib+HepB 1 dose [Name_Vaccine] at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +43,CHN3-035-O,DPT-Hib-HepB 1 (< 1 year) at outreach,,Number of children < one year who received DPT-Hib+HepB 1 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received DPT-Hib+HepB 1 dose [Name_Vaccine] at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +44,CHN3-040,DPT-Hib-HepB 2 (< 1 year) at facility,R2JLWtup2XR,Number of children < one year who received DPT-Hib+HepB 2 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received DPT-Hib+HepB 2 [Name_Vaccine] dose at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +45,CHN3-040-O,DPT-Hib-HepB 2 (< 1 year) at outreach,,Number of children < one year who received DPT-Hib+HepB 2 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received DPT-Hib+HepB 2 dose [Name_Vaccine] at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +46,CHN3-045,DPT-Hib-HepB 3 (< 1 year) at facility,ujEvTSZ0Wvn,Number of children < one year who received DPT-Hib+HepB 3 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received DPT-Hib+HepB 3 dose [Name_Vaccine] at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +47,CHN3-045-O,DPT-Hib-HepB 3 (< 1 year) at outreach,,Number of children < one year who received DPT-Hib+HepB 3 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received DPT-Hib+HepB 3 dose [Name_Vaccine] at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +48,CHN3-050,PCV 1 (< 1 year) at facilty,dPpDhpO7GpB,Number of children < one year who received PCV 1 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received PCV 1 [Name_Vaccine] dose at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +49,CHN3-050-O,PCV 1 (< 1 year) at outreach,,Number of children < one year who received PCV 1 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received PCV 1 [Name_Vaccine] dose at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +50,CHN3-055,PCV 2 (< 1 year) at facilty,AU3Zp03Atnf,Number of children < one year who received PCV 2 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received PCV 2 [Name_Vaccine] dose at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +51,CHN3-055-O,PCV 2 (< 1 year) at outreach,,Number of children < one year who received PCV 2 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received PCV 2 dose [Name_Vaccine] at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +52,CHN3-060,PCV 3 (< 1 year) at facility,K5XarM6QLxq,Number of children < one year who received PCV 3 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received PCV 3 [Name_Vaccine] dose at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +53,CHN3-060-O,PCV 3 (< 1 year) at outreach,,Number of children < one year who received PCV 3 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received PCV 3 [Name_Vaccine] dose at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +54,CHN3-065,RV 1 (< 1 year) at facility,ziezVvnYWj0,Number of children < one year who received RV 1 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received RV 1 dose [Name_Vaccine] at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +55,CHN3-065-O,RV 1 (< 1 year) at outreach,,Number of children < one year who received RV 1 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received RV 1 [Name_Vaccine] dose at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +56,CHN3-070,RV 2 (< 1 year) at facility,dpKLNY9JjRR,Number of children < one year who received RV 2 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received RV 2 dose [Name_Vaccine] at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +57,CHN3-070-O,RV 2 (< 1 year) at outreach,,Number of children < one year who received RV 2 dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received RV 2 [Name_Vaccine] dose at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +58,CHN3-075,Measles/MR 1 (< 1 year) at facility,zIM9ehVMkNW,Number of children < one year who received Measles/ MR 1 dose at this facility in this month ,COUNT Number of children < one year [Date_Birth] who received Measles / MR 1 dose [Name_Vaccine] at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +59,CHN3-075-O,Measles/MR 1 (< 1 year) at outreach,,Number of children < one year who received Measles/ MR dose at outreach conducted by this facility in this month ,COUNT Number of children < one year [Date_Birth] who received Measles/ MR 1 dose [Name_Vaccine] at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +60,CHN3-080,Fully immunised (< 1 year) at facility,dzllAar6RrI,"Number of children < one year who have received the complete BCG, OPV series, DPT-Hib+Hep1 series, PCV series , RV series and measles/MR 1 within 10 days of each antigen being due at this facility ",COUNT Number of children who are aged < 1 year [Date_Birth] who received all their vaccines up to and including Measles 1 / MR 1 at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +61,CHN3-080-O,Fully immunised (< 1 year) at outreach,,"Number of children < one year who have received the complete BCG, OPV series, DPT-Hib+Hep1 series, PCV series , RV series and measles/MR 1 within 10 days of each antigen being due at outreach conducted by this facility",COUNT Number of children who are aged < 1 year [Date_Birth] who received all their vaccines up to and including Measles 1 / MR 1 at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +62,CHN3-085,Measles/MR 2 (at 18 months) at facility,sqfX5MniMIH,Number of children at 18 months who received Measles/ MR 2 dose at this facility in this month ,COUNT Number of children aged between 18 and 19 months only [Date_Birth] who received Measles 2 / MR 2 dose [Name_Vaccine] at this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +63,CHN3-085-O,Measles/MR 2 (at 18 months) at outreach,,Number of children at 18 months who received Measles/ MR 2 dose at outreach conducted by this facility in this month ,COUNT Number of children aged between 18 and 19 months only [Date_Birth] who received Measles 2 / MR 2 dose [Name_Vaccine] at outreach conducted by this facility in this month ,Integer,"Birth Registration, Vaccination, Growth Monitoring, Out of Area Service",Monthly, +64,CHN3-090,Number of days fridge non-functional,FGJcw1TCM9D,Number of days during the month that vaccine storage fridge was not functioning ,MANUAL ENTRY Number of days during the month that vaccine storage fridge was not functioning ,Integer,NA,Monthly, diff --git a/opensrp-bidan/src/main/assets/app.properties b/opensrp-bidan/src/main/assets/app.properties index 40326c9..f34a526 100644 --- a/opensrp-bidan/src/main/assets/app.properties +++ b/opensrp-bidan/src/main/assets/app.properties @@ -1,4 +1,4 @@ -DRISHTI_BASE_URL=http://27.147.138.60:9979 +DRISHTI_BASE_URL= PORT=-1 SHOULD_VERIFY_CERTIFICATE=false SYNC_DOWNLOAD_BATCH_SIZE=100 \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/bindtypes.json b/opensrp-bidan/src/main/assets/bindtypes.json deleted file mode 100644 index 6cae093..0000000 --- a/opensrp-bidan/src/main/assets/bindtypes.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "bindobjects": [ - { - "name": "bidan", - "columns": [ - {"name":"bidanId"} - ] - }, - { - "name": "kartu_ibu", - "columns": [ - {"name":"namalengkap"},{"name":"isOutOfArea"},{"name":"umur"},{"name":"namaSuami"},{"name":"noIbu"},{"name":"htp"} - ] - }, - { - "name": "ibu", - "columns": [ - {"name":"kartuIbuId"},{"name":"type"},{"name":"ancDate"},{"name":"ancKe"},{"name":"hariKeKF"} - ] - }, - { - "name": "anak", - "columns": [ - {"name":"ibuCaseId"},{"name":"namaBayi"},{"name":"tanggalLahirAnak"} - ] - } - ] -} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/bpm.json b/opensrp-bidan/src/main/assets/bpm.json deleted file mode 100644 index f20e52c..0000000 --- a/opensrp-bidan/src/main/assets/bpm.json +++ /dev/null @@ -1,65 +0,0 @@ -[{ - "_id": "e6c823f4d2bc4c9caca1193fe0084cf2", - "_rev": "2-1400d8faaf26794bc69e8415d8b7e795", - "type": "Event", - "dateCreated": "2017-05-10T11:20:35.690Z", - "serverVersion": 1494415292031, - "identifiers": { - }, - "baseEntityId": "fc9d5c18-253f-440b-8507-1c34f9ac4168", - "locationId": "null", - "eventDate": "2017-05-07T16:00:00.000Z", - "eventType": "Blood Test", - "formSubmissionId": "26a7a266-e6b3-4b2b-b26d-5813f42e764c", - "providerId": "user28", - "duration": 0, - "obs": [ - { - "fieldType": "concept", - "fieldDataType": "integer", - "fieldCode": "5085AAAAAAAAAAAAAAAAAAAAAAAAAAAA", - "values": [ - "97" - ], - "formSubmissionField": "tandaVitalTDSistolik", - "humanReadableValues": [ - ] - }, - { - "fieldType": "concept", - "fieldDataType": "integer", - "fieldCode": "5086AAAAAAAAAAAAAAAAAAAAAAAAAAAA", - "values": [ - "79" - ], - "formSubmissionField": "tandaVitalTDDiastolik", - "humanReadableValues": [ - ] - }, - { - "fieldType": "concept", - "fieldDataType": "integer", - "fieldCode": "5087AAAAAAAAAAAAAAAAAAAAAAAAAAAA", - "values": [ - "74" - ], - "formSubmissionField": "pulse", - "humanReadableValues": [ - ] - }, - { - "fieldType": "concept", - "fieldDataType": "integer", - "fieldCode": "160632AAAAAAAAAAAAAAAAAAAAAAAAAA", - "parentCode": "5087AAAAAAAAAAAAAAAAAAAAAAAAAAAA", - "values": [ - "false" - ], - "formSubmissionField": "ahr", - "humanReadableValues": [ - ] - } - ], - "entityType": "ibu", - "version": 1494415235690 -}] \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/ec_client_classification.json b/opensrp-bidan/src/main/assets/ec_client_classification.json index 8ce347f..747e503 100644 --- a/opensrp-bidan/src/main/assets/ec_client_classification.json +++ b/opensrp-bidan/src/main/assets/ec_client_classification.json @@ -1,145 +1,30 @@ { "case_classification_rules": [ { - "comment": "KARTU IBU: This rule checks whether a given case belongs to Kartu Ibu and KB register", + "comment": "Child: This rule checks whether a given case belongs to Child register", "rule": { "type": "event", "fields": [ { - "field":"eventType", - "field_value": "Registrasi Vaksinator", - "creates_case":["ec_kartu_ibu"] + "field": "eventType", + "field_value": "New Woman Registration", + "creates_case": [ + "ec_mother" + ] }, { - "field":"eventType", - "field_value": "Registrasi Gizi", - "creates_case":["ec_kartu_ibu"] + "field": "eventType", + "field_value": "Birth Registration", + "creates_case": [ + "ec_child" + ] }, { - "field":"eventType", - "field_value": "Identitas Ibu", - "creates_case":["ec_kartu_ibu"] - }, - { - "field":"eventType", - "field_value": "Tambah KB", - "creates_case":["ec_kartu_ibu"] - }, - { - "field":"eventType", - "field_value": "Kohort Pelayanan KB", - "creates_case":["ec_kartu_ibu"] - }, - { - "field":"eventType", - "field_value": "Penutupan KB", - "creates_case":["ec_kartu_ibu"] - }, - { - "field":"eventType", - "field_value": "Registrasi Vaksinator", - "closes_case":["ec_kartu_ibu"] - }, - { - "field":"eventType", - "field_value": "Registrasi Gizi", - "closes_case":["ec_kartu_ibu"] - }, - { - "field":"eventType", - "field_value": "Penutupan Ibu", - "closes_case":["ec_kartu_ibu","ec_ibu","ec_pnc"] - }, - - { - "field":"obs.fieldCode", - "concept": "160417AAAAAAAAAAAAAAAAAAAAAAAAAA", - "values": ["134612AAAAAAAAAAAAAAAAAAAAAAAAAA"], - "closes_case":["ec_kartu_ibu","ec_ibu","ec_pnc"] - } - ] - } - }, - { - "comment": "ANC: This rule checks whether a given case belongs to ANC register", - "rule": { - "type": "event", - "fields": [ - { - "field":"eventType", - "field_value": "Tambah ANC", - "creates_case":["ec_ibu"] - }, - { - "field":"obs.fieldCode", - "concept": "45AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", - "values": ["703AAAAAAAAAAAAAAAAAAAAAAAAAAAAA"], - "creates_case":["ec_ibu"] - }, - { - "field":"eventType", - "field_value": "Kunjungan ANC", - "creates_case":["ec_ibu"] - }, - - { - "field":"eventType", - "field_value": "Penutupan ANC", - "closes_case":["ec_ibu"] - } - ] - } - }, - { - "comment": "PNC: This rule checks whether a given case belongs to PNC register", - "rule": { - "type": "event", - "fields": [ - { - "field":"obs.fieldCode", - "concept": "160085AAAAAAAAAAAAAAAAAAAAAAAAAA", - "values": ["160429AAAAAAAAAAAAAAAAAAAAAAAAAA"], - "closes_case":["ec_ibu"], - "creates_case":["ec_pnc"] - }, - { - "field":"eventType", - "field_value": "Kunjungan PNC", - "creates_case":["ec_pnc"] - }, - { - "field":"eventType", - "field_value": "Penutupan PNC", - "closes_case":["ec_pnc"] - } - ] - } - }, - { - "comment": "Anak: This rule checks whether a given case belongs to Child register", - "rule": { - "type": "event", - "fields": [ - { - "field":"obs.fieldCode", - "concept": "159917AAAAAAAAAAAAAAAAAAAAAAAAAA", - "values": ["151849AAAAAAAAAAAAAAAAAAAAAAAAAA"], - "creates_case":["ec_anak"] - }, - { - "field":"eventType", - "field_value": "Tambah Bayi", - "creates_case":["ec_anak"] - }, - { - "field":"eventType", - "field_value": "Child Registration", - "creates_case":["ec_anak"] - }, - { - "field":"eventType", - "field_value": "Penutupan Anak", - "closes_case":["ec_anak"] + "field": "eventType", + "field_value": "Update Birth Registration", + "creates_case": [ + "ec_child" + ] } ] } diff --git a/opensrp-bidan/src/main/assets/ec_client_fields.json b/opensrp-bidan/src/main/assets/ec_client_fields.json index 35e264a..b5cc320 100644 --- a/opensrp-bidan/src/main/assets/ec_client_fields.json +++ b/opensrp-bidan/src/main/assets/ec_client_fields.json @@ -1,7 +1,7 @@ { "bindobjects": [ { - "name": "ec_kartu_ibu", + "name": "ec_mother", "columns": [ { "column_name": "base_entity_id", @@ -11,76 +11,166 @@ } }, { - "column_name": "namalengkap", + "column_name": "zeir_id", + "type": "Client", + "json_mapping": { + "field": "identifiers.M_ZEIR_ID" + } + }, + { + "column_name": "first_name", "type": "Client", "json_mapping": { "field": "firstName" } }, { - "column_name": "noIbu", + "column_name": "husband_name", + "type": "Event", + "json_mapping": { + "field": "obs.fieldCode", + "concept": "161135AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + } + }, + { + "column_name": "father_name", + "type": "Event", + "json_mapping": { + "field": "obs.fieldCode", + "concept": "1594AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + } + }, + { + "column_name": "dob", "type": "Client", "json_mapping": { - "field": "attributes.NoIbu" + "field": "birthdate" } }, { - "column_name": "unique_id", + "column_name": "epi_card_number", "type": "Client", "json_mapping": { - "field": "attributes.UniqueId" + "field": "attributes.EPI Card Number" } }, { - "column_name": "namaSuami", + "column_name": "contact_phone_number", + "type": "Event", + "json_mapping": { + "field": "obs.fieldCode", + "concept": "159635AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + } + }, + { + "column_name": "nrc_number", "type": "Client", "json_mapping": { - "field": "lastName" + "field": "attributes.NRC_Number" } }, { - "column_name": "tanggalLahir", + "column_name": "provider_uc", "type": "Client", "json_mapping": { - "field": "birthdate" + "field": "provider_uc" } }, { - "column_name": "isOutOfArea", + "column_name": "provider_town", "type": "Client", "json_mapping": { - "field": "isOutOfArea", - "comment": "doesn't have concept mapping" + "field": "provider_town" } }, { - "column_name": "htp", + "column_name": "provider_id", + "type": "Client", + "json_mapping": { + "field": "provider_id" + } + }, + { + "column_name": "provider_location_id", + "type": "Client", + "json_mapping": { + "field": "provider_location_id" + } + }, + { + "column_name": "client_reg_date", "type": "Event", "json_mapping": { - "field": "obs.fieldCode", - "concept": "5596AAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "field": "eventDate" } }, { - "column_name": "jenisKontrasepsi", + "column_name": "last_name", + "type": "Client", + "json_mapping": { + "field": "lastName" + } + }, + { + "column_name": "gender", + "type": "Client", + "json_mapping": { + "field": "gender" + } + }, + { + "column_name": "marriage", + "type": "Client", + "json_mapping": { + "field": "marriage" + } + }, + { + "column_name": "town", + "type": "Client", + "json_mapping": { + "field": "addresses.town" + } + }, + { + "column_name": "union_council", + "type": "Client", + "json_mapping": { + "field": "addresses.subTown" + } + }, + { + "column_name": "address1", + "type": "Client", + "json_mapping": { + "field": "addresses.addressFields.address1" + } + }, + { + "column_name": "address", + "type": "Client", + "json_mapping": { + "field": "addresses.addressType" + } + }, + { + "column_name": "date", "type": "Event", "json_mapping": { - "field": "obs.fieldCode", - "concept": "374AAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "field": "eventDate" } }, { - "column_name": "umur", + "column_name": "last_interacted_with", "type": "Event", "json_mapping": { - "field": "obs.fieldCode", - "concept": "1532AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "field": "version" } } ] }, { - "name": "ec_ibu", + "name": "ec_child", "columns": [ { "column_name": "base_entity_id", @@ -90,172 +180,190 @@ } }, { - "column_name": "kartuIbuId", + "column_name": "zeir_id", "type": "Client", "json_mapping": { - "field": "kartuIbuId", - "comment": "doesn't have concept mapping" + "field": "identifiers.ZEIR_ID" } }, { - "column_name": "tanggalHPHT", - "type": "Event", + "column_name": "inactive", + "type": "Client", "json_mapping": { - "field": "obs.fieldCode", - "concept": "1427AAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "field": "attributes.inactive" } }, - { - "column_name": "referenceDate", - "type": "Event", + "column_name": "lost_to_follow_up", + "type": "Client", "json_mapping": { - "field": "obs.fieldCode", - "concept": "160753AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "field": "attributes.lost_to_follow_up" + } + }, + { + "column_name": "relational_id", + "type": "Client", + "json_mapping": { + "field": "relationships.mother" + } + }, + { + "column_name": "first_name", + "type": "Client", + "json_mapping": { + "field": "firstName" + } + }, + { + "column_name": "last_name", + "type": "Client", + "json_mapping": { + "field": "lastName" + } + }, + { + "column_name": "gender", + "type": "Client", + "json_mapping": { + "field": "gender" } }, { - "column_name": "pptest", + "column_name": "mother_first_name", "type": "Event", "json_mapping": { "field": "obs.fieldCode", - "concept": "45AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "formSubmissionField": "Mother_Guardian_First_Name" } }, { - "column_name": "ancDate", + "column_name": "mother_last_name", "type": "Event", "json_mapping": { "field": "obs.fieldCode", - "concept": "160753AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "formSubmissionField": "Mother_Guardian_Last_Name" } }, { - "column_name": "ancKe", + "column_name": "father_name", "type": "Event", "json_mapping": { "field": "obs.fieldCode", - "concept": "1425AAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "concept": "1594AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" } }, - { - "column_name": "type", - "type": "Event", + "column_name": "dob", + "type": "Client", "json_mapping": { - "field": "type", - "comment": "doesn't have concept mapping" + "field": "birthdate" } - } - ] - }, - { - "name": "ec_pnc", - "columns": [ + }, { - "column_name": "base_entity_id", + "column_name": "dod", "type": "Client", "json_mapping": { - "field": "baseEntityId" + "field": "deathdate" } }, { - "column_name": "keadaanIbu", - "type": "Event", + "column_name": "epi_card_number", + "type": "Client", "json_mapping": { - "field": "obs.fieldCode", - "concept": "160085AAAAAAAAAAAAAAAAAAAAAAAAAA" + "field": "attributes.Child_Register_Card_Number" } }, { - "column_name": "tempatBersalin", + "column_name": "contact_phone_number", "type": "Event", "json_mapping": { "field": "obs.fieldCode", - "concept": "1572AAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "concept": "159635AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" } }, { - "column_name": "caraPersalinanIbu", + "column_name": "pmtct_status", "type": "Event", "json_mapping": { "field": "obs.fieldCode", - "concept": "5630AAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "concept": "1396AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" } }, { - "column_name": "komplikasi", - "type": "Event", + "column_name": "provider_uc", + "type": "Client", "json_mapping": { - "field": "obs.fieldCode", - "concept": "1576AAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "field": "provider_uc" } - } - ] - }, - { - "name": "ec_anak", - "columns": [ + }, { - "column_name": "base_entity_id", + "column_name": "provider_town", "type": "Client", "json_mapping": { - "field": "baseEntityId" + "field": "provider_town" } }, { - "column_name": "relational_id", + "column_name": "provider_id", "type": "Client", "json_mapping": { - "field": "relationships.ibuCaseId" + "field": "provider_id" } }, { - "column_name": "noBayi", + "column_name": "provider_location_id", "type": "Client", "json_mapping": { - "field": "attributes.noBayi" + "field": "provider_location_id" } }, { - "column_name": "beratLahir", + "column_name": "client_reg_date", "type": "Event", "json_mapping": { - "field": "obs.fieldCode", - "concept": "5916AAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "field": "eventDate" } }, { - "column_name": "namaBayi", - "type": "Event", + "column_name": "town", + "type": "Client", "json_mapping": { - "field": "obs.fieldCode", - "concept": "1586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + "field": "addresses.town" } }, { - "column_name": "tanggalLahirAnak", + "column_name": "union_council", "type": "Client", "json_mapping": { - "field": "birthdate" + "field": "addresses.subTown" } - } - ] - }, - {"name": "ec_multimedia", - "columns" : [ + }, { - "column_name" : "baseEntityID", - "type" : "Multimedia", - "json_mapping" : { - "field" : "caseId" + "column_name": "address1", + "type": "Client", + "json_mapping": { + "field": "addresses.addressFields.address1" } }, { - "column_name" : "faceVector", - "type" : "Multimedia", - "json_mapping" : { - "field" : "attributes.faceVector" + "column_name": "address", + "type": "Client", + "json_mapping": { + "field": "addresses.addressType" + } + }, + { + "column_name": "date", + "type": "Event", + "json_mapping": { + "field": "eventDate" + } + }, + { + "column_name": "last_interacted_with", + "type": "Event", + "json_mapping": { + "field": "version" } } ] diff --git a/opensrp-bidan/src/main/assets/ec_client_relationships.json b/opensrp-bidan/src/main/assets/ec_client_relationships.json index a50c972..da15059 100644 --- a/opensrp-bidan/src/main/assets/ec_client_relationships.json +++ b/opensrp-bidan/src/main/assets/ec_client_relationships.json @@ -1,12 +1,7 @@ [ { - "client_relationship": "kartuIbuId", - "field": "kartuIbuId", - "comment": "this field is the name as it appears in the field_definition.json file" - }, - { - "client_relationship": "ibuCaseId", - "field": "ibu_entity_id", - "comment": "this field is the name as it appears in the field_definition.json file" + "client_relationship": "mother", + "field": "entity_id", + "comment": "this field is the name as it appears in the parent client document" } ] diff --git a/opensrp-bidan/src/main/assets/ec_client_service.json b/opensrp-bidan/src/main/assets/ec_client_service.json new file mode 100644 index 0000000..b0f95d6 --- /dev/null +++ b/opensrp-bidan/src/main/assets/ec_client_service.json @@ -0,0 +1,58 @@ +{ + "name": "vaccines", + "columns": [ + { + "column_name": "base_entity_id", + "json_mapping": { + "field": "baseEntityId" + } + }, + { + "column_name": "name", + "json_mapping": { + "field": "obs.fieldCode", + "concept": "1639AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "value_field": "formSubmissionField" + } + }, + { + "column_name": "calculation", + "json_mapping": { + "field": "obs.fieldCode", + "concept": "1639AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + } + }, + { + "column_name": "date", + "json_mapping": { + "field": "eventDate" + } + }, + { + "column_name": "itn_date", + "json_mapping": { + "field": "obs.fieldCode", + "concept": "159432AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + } + }, + { + "column_name":"itn_has_net", + "json_mapping":{ + "field":"obs.fieldCode", + "formSubmissionField":"Child_Has_Net" + } + }, + { + "column_name": "anmid", + "json_mapping": { + "field": "providerId" + } + }, + { + "column_name": "location_id", + "json_mapping": { + "field": "locationId" + } + } + ] +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/ec_client_vaccine.json b/opensrp-bidan/src/main/assets/ec_client_vaccine.json new file mode 100644 index 0000000..810aef0 --- /dev/null +++ b/opensrp-bidan/src/main/assets/ec_client_vaccine.json @@ -0,0 +1,45 @@ +{ + "name": "vaccines", + "columns": [ + { + "column_name": "base_entity_id", + "json_mapping": { + "field": "baseEntityId" + } + }, + { + "column_name": "name", + "json_mapping": { + "field": "obs.fieldCode", + "concept": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "value_field": "formSubmissionField" + } + }, + { + "column_name": "calculation", + "json_mapping": { + "field": "obs.fieldCode", + "concept": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + } + }, + { + "column_name": "date", + "json_mapping": { + "field": "obs.fieldCode", + "concept": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + } + }, + { + "column_name": "anmid", + "json_mapping": { + "field": "providerId" + } + }, + { + "column_name": "location_id", + "json_mapping": { + "field": "locationId" + } + } + ] +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/ec_client_weight.json b/opensrp-bidan/src/main/assets/ec_client_weight.json new file mode 100644 index 0000000..5d900bb --- /dev/null +++ b/opensrp-bidan/src/main/assets/ec_client_weight.json @@ -0,0 +1,36 @@ +{ + "name": "vaccines", + "columns": [ + { + "column_name": "base_entity_id", + "json_mapping": { + "field": "baseEntityId" + } + }, + { + "column_name": "kg", + "json_mapping": { + "field": "obs.fieldCode", + "concept": "5089AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + } + }, + { + "column_name": "date", + "json_mapping": { + "field": "eventDate" + } + }, + { + "column_name": "anmid", + "json_mapping": { + "field": "providerId" + } + }, + { + "column_name": "location_id", + "json_mapping": { + "field": "locationId" + } + } + ] +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/fonts/material-icon-font.ttf b/opensrp-bidan/src/main/assets/fonts/material-icon-font.ttf new file mode 100644 index 0000000000000000000000000000000000000000..06300f9bf0bb7b2f52990cae609a721e514ac463 GIT binary patch literal 48492 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 literal 0 HcmV?d00001 diff --git a/opensrp-bidan/src/main/assets/json.form/adverse_event.json b/opensrp-bidan/src/main/assets/json.form/adverse_event.json new file mode 100644 index 0000000..9658b73 --- /dev/null +++ b/opensrp-bidan/src/main/assets/json.form/adverse_event.json @@ -0,0 +1,150 @@ +{ + "count": "1", + "encounter_type": "AEFI", + "entity_id": "", + "metadata": { + "start": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "start", + "openmrs_entity_id": "163137AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "end": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "end", + "openmrs_entity_id": "163138AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "today": { + "openmrs_entity_parent": "", + "openmrs_entity": "encounter", + "openmrs_entity_id": "encounter_date" + }, + "deviceid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "deviceid", + "openmrs_entity_id": "163149AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "subscriberid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "subscriberid", + "openmrs_entity_id": "163150AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "simserial": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "simserial", + "openmrs_entity_id": "163151AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "phonenumber": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "phonenumber", + "openmrs_entity_id": "163152AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "encounter_location": "" + }, + "step1": { + "title": "Report an adverse event", + "fields": [ + { + "key": "Reaction_Vaccine", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "6042AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "select one", + "type": "spinner", + "hint": "Vaccine that caused the reaction *", + "values": [ + "BCG", + "OPV", + "Penta", + "PCV", + "Rota", + "Measles", + "MR" + ], + "openmrs_choice_ids": { + "BCG": "149310AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "OPV": "129578AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Penta": "162265AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "PCV": "162266AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Rota": "162272AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Measles": "149286AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "MR": "149286AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "v_required": { + "value": true, + "err": "Please enter the vaccine that caused the reaction" + } + }, + { + "key": "Date_Reaction", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "1730AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "type": "date_picker", + "hint": "Date that the child started experiencing the reaction *", + "expanded": false, + "max_date": "today", + "v_required": { + "value": "true", + "err": "Please enter the date child started experiencing reaction" + } + }, + { + "key": "Reaction_Description", + "openmrs_entity_parent": "111172AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_entity": "concept", + "openmrs_entity_id": "160632AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "text", + "type": "edit_text", + "hint": "Describe the reaction *", + "v_required": { + "value": "true", + "err": "Please describe the reaction" + } + }, + { + "key": "Reaction_Referred", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "1648AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "boolean", + "type": "spinner", + "hint": "Child referred? *", + "values": [ + "Yes", + "No" + ], + "openmrs_choice_ids": { + "Yes": "true", + "No": "false" + }, + "v_required": { + "value": true, + "err": "Please specify if child was referred" + } + }, + { + "key": "AEFI_Form_Completed", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "163340AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "select one", + "type": "spinner", + "hint": "AEFI form completed?", + "values": [ + "Yes", + "No" + ], + "openmrs_choice_ids": { + "Yes": "1267AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "No": "163339AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + } + } + ] + } +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/json.form/child_enrollment.json b/opensrp-bidan/src/main/assets/json.form/child_enrollment.json new file mode 100644 index 0000000..6eab304 --- /dev/null +++ b/opensrp-bidan/src/main/assets/json.form/child_enrollment.json @@ -0,0 +1,498 @@ +{ + "count": "1", + "encounter_type": "Birth Registration", + "mother": { + "encounter_type": "New Woman Registration" + }, + "entity_id": "", + "relational_id": "", + "metadata": { + "start": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "start", + "openmrs_entity_id": "163137AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "end": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "end", + "openmrs_entity_id": "163138AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "today": { + "openmrs_entity_parent": "", + "openmrs_entity": "encounter", + "openmrs_entity_id": "encounter_date" + }, + "deviceid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "deviceid", + "openmrs_entity_id": "163149AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "subscriberid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "subscriberid", + "openmrs_entity_id": "163150AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "simserial": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "simserial", + "openmrs_entity_id": "163151AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "phonenumber": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "phonenumber", + "openmrs_entity_id": "163152AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "encounter_location": "", + "look_up": { + "entity_id":"", + "value":"" + } + }, + "step1": { + "title": "Birth Registration", + "fields": [ + { + "key": "Child_Photo", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "type": "choose_image", + "uploadButtonText": "Take a photo of the child" + }, + { + "key": "Home_Facility", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "openmrs_data_type": "text", + "type": "tree", + "hint": "Child's home health facility *", + "tree": [], + "v_required": { + "value": true, + "err": "Please enter the child's home facility" + } + }, + { + "key": "ZEIR_ID", + "openmrs_entity_parent": "", + "openmrs_entity": "person_identifier", + "openmrs_entity_id": "ZEIR_ID", + "type": "barcode", + "barcode_type": "qrcode", + "hint": "Child's ZEIR ID *", + "scanButtonText": "Scan QR Code", + "value": "0", + "v_numeric": { + "value": "true", + "err": "Please enter a valid ID" + }, + "v_required": { + "value": "true", + "err": "Please enter the Child's ZEIR ID" + } + }, + { + "key": "Child_Register_Card_Number", + "openmrs_entity_parent": "", + "openmrs_entity": "person_attribute", + "openmrs_entity_id": "Child_Register_Card_Number", + "type": "edit_text", + "hint": "Child's register card number" + }, + { + "key": "Child_Birth_Certificate", + "openmrs_entity_parent": "", + "openmrs_entity": "person_attribute", + "openmrs_entity_id": "Child_Birth_Certificate", + "type": "edit_text", + "hint": "Child's birth certificate number" + }, + { + "key": "First_Name", + "openmrs_entity_parent": "", + "openmrs_entity": "person", + "openmrs_entity_id": "first_name", + "type": "edit_text", + "hint": "First name", + "edit_type": "name", + "v_regex": { + "value": "[A-Za-z\\s\.\-]*", + "err": "Please enter a valid name" + } + }, + { + "key": "Last_Name", + "openmrs_entity_parent": "", + "openmrs_entity": "person", + "openmrs_entity_id": "last_name", + "type": "edit_text", + "hint": "Last name *", + "edit_type": "name", + "v_required": { + "value": "true", + "err": "Please enter the last name" + }, + "v_regex": { + "value": "[A-Za-z\\s\.\-]*", + "err": "Please enter a valid name" + } + }, + { + "key": "Sex", + "openmrs_entity_parent": "", + "openmrs_entity": "person", + "openmrs_entity_id": "gender", + "type": "spinner", + "hint": "Sex *", + "values": [ + "Male", + "Female" + ], + "v_required": { + "value": "true", + "err": "Please enter the sex" + } + }, + { + "key": "Date_Birth", + "openmrs_entity_parent": "", + "openmrs_entity": "person", + "openmrs_entity_id": "birthdate", + "type": "date_picker", + "hint": "Child's DOB *", + "expanded": false, + "duration": { + "label": "Age" + }, + "min_date": "today-5y", + "max_date": "today", + "v_required": { + "value": "true", + "err": "Please enter the date of birth" + } + }, + { + "key": "First_Health_Facility_Contact", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "163260AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "date", + "type": "date_picker", + "hint": "Date first seen *", + "expanded": false, + "min_date": "today-5y", + "max_date": "today", + "v_required": { + "value": "true", + "err": "Enter the date that the child was first seen at a health facility for immunization services" + }, + "constraints": [ + { + "type": "date", + "ex": "greaterThanEqualTo(., step1:Date_Birth)", + "err": "Date first seen can't occur before date of birth" + } + ] + }, + { + "key": "Birth_Weight", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "5916AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "text", + "type": "edit_text", + "hint": "Birth weight (kg) *", + "v_min": { + "value": "0.1", + "err": "Weight must be greater than 0" + }, + "v_numeric": { + "value": "true", + "err": "Enter a valid weight" + }, + "v_required": { + "value": "true", + "err": "Enter the child's birth weight" + } + }, + { + "key": "Mother_Guardian_First_Name", + "openmrs_entity_parent": "", + "openmrs_entity": "person", + "openmrs_entity_id": "first_name", + "entity_id": "mother", + "type": "edit_text", + "hint": "Mother/guardian first name *", + "edit_type": "name", + "look_up": "true", + "v_required": { + "value": "true", + "err": "Please enter the mother/guardian's first name" + }, + "v_regex": { + "value": "[A-Za-z\\s\.\-]*", + "err": "Please enter a valid name" + } + }, + { + "key": "Mother_Guardian_Last_Name", + "openmrs_entity_parent": "", + "openmrs_entity": "person", + "openmrs_entity_id": "last_name", + "entity_id": "mother", + "type": "edit_text", + "hint": "Mother/guardian last name *", + "edit_type": "name", + "look_up": "true", + "v_required": { + "value": "true", + "err": "Please enter the mother/guardian's last name" + }, + "v_regex": { + "value": "[A-Za-z\\s\.\-]*", + "err": "Please enter a valid name" + } + }, + { + "key": "Mother_Guardian_Date_Birth", + "openmrs_entity_parent": "", + "openmrs_entity": "person", + "openmrs_entity_id": "birthdate", + "entity_id": "mother", + "type": "date_picker", + "hint": "Mother/guardian DOB", + "look_up": "true", + "expanded": false, + "duration": { + "label": "Age" + }, + "min_date": "01-01-1900", + "max_date": "today-10y" + }, + { + "key": "Mother_Guardian_NRC", + "openmrs_entity_parent": "", + "openmrs_entity": "person_attribute", + "openmrs_entity_id": "NRC_Number", + "entity_id": "mother", + "type": "edit_text", + "hint": "Mother/guardian NRC number", + "v_regex": { + "value": "([0-9]{6}/[0-9]{2}/[0-9])|\s*", + "err": "Number must take the format of ######/##/#" + } + }, + { + "key": "Mother_Guardian_Number", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "159635AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "type": "edit_text", + "hint": "Mother/guardian phone number", + "v_numeric": { + "value": "true", + "err": "Number must begin with 095, 096, or 097 and must be a total of 10 digits in length" + }, + "v_regex": { + "value": "(09[5-7][0-9]{7})|\s*", + "err": "Number must begin with 095, 096, or 097 and must be a total of 10 digits in length" + } + }, + { + "key": "Father_Guardian_Name", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "1594AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "text", + "type": "edit_text", + "hint": "Father/guardian full name", + "edit_type": "name", + "v_regex": { + "value": "[A-Za-z\\s\.\-]*", + "err": "Please enter a valid name" + } + }, + { + "key": "Father_Guardian_NRC", + "openmrs_entity_parent": "", + "openmrs_entity": "person_attribute", + "openmrs_entity_id": "Father_NRC_Number", + "type": "edit_text", + "hint": "Father/guardian NRC number", + "v_regex": { + "value": "([0-9]{6}/[0-9]{2}/[0-9])|\s*", + "err": "Number must take the format of ######/##/#" + } + }, + { + "key": "Place_Birth", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "1572AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "select one", + "type": "spinner", + "hint": "Place of birth *", + "values": [ + "Health facility", + "Home" + ], + "openmrs_choice_ids": { + "Health facility": "1588AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Home": "1536AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "v_required": { + "value": true, + "err": "Please enter the place of birth" + } + }, + { + "key": "Birth_Facility_Name", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "163531AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "text", + "type": "tree", + "hint": "Which health facility was the child born in? *", + "tree": [], + "v_required": { + "value": true, + "err": "Please enter the birth facility name" + }, + "relevance": { + "step1:Place_Birth": { + "type": "string", + "ex": "equalTo(., \"Health facility\")" + } + } + }, + { + "key": "Birth_Facility_Name_Other", + "openmrs_entity_parent": "163531AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_entity": "concept", + "openmrs_entity_id": "160632AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "type": "edit_text", + "hint": "Other health facility *", + "edit_type": "name", + "v_required": { + "value": true, + "err": "Please specify the health facility the child was born in" + }, + "relevance": { + "step1:Birth_Facility_Name": { + "type": "string", + "ex": "equalTo(., \"[\"Other\"]\")" + } + } + }, + { + "key": "Residential_Area", + "openmrs_entity_parent": "usual_residence", + "openmrs_entity": "person_address", + "openmrs_entity_id": "address3", + "openmrs_data_type": "text", + "type": "tree", + "hint": "Child's residential area *", + "tree": [], + "v_required": { + "value": true, + "err": "Please enter the child's residential area" + } + }, + { + "key": "Residential_Area_Other", + "openmrs_entity_parent": "usual_residence", + "openmrs_entity": "person_address", + "openmrs_entity_id": "address5", + "type": "edit_text", + "hint": "Other residential area *", + "edit_type": "name", + "v_required": { + "value": true, + "err": "Please specify the residential area" + }, + "relevance": { + "step1:Residential_Area": { + "type": "string", + "ex": "equalTo(., \"[\"Other\"]\")" + } + } + }, + { + "key": "Residential_Address", + "openmrs_entity_parent": "usual_residence", + "openmrs_entity": "person_address", + "openmrs_entity_id": "address2", + "type": "edit_text", + "hint": "Home address *", + "edit_type": "name", + "v_required": { + "value": true, + "err": "Please enter the home address" + } + }, + { + "key": "Physical_Landmark", + "openmrs_entity_parent": "usual_residence", + "openmrs_entity": "person_address", + "openmrs_entity_id": "address1", + "type": "edit_text", + "hint": "Landmark", + "edit_type": "name" + }, + { + "key": "CHW_Name", + "openmrs_entity_parent": "", + "openmrs_entity": "person_attribute", + "openmrs_entity_id": "CHW_Name", + "type": "edit_text", + "hint": "CHW name", + "edit_type": "name", + "v_regex": { + "value": "[A-Za-z\\s\.\-]*", + "err": "Please enter a valid name" + } + }, + { + "key": "CHW_Phone_Number", + "openmrs_entity_parent": "", + "openmrs_entity": "person_attribute", + "openmrs_entity_id": "CHW_Phone_Number", + "type": "edit_text", + "hint": "CHW phone number", + "v_numeric": { + "value": "true", + "err": "Number must begin with 095, 096, or 097 and must be a total of 10 digits in length" + }, + "v_regex": { + "value": "(09[5-7][0-9]{7})|\s*", + "err": "Number must begin with 095, 096, or 097 and must be a total of 10 digits in length" + } + }, + { + "key": "PMTCT_Status", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "1396AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "type": "spinner", + "hint": "HIV exposure", + "values": [ + "CE", + "MSU", + "CNE" + ], + "openmrs_choice_ids": { + "CE": "703AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "MSU": "1067AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "CNE": "664AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + } + } + ] + } +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/json.form/hia2_monthly_report.json b/opensrp-bidan/src/main/assets/json.form/hia2_monthly_report.json new file mode 100644 index 0000000..32f6b56 --- /dev/null +++ b/opensrp-bidan/src/main/assets/json.form/hia2_monthly_report.json @@ -0,0 +1,58 @@ +{ + "count": "1", + "encounter_type": "HIA2 Monthly Report", + "entity_id": "", + "relational_id": "", + "metadata": { + "start": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "start", + "openmrs_entity_id": "163137AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "end": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "end", + "openmrs_entity_id": "163138AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "today": { + "openmrs_entity_parent": "", + "openmrs_entity": "encounter", + "openmrs_entity_id": "encounter_date" + }, + "deviceid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "deviceid", + "openmrs_entity_id": "163149AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "subscriberid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "subscriberid", + "openmrs_entity_id": "163150AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "simserial": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "simserial", + "openmrs_entity_id": "163151AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "phonenumber": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "phonenumber", + "openmrs_entity_id": "163152AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "encounter_location": "", + "look_up": { + "entity_id": "", + "value": "" + } + }, + "step1": { + "title": "", + "sections": [] + } +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/json.form/out_of_catchment_service.json b/opensrp-bidan/src/main/assets/json.form/out_of_catchment_service.json new file mode 100644 index 0000000..528afe5 --- /dev/null +++ b/opensrp-bidan/src/main/assets/json.form/out_of_catchment_service.json @@ -0,0 +1,101 @@ +{ + "count": "1", + "encounter_type": "Out of Catchment Service", + "entity_id": "", + "metadata": { + "start": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "start", + "openmrs_entity_id": "163137AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "end": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "end", + "openmrs_entity_id": "163138AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "today": { + "openmrs_entity_parent": "", + "openmrs_entity": "encounter", + "openmrs_entity_id": "encounter_date" + }, + "deviceid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "deviceid", + "openmrs_entity_id": "163149AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "subscriberid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "subscriberid", + "openmrs_entity_id": "163150AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "simserial": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "simserial", + "openmrs_entity_id": "163151AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "phonenumber": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "phonenumber", + "openmrs_entity_id": "163152AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "encounter_location":"" + }, + "step1": { + "title": "Record out of catchment area service", + "fields": [ + { + "key": "ZEIR_ID", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "type": "barcode", + "barcode_type": "qrcode", + "hint": "ZEIR ID *", + "scanButtonText": "Scan QR Code", + "read_only": true, + "value": "", + "v_required": { + "value": "true", + "err": "Enter the child's ZEIR ID" + } + }, + { + "key": "OA_Service_Date", + "openmrs_entity_parent": "", + "openmrs_entity": "encounter", + "openmrs_entity_id": "encounter_date", + "type": "date_picker", + "hint": "Service date *", + "expanded": false, + "max_date": "today", + "v_required": { + "value": "true", + "err": "Enter the service date" + } + }, + { + "key": "Weight_Kg", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "5089AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "text", + "type": "edit_text", + "hint": "Child's weight (kg)", + "v_min": { + "value": "0.1", + "err": "Weight must be greater than 0" + }, + "v_numeric": { + "value": "true", + "err": "Enter a valid weight" + } + } + ] + } +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/json.form/report_deceased.json b/opensrp-bidan/src/main/assets/json.form/report_deceased.json new file mode 100644 index 0000000..306af95 --- /dev/null +++ b/opensrp-bidan/src/main/assets/json.form/report_deceased.json @@ -0,0 +1,117 @@ +{ + "count": "1", + "encounter_type": "Death", + "entity_id": "", + "metadata": { + "start": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "start", + "openmrs_entity_id": "163137AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "end": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "end", + "openmrs_entity_id": "163138AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "today": { + "openmrs_entity_parent": "", + "openmrs_entity": "encounter", + "openmrs_entity_id": "encounter_date" + }, + "deviceid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "deviceid", + "openmrs_entity_id": "163149AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "subscriberid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "subscriberid", + "openmrs_entity_id": "163150AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "simserial": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "simserial", + "openmrs_entity_id": "163151AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "phonenumber": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "phonenumber", + "openmrs_entity_id": "163152AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "encounter_location": "" + }, + "step1": { + "title": "Report Deceased", + "fields": [ + { + "key": "Date_of_Death", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "1543AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "date", + "type": "date_picker", + "hint": "Date of death *", + "expanded": false, + "min_date": "01-01-1900", + "max_date": "today", + "v_required": { + "value": "true", + "err": "Date cannot be past today's date" + }, + "constraints": [ + { + "type": "date", + "ex": "greaterThanEqualTo(., step1:Date_Birth)", + "err": "Date of death can't occur before date of birth" + } + ] + }, + { + "key": "Cause_Death", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "160218AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "type": "edit_text", + "hint": "Suspected cause of death", + "edit_type": "name" + }, + { + "key": "Place_Death", + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_entity_id": "1541AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "openmrs_data_type": "select one", + "type": "spinner", + "hint": "Where did the death occur? *", + "values": [ + "Health facility", + "Home" + ], + "openmrs_choice_ids": { + "Health facility": "1588AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "Home": "1536AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "v_required": { + "value": "true", + "err": "Please select one option" + } + }, + { + "key": "Date_Birth", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "type": "date_picker", + "hint": "Child's DOB", + "read_only": true, + "hidden": true + } + ] + } +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/json.form/stock_adjustment_form.json b/opensrp-bidan/src/main/assets/json.form/stock_adjustment_form.json new file mode 100644 index 0000000..4afe813 --- /dev/null +++ b/opensrp-bidan/src/main/assets/json.form/stock_adjustment_form.json @@ -0,0 +1,140 @@ +{ + "count": "1", + "encounter_type": "", + "entity_id": "", + "metadata": { + "start": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "start", + "openmrs_entity_id": "163137AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "end": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "end", + "openmrs_entity_id": "163138AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "today": { + "openmrs_entity_parent": "", + "openmrs_entity": "encounter", + "openmrs_entity_id": "encounter_date" + }, + "deviceid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "deviceid", + "openmrs_entity_id": "163149AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "subscriberid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "subscriberid", + "openmrs_entity_id": "163150AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "simserial": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "simserial", + "openmrs_entity_id": "163151AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "phonenumber": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "phonenumber", + "openmrs_entity_id": "163152AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "encounter_location":"" + }, + "step1": { + "title": "[vaccine] Stock Loss/Adjustment", + "fields": [ + { + "key": "Date_Stock_loss_adjustment", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "type": "date_picker", + "hint": "Date of [vaccine] stock loss/adjustment *", + "expanded": false, + "min_date": "today-1m", + "max_date": "today", + "v_required": { + "value": "true", + "err": "Enter the service date" + } + }, + { + "key": "Reason_for_adjustment", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "openmrs_data_type": "select one", + "type": "radio", + "label": "Reason for [vaccine] adjustment *", + "options":[ + { + "key":"Physical_recount", + "text":"Physical recount" + }, + { + "key":"Other", + "text":"Other" + } + ], + "value": "Physical_recount", + "v_required": { + "value": true, + "err": "" + } + }, + { + "key": "adjusted_Stock_TO_Other", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "type": "edit_text", + "hint": "Please specify: *", + "edit_type": "name", + "v_required": { + "value": true, + "err": "Please specify where else the stock was adjusted from" + }, + "relevance": { + "step1:Reason_for_adjustment": { + "type": "string", + "ex": "equalTo(., \"Other\")" + } + } + }, + { + "key": "Vials_Adjustment", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "openmrs_data_type": "text", + "type": "edit_text", + "hint": "Vials [vaccine] adjustment *", + "number_picker":"true", + "value": "0", + "v_required": { + "value": "true", + "err": "Please enter the value for adjustment" + }, + "v_regex": { + "value": "-?[1-9]\\d*|0", + "err": "Please enter a valid value" + } + }, + { + "key":"Balance", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "openmrs_data_type": "text", + "type":"label", + "text":"" + } + ] + } +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/json.form/stock_issued_form.json b/opensrp-bidan/src/main/assets/json.form/stock_issued_form.json new file mode 100644 index 0000000..3fc34c3 --- /dev/null +++ b/opensrp-bidan/src/main/assets/json.form/stock_issued_form.json @@ -0,0 +1,159 @@ +{ + "count": "1", + "encounter_type": "", + "entity_id": "", + "metadata": { + "start": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "start", + "openmrs_entity_id": "163137AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "end": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "end", + "openmrs_entity_id": "163138AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "today": { + "openmrs_entity_parent": "", + "openmrs_entity": "encounter", + "openmrs_entity_id": "encounter_date" + }, + "deviceid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "deviceid", + "openmrs_entity_id": "163149AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "subscriberid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "subscriberid", + "openmrs_entity_id": "163150AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "simserial": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "simserial", + "openmrs_entity_id": "163151AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "phonenumber": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "phonenumber", + "openmrs_entity_id": "163152AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "encounter_location":"" + }, + "step1": { + "title": "[vaccine] Stock Issued", + "fields": [ + { + "key": "Date_Stock_Issued", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "type": "date_picker", + "hint": "Date [vaccine] stock issued *", + "expanded": false, + "min_date": "today-1m", + "max_date": "today", + "v_required": { + "value": "true", + "err": "Enter the service date" + } + }, + { + "key": "Issued_Stock_To", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "openmrs_data_type": "select one", + "type": "radio", + "label": "Issued to *", + "options":[ + { + "key":"C/C", + "text":"Children's Clinic (C/C)" + }, + { + "key":"Other", + "text":"Other" + } + ], + "value": "C/C", + "v_required": { + "value": true, + "err": "Please enter the place where stock was issued" + } + }, + { + "key": "Issued_Stock_TO_Other", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "type": "edit_text", + "hint": "Please specify: *", + "edit_type": "name", + "v_required": { + "value": true, + "err": "Please specify where else the stock was received from" + }, + "relevance": { + "step1:Issued_Stock_To": { + "type": "string", + "ex": "equalTo(., \"Other\")" + } + } + }, + { + "key": "Vials_Issued", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "openmrs_data_type": "text", + "type": "edit_text", + "hint": "Vials [vaccine] issued *", + "v_min": { + "value": "1", + "err": "issued vials must be greater than 0" + }, + "v_numeric": { + "value": "true", + "err": "Enter a valid vial number" + }, + "v_required": { + "value": "true", + "err": "Enter the Vials Issued" + } + }, + { + "key": "Vials_Wasted", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "openmrs_data_type": "text", + "type": "edit_text", + "hint": "Wasted vials", + "v_min": { + "value": "0", + "err": "value cannot be less than zero" + }, + "v_numeric": { + "value": "true", + "err": "Enter a valid vial number" + } + }, + { + "key":"Balance", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "openmrs_data_type": "text", + "type":"label", + "text":"" + } + ] + } +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/json.form/stock_received_form.json b/opensrp-bidan/src/main/assets/json.form/stock_received_form.json new file mode 100644 index 0000000..9c5c942 --- /dev/null +++ b/opensrp-bidan/src/main/assets/json.form/stock_received_form.json @@ -0,0 +1,142 @@ +{ + "count": "1", + "encounter_type": "", + "entity_id": "", + "metadata": { + "start": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "start", + "openmrs_entity_id": "163137AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "end": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "end", + "openmrs_entity_id": "163138AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "today": { + "openmrs_entity_parent": "", + "openmrs_entity": "encounter", + "openmrs_entity_id": "encounter_date" + }, + "deviceid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "deviceid", + "openmrs_entity_id": "163149AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "subscriberid": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "subscriberid", + "openmrs_entity_id": "163150AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "simserial": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "simserial", + "openmrs_entity_id": "163151AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "phonenumber": { + "openmrs_entity_parent": "", + "openmrs_entity": "concept", + "openmrs_data_type": "phonenumber", + "openmrs_entity_id": "163152AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "encounter_location":"" + }, + "step1": { + "title": "[vaccine] Stock Received", + "fields": [ + { + "key": "Date_Stock_Received", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "type": "date_picker", + "hint": "Date [vaccine] stock received *", + "expanded": false, + "min_date": "today-1m", + "max_date": "today", + "v_required": { + "value": "true", + "err": "Enter the service date" + } + }, + { + "key": "Received_Stock_From", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "openmrs_data_type": "select one", + "type": "radio", + "label": "Received from *", + "options":[ + { + "key":"DHO", + "text":"DHO" + }, + { + "key":"Other", + "text":"Other" + } + ], + "value": "DHO", + "v_required": { + "value": true, + "err": "Please enter the place from where stock was received" + } + }, + { + "key": "Received_Stock_From_Other", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "type": "edit_text", + "hint": "Please specify: *", + "edit_type": "name", + "v_required": { + "value": true, + "err": "Please specify where else the stock was received from" + }, + "relevance": { + "step1:Received_Stock_From": { + "type": "string", + "ex": "equalTo(., \"Other\")" + } + } + }, + { + "key": "Vials_Received", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "openmrs_data_type": "text", + "type": "edit_text", + "hint": "Vials [vaccine] received *", + "v_min": { + "value": "1", + "err": "issued vials must be greater than 0" + }, + "v_numeric": { + "value": "true", + "err": "Enter a valid vial number" + }, + "v_required": { + "value": "true", + "err": "Enter the vials received" + } + }, + { + "key":"Balance", + "openmrs_entity_parent": "", + "openmrs_entity": "", + "openmrs_entity_id": "", + "openmrs_data_type": "text", + "type":"label", + "text":"" + } + ] + } +} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/recurring_service_types.json b/opensrp-bidan/src/main/assets/recurring_service_types.json new file mode 100644 index 0000000..f5d4512 --- /dev/null +++ b/opensrp-bidan/src/main/assets/recurring_service_types.json @@ -0,0 +1,456 @@ +[ + { + "type": "Vit A", + "service_logic": "", + "units": "IU", + "openmrs_service_name": { + "parent_entity": "", + "entity": "concept", + "entity_id": "161534AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_date": { + "parent_entity": "", + "entity": "encounter", + "entity_id": "encounter_date" + }, + "services": [ + { + "id": "10", + "name": "Vit A IFC 2", + "dose": "50,000", + "schedule": { + "due": { + "reference": "dob", + "offset": "+0d" + }, + "expiry": { + "reference": "dob", + "offset": "+6m" + } + } + }, + { + "id": "11", + "name": "Vit A 1", + "dose": "100,000", + "schedule": { + "due": { + "reference": "multiple", + "multiple": { + "condition": "OR", + "prerequisites": [ + "Vit A IFC 2", + "dob" + ] + }, + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "12", + "name": "Vit A 2", + "dose": "200,000", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Vit A 1", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "13", + "name": "Vit A 3", + "dose": "200,000", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Vit A 2", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "14", + "name": "Vit A 4", + "dose": "200,000", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Vit A 3", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "15", + "name": "Vit A 5", + "dose": "200,000", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Vit A 4", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "16", + "name": "Vit A 6", + "dose": "200,000", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Vit A 5", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "17", + "name": "Vit A 7", + "dose": "200,000", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Vit A 6", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "18", + "name": "Vit A 8", + "dose": "200,000", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Vit A 7", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "19", + "name": "Vit A 9", + "dose": "200,000", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Vit A 8", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "20", + "name": "Vit A 10", + "dose": "200,000", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Vit A 9", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + } + ] + }, + { + "type": "Deworming", + "service_logic": "", + "units": "mg", + "openmrs_service_name": { + "parent_entity": "", + "entity": "concept", + "entity_id": "159922AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_date": { + "parent_entity": "", + "entity": "encounter", + "entity_id": "encounter_date" + }, + "services": [ + { + "id": "1", + "name": "Deworming 1", + "dose": "500", + "schedule": { + "due": { + "reference": "dob", + "offset": "+12m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "2", + "name": "Deworming 2", + "dose": "500", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Deworming 1", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "3", + "name": "Deworming 3", + "dose": "500", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Deworming 2", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "4", + "name": "Deworming 4", + "dose": "500", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Deworming 3", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "5", + "name": "Deworming 5", + "dose": "500", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Deworming 4", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "6", + "name": "Deworming 6", + "dose": "500", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Deworming 5", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "7", + "name": "Deworming 7", + "dose": "500", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Deworming 6", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "8", + "name": "Deworming 8", + "dose": "500", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Deworming 7", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "9", + "name": "Deworming 9", + "dose": "500", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "Deworming 8", + "offset": "+6m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + } + ] + }, + { + "type": "ITN", + "service_logic": "", + "units": "", + "openmrs_service_name": { + "parent_entity": "", + "entity": "concept", + "entity_id": "159855AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_date": { + "parent_entity": "", + "entity": "date", + "entity_id": "159432AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "services": [ + { + "id": "21", + "name": "ITN 1", + "dose": "", + "schedule": { + "due": { + "reference": "dob", + "offset": "+0d" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "22", + "name": "ITN 2", + "dose": "", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "ITN 1", + "offset": "+12m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "23", + "name": "ITN 3", + "dose": "", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "ITN 2", + "offset": "+12m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "24", + "name": "ITN 4", + "dose": "", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "ITN 3", + "offset": "+12m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + }, + { + "id": "25", + "name": "ITN 5", + "dose": "", + "schedule": { + "due": { + "reference": "prerequisite", + "prerequisite": "ITN 4", + "offset": "+12m" + }, + "expiry": { + "reference": "dob", + "offset": "+5y" + } + } + } + ] + } +] \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/services.json b/opensrp-bidan/src/main/assets/services.json new file mode 100644 index 0000000..ba75344 --- /dev/null +++ b/opensrp-bidan/src/main/assets/services.json @@ -0,0 +1,17 @@ +[ + { + "name": "Recurring Services", + "id": "Recurring_Services", + "services": [ + { + "type": "Vit A" + }, + { + "type": "Deworming" + }, + { + "type": "ITN" + } + ] + } +] \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/special_vaccines.json b/opensrp-bidan/src/main/assets/special_vaccines.json new file mode 100644 index 0000000..cec30d4 --- /dev/null +++ b/opensrp-bidan/src/main/assets/special_vaccines.json @@ -0,0 +1,32 @@ +[ + { + "name": "BCG 2", + "type": "BCG", + "openmrs_date": { + "parent_entity": "886AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "886AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 2 + }, + "schedule": { + "due": [ + { + "reference": "prerequisite", + "prerequisite": "BCG", + "offset": "+84d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+1y" + } + ] + } + } +] \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/sync_filters.json b/opensrp-bidan/src/main/assets/sync_filters.json index 08a9158..c7dddcd 100644 --- a/opensrp-bidan/src/main/assets/sync_filters.json +++ b/opensrp-bidan/src/main/assets/sync_filters.json @@ -1,8 +1,8 @@ { "_id": "_design/cloudantFilter", "filters": { - "locationId": "function(doc, req){ if(doc.type == \"Client\" || doc.type == \"Multimedia\" ){ return true; } if ( doc.locationId != req.query.locationId ){ return false; } return true; }", - "providerId": "function(doc, req){ if(doc.type == \"Client\" || doc.type == \"Multimedia\" ){ return true; } if ( doc.providerId == req.query.providerId ){ return true; } return false; }", - "team": "function(doc, req){ if(doc.type == \"Client\" || doc.type == \"Multimedia\" ){ return true; } if(req.query.team){ if(req.query.team.split(',').indexOf(doc.providerId) >= 0){ return true; } } return false; }" + "locationId": "function(doc, req){ if(doc.type == \"Client\"){ return true; } if ( doc.locationId != req.query.locationId ){ return false; } return true; }", + "providerId": "function(doc, req){ if(doc.type == \"Client\"){ return true; } if ( doc.providerId == req.query.providerId ){ return true; } return false; }", + "team": "function(doc, req){ if(doc.type == \"Client\"){ return true; } if(req.query.team){ if(req.query.team.split(',').indexOf(doc.providerId) >= 0){ return true; } } return false; }" } } \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/vaccine_type.json b/opensrp-bidan/src/main/assets/vaccine_type.json new file mode 100644 index 0000000..c6e1c62 --- /dev/null +++ b/opensrp-bidan/src/main/assets/vaccine_type.json @@ -0,0 +1,44 @@ +[ + { + "doses": "20", + "name": "BCG", + "openmrs_parent_entity_id": "", + "openmrs_date_concept_id": "", + "openmrs_dose_concept_id": "" + }, + { + "doses": "20", + "name": "OPV", + "openmrs_parent_entity_id": "", + "openmrs_date_concept_id": "", + "openmrs_dose_concept_id": "" + }, + { + "doses": "1", + "name": "Penta", + "openmrs_parent_entity_id": "", + "openmrs_date_concept_id": "", + "openmrs_dose_concept_id": "" + }, + { + "doses": "2", + "name": "PCV", + "openmrs_parent_entity_id": "", + "openmrs_date_concept_id": "", + "openmrs_dose_concept_id": "" + }, + { + "doses": "1", + "name": "Rota", + "openmrs_parent_entity_id": "", + "openmrs_date_concept_id": "", + "openmrs_dose_concept_id": "" + }, + { + "doses": "10", + "name": "M/MR", + "openmrs_parent_entity_id": "", + "openmrs_date_concept_id": "", + "openmrs_dose_concept_id": "" + } +] \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/vaccines.json b/opensrp-bidan/src/main/assets/vaccines.json new file mode 100644 index 0000000..fa526f9 --- /dev/null +++ b/opensrp-bidan/src/main/assets/vaccines.json @@ -0,0 +1,597 @@ +[ + { + "name": "Birth", + "id": "Birth", + "days_after_birth_due": 0, + "vaccines": [ + { + "name": "OPV 0", + "type": "OPV", + "openmrs_date": { + "parent_entity": "783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 0 + }, + "schedule": { + "due": [ + { + "reference": "dob", + "offset": "+0d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+13d" + } + ], + "conditions": [ + { + "type": "not_given", + "vaccine": "OPV 4" + } + ] + } + }, + { + "name": "BCG", + "type": "BCG", + "openmrs_date": { + "parent_entity": "886AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "886AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 1 + }, + "schedule": { + "due": [ + { + "reference": "dob", + "offset": "+0d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+1y" + } + ] + } + } + ] + }, + { + "name": "6 Weeks", + "id": "Six_Wks", + "days_after_birth_due": 42, + "vaccines": [ + { + "name": "OPV 1", + "type": "OPV", + "openmrs_date": { + "parent_entity": "783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 1 + }, + "schedule": { + "due": [ + { + "reference": "dob", + "offset": "+42d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+4y,10m" + } + ] + } + }, + { + "name": "Penta 1", + "type": "Penta", + "openmrs_date": { + "parent_entity": "1685AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "1685AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 1 + }, + "schedule": { + "due": [ + { + "reference": "dob", + "offset": "+42d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+4y,10m" + } + ] + } + }, + { + "name": "PCV 1", + "type": "PCV", + "openmrs_date": { + "parent_entity": "162342AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "162342AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 1 + }, + "schedule": { + "due": [ + { + "reference": "dob", + "offset": "+42d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+4y,10m" + } + ] + } + }, + { + "name": "Rota 1", + "type": "Rota", + "openmrs_date": { + "parent_entity": "159698AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "159698AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 1 + }, + "schedule": { + "due": [ + { + "reference": "dob", + "offset": "+42d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+7m" + } + ] + } + } + ] + }, + { + "name": "10 Weeks", + "id": "Ten_Wks", + "days_after_birth_due": 70, + "vaccines": [ + { + "name": "OPV 2", + "type": "OPV", + "openmrs_date": { + "parent_entity": "783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 2 + }, + "schedule": { + "due": [ + { + "reference": "prerequisite", + "prerequisite": "OPV 1", + "offset": "+28d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+4y,11m" + } + ] + } + }, + { + "name": "Penta 2", + "type": "Penta", + "openmrs_date": { + "parent_entity": "1685AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "1685AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 2 + }, + "schedule": { + "due": [ + { + "reference": "prerequisite", + "prerequisite": "Penta 1", + "offset": "+28d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+4y,11m" + } + ] + } + }, + { + "name": "PCV 2", + "type": "PCV", + "openmrs_date": { + "parent_entity": "162342AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "162342AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 2 + }, + "schedule": { + "due": [ + { + "reference": "prerequisite", + "prerequisite": "PCV 1", + "offset": "+28d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+4y,11m" + } + ] + } + }, + { + "name": "Rota 2", + "type": "Rota", + "openmrs_date": { + "parent_entity": "159698AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "159698AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 2 + }, + "schedule": { + "due": [ + { + "reference": "prerequisite", + "prerequisite": "Rota 1", + "offset": "+28d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+8m" + } + ] + } + } + ] + }, + { + "name": "14 Weeks", + "id": "Fourteen_Weeks", + "days_after_birth_due": 98, + "vaccines": [ + { + "name": "OPV 3", + "type": "OPV", + "openmrs_date": { + "parent_entity": "783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 3 + }, + "schedule": { + "due": [ + { + "reference": "prerequisite", + "prerequisite": "OPV 2", + "offset": "+28d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+5y" + } + ] + } + }, + { + "name": "Penta 3", + "type": "Penta", + "openmrs_date": { + "parent_entity": "1685AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "1685AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 3 + }, + "schedule": { + "due": [ + { + "reference": "prerequisite", + "prerequisite": "Penta 2", + "offset": "+28d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+5y" + } + ] + } + }, + { + "name": "PCV 3", + "type": "PCV", + "openmrs_date": { + "parent_entity": "162342AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "162342AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 3 + }, + "schedule": { + "due": [ + { + "reference": "prerequisite", + "prerequisite": "PCV 2", + "offset": "+28d", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+5y" + } + ] + } + } + ] + }, + { + "name": "9 Months", + "id": "Nine_Months", + "days_after_birth_due": 274, + "vaccines": [ + { + "name": "Measles 1 / MR 1", + "type": "Measles / MR", + "vaccine_separator": " / ", + "openmrs_date": { + "parent_entity": "36AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/162586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "36AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 1 + }, + "schedule": { + "Measles 1": { + "due": [ + { + "reference": "dob", + "offset": "+9m", + "window": "+10d" + } + ], + "conditions": [ + { + "type": "not_given", + "vaccine": "MR 1" + } + ] + }, + "MR 1": { + "due": [ + { + "reference": "dob", + "offset": "+9m", + "window": "+10d" + } + ], + "conditions": [ + { + "type": "not_given", + "vaccine": "Measles 1" + } + ] + } + } + }, + { + "name": "OPV 4", + "type": "OPV", + "openmrs_date": { + "parent_entity": "783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "783AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 4 + }, + "schedule": { + "due": [ + { + "reference": "dob", + "offset": "+9m", + "window": "+10d" + } + ], + "expiry": [ + { + "reference": "dob", + "offset": "+5y" + } + ], + "conditions": [ + { + "type": "not_given", + "vaccine": "OPV 0" + }, + { + "type": "given", + "vaccine": "OPV 3", + "comparison": "at_least", + "value": "-28d" + } + ] + } + } + ] + }, + { + "name": "18 Months", + "id": "Eighteen_Months", + "days_after_birth_due": 548, + "vaccines": [ + { + "name": "Measles 2 / MR 2", + "type": "Measles / MR", + "vaccine_separator": " / ", + "openmrs_date": { + "parent_entity": "36AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/162586AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1410AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" + }, + "openmrs_calculate": { + "parent_entity": "36AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "entity": "concept", + "entity_id": "1418AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", + "calculation": 2 + }, + "schedule": { + "Measles 2": { + "due": [ + { + "reference": "prerequisite", + "prerequisite": "Measles 1", + "offset": "+9m", + "window": "+10d" + }, + { + "reference": "prerequisite", + "prerequisite": "MR 1", + "offset": "+9m" + } + ], + "conditions": [ + { + "type": "not_given", + "vaccine": "MR 2" + } + ] + }, + "MR 2": { + "due": [ + { + "reference": "prerequisite", + "prerequisite": "MR 1", + "offset": "+9m", + "window": "+10d" + }, + { + "reference": "prerequisite", + "prerequisite": "Measles 1", + "offset": "+9m" + } + ], + "conditions": [ + { + "type": "not_given", + "vaccine": "Measles 2" + } + ] + } + } + } + ] + } +] \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/www/form/blood_test/form.json b/opensrp-bidan/src/main/assets/www/form/blood_test/form.json deleted file mode 100644 index 519e9dd..0000000 --- a/opensrp-bidan/src/main/assets/www/form/blood_test/form.json +++ /dev/null @@ -1 +0,0 @@ -{"name":"Blood_Test","title":"Blood Test","sms_keyword":"blood_test","default_language":"Bahasa","instance":{"encounter_type":"Blood Test"},"version":"201705080820","id_string":"blood_test","type":"survey","children":[{"instance":{"openmrs_entity_id":"encounter_start","openmrs_entity":"encounter"},"type":"start","name":"start"},{"instance":{"openmrs_entity_id":"encounter_date","openmrs_entity":"encounter"},"type":"today","name":"today"},{"type":"deviceid","name":"deviceid"},{"type":"simserial","name":"simserial"},{"type":"phonenumber","name":"phonenumber"},{"type":"hidden","name":"Province"},{"type":"hidden","name":"District","hint":{"Bahasa":"Inject from app"}},{"type":"hidden","name":"Sub-district","hint":{"Bahasa":"Inject from app"}},{"type":"hidden","name":"Village","hint":{"Bahasa":"Inject from app"}},{"type":"hidden","name":"Sub-village","hint":{"Bahasa":"Inject from app"}},{"type":"note","name":"generated_note_name_13","label":{"Bahasa":"Desa : ${Village}"}},{"type":"note","name":"generated_note_name_14","label":{"Bahasa":"Dusun : ${Sub-village}"}},{"bind":{"calculate":"${Village}"},"type":"hidden","name":"existing_location","instance":{"openmrs_entity_id":"location_id","openmrs_entity":"encounter"}},{"bind":{"calculate":"${Province}"},"type":"calculate","name":"provinsi","instance":{"openmrs_entity_parent":"usual_residence","openmrs_entity_id":"stateProvince","openmrs_entity":"person_address"}},{"bind":{"calculate":"${District}"},"type":"calculate","name":"kabupaten","instance":{"openmrs_entity_parent":"usual_residence","openmrs_entity_id":"countyDistrict","openmrs_entity":"person_address"}},{"bind":{"calculate":"${Village}"},"type":"calculate","name":"desa","instance":{"openmrs_entity_parent":"usual_residence","openmrs_entity_id":"cityVillage","openmrs_entity":"person_address"}},{"bind":{"calculate":"${Sub-village}"},"type":"calculate","name":"dusun","instance":{"openmrs_entity_parent":"usual_residence","openmrs_entity_id":"address1","openmrs_entity":"person_address"}},{"bind":{"calculate":"${Sub-district}"},"type":"calculate","name":"kecamatan","instance":{"openmrs_entity_parent":"usual_residence","openmrs_entity_id":"address2","openmrs_entity":"person_address"}},{"name":"td_sistolik","hint":{"Bahasa":"Menunjukkan tekanan darah (Sistolik) Ibu pada saat kunjungan ANC (mmHg)","English":"Indicating mother's blood pressure (systolic) on ANC check-up"},"bind":{"jr:constraintMsg":{"Bahasa":"Nilai yang dimasukkan tidak memenuhi syarat, mohon periksa kembali","English":"The entered value doesn't meet the criteria, please check it again"},"constraint":".>0 and .<1000"},"label":{"Bahasa":"TD (Sistolik)","English":"Blood pressure (sistolic)"},"instance":{"openmrs_entity_id":"5085AAAAAAAAAAAAAAAAAAAAAAAAAAAA","openmrs_entity":"concept"},"type":"integer"},{"name":"td_diastolik","hint":{"Bahasa":"Menunjukkan tekanan darah (Diastolik) Ibu pada saat kunjungan ANC (mmHg)","English":"Indicating mother's blood pressure (dyastolic) on ANC check-up"},"bind":{"jr:constraintMsg":{"Bahasa":"Nilai yang dimasukkan tidak memenuhi syarat, mohon periksa kembali","English":"The entered value doesn't meet the criteria, please check it again"},"constraint":".>0 and .<1000"},"label":{"Bahasa":"TD (Diastolik)","English":"Blood pressure (Diastolic)"},"instance":{"openmrs_entity_id":"5086AAAAAAAAAAAAAAAAAAAAAAAAAAAA","openmrs_entity":"concept"},"type":"integer"},{"instance":{"openmrs_entity_id":"5087AAAAAAAAAAAAAAAAAAAAAAAAAAAA","openmrs_entity":"concept"},"type":"integer","name":"pulse","label":{"Bahasa":"Pulse","English":"Pulse"}},{"instance":{"openmrs_entity_parent":"5087AAAAAAAAAAAAAAAAAAAAAAAAAAAA","openmrs_entity_id":"160632AAAAAAAAAAAAAAAAAAAAAAAAAA","openmrs_entity":"concept"},"type":"integer","name":"ahr","label":{"Bahasa":"Average Heart Rate","English":"Average Heart Rate"}},{"instance":{"openmrs_entity_id":"encounter_end","openmrs_entity":"encounter"},"type":"end","name":"end"},{"control":{"bodyless":true},"type":"group","children":[{"bind":{"readonly":"true()","calculate":"concat('uuid:', uuid())"},"type":"calculate","name":"instanceID"}],"name":"meta"}]} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/www/form/blood_test/form.xml b/opensrp-bidan/src/main/assets/www/form/blood_test/form.xml deleted file mode 100644 index 2f42e46..0000000 --- a/opensrp-bidan/src/main/assets/www/form/blood_test/form.xml +++ /dev/null @@ -1,97 +0,0 @@ -

\n - - -

Blood Test

- - - - - - - \n - - -
\ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/www/form/blood_test/form_definition.json b/opensrp-bidan/src/main/assets/www/form/blood_test/form_definition.json deleted file mode 100644 index 083c9d4..0000000 --- a/opensrp-bidan/src/main/assets/www/form/blood_test/form_definition.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "form_data_definition_version": "1", - "form": { - "bind_type": "ibu", - "ec_bind_type": "ec_ibu", - "default_bind_path": "/model/instance/Blood_Test", - "fields": [ - { - "name": "id", - "shouldLoadValue": true - }, - { - "name": "existing_location", - "bind": "/model/instance/Blood_Test/existing_location", - "shouldLoadValue": true - }, - { - "name": "Village", - "bind": "/model/instance/Blood_Test/Village", - "shouldLoadValue": true - }, - { - "name": "Province", - "bind": "/model/instance/Blood_Test/Province", - "shouldLoadValue": true - }, - { - "name": "Sub-district", - "bind": "/model/instance/Blood_Test/Sub-district", - "shouldLoadValue": true - }, - { - "name": "District", - "bind": "/model/instance/Blood_Test/District", - "shouldLoadValue": true - }, - { - "name": "Sub-village", - "bind": "/model/instance/Blood_Test/Sub-village", - "shouldLoadValue": true - }, - { - "name": "tandaVitalTDSistolik", - "bind": "/model/instance/Blood_Test/td_sistolik" - }, - { - "name": "tandaVitalTDDiastolik", - "bind": "/model/instance/Blood_Test/td_diastolik" - }, - { - "name": "pulse", - "bind": "/model/instance/Blood_Test/pulse" - }, - { - "name": "ahr", - "bind": "/model/instance/Blood_Test/ahr" - }, - { - "name": "submissionDate", - "bind": "/model/instance/Blood_Test/today" - } - ] - } -} \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/www/form/blood_test/model.xml b/opensrp-bidan/src/main/assets/www/form/blood_test/model.xml deleted file mode 100644 index b559871..0000000 --- a/opensrp-bidan/src/main/assets/www/form/blood_test/model.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/www/form/entity_relationship.json b/opensrp-bidan/src/main/assets/www/form/entity_relationship.json deleted file mode 100644 index 402cb1b..0000000 --- a/opensrp-bidan/src/main/assets/www/form/entity_relationship.json +++ /dev/null @@ -1,26 +0,0 @@ -[ - { - "parent":"bidan", - "child":"ibu", - "field":"ibu_ibu", - "kind":"one_to_many", - "from":"bidan.id", - "to":"ibu.relationalid" - }, - { - "parent":"kartu_ibu", - "child": "ibu", - "field":"istri", - "kind":"one_to_one", - "from":"kartu_ibu.id", - "to":"ibu.relationalid" - }, - { - "parent":"ibu", - "child":"anak", - "field":"anak_anak", - "kind":"one_to_many", - "from":"ibu.id", - "to":"anak.relationalid" - } -] \ No newline at end of file diff --git a/opensrp-bidan/src/main/assets/www/form/feedback_bidan/form.xml b/opensrp-bidan/src/main/assets/www/form/feedback_bidan/form.xml deleted file mode 100644 index c19dadc..0000000 --- a/opensrp-bidan/src/main/assets/www/form/feedback_bidan/form.xml +++ /dev/null @@ -1,750 +0,0 @@ - -
- -