DIRCthuq6huq6 n4mIL%ʹh ,.fleet/receipt.jsonhuq6huq6 b6vȟ"=t(B .gitignorehuq6huq6 n4'JU(r;).maestro/README.mdhuq6huq6 n4yIfԄrsͫkav P.maestro/flows-in-progress/001_001_user_login_to _app_with_school_name_test.yamlhuq6huq6 n4۸uN| 0׻T.maestro/flows-in-progress/001_002_Parent_user_join_class_using_invitecode_test.yamlhuq6huq6 n4dypm>5cqU.maestro/flows-in-progress/001_003_student_user_join_class_using_invitecode_test.yamlhuq6huq6 n4Y?U-!,'QSZ.maestro/flows-in-progress/001_004_user_login_via_invite_link_and_browse_lessons_test.yamlhuq6huq6 n4~Ic< =+¶7.maestro/flows-in-progress/003_create_classes_test.yamlhuq6huq6 n4&ۨx%HZq6.maestro/flows-in-progress/004_create_report_test.yamlh-Jh-J n4`f)^آPX*'.maestro/flows/000_000_hello_world.yamlhuq6huq6 n4ۺzFQ( ںZs ND.maestro/flows/001_004_add_app_via_link_and_browse_lessons_test.yamlhuq6huq6 n4 {kbn N%.maestro/flows/scripts/school_init.jshuq6huq6 n4pu@@#e<Ғsy!.maestro/flows/scripts/setDate.jshuq6huq6 n4P21AUKq†".maestro/flows/scripts/teardown.jshuq6huq6 n4 aiF.maestro/flows/subflows/get_started_select_school_by_name.yamlhuq6huq6 n4s d8q5a-IYs5.maestro/flows/subflows/launch_clear_and_set_dir.yamlhuq6huq6 n4|j"f,E{W藌Y14.maestro/flows/subflows/school_admin_login_flow.yamlhuq6huq6 n4v|zrB!,/yd(.maestro/flows/subflows/school_init.yamlhuq6huq6 b VHn OޕARCHITECTURE.mdhuq6huq6 b|5E%\qㅷDESIGN_GUIDELINES.mdhuq6huq6 b ]R?rCRLICENSEhuq6huq6 b SDÔit ]f` README.mdhuq61huq61 bHae@YYbuild.gradle.ktshuq61huq61 b/Z'}'z&H6ci-run-maestro.shhuq61huq61 b!t%SN,^[#Aci-run-test-server.shhuq61huq61 n47QXA(Y$ L猧9composeApp/src/desktopMain/resources/img/respect_logo.pnghuq61huq61 n45^@yA|R-6composeApp/src/desktopMain/resources/img/spix_logo.pnghuq61huq61 bS2;Vȱ/vZBgradle.propertieshuq61huq61 n4+;k/@jdfzJgradle/libs.versions.tomlhuq61huq61 n4,5!}|EC %!gradle/wrapper/gradle-wrapper.jarhuq61huq61 n4Gv1z^"`:w$ i(gradle/wrapper/gradle-wrapper.propertieshuq61huq61 b":mkkZ&BGtgradlewhuq61huq61 b 8!4\'{[*n gradlew.bathuq61huq61 n4}rs_h\@"respect-app-compose/README.mdhuq61huq61 n4 pX[RS3}YwJ$respect-app-compose/build.gradle.ktshuq61huq61 n4HV/$"s{WIlI&respect-app-compose/proguard-rules.prohuq7 sVhuq7 sV n4 ^BzoSìUQO!7respect-app-compose/src/androidMain/AndroidManifest.xmlhuq7 sVhuq7 sV n4vTuԽ _#YOrespect-app-compose/src/androidMain/kotlin/world/respect/AbstractAppActivity.kthuq7 sVhuq7 sV n4(R1R h2!>9vIGrespect-app-compose/src/androidMain/kotlin/world/respect/AppActivity.kthuq7 sVhuq7 sV n4}y@vb,0{Irespect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kthuq7 sVhuq7 sV n4Lҏi:[Mr!Hrespect-app-compose/src/androidMain/kotlin/world/respect/MainActivity.kthuq7 sVhuq7 sV n4 pfW36n7Frespect-app-compose/src/androidMain/kotlin/world/respect/RespectApp.kthuq7 sVhuq7 sV n4 bq<$0mp-59Krespect-app-compose/src/androidMain/kotlin/world/respect/WebViewActivity.kthuq7 sVhuq7 sV n4~vlhH ZSrespect-app-compose/src/androidMain/kotlin/world/respect/app/app/AppIcon.android.kthuq7 sVhuq7 sV n4dQg4lCA&k2_respect-app-compose/src/androidMain/kotlin/world/respect/app/components/BasicWebView.android.kthuq7 sVhuq7 sV n4EZ2ǀn5H"awkrespect-app-compose/src/androidMain/kotlin/world/respect/app/components/RespectImageSelectButton.android.kthuq7 sVhuq7 sV n4? kWwv~eHmrespect-app-compose/src/androidMain/kotlin/world/respect/app/components/webview/UstadAbstractWebViewClient.kthuq7 sVhuq7 sV n4s :_Tmfrespect-app-compose/src/androidMain/kotlin/world/respect/app/util/phonenum/GuessCountryCode.android.kthuq7 sVhuq7 sV n4Z2L ;u,˞y`respect-app-compose/src/androidMain/kotlin/world/respect/app/util/phonenum/PhoneUtils.android.kthuq7 sVhuq7 sV n4YDrR K;~F7::s_respect-app-compose/src/androidMain/kotlin/world/respect/callback/AddSchoolDirectoryCallback.kthuq7 sVhuq7 sV n4œC߬'|:urespect-app-compose/src/androidMain/kotlin/world/respect/credentials/passkey/CheckPasskeySupportUseCaseAndroidImpl.kthuq7 sVhuq7 sV n4 LmuZ.sva;h-ܒw3Krespect-app-compose/src/androidMain/res/drawable/ic_launcher_background.xmlhuq7huq7 n54n>eY+!zFٯ`Brespect-app-compose/src/androidMain/res/drawable/respect_logo.webphuq7huq7 n5x}3OYr2q=?respect-app-compose/src/androidMain/res/drawable/spix_logo.webphuq7huq7 n5rMOĹUPBrespect-app-compose/src/androidMain/res/drawable/works_offline.pnghuq7huq7 rylVm^y)iW^hDrespect-app-compose/src/androidMain/res/layout/activity_web_view.xmlhuq7*huq7* r{mO0jQ?ȶĂպ=respect-app-compose/src/androidMain/res/menu/menu_webview.xmlhuq7*huq7* r} Rf( h{Orespect-app-compose/src/androidMain/res/mipmap-anydpi-v26/ic_launcher_round.xmlhuq7*huq7* raUUa=,֑FIrespect-app-compose/src/androidMain/res/mipmap-hdpi/ic_launcher_round.pnghuq7*huq7* rƁ respect-app-compose/src/commonMain/kotlin/theme/CommonColor.kthuq7*huq7* rƚ vy*/`:=98respect-app-compose/src/commonMain/kotlin/theme/Theme.kthuq7*huq7* rƝ̼9\eui/ʞD>respect-app-compose/src/commonMain/kotlin/world/respect/App.kthuq7::huq7:: rƠ"/v? iTď0<1DFrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/App.kthuq7::huq7:: rơ#[sGe35 )\OIrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kthuq7::huq7:: rƢl}`JsgS7Jrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppIcon.kthuq7::huq7:: rƣWL=.CuXj$~Mrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kthuq7::huq7:: rƤkAv bxr>$6QTrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/RespectAsyncImage.kthuq7::huq7:: rƥ>G ߄^TaxY:z iLrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/SizeClass.kthuq7::huq7:: rƧ`:7q=-QjVrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/BasicWebView.kthuq7::huq7:: rƨ ZX3-m-Urespect-app-compose/src/commonMain/kotlin/world/respect/app/components/ModifierExt.kthuq7::huq7:: rƩ4':o'Ln[`respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RememberAppVersionInfo.kthuq7::huq7:: rƪ ܭ8-{2@0GA0arespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectBasicAlertDialog.kthuq7::huq7:: rƫAF0H2+]tMZ怯brespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectBottomSheetOption.kthuq7::huq7:: rƬA詘஢kBsNG8Zrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectDateField.kthuq7::huq7:: rƭEfZrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLazyItems.kthuq7::huq7:: rƲ\&4K"(cj.:J_respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLocalDateField.kthuq7::huq7:: rƳ HG ì?Vr&|V&crespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLocalDateTimeField.kthuq7::huq7:: rƴO@?`} "(_respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLocalTimeField.kthuq7::huq7:: rƵ KKFx)F2{\Adrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLongVersionInfoItem.kthuq7::huq7:: rƶ,)v8l5&4frespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectOfflineItemStatusIcon.kthuq7::huq7:: rƷ0nG xPCY?zZ-\respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectPagingItems.kthuq7I|@huq7I|@ rƸ c&$1X^.ʍudhrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectPasskeySignInFasterCard.kthuq7I|@huq7I|@ rƹ ;)a|>^respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectPasswordField.kthuq7I|@huq7I|@ rƺtSBɘFa%Wn]respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectPersonAvatar.kthuq7I|@huq7I|@ rƻכּ:@ 秐]zerespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectPhoneNumberTextField.kthuq7I|@huq7I|@ rƼ- 9}dA^qR_Kbrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectQuickActionButton.kthuq7I|@huq7I|@ rƽHH%׀4hJ٩s_^respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectRememberPager.kthuq7I|@huq7I|@ rƾ07"nZޟ4erespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectShortVersionInfoText.kthuq7I|@huq7I|@ rƿ^X W7j!  s[respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectSortHeader.kthuq7I|@huq7I|@ r6(I~qoNP&Jgrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectSortOptionsBottomSheet.kthuq7I|@huq7I|@ rEu=WP. L?^respect-app-compose/src/commonMain/kotlin/world/respect/app/components/UiTextStringResource.kthuq7I|@huq7I|@ r ΂(_{[.*$%xgrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/UstadExposedDropDownMenuField.kthuq7I|@huq7I|@ rEGPKk2/LGWrespect-app-compose/src/commonMain/kotlin/world/respect/app/effects/AppUiStateEffect.kthuq7I|@huq7I|@ roj]X"vWE]respect-app-compose/src/commonMain/kotlin/world/respect/app/effects/NavControllerLogEffect.kthuq7I|@huq7I|@ rݻ6LS/'Nrespect-app-compose/src/commonMain/kotlin/world/respect/app/util/ext/IntExt.kthuq7I|@huq7I|@ r)|^a.Lltܷfrespect-app-compose/src/commonMain/kotlin/world/respect/app/util/phonenum/CountryCodeTransformation.kthuq7I|@huq7I|@ rconrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/changepassword/ChangePasswordScreen.kthuq7wBhuq7wB G?sn~- drespect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/detail/PersonDetailScreen.kthuq7wBhuq7wB HcCdQ!)`respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/edit/PersonEditScreen.kthuq7wBhuq7wB H{ KRN$l_Xjdrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/detail/ReportDetailScreen.kthuq7wBhuq7wB H[O͇(N.U}U6~Y`respect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/edit/ReportEditScreen.kthuq7wBhuq7wB H.{)>TqDyllrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/filteredit/ReportFilterEditScreen.kthuq7wBhuq7wB H(-r@,1{^respect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/graph/CombinedGraph.kthuq7wBhuq7wB H%i@w "hqrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/indicator/detail/IndicatorDetailScreen.kthuq7wBhuq7wB H >/]rN_ֲ{]O+mrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/indicator/edit/IndicatorEditScreen.kthuq7wBhuq7wB H i4_*p_WE<|mrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/indicator/list/IndicatorListScreen.kthuq7*huq7*  a ]_jis0v `respect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/list/ReportListScreen.kthuq7*huq7*  b"WUHԺhrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/list/ReportTemplateListScreen.kthuq7*huq7*  e $ |OPݺ3F|bhQrrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/schooldirectory/edit/SchoolDirectoryEditScreen.kthuq7*huq7*  g s$eoz4rrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/schooldirectory/list/SchoolDirectoryListScreen.kthuq7*huq7*  i (ܘo@ q@"NSwNrespect-app-compose/src/commonMain/kotlin/world/respect/images/RespectImage.kthuq7*huq7*  mۤo4^ۮIGlVrespect-app-compose/src/commonMain/kotlin/world/respect/navigation/NavCommandEffect.kthuq7*huq7*  t^HDetI+\{YSrespect-app-compose/src/desktopMain/kotlin/world/respect/app/app/AppIcon.desktop.kthuq7*huq7*  vT_0 ? Q4!_respect-app-compose/src/desktopMain/kotlin/world/respect/app/components/BasicWebView.desktop.kthuq7*huq7*  w0A i/VvI3Qkrespect-app-compose/src/desktopMain/kotlin/world/respect/app/components/RespectImageSelectButton.desktop.kthuq7*huq7*  zA >E.ԥVP$-4.frespect-app-compose/src/desktopMain/kotlin/world/respect/app/util/phonenum/GuessCountryCode.desktop.kthuq7*huq7*  {Z2L ;u,˞y`respect-app-compose/src/desktopMain/kotlin/world/respect/app/util/phonenum/PhoneUtils.desktop.kthuq7*huq7*  }dl%'f+QWrespect-app-compose/src/desktopMain/kotlin/world/respect/images/RespectImage.desktop.kthuq7*huq7*  ~k״YU:K.SA@respect-app-compose/src/desktopMain/kotlin/world/respect/main.kthuq7*huq7*  ;D-tstoB>respect-app-compose/src/desktopMain/resources/sample-feed.jsonhuq7*huq7*  B*18LyqzK}respect-cli/.gitignorehuq7*huq7*  Rz$oG]%Frespect-cli/build.gradle.ktshuq7ehuq7e  K я}z Hcr2>respect-cli/src/main/java/world/respect/clitools/RespectCLI.kthuq7ehuq7e  B*18LyqzK}respect-credentials/.gitignorehuq7ehuq7e  ) o{r0{Ö$respect-credentials/build.gradle.ktshuq7ehuq7e  H4Ayף gm4K &respect-credentials/proguard-rules.prohuq7ehuq7e  HDQi2O ~QͯHirespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/CheckPasskeySupportUseCase.kthuq7ehuq7e  ~"qP;Bu͍crespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/CreatePasskeyUseCase.kthuq7ehuq7e  ߉3ǬW1{crespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/GetCredentialUseCase.kthuq7ehuq7e  ʿ=\Ӱ Q/p%Fa`respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/RespectCredential.kthuq7ehuq7e  m^`x۶޿ `respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/RespectUserHandle.kthuq7ehuq7e  XJ6Xȵbrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/VerifyDomainUseCase.kthuq7ehuq7e  37<(glOgrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AaguidProviderInfo.kthuq7ehuq7e  76e]f,Z~respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AuthenticationExtensionsClientOutputsJSON.kthuq7ehuq7e  ⶢ` ڞw2{respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AuthenticationExtensionsPRFOutputsJSON.kthuq7ehuq7e  'rځ5)8 orespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AuthenticationResponseJSON.kthuq7ehuq7e  j;OI Ft H|"Fwrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AuthenticatorAssertionResponseJSON.kthuq7ehuq7e  9W)#zOv5r31OY-srespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AuthenticatorSelectionCriteria.kthuq7ehuq7e  Of6AXsκcrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/ClientDataJSON.kthuq7ehuq7e  ȱc'x"[hrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PasskeyVerifyResult.kthuq7ehuq7e  RH06O8?s41{respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialCreationOptionsJSON.kthuq7ehuq7e  1"a?F Cvrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialDescriptorJSON.kthuq7ehuq7e  _ '~/<,}>trrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialParameters.kthuq7ehuq7e  oRA >S|Dzrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialRequestOptionsJSON.kthuq7ehuq7e  MKbopPBnu>Hprespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialRpEntity.kthuq7ehuq7e  +@ 8?Hm@ Dvrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialUserEntityJSON.kthuq7ehuq7e  FǚUV`;Gnkrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/password/SavePasswordUseCase.kthuq7ehuq7e   Ҵ {\!W0p$z{respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/request/CreatePublicKeyCredentialCreationOptionsJsonUseCase.kthuq7ehuq7e  Rs&T|(9i^respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/request/CreatePublicKeyCredentialRequestOptionsJsonUseCase.kthuq7ehuq7e  VXA;DҔ#nrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/request/DecodeUserHandleUseCase.kthuq7 huq7  g\r}ft$9nrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/request/EncodeUserHandleUseCase.kthuq7 huq7  oޚ bi=?trespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/request/GetPasskeyProviderInfoUseCase.kthuq7 huq7  ]!qIl9K ]respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/util/StringExt.kthuq7 huq7  r0o#Fj`|0respect-credentials/src/main/AndroidManifest.xmlhuq7 huq7  j(>i;F6?[brespect-datalayer-db/README.mdhuq7 huq7  q./,CB4B|y!%respect-datalayer-db/build.gradle.ktshuq7 huq7  UnAr) BnWwێQrespect-datalayer-db/schemas/world.respect.datalayer.db.RespectAppDatabase/1.jsonhuq7 huq7  Vf"%|7ws6A<@Qrespect-datalayer-db/schemas/world.respect.datalayer.db.RespectAppDatabase/2.jsonhuq7 huq7  X;uP,T~v0~a-Srespect-datalayer-db/schemas/world.respect.datalayer.db.RespectRealmDatabase/1.jsonhuq7 huq7  Y%Cx?OSrespect-datalayer-db/schemas/world.respect.datalayer.db.RespectRealmDatabase/2.jsonhuq7 huq7  [PMxPD/KTrespect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/1.jsonhuq7 huq7  \PǾ0ۧ3.F/Dhrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/RespectSchoolDatabaseMigrations.kthuq7Khuq7K  o X+ =Gpf[respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/SchoolDataSourceDb.kthuq7Khuq7K  q\i4&F7rqrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/CompatibleAppDataSourceDb.kthuq7Khuq7K  sp_e>^/)EM6urespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/adapters/CompatbileAppAdapter.kthuq7Khuq7K  uב}.\&.\ v7trespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/daos/CompatibleAppAddJoinDao.kthuq7Khuq7K  vRlQ`>1I၎Tsrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/daos/CompatibleAppEntityDao.kthuq7Khuq7K  xǭW3 lm.êQurespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/entities/CompatibleAppAddJoin.kthuq7Khuq7K  y ꔀ h,`@ctrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/entities/CompatibleAppEntity.kthuq7Khuq7K  | iHoD&$ Rg%u՝ALrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/networkvalidation/ExtendedDataSourceValidationHelperImpl.kthuq7Îhuq7Î  ym7w^respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/OpdsDataSourceDb.kthuq7Îhuq7Î  ńY'xW\respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/OpdsParentType.kthuq7Îhuq7Î  ŅQhTdy@Q`respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/OpdsTypeConverters.kthuq7Îhuq7Î  Ňrˀmt@ L`S͋_grespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/OpdsFacetAdapter.kthuq7Îhuq7Î  ňFRke3>frespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/OpdsFeedAdapter.kthuq7Îhuq7Î  ʼn 2dTYKǫtrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/OpdsFeedMetadataEntityAdapter.kthuq7Îhuq7Î  Ŋa*-ftz}{,@grespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/OpdsGroupAdapter.kthuq7Îhuq7Î  ŕЊ4cIiqW$Lsrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/OpdsPublicationEntityAdapter.kthuq7Îhuq7Î  ŖdzdB!nPәjqorespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/ReadiumLinkEntityAdapter.kthuq7Îhuq7Î  ŗ VA;$8 "濵ԦVgrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/daos/ReadiumLinkEntityDao.kthuq7Îhuq7Î  Š2NN Ck/,ݭYxsfrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/OpdsFacetEntity.kthuq7Îhuq7Î  šԊu^'㰸OdWerespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/OpdsFeedEntity.kthuq7Îhuq7Î  Ţ*ǽAR&m (I~mrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/OpdsFeedMetadataEntity.kthuq7Îhuq7Î  ţs%== :32frespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/OpdsGroupEntity.kthuq7Îhuq7Î  Ť;Ԡ_qOm ZLlrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/OpdsPublicationEntity.kthuq7Îhuq7Î  ť ư{uYqhwihrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/ReadiumLinkEntity.kthuq7Îhuq7Î  Ŧ? j*1Iذwpxz=+/krespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/ReadiumSubjectEntity.kthuq7Îhuq7Î  ŨPd?!7r frespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/AssignmentDatasourceDb.kthuq7Îhuq7Î  ũRPbd[r?A=ڍarespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/ClassDatasourceDb.kthuq7Ohuq7O  ŪoՎ,{(RM"]J7xe[frespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/EnrollmentDataSourceDb.kthuq7Ohuq7O  ū YXN>v{erespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/IndicatorDataSourceDb.kthuq7Ohuq7O  Ŭ+w5}G|aFbrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonDataSourceDb.kthuq7Ohuq7O  ŭ N﹎b-irespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonPasskeyDataSourceDb.kthuq7Ohuq7O  Ů -O gvKq4tjrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonPasswordDataSourceDb.kthuq7Ohuq7O  ů ʕ=)!Il c³(brespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/ReportDataSourceDb.kthuq7Ohuq7O  Ű |ivl`}BQtBerespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/SchoolAppDataSourceDb.kthuq7Ohuq7O  ű .>[6 ip,˕drespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/SchoolTypeConverters.kthuq7Ohuq7O  ų V;.-p6 ~,I*,jrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/AssignmentAdapter.kthuq7Ohuq7O  Ŵ+}FHT\I7J҃irespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/AuthTokenAdapter.kthuq7Ohuq7O  ŵ{fabe0lerespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/ClassAdapter.kthuq7Ohuq7O  Ŷ!SYpg)n8|jrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/EnrollmentAdapter.kthuq7Ohuq7O  ŷ 1Ãr)%O(QHfrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonAdapter.kthuq7Ohuq7O  ŸߌFCZ)Q4xmrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonPasskeyAdapter.kthuq7Ohuq7O  ŹDM3b;~.tnrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonPasswordAdapter.kthuq7Ohuq7O  ź$oN=EB8%afrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/ReportAdapter.kthuq7Ohuq7O  Ż"JeSp'~U*m5irespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/SchoolAppAdapter.kthuq7Ohuq7O  żDW\Fg2EOv{nrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/WriteQueueItemAdapter.kthuq7Ohuq7O  žI'!ߔf-,^]esrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/AssignmentAssigneeRefEntityDao.kthuq7Ohuq7O  ſO0tڲٞ3hrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/AssignmentEntityDao.kthuq7Ohuq7O  iottk L?{respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/AssignmentLearningResourceRefEntityDao.kthuq7Ohuq7O  &(Us;# ξǕVGgrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/AuthTokenEntityDao.kthuq7Ohuq7O   "d6B.agbg{crespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/ClassEntityDao.kthuq7Ohuq7O   AK0.hrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/EnrollmentEntityDao.kthuq7Ohuq7O  [ppP5pPҔVOgrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/IndicatorEntityDao.kthuq7Ohuq7O  G 'W28.NbAM}ưdrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonEntityDao.kthuq7Ohuq7O  gA!5Alrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonPasswordEntityDao.kthuq7Ohuq7O  W%Vi4c_Mqrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonRelatedPersonEntityDao.kthuq7Ohuq7O  =fQDf hrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonRoleEntityDao.kthuq7Ohuq7O  >%Xo4qUG_^:vdrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/ReportEntityDao.kthuq7Ohuq7O  {n~ci&]j Rgrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/SchoolAppEntityDao.kthuq7Ohuq7O  n-%`na+V{_flrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/WriteQueueItemEntityDao.kthuq7Ohuq7O orPJrqtrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/AssignmentAssigneeRefEntity.kthuq7Ohuq7O ~`KS!n rZirespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/AssignmentEntity.kthuq7Ohuq7O  tD{R=h|respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/AssignmentLearningResourceRefEntity.kthuq7huq7 Y7Lgu/'hrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/AuthTokenEntity.kthuq7huq7 554#ZDdrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/ClassEntity.kthuq7huq7 zQB5߱:Zirespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/EnrollmentEntity.kthuq7huq7 9?JJV.T6hrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/IndicatorEntity.kthuq7huq7 I>?Nerespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonEntity.kthuq7huq7 KDDo+POT:v/+nrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonEntityWithRoles.kthuq7huq7 9KHVWS1L Qlrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonPasskeyEntity.kthuq7huq7 , fAvڱבmrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonPasswordEntity.kthuq7huq7 FT$ļեPcw3rrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonRelatedPersonEntity.kthuq7huq7 cdGh>E pk`irespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonRoleEntity.kthuq7huq7 $lu8)-BiQerespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/ReportEntity.kthuq7huq7 ȫZ:/At(Mhrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/SchoolAppEntity.kthuq7huq7 0Y™ږOp+mrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/WriteQueueItemEntity.kthuq7huq7 Sji?-KQ`?nrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/adapters/ILangMapEntityAdapter.kthuq7huq7  UǟzΆFgrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/adapters/LangMapAdapter.kthuq7huq7 k#ègso^3EN3nrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/adapters/ValidationInfoAdapter.kthuq7huq7 K+CVYєQerespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/daos/LangMapEntityDao.kthuq7Thuq7T >[>+] `Ukrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/ext/SchoolUrlHttpDataSourceExt.kthuq8huq8 0R/VfS6܀Zorespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/headers/directives/DirectivesToMap.kthuq8huq8 0T2HXv?oϏ/ ߄drespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/opds/OpdsDataSourceHttp.kthuq8huq8 0V#0jv 3m~0ާVTSlrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/AssignmentDataSourceHttp.kthuq8:huq8: 0W$ Xh=fJTgrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/ClassDataSourceHttp.kthuq8:huq8: 0X.ܳN(t͒bblrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/EnrollmentDataSourceHttp.kthuq8:huq8: 0Y5^Spg-Àzhrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonDataSourceHttp.kthuq8:huq8: 0Z _9Fporespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonPasskeyDataSourceHttp.kthuq8:huq8: 0[ `s|Dn.s+Ɏ`%prespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonPasswordDataSourceHttp.kthuq8:huq8: 0\zp ru3iӰtPkrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/SchoolAppDataSourceHttp.kthuq8:huq8: 0]$In 9{#VAlrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/SchoolUrlBasedDataSource.kthuq8:huq8: 0_ ToἀN.ԗrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/schooldirectory/SchoolDirectoryEntryDataSourceHttp.kthuq8:huq8: 0bf>kڥߏtBvrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/shared/paging/OffsetLimitHttpPagingSource.kthuq8:huq8: 0dsjűG3s.wKZ&respect-datalayer-repository/README.mdhuq8:huq8: 0e ^"u>ub=j<-respect-datalayer-repository/build.gradle.ktshuq8:huq8: 0oy<Ʊ?<\rerespect-datalayer-repository/src/androidMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueWorker.kthuq8:huq8: 0pM9;FpU/respect-datalayer-repository/src/androidMain/kotlin/world/respect/datalayer/repository/school/writequeue/EnqueueDrainRemoteWriteQueueUseCaseAndroidImpl.kthuq8:huq8: 0wCBŜ{ضdx3>]_wrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/RespectAppDataSourceRepository.kthuq8:huq8: 0x⛲CK)wZSyrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/RespectRealmDataSourceRepository.kthuq8:huq8: 0yc2g-2!Zŏsrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/SchoolDataSourceRepository.kthuq8:huq8: 0{ -HhKp' D1ɬ>Irespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/compatibleapps/CompatibleAppDataSourceRepository.kthuq8uhuq8u 0}Is+.j#NJGWUvrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/opds/OpdsDataSourceRepository.kthuq8uhuq8u 0 SU)mqCsUd~respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/AssignmentDataSourceRepository.kthuq8uhuq8u 0ǀ Ԫncka6xϸ]0yrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/ClassDataSourceRepository.kthuq8uhuq8u 0ǁ TBlq՝9~respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/EnrollmentDataSourceRepository.kthuq8uhuq8u 0ǂHsji,naY;zrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonDataSourceRepository.kthuq8uhuq8u 0ǃV?5A9[i48 6Xrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonPasskeyDataSourceRepository.kthuq8uhuq8u 0DŽ Nb~)h(ng1wy&e respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonPasswordDataSourceRepository.kthuq8uhuq8u 0Dž/>P!kSzrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/ReportDataSourceRepository.kthuq8uhuq8u 0dž 1 _S2qCM { }respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/SchoolAppDataSourceRepository.kthuq8uhuq8u 0Ljmkɪ ^?A1nK-respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kthuq8uhuq8u 0NJx=ȽR3Drespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/schooldirectory/SchoolDirectoryEntryDataSourceRepository.kthuq8uhuq8u 0Ǎ'`禺7658#respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/shared/paging/DoorOffsetLimitRemoteMediator.kthuq8uhuq8u 0ǎ9Swbl5: vrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/shared/paging/PagingSourceExt.kthuq8uhuq8u 0Ǐ%[{a2_yܒ&vrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/shared/paging/RemoteMediator2.kthuq8uhuq8u 0ǐq/2\{s respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/shared/paging/RepositoryOffsetLimitPagingSource2.kthuq8uhuq8u 0Ǒ5^RuTzm*crespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/shared/paging/RepositoryPagingSourceFactory.kthuq8uhuq8u 0ǘ t]*SYV$U xrespect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/RespectAppDataSourceRepositoryTest.kthuq8uhuq8u 0ǚ=VV{s*fG:Frespect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/opds/OpdsRespectRepositoryIntegrationTest.kthuq8.]huq8.] 0ǜ*-暲J,/Υ|respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/PersonRepositoryIntegrationTest.kthuq8.]huq8.] 0ǞvO<=%j,do>respect-datalayer-repository/src/jvmTest/resources/logback.xmlhuq8.]huq8.] 0ǤŞ5b_ݹƯEb;erespect-datalayer-repository/src/jvmTest/resources/world/respect/datalayer/repository/opds/index.jsonhuq8.]huq8.] 0ǥ0^9a%Sڂirespect-datalayer-repository/src/jvmTest/resources/world/respect/datalayer/repository/opds/lesson001.jsonhuq8.]huq8.] 0ǧB*18LyqzK}respect-datalayer/.gitignorehuq8.]huq8.] 0Ǩ̹5I=xGV$ߺrIrespect-datalayer/README.mdhuq8.]huq8.] 0ǩ}8M"q_^X"respect-datalayer/build.gradle.ktshuq8.]huq8.] 0Ǭyha̮O Ԉ[vEs5respect-datalayer/src/androidMain/AndroidManifest.xmlhuq8.]huq8.] 47B MܣW72Trespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/AuthTokenProvider.kthuq8.]huq8.] 47TݦZ<>Y6_respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/AuthenticatedUserPrincipalId.kthuq8.]huq8.] 47ۉEhoUF[O%qSrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLayerHeaders.kthuq8.]huq8.] 47ܾMkPzqNURrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLayerParams.kthuq8.]huq8.] 47j Ncʤ%ҷ.horespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/compatibleapps/CompatibleAppsDataSourceLocal.kthuq8=huq8= 47 yVNrhmufk(jrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/compatibleapps/model/RespectAppManifest.kthuq8=huq8= 47x/Lm$u$SӎG! Wrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/DataLoadStateExt.kthuq8=huq8= 47F,qWz|}$KY:[ Trespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/DateConstants.kthuq8=huq8= 47~Nm`i)wTrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/HttpClientExt.kthuq8=huq8= 47w>'1dBC^8 Urespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/HttpHeadersExt.kthuq8=huq8= 47ZH7NJsd>!w!Y|\respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/HttpRequestBuilderExt.kthuq8=huq8= 47AKp._lf^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/LocalModelDataSourceExt.kthuq8=huq8= 47''MyL*n3<srespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/networkvalidation/BaseDataSourceValidationHelper.kthuq8=huq8= 47@qyЧaޤNwrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/networkvalidation/ExtendedDataSourceValidationHelper.kthuq8=huq8= 47?+%>~r?pE>¦jrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/networkvalidation/NetworkValidationInfo.kthuq8=huq8= 47UcoocxQЋphrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/composites/ClazzListDetails.kthuq8=huq8= 476p{x)*vۜ)w`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterBase.kthuq8=huq8= 47nÌ>R)K(jrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterBaseStatusEnum.kthuq8=huq8= 47eQЋ5X}١x˜carespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterClass.kthuq8=huq8= 47K!^-,fhrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterClassGUIDRef.kthuq8=huq8= 48hS]2GFrZfrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterEnrollment.kthuq8=huq8= 48^(fK`B<ظCr;Wcrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterGUIDRef.kthuq8=huq8= 48wŘ͋V6Ehfrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterGenderEnum.kthuq8=huq8= 48ׄ:ZǔjnŌ*frespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterOrgGUIDRef.kthuq8=huq8= 48ˀ񫒣?`$4krespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterResourceGUIDRef.kthuq8=huq8= 48p\p,QH`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterRole.kthuq8=huq8= 48n̒Mb2Cddrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterRoleEnum.kthuq8=huq8= 48_we^`*grespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterRoleEnumExt.kthuq8=huq8= 48:w'UEYIohrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterRoleTypeEnum.kthuq8=huq8= 48N K%u\h'#+Ca`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterUser.kthuq8=huq8= 48K-A=S}>8MOcPpgrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterUserGUIDRef.kthuq8=huq8= 48v8 ~8z[brespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterUserId.kthuq8=huq8= 48CV.Je$K|8z^grespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterUserProfile.kthuq8L%huq8L% 48=]K2jVrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/opds/OpdsDataSource.kthuq8L%huq8L% 48^^^$q~mvИrN[respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/opds/OpdsDataSourceLocal.kthuq8L%huq8L% 48!SiBͨ.mUrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Clazz.kthuq8L%huq8L% : ́̾Z\qZrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/DeviceInfo.kthuq8L%huq8L% :1{"&/1E Zrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Enrollment.kthuq8\$_huq8\$_ :hi+Yz]tdbbrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/EnrollmentRoleEnum.kthuq8\$_huq8\$_ :Q݆mLBxזb{Yrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Indicator.kthuq8\$_huq8\$_ :f~ ujEVrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Person.kthuq8\$_huq8\$_ :xԿCz'Y/>`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonGenderEnum.kthuq8\$_huq8\$_ :/2ku`q]Y{aq\]respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonPasskey.kthuq8\$_huq8\$_ :tR%[ Jhq3g#eӏ^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonPassword.kthuq8\$_huq8\$_ :.45o'I9$=Zrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonRole.kthuq8\$_huq8\$_ :x?e҆Y5^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonRoleEnum.kthuq8\$_huq8\$_ : [bᕌ.`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonStatusEnum.kthuq8\$_huq8\$_ :Jw"+zT%Vrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Report.kthuq8\$_huq8\$_ :Լ ܕY}Z CvrgYrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/SchoolApp.kthuq8\$_huq8\$_ :XS^2. W9~W2Zrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/StatusEnum.kthuq8\$_huq8\$_ :re ga~6q@0lrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/composites/PersonListDetails.kthuq8\$_huq8\$_ :yB D;.+P(lrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/schooldirectory/SchoolDirectoryDataSource.kthuq8\$_huq8\$_ :EU}imqrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/schooldirectory/SchoolDirectoryDataSourceLocal.kthuq8\$_huq8\$_ :½NZo49Zr`I ?qrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/schooldirectory/SchoolDirectoryEntryDataSource.kthuq8\$_huq8\$_ :)4x1y'{qvrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/schooldirectory/SchoolDirectoryEntryDataSourceLocal.kthuq8\$_huq8\$_ :Va qe^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/LocalModelDataSource.kthuq8\$_huq8\$_ :# >#?f:!NqXrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/ModelWithTimes.kthuq8\$_huq8\$_ :DGpe$yۓ[respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/ModelWithTimesExt.kthuq8\$_huq8\$_ :Qd^iNm~crespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/RepositoryModelDataSource.kthuq8\$_huq8\$_ :w-bt=lxA20Su)\respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/WritableDataSource.kthuq8\$_huq8\$_ :)g%@O;Y_respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/XXHashUidNumberMapper.kthuq8\$_huq8\$_ :rCq 䢴" jrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/paging/CacheableHttpPagingSource.kthuq8\$_huq8\$_ :cʥjr<drespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/paging/DatalayerPagingUtil.kthuq8kfhuq8kf :qJ![Ԏh?-rrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/paging/DelegatedInvalidationPagingSource.kthuq8kfhuq8kf :ƿcjщUObrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/paging/EmptyPagingSource.kthuq8kfhuq8kf :Lw\Fieirespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/paging/EmptyPagingSourceFactory.kthuq8kfhuq8kf :w#Y(!?ul;]A,crespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/paging/FilterPagingSource.kthuq8kfhuq8kf :jG _Dq?ncbPerespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/paging/IPagingSourceFactory.kthuq8kfhuq8kf : Lp:RYμ0eIG^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/paging/LoadParamsExt.kthuq8kfhuq8kf : _!14oߖ%"xu`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/paging/MapPagingSource.kthuq8kfhuq8kf : 3OR'K5=ތWjrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/paging/PagingSourceFactoryHolder.kthuq8kfhuq8kf : ]8;8V]&"Ldrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/params/GetListCommonParams.kthuq8kfhuq8kf 0DZB*18LyqzK}respect-lib-cache/.gitignorehuq8kfhuq8kf 0Dz X'i&RI@DUrespect-lib-cache/README.mdhuq8kfhuq8kf 0dz L"^ 8b/"respect-lib-cache/build.gradle.ktshuq8kfhuq8kf :>gҎkJi-&)L8S&UJrespect-lib-cache/schemas/com.ustadmobile.libcache.db.UstadCacheDb/15.jsonhuq8kfhuq8kf :J=A w]!.?5respect-lib-cache/src/androidMain/AndroidManifest.xmlhuq8kfhuq8kf :vOCW o.dɗVrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/UstadCacheBuilder.kthuq8kfhuq8kf :_j>VUOz.wp]3Urespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/base64/Base64Ext.kthuq8kfhuq8kf <4.6Mr_΋V*Y7Bsrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/connectivitymonitor/ConnectivityMonitorAndroid.kthuq8kfhuq8kf <6%1l䂃| Аkrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheNsdAndroid.kthuq8kfhuq8kf <7ĢeCW]F_*srespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/distributed/LifeCycleOwnerDistributedCacheInit.kthuq8kfhuq8kf <9U)تux=Mo!9brespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/downloader/CoroutineWorkerExt.kthuq8kfhuq8kf <:an_y?c"_zrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/downloader/EnqueuePinPublicationPrepareUseCaseAndroid.kthuq8kfhuq8kf <;OSdnJ[& sP܅srespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/downloader/EnqueueRunDownloadJobUseCaseAndroid.kthuq8kfhuq8kf <<(1EUHV`'5$rrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/downloader/PinPublicationPrepareUseCaseWorker.kthuq8kfhuq8kf <=*Lxv`Puz~,krespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/downloader/RunDownloadJobUseCaseWorker.kthuq8zhuq8z o|j 0ig Yrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestAndroid.kthuq8zhuq8z <@j7;Mo)H$Yrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestCreator.kthuq8zhuq8z Rrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/ValidatedEntry.kthuq8zhuq8z ]g\\c]Apkrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/connectivitymonitor/ConnectivityMonitor.kthuq8huq8 t?ٱ-ɮªarespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/AddNewEntryTriggerCallback.kthuq8huq8 $4Lirespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/okhttp/ResponseCacheabilityCheckerExt.kthuq8ohuq8o <ڙBQsTo#Vrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/okhttp/ResponseExt.kthuq8ohuq8o <Jh3"n=?N`respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/okhttp/UstadCacheInterceptor.kthuq8ohuq8o <`0^, S*zZHXrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/partial/ContentRange.kthuq8ohuq8o <y UmW&FB^orespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/partial/RangeRequestNotSatisfiableException.kthuq8ohuq8o >WԜգd\^respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/ByteArrayResponse.kthuq8ohuq8o >Znb8w`{;P"vpZrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/CacheResponse.kthuq8ohuq8o >:,*D-&RH]grespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/HeaderOverrideHttpResponse.kthuq8ohuq8o > =r$MMl Q]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/HttpPathResponse.kthuq8ohuq8o >&(iDX8Q0\respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/HttpResponseExt.kthuq8ohuq8o >䃔i7_C Aѧ[respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/StringResponse.kthuq8ohuq8o >[aY)ˈ^gOQVrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/ByteBufferExt.kthuq8ohuq8o > ,++LpÛH\respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/ConcurrentSafeMapOf.kthuq8ohuq8o >$ɍb#D=Trespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/DatabaseExt.kthuq8ohuq8o > Mg'20 DSOrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/LruMap.kthuq8ohuq8o >^B ==N=RdRrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/UstadCacheBuilder.kthuq8ohuq8o >7qG-RB |ԱZQrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/base64/Base64Ext.kthuq8ohuq8o >\xraBȪ6LSkrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/connectivitymonitor/ConnectivityMonitorJvm.kthuq8ohuq8o >:`q.5rrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/downloader/EnqueuePinPublicationPrepareUseCaseJvm.kthuq8ohuq8o >fo{H%C!79<`Urespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestCreator.kthuq8ohuq8o >5c6^q=LƦMQrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestJvm.kthuq8huq8 >pln$9!@R F vKrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/FileAssert.kthuq8huq8 >Dc>n'|(t*x]xRrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/UstadCacheJvmTest.kthuq8huq8 > 3 aޱuQVrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/UstadCacheTrimmerTest.kthuq8huq8 > g{ ʹGœCIjrrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/cachecontrol/CacheControlFreshnessCheckerImplTest.kthuq8huq8 >̛ɦd 3ޤ;BWqrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/cachecontrol/ResponseCacheabilityCheckerImplTest.kthuq8huq8 >/'lj;6LWurespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheHashtableIntegrationTest.kthuq8huq8 >>$vBbCaI)s2d]rrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/distributed/http/DistributedCacheHttpEndpointTest.kthuq8huq8 >Dh1%:<\Xmrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/distributed/model/DistributedHashEntriesTest.kthuq8huq8 >[6[k>Э<crespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/downloader/DownloadIntegrationTest.kthuq8huq8 >,u)\h[[6Xrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/io/RangeInputStreamTest.kthuq8huq8 >d24iyBA|drespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/okhttp/AbstractCacheInterceptorTest.kthuq8huq8 >;ģ&M pwbarespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/okhttp/UstadCacheInterceptorTest.kthuq8huq8 > ,P6xߝMi#b2 Yrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/partial/ContentRangeTest.kthuq8huq8 > ]]Tw%qugRrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/util/ByteArrayExt.kthuq8huq8 > ֒D" J)DZP9SU\Srespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/util/NapierLogInit.kthuq8huq8 > q ew,_e#Yrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/util/NewFileFromResource.kthuq8huq8 >  (h.aL :İh@˭LSrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/util/UstadCacheExt.kthuq8huq8 >v znϫk՞"lfj~xArespect-lib-cache/src/jvmTest/resources/childrens-literature.epubhuq8huq8 >Y9WZ{[E==ÅGrespect-lib-cache/src/jvmTest/resources/publication/lesson001/audio.ogghuq8huq8 >L7_\ulh=NGrespect-lib-cache/src/jvmTest/resources/publication/lesson001/cover.pnghuq8huq8 >]M *WfJ~:wַ[8+Lrespect-lib-cache/src/jvmTest/resources/publication/lesson001/lesson001.jsonhuq8huq8 >}q^:63#Grespect-lib-cache/src/jvmTest/resources/publication/lesson001/script.jshuq8xohuq8xo > پElBflW{Grespect-lib-cache/src/jvmTest/resources/publication/lesson001/video.mp4huq8xohuq8xo >@hs}-kH&5respect-lib-cache/src/jvmTest/resources/testfile1.pnghuq8xohuq8xo >F9q6lsiz…)5respect-lib-cache/src/jvmTest/resources/testfile2.pnghuq8xohuq8xo >"o˘+'V_I $);respect-lib-cache/src/jvmTest/resources/ustadmobile-epub.jshuq8xohuq8xo >B*18LyqzK}!respect-lib-ihttp-core/.gitignorehuq8xohuq8xo >Z0>yyS:Q@p respect-lib-ihttp-core/README.mdhuq8xohuq8xo >CDKmq{PEd'respect-lib-ihttp-core/build.gradle.ktshuq8xohuq8xo Fw-4OmSrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/ext/StringExt.kthuq8huq8 Fo;v~yث:o_respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/HttpHeaderListExt.kthuq8huq8 F` 2*ɽv/]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/HttpHeadersImpl.kthuq8huq8 Fɺhw_l*!ax)]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHeadersBuilder.kthuq8huq8 F#h"(QC#-Yrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeader.kthuq8huq8 FTP+WxaT"%Z`>Z9\respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeaderExt.kthuq8huq8 FAX+¯9M,]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeaderImpl.kthuq8huq8 Fœ3>7)Wh8Zrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeaders.kthuq8huq8 F?-+J)W-Q R]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeadersExt.kthuq8huq8 F=b+psDiarespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/KtorIHeadersAdapter.kthuq8huq8 FA4ȏz^-7mǮcrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/MapHttpHeadersAdapter.kthuq8huq8 F Cfz͂g$ˁ_respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/MappedHttpHeaders.kthuq8huq8 F9EL z.k M}[respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/MergedHeaders.kthuq8huq8 F( 'o]j?xL7\hrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/directives/DirectivesToMap.kthuq8huq8 F_&D(NƾT]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/BaseHttpRequest.kthuq8huq8 FE2!j :p[$Zrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequest.kthuq8huq8 F%^ғZ`A 3+iFkfrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequestWithByteBody.kthuq8huq8 FS=ĕ (8ozprespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequestWithFormUrlEncodedData.kthuq8huq8 FM&s9frespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequestWithTextBody.kthuq8huq8 F$ ԱoZ8@C \respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/RequestBuilder.kthuq8huq8 FYW^ \54cwFe*`respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/response/ByteArrayResponse.kthuq8huq8 F>-p $\<%j+z`v\respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/response/IHttpResponse.kthuq8huq8 Fs0[an3d]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/response/StringResponse.kthuq8huq8 F {`Lv<~ )EľqUrespect-lib-ihttp-core/src/jsMain/kotlin/com/ustadmobile/ihttp/ext/ByteArrayExt.js.kthuq8huq8 F2.m‚S RԵWrespect-lib-ihttp-core/src/jvmMain/kotlin/com/ustadmobile/ihttp/ext/ByteArrayExt.jvm.kthuq9huq9 FB*18LyqzK}&respect-lib-ihttp-iostreams/.gitignorehuq9huq9 FZ% -blzmm%respect-lib-ihttp-iostreams/README.mdhuq9huq9 Fa5Y {I7^,respect-lib-ihttp-iostreams/build.gradle.ktshuq9huq9 F恿\\#SAMarespect-lib-ihttp-iostreams/src/commonMain/kotlin/com/ustadmobile/ihttp/iostreams/ByteArrayExt.kthuq9huq9 FHAZ9f`:/{7'erespect-lib-ihttp-iostreams/src/commonMain/kotlin/com/ustadmobile/ihttp/iostreams/NullOutputStream.kthuq9huq9 FB*18LyqzK}&respect-lib-ihttp-nanohttpd/.gitignorehuq9huq9 F5JU6 rlmXƪLZ,respect-lib-ihttp-nanohttpd/build.gradle.ktshuq9huq9 F 7䊓š@aG\lrespect-lib-ihttp-nanohttpd/src/commonMain/kotlin/com/ustadmobile/ihttp/nanohttpd/NanoHttpdRequestAdapter.kthuq9huq9 Fz:&KObrespect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ReadiumLinkProperties.kthuq9?huq9? H\#c$rw*krespect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ReadiumLinkPropertiesEncrypted.kthuq9?huq9? H %:9~ww/"zI0\respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ReadiumMetadata.kthuq9?huq9? Hr4sH'0zG 88[respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ReadiumSubject.kthuq9"Zhuq9"Z H_;>40OC*respect-lib-primarykeygen/build.gradle.ktshuq9"Zhuq9"Z H 9X竭}jrespect-lib-primarykeygen/src/androidMain/kotlin/world/respect/lib/primarykeygen/GenerateNodeId.android.kthuq9"Zhuq9"Z H].+-+ԉ+K&zFҼ_arespect-lib-primarykeygen/src/commonMain/kotlin/world/respect/lib/primarykeygen/GenerateNodeId.kthuq9"Zhuq9"Z H2圙D,DZifrespect-lib-primarykeygen/src/commonMain/kotlin/world/respect/lib/primarykeygen/PrimaryKeyGenerator.kthuq9"Zhuq9"Z H,x@͞Bdγ Jrl}arespect-lib-primarykeygen/src/commonMain/kotlin/world/respect/lib/primarykeygen/ext/InstantExt.kthuq9"Zhuq9"Z H> O f0Ҽ>C3brespect-lib-primarykeygen/src/jvmMain/kotlin/world/respect/lib/primarykeygen/GenerateNodeId.jvm.kthuq9"Zhuq9"Z HbނR\!2gx\k krespect-lib-primarykeygen/src/jvmTest/kotlin/world/respect/lib/primarykeygen/DoorPrimaryKeyGeneratorTest.kthuq9"Zhuq9"Z H59c(-G$]kv!respect-lib-serializers/README.mdhuq9"Zhuq9"Z H FZ)@ ,\=K(respect-lib-serializers/build.gradle.ktshuq9"Zhuq9"Z HӮס K;}5ܘw6/grespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/InstantISO8601Serializer.kthuq91Ôhuq91Ô H ]ٳp|Rn'?brespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/LocalDateOrDateTime.kthuq91Ôhuq91Ô H|Xfk"U υtrespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/SingleItemToListTransformerSerializer.kthuq91Ôhuq91Ô H"rx^RE6]A_VNlcrespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/StringListSerializer.kthuq91Ôhuq91Ô Hr[u{zղgrespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/StringOrObjectSerializer.kthuq91Ôhuq91Ô Hi:v'M8Dϙ?Zrespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/StringValue.kthuq91Ôhuq91Ô H[C&ZNo1/brespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/UriStringSerializer.kthuq91Ôhuq91Ô J@#X`E23 o#respect-lib-shared-se/README.mdhuq91Ôhuq91Ô J@`_;63*5^ &respect-lib-shared-se/build.gradle.ktshuq91Ôhuq91Ô J@",TSfd\l֔2respect-lib-shared-se/src/commonMain/kotlin/world/respect/sharedse/domain/account/authenticatepassword/AuthenticatePasswordUseCaseDbImpl.kthuq91Ôhuq91Ô J@HeR߲v'-:7#respect-lib-shared/build.gradle.ktshuq9Ahuq9A J@*H+=XQܢ35respect-lib-shared/src/androidMain/assets/aaguid.jsonhuq9Ahuq9A J@n(Tj׆BhI^oKrespect-lib-shared/src/androidMain/kotlin/world/respect/Platform.android.kthuq9Ahuq9A J@_^-Ea G.urespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/account/passkey/LoadAaguidJsonUseCaseAndroid.kthuq9Ahuq9A J@?jM{gV)<*F"wrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/appversioninfo/GetAppVersionInfoUseCaseAndroid.kthuq9Ahuq9A J@=I2%s 2!dPsrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/clipboard/SetClipboardStringUseCaseAndroid.kthuq9Ahuq9A J@S3ArfElU jirrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/getdeviceinfo/GetDeviceInfoUseCaseAndroid.kthuq9Ahuq9A J@h `A u}\v&nrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/getwarnings/GetWarningsUseCaseAndroid.kthuq9Ahuq9A J@ J#rK1jrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCaseAndroid.kthuq9Ahuq9A J@vECJu{# Uvrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/phonenumber/IAsYouTypeFormatterAdapterAndroid.kthuq9Ahuq9A J@AVED*-&elrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/phonenumber/IPhoneNumberUtilAndroid.kthuq9Ahuq9A J@q_ N;7<".#gurespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/phonenumber/OnClickPhoneNumberUseCaseAndroid.kthuq9Ahuq9A J@H>s5p(߼)1l%mrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/phonenumber/PhoneNumValidatorAndroid.kthuq9Ahuq9A J@l 2 IIϲ'grespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/phonenumber/PhoneNumberAndroid.kthuq9Ahuq9A J@xE v-,torespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/school/MakeSchoolPathDirUseCaseAndroid.kthuq9Ahuq9A J@OMU<=ЯcL1Qjrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/storage/CachePathsProviderAndroid.kthuq9Ahuq9A J@L4UI *p^Bkrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/storage/GetAndroidSdCardDirUseCase.kthuq9Ahuq9A J@ Ty?p}WM{ wrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/storage/GetOfflineStorageOptionsUseCaseAndroid.kthuq9Ahuq9A J@ԙٿY4p7U~respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/usagereporting/GetUsageReportingEnabledUseCaseAndroid.kthuq9Ahuq9A J@׻_!^)FH'~respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/usagereporting/SetUsageReportingEnabledUseCaseAndroid.kthuq9Ahuq9A J@YɪlEPK' ;+L2erespect-lib-shared/src/androidMain/kotlin/world/respect/shared/util/RememberDateTimeFormat.android.kthuq9PH huq9PH J@{>NQ+|Xrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/util/StringExt.android.kthuq9PH huq9PH J@֧ʡ-ޙ0H!'MURrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/util/ext/FileExt.kthuq9PH huq9PH J@GH!M3G}'`%i`Krespect-lib-shared/src/androidMain/resources/directories/default.propertieshuq9PH huq9PH J@(˼yjnUrespect-lib-shared/src/commonMain/composeResources/drawable/compose-multiplatform.xmlhuq9PH huq9PH J@R&F&u=9ĚQr|CErespect-lib-shared/src/commonMain/composeResources/values/strings.xmlhuq9PH huq9PH J@3zȾCQȚz7$\}/Crespect-lib-shared/src/commonMain/kotlin/world/respect/Constants.kthuq9PH huq9PH J@FjL)-5؂hBrespect-lib-shared/src/commonMain/kotlin/world/respect/Greeting.kthuq9PH huq9PH J@f뚰 c0N!t FBrespect-lib-shared/src/commonMain/kotlin/world/respect/Platform.kthuq9PH huq9PH J@qq.מq\C[b#hrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/directory/RespectDirectoryServersConfig.kthuq9PH huq9PH J@mq!Oab~v kycrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/AccountDepComponent.kthuq9PH huq9PH J@CB2huz˧|\respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/AuthResponse.kthuq9PH huq9PH J@Z)pq*Ƅ^respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccount.kthuq9PH huq9PH J@u̯`6~r1grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccountAndPerson.kthuq9PH huq9PH J@"4.G~VY̤erespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccountManager.kthuq9PH huq9PH J@*q\dS ˛smrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccountSchoolScopeLink.kthuq9PH huq9PH J@Jȥd &oE)6lcrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectTokenManager.kthuq9PH huq9PH J@]v9:&K)=SL?respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/authenticatepassword/AuthenticatePasswordUseCase.kthuq9PH huq9PH J@]՛i̎D2TNq)respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/gettokenanduser/GetTokenAndUserProfileWithCredentialUseCase.kthuq9PH huq9PH J@k%H)`s @_Erespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/gettokenanduser/GetTokenAndUserProfileWithCredentialUseCaseClient.kthuq9PH huq9PH J@ m4;> O{respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/ApproveOrDeclineInviteRequestUseCase.kthuq9PH huq9PH J@%@g"e'Ĉ^krespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/GetInviteInfoUseCase.kthuq9PH huq9PH J@Ԇ' ㋢|qrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/GetInviteInfoUseCaseClient.kthuq9PH huq9PH J@F7om!mooLjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/RedeemInviteUseCase.kthuq9_Dhuq9_D J@X! S6ͯg`prespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/RedeemInviteUseCaseClient.kthuq9_Dhuq9_D J@lhnawoYJ.qrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/RespectRedeemInviteRequest.kthuq9_Dhuq9_D J@⛲CK)wZSwrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/SubmitRedeemInviteRequestUseCase.kthuq9_Dhuq9_D Lg:xfaxQX7Qsrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/DecodeUserHandleUseCaseImpl.kthuq9_Dhuq9_D LynrjRsrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/EncodeUserHandleUseCaseImpl.kthuq9_Dhuq9_D L7 ~"ǚvrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/GetActivePersonPasskeysUseCase.kthuq9_Dhuq9_D LVsrO1GG|respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/GetActivePersonPasskeysUseCaseClient.kthuq9_Dhuq9_D L  wBc|eu 5yz[yrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/GetPasskeyProviderInfoUseCaseImpl.kthuq9_Dhuq9_D L!y6H/TώtFոPmrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/LoadAaguidJsonUseCase.kthuq9_Dhuq9_D L"[M23S5Alrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/RevokePasskeyUseCase.kthuq9_Dhuq9_D L# vX"tyrrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/RevokePasskeyUseCaseClient.kthuq9_Dhuq9_D L$GFƳlrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/VerifyPasskeyUseCase.kthuq9_Dhuq9_D VUJr= XQ$xrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/setpassword/EncryptPersonPasswordUseCase.kthuq9_Dhuq9_D V =OĢGj;|respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/setpassword/EncryptPersonPasswordUseCaseImpl.kthuq9_Dhuq9_D V߄, 鈓D,}auܠgrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/signup/SignupCredential.kthuq9_Dhuq9_D V.9LjdU’ Mdrrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/UsernameSuggestionUseCase.kthuq9_Dhuq9_D VαJP!Jxn )A.xrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/UsernameSuggestionUseCaseClient.kthuq9_Dhuq9_D V nZĕqr A, rcl>>}respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/filterusername/FilterUsernameUseCase.kthuq9_Dhuq9_D V |?:'-9<gYrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/validateusername/ValidateUsernameUseCase.kthuq9_Dhuq9_D VpDŵ)ޱZ1.yrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateauth/ValidateAuthorizationUseCase.kthuq9_Dhuq9_D Vy \Ju&ګxrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validatepassword/ValidatePasswordUseCase.kthuq9_Dhuq9_D V2Br~I2)xN?erespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/getfavicons/GetFavIconUseCase.kthuq9nhuq9n V @,;K8@[0KJfrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/getwarnings/GetWarningsUseCase.kthuq9nhuq9n Vhc^=d`.19탡tbrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCase.kthuq9nhuq9n V  rb0´brespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/licenses/model/SpdxLicense.kthuq9nhuq9n V!u)F53K{frespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/licenses/model/SpdxLicenseList.kthuq9nhuq9n V#29; 4\=ar>>nrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/onboarding/ShouldShowOnboardingUseCase.kthuq9nhuq9n V&6~2W`35Vdrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/opds/validator/HttpClientExt.kthuq9nhuq9n V(]譢^Mc40etgrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/IAsYouTypeFormatter.kthuq9nhuq9n V)O1H⽀ńxn`respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/IPhoneNumber.kthuq9nhuq9n V*8']Zxdrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/IPhoneNumberUtil.kthuq9nhuq9n V+-EE 6grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/IPhoneNumberUtilExt.kthuq9nhuq9n V, Ţ[L0D;jrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/OnClickPhoneNumUseCase.kthuq9nhuq9n V-S4< 0Ylrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/PhoneNumValidatorUseCase.kthuq9nhuq9n V0H[e[Wgrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/ext/ReportQueryResultExt.kthuq9nhuq9n V2065p!lrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/CountGraphFormatter.kthuq9nhuq9n V3 Y;=+,BNl*/trespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/CreateGraphFormatterUseCase.kthuq9nhuq9n V4Ĵ2Zkrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/DateGraphFormatter.kthuq9nhuq9n V5>OELLD~zorespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/DurationGraphFormatter.kthuq9nhuq9n V6ib~.#n=+na:mrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/GenderGraphFormatter.kthuq9nhuq9n V7"=r}Nh6grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/GraphFormatter.kthuq9nhuq9n V9z!sQ+Tg mqrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/model/RunReportResultAndFormatters.kthuq9nhuq9n V; rތ[I:˯QIG?7qrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/query/RunReportUseCaseDatabaseImpl.kthuq9nhuq9n VAU^J7J'lrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/respectappmanifest/model/RespectSite.kthuq9~huq9~ VCu,M&|՚"grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/school/MakeSchoolPathDirUseCase.kthuq9~huq9~ VDyR2mu)!`respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/school/RespectSchoolPath.kthuq9~huq9~ VEo%\?ǜ.Oڋhrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/school/SchoolPrimaryKeyGenerator.kthuq9~huq9~ VG2ݙ:7Fcrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/validator/ValidatorReporter.kthuq9~huq9~ VUk]-/,TTrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/MutableStateExt.kthuq9~huq9~ VV= ʈ@nVaڥ[jUrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/ReportExtensions.kthuq9~huq9~ VWlvٕǟdA-ƆXtLrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/replace.kthuq9~huq9~ VY8"d+SF[[\!:Urespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kthuq9~huq9~ VZrt/GDCPhRVrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/NavCommand.kthuq9~huq9~ V[CCoo1 [ѡԼUrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/NavResult.kthuq9~huq9~ V\dpl$ }PMA]respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/NavResultReturner.kthuq9~huq9~ V]1zbq5f=`respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/NavResultReturnerExt.kthuq9~huq9~ V^2v3h/<+arespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/NavResultReturnerImpl.kthuq9~huq9~ V_ vDz9࡭e8 XUr?grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/RespectComposeNavController.kthuq9~huq9~ V`ӟXK$zs'V_respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/RouteWithResultDest.kthuq9~huq9~ Vbnp@ }bQrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/resources/UiText.kthuq9~huq9~ Vd#{-CMd 4˝@%SXrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/AvatarColorForName.kthuq9~huq9~ Ve<U>8BRtWrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/FilterChipsOption.kthuq9~huq9~ Vf=WgRAU v;6Trespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/GenderToString.kthuq9~huq9~ Vg6)j2aQAEUrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/LaunchDebouncer.kthuq9~huq9~ Vh@p 0nb1&ž*Srespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/LongExtCommon.kthuq9~huq9~ Vilq CY%`S-8qY\respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/RememberDateTimeFormat.kthuq9~huq9~ VjM^ν3W8GvA<Urespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/SortOrderOption.kthuq9~huq9~ Vk]respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/PersonGenderEnumExt.kthuq9Phuq9P VwnbZl49[:MC^respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/PersonListDetailsExt.kthuq9Phuq9P Vxz jK n[respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/PersonRoleEnumExt.kthuq9Phuq9P VyY"\"”gX4p]]>[respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/RespectAccountExt.kthuq9Phuq9P VzYg7)/qQ6MSrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/StringExt.kthuq9Phuq9P V{L!M5W#$}@P]n[respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/StringResourceExt.kthuq9Phuq9P V}l&uܬX/=د: [respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/RespectViewModel.kthuq9Phuq9P Vq,B'srespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/acknowledgement/AcknowledgementViewModel.kthuq9Phuq9P VO`:3-ڑ'֗]nrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/ActionBarButtonUiState.kthuq9Phuq9P V-PJ[k|U{aց+grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppActionButton.kthuq9Phuq9P V_[u: ْYqXdrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppBarColors.kthuq9Phuq9P VINjЛj CAkrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppBarSearchUiState.kthuq9Phuq9P Vk\\܋rA fTdrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppStateIcon.kthuq9Phuq9P V 4(q}.Γ7]ac)e#erespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/DisplayString.kthuq9Phuq9P V~9!f4FU0Xbrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/FabUiState.kthuq9Phuq9P V=ˇ~]SD Tfrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/LoadingUiState.kthuq9Phuq9P VɅ\?+6]respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/Snack.kthuq9Phuq9P V~"\ǸWG?SMjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/SnackBarDispatcher.kthuq9Phuq9P V) tL 0G~`nrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/SnackBarFlowDispatcher.kthuq9Phuq9P VGbTi mjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/detail/AppsDetailViewModel.kthuq9Phuq9P V u@en}T5AɽZlrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/enterlink/EnterLinkViewModel.kthuq9/huq9/ V{j^l"Qzmrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/launcher/AppLauncherViewModel.kthuq9/huq9/ V ~T R.|㗺r%Q erespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/list/AppListViewModel.kthuq9/huq9/ Vq5<ˌxdQ,/S^vrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kthuq9/huq9/ V+<+ oKrrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kthuq9/huq9/ V~"w ~rrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kthuq9/huq9/ Vjׂw'=$w J.[trespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/clazz/addperson/AddPersonToClazzViewModel.kthuq9/huq9/ V#ȇv:&xW+"zrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kthuq9/huq9/ V/m[*ꜟ ,+vrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/list/LearningUnitListViewModel.kthuq9ihuq9i V+,"Pt3_=vrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/accountlist/AccountListViewModel.kthuq9ihuq9i Vy5A,.$xrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/confirmation/ConfirmationViewModel.kthuq9ihuq9i V_em*Z}݃7@respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/enterpasswordsignup/EnterPasswordSignUpViewModel.kthuq9ihuq9i V`h?t$<'-7Atrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/getstarted/GetStartedViewModel.kthuq9ihuq9i VٹwU)?}respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/howpasskeywork/HowPasskeyWorksViewModel.kthuq9ihuq9i V ʈ Jh~zb1respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/joinclazzwithcode/JoinClazzWithCodeViewModel.kthuq9ihuq9i V"!!R8nPʻGn jrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/login/LoginViewModel.kthuq9ihuq9i V 0_pjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/list/PersonListViewModel.kthuq9huq9 V9:ߜqŽzIjtvrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kthuq9huq9 VFL=!p%f(f3.rrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/passkeylist/PasskeyListViewModel.kthuq9huq9 V* u03gT respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kthuq9huq9 VM GQ7&g"arespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/ReportViewModel.kthuq9huq9 Vȩ/4ˠUf#nrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/detail/ReportDetailViewModel.kthuq9huq9 V8"GZ cA]a8x|jrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/edit/ReportEditViewModel.kthuq9huq9 VAK*)m}<_ajvrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/filteredit/ReportFilterEditViewModel.kthuq9huq9 V Sc9!ᨼp'6zrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/indictor/detail/IndicatorDetailViewModel.kthuq9huq9 V7,Nöu/ Wurespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/indictor/edit/IndictorEditViewmodel.kthuq9huq9 V ,)Sa2|Dcvrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/indictor/list/IndicatorListViewmodel.kthuq9Yhuq9Y Vg {lN#R7jrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/list/ReportListViewModel.kthuq9Yhuq9Y V  2V!rrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/list/ReportTemplateListViewModel.kthuq9Yhuq9Y Vã &h#RÍ`vzrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/respectaccount/list/RespectAccountListViewModel.kthuq9Yhuq9Y V [riQ(bjL|respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/schooldirectory/edit/SchoolDirectoryEditViewModel.kthuq9Yhuq9Y V zu9M,؟w=|respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/schooldirectory/list/SchoolDirectoryListViewModel.kthuq9Yhuq9Y V }GS]Erespect-lib-shared/src/commonMain/resources/about-credits-common.htmlhuq9Yhuq9Y V,}ygp/83pJrespect-lib-shared/src/commonMain/resources/directories/default.propertieshuq9Yhuq9Y VګlLc :d)9@respect-lib-shared/src/commonTest/resources/invalid-catalog.jsonhuq9Yhuq9Y VBvhPǕe)d{w~=respect-lib-shared/src/commonTest/resources/opds-io-home.jsonhuq9Yhuq9Y V@ߓˉ](iv#T@=Arespect-lib-shared/src/commonTest/resources/respect-manifest.jsonhuq9Yhuq9Y V`1rd9"Q5?respect-lib-shared/src/commonTest/resources/sample-catalog.jsonhuq9Yhuq9Y Vȸ-vn\uʥb \|fˎhrespect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/opds/validator/ValidationMessageExt.kthuq9ٜhuq9ٜ V!TW.oϪhk'qKfrespect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/phonenumber/AsYouTypeFormatterJvm.kthuq9ٜhuq9ٜ V"_Է lK9Bq.O`jrespect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/phonenumber/OnClickPhoneNumUseCaseJvm.kthuq9ٜhuq9ٜ V#u;e`&erespect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/phonenumber/PhoneNumValidatorJvm.kthuq9ٜhuq9ٜ V$_ N9;_respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/phonenumber/PhoneNumberJvm.kthuq9ٜhuq9ٜ V%&uhrespect-lib-shared/src/jvmTest/kotlin/world/respect/domain/account/invite/RedeemInviteIntegrationTest.kthuq9 huq9 VBz.)JOBdk=i orespect-lib-shared/src/jvmTest/kotlin/world/respect/domain/account/passkey/EncodeDecodeUserHandleUseCaseTest.kthuq9 huq9 VD<`~QBv!u.JZrespect-lib-shared/src/jvmTest/kotlin/world/respect/domain/validator/HttpLinkHeaderTest.kthuq9 huq9 VE07p<#n0|Yx_respect-lib-shared/src/jvmTest/kotlin/world/respect/domain/validator/TestValidationScenarios.kthuq9 huq9 VI||p3?r> 2cTNlrespect-lib-shared/src/jvmTest/kotlin/world/respect/shared/domain/account/AuthWithPasswordIntegrationTest.kthuq9 huq9 VL8=zx0'6Y-^_respect-lib-shared/src/jvmTest/kotlin/world/respect/shared/util/di/RespectAccountScopeIdTest.kthuq9 huq9 VMsz9VF(L\erespect-lib-shared/src/jvmTest/kotlin/world/respect/shared/util/di/SchoolDirectoryEntryScopeIdTest.kthuq9 huq9 VOГζviWI<huq:%> Vo/WAw4_9qrespect-lib-shared/src/jvmTest/resources/world/respect/validator/case_no_resources_in_manifest/grade1/grade1.jsonhuq:%>huq:%> VqY9WZ{[E==Åyrespect-lib-shared/src/jvmTest/resources/world/respect/validator/case_no_resources_in_manifest/grade1/lesson001/audio.ogghuq:%>huq:%> VrL7_\ulh=Nyrespect-lib-shared/src/jvmTest/resources/world/respect/validator/case_no_resources_in_manifest/grade1/lesson001/cover.pnghuq:%>huq:%> Vs]M huq:%> Vt)]JϢNZ'r[l^~respect-lib-shared/src/jvmTest/resources/world/respect/validator/case_no_resources_in_manifest/grade1/lesson001/lesson001.jsonhuq:%>huq:%> Vu}q^:63#yrespect-lib-shared/src/jvmTest/resources/world/respect/validator/case_no_resources_in_manifest/grade1/lesson001/script.jshuq:5)xhuq:5)x Vv پElBflW{yrespect-lib-shared/src/jvmTest/resources/world/respect/validator/case_no_resources_in_manifest/grade1/lesson001/video.mp4huq:5)xhuq:5)x VwŞ5b_ݹƯEb;irespect-lib-shared/src/jvmTest/resources/world/respect/validator/case_no_resources_in_manifest/index.jsonhuq:5)xhuq:5)x VyD(vz*sf¦Trespect-lib-shared/src/jvmTest/resources/world/respect/validator/case_valid/app.htmlhuq:5)xhuq:5)x Vz K}}hL4K+N\respect-lib-shared/src/jvmTest/resources/world/respect/validator/case_valid/appmanifest.jsonhuq:5)xhuq:5)x V|ţJ Q A ^respect-lib-shared/src/jvmTest/resources/world/respect/validator/case_valid/grade1/grade1.jsonhuq:5)xhuq:5)x V~Y9WZ{[E==Åfrespect-lib-shared/src/jvmTest/resources/world/respect/validator/case_valid/grade1/lesson001/audio.ogghuq:5)xhuq:5)x VL7_\ulh=Nfrespect-lib-shared/src/jvmTest/resources/world/respect/validator/case_valid/grade1/lesson001/cover.pnghuq:5)xhuq:5)x V]M ~7Crespect-server/src/main/kotlin/world/respect/server/AppConfigExt.kthuq:b(huq:b( VD6:u#o9Brespect-server/src/main/kotlin/world/respect/server/Application.kthuq:b(huq:b( V9䐪D89S,Grespect-server/src/main/kotlin/world/respect/server/ManagerServerCLI.kthuq:b(huq:b( Vx&jt]:Drespect-server/src/main/kotlin/world/respect/server/ServerAppMain.kthuq:r2dhuq:r2d V,AbYۍmL-Grespect-server/src/main/kotlin/world/respect/server/ServerKoinModule.kthuq:r2dhuq:r2d Vbp+6W`=x`respect-server/src/main/kotlin/world/respect/server/account/invite/GetInviteInfoUseCaseServer.kthuq:r2dhuq:r2d VfaM\e#v?nrespect-server/src/main/kotlin/world/respect/server/account/invite/username/UsernameSuggestionUseCaseServer.kthuq:r2dhuq:r2d V !,s?Lk\2M\Yrespect-server/src/main/kotlin/world/respect/server/domain/school/add/AddSchoolUseCase.kthuq:r2dhuq:r2d Vvkh%cPo怉Rjrespect-server/src/main/kotlin/world/respect/server/domain/school/add/AddServerManagedDirectoryCallback.kthuq:r2dhuq:r2d V:onPubjC{|oGrespect-server/src/main/kotlin/world/respect/server/routes/AuthRoute.kthuq:r2dhuq:r2d V Ñѭ^UQCYrespect-server/src/main/kotlin/world/respect/server/routes/RespectSchoolDirectoryRoute.kthuq:r2dhuq:r2d V?q_respect-server/src/main/kotlin/world/respect/server/routes/passkey/GetAllActivePasskeysRoute.kthuq:r2dhuq:r2d V,|[l$FNK\respect-server/src/main/kotlin/world/respect/server/routes/school/respect/AssignmentRoute.kthuq:r2dhuq:r2d V_5:Z}9讹{Wrespect-server/src/main/kotlin/world/respect/server/routes/school/respect/ClassRoute.kthuq:r2dhuq:r2d VD ACRp2t06\respect-server/src/main/kotlin/world/respect/server/routes/school/respect/EnrollmentRoute.kthuq:r2dhuq:r2d Vo \KrZW\respect-server/src/main/kotlin/world/respect/server/routes/school/respect/InviteInfoRoute.kthuq:r2dhuq:r2d V)ak ?R9ܤi_respect-server/src/main/kotlin/world/respect/server/routes/school/respect/PersonPasskeyRoute.kthuq:r2dhuq:r2d Vصu1^`respect-server/src/main/kotlin/world/respect/server/routes/school/respect/PersonPasswordRoute.kthuq:r2dhuq:r2d V"D |Ϫ4MXYwXrespect-server/src/main/kotlin/world/respect/server/routes/school/respect/PersonRoute.kthuq:r2dhuq:r2d V(MdxXQT, T^respect-server/src/main/kotlin/world/respect/server/routes/school/respect/RedeemInviteRoute.kthuq:r2dhuq:r2d Vd [ҙV"\RFr, [respect-server/src/main/kotlin/world/respect/server/routes/school/respect/SchoolAppRoute.kthuq:r2dhuq:r2d VrCan%0k&^respect-server/src/main/kotlin/world/respect/server/routes/username/UsernameSuggestionRoute.kthuq:r2dhuq:r2d Vs7hpt [ 3?JWgRrespect-server/src/main/kotlin/world/respect/server/util/ext/ApplicationCallExt.kthuq:r2dhuq:r2d VS)  W|Urespect-server/src/main/kotlin/world/respect/server/util/ext/ApplicationRequestExt.kthuq:r2dhuq:r2d Vo@Ij0pjVrespect-server/src/main/kotlin/world/respect/server/util/ext/ApplicationResponseExt.kthuq:r2dhuq:r2d Vi)ge8pwy\Mrespect-server/src/main/kotlin/world/respect/server/util/ext/ParametersExt.kthuq:r2dhuq:r2d V*MS 1 rD &2respect-server/src/main/resources/application.confhuq:r2dhuq:r2d Vwp" nm(>-respect-server/src/main/resources/logback.xmlhuq:thuq:t V \D va޸6respect-server/src/main/resources/openapi/openapi.yamlhuq:thuq:t V O@KzhJ'Ig8)respect-server/well-known/assetlinks.jsonhuq:thuq:t Vӯݨ'j/㢿vnT!respect-test-end-to-end/README.mdhuq:thuq:t V 9J`sZb$o~hrespect-test-end-to-end/test-description/001_004_add_app_via_link_and_browse_lessons_test_description.mdhuq:thuq:t VYRKxFE8?uyQOrespect-test-end-to-end/test-description/001_browse_lessons_test_description.mdhuq:thuq:t V^$f.җgLf6FNrespect-test-end-to-end/test-description/004_create_report_test_description.mdhuq:thuq:t b݄I?-}ͫsGbru`settings.gradle.ktshuq:thuq:t bW>KǙ,j#E+POJ0write-jenkins-build-info.shTREE_"1140 26 /jaO;F1b^.fleet1 0 G;ܼ,yʙHe)Tgradle3 1 gZFCܳwrapper2 0 oꙭۆzWy5Zo.maestro16 2 `)<+8zflows9 2 0poKmG݊>Escripts3 0 8$S P#V5K5subflows4 0 YdI陋M@Gpyflows-in-progress6 0 6tgt7 !O,composeApp2 1 %w8Ud osrc2 1 J] k07Nܕ9desktopMain2 1 +,6ZJcxHgLresources2 1 4:hF#t@$8 ҁGimg2 0 'df$(respect-cli3 1 Hɽ 2ՠ]^src1 1 HW wnO>(M2main1 1 :KamOQ,6java1 1 k;+uT0k@world1 1 IACVSw`N=fۺrespect1 1 9YY%zm8clitools1 0 "Ʋl~ G"V2`)respect29 1 Ji+L8VJHserver29 4 If&|[rDutil4 1 C8X=Hh@ext4 0 '|ZgC\W"|domain2 1 i&4ŏSschool2 1 |j3N A~cꞼMadd2 0 o3+wmE/W&."nroutes16 3 p󋽭Ô7school9 1 wVnv2;arespect9 0 П- R _&passkey3 0 kSytnK9ѐjusername1 0 B,#{LY L!haccount2 1 Ws+ ; !-Einvite2 1 ~?EQhusername1 0 ' X-< Va _{3resources3 1 f AǦ(--openapi1 0 zㅷ4=5<#<ſwell-known1 0 sfŋΐ6>respect-lib-test3 1 f? rtjn">src1 1 ǛV{]Ծ 2jvmMain1 1 ,HhZbgܓ#9nkotlin1 1 pV@=2Hworld1 1 _L`v]respect1 1 9J?ۑ^ylib1 1 -$= | B,utest1 1 9$vw $$gclientservertest1 0 GKwmcHm9)respect-lib-util19 1 sjE|?N@pz_libutil4 1 KlU@{iI t>„Nutil3 1 ]cض5+0L!*:4util3 1 U ?&Dtime1 0 mY B;FUrespect-datalayer125 1 ~˧rOeڠ2src122 2 H9ڳYq|6bcommonMain121 1 RL6Tcokotlin121 1 ,DUXƱV{pworld121 1 G/{]u{|24respect121 1 ~JQq̇L%sVdatalayer121 9 E>S% cK#՜ext6 0 t}&9Ikóopds2 0 9|k)Af.0school50 3 @jMkvҷmodel27 2 x s[iGIT@jreport6 0 ÷ K1tqHXd Yscomposites1 0 sE׀_e۫ 4xadapters2 0 [O)R8b]xlwritequeue3 0 r 7~mv&Vshared17 2 LMopPߝpaging10 0 y2prlH=3params1 0 W9̕.3Jrespect6 1 +%Ms j9"o7OCmodel5 1 %bPk]`invite2 0 6FiFFoneroster18 2 {IzZT+Simodel17 0 3{iGꢐW! composites1 0 Xj쯛n^1Z"#compatibleapps3 1 +r2Cr@e&Kmodel1 0 9i&w9'~$Hschooldirectory4 0 {pEC-pԔWQVm|networkvalidation3 0 J]jfliWHandroidMain1 0 I./RH+yXIrespect-lib-cache159 2 y/(p@Mߜ@+"src155 4 ~5MH`R[^HjvmMain6 1 "Weϛp6՛WRkotlin6 1 zv!jscom6 1 D;t :4Rlsd)ustadmobile6 1 xr;8RVػlibcache6 4 v!&챰3md52 0 JĜ;U\u\]base641 0 ۡʸ8oHGdownloader1 0 nh[]s{4$@)s'connectivitymonitor1 0 (,/mLnjvmTest28 2 z훯4^޼5Lkotlin18 1 d`zehn/[#a com18 1 R*fvИU'v;ustadmobile18 1 Grv7`üMk_(m9libcache18 7 _c48aQIT= io1 0 G]inlœm }_{util5 0 6Ddm큦HWokhttp2 0 b XfĂpartial1 0 <͵FŰ_ `ǀqdownloader1 0 NQPTl7ԡ*hdistributed3 2 HuWr',ѯ 16$e0http1 0 ?̳Gmodel1 0 pjKT1Mcachecontrol2 0 jyresources10 1 VIN o抚,_publication6 1 PAm WCCA#glesson0016 0 D^%d9l*&commonMain107 1 !H$PU'kotlin107 1 n S XrĤcom107 1 'l>YRؚ94O dustadmobile107 1 *mV܃rulibcache107 16 n 7;Ϸdb26 3 /aZnf b\sdao9 0 K-!3y)entities11 0 ̂,P[CAnCcomposites1 0 BkŠ&t:an io6 0 A$8.w'3md53 0 )53RbnҼdate1 0 :''ϩ'LAutil4 0 6oOܭfػXbase641 0 !yT}mbroLokhttp6 0 \R^P@;f mheaders6 0 0ɒ盫cCwկH logging2 0 l.Y]H0cfCpartial2 0 '§ {VD~response6 0 Wa_"$\]integrity1 0 ٫#*ӧdownloader9 0 H~MY :٠Kdistributed11 2 WqE> /I'!(@http1 0 ٓj}IartGFTmodel6 0 cۯf`~cachecontrol9 0 u3{t7sconnectivitymonitor1 0 ȵ!& 4[>q|androidMain14 1 hl8tH#Zq kotlin13 1 V1RmZŒ&0mcom13 1 OOѻ, ustadmobile13 1 - ~bV libcache13 6 xuJ3Qr) md52 0 oA6h,sdkTAbase641 0 Ԗp?9El] webview1 0 [˴%uw4#3\downloader5 0 .xlMzZx"+pdistributed2 0 0Ya9Iv%C+݈connectivitymonitor1 0 v$&Jw.@schemas1 1 kjqu jԼFcom.ustadmobile.libcache.db.UstadCacheDb1 0 n,h&Λrespect-lib-shared289 1 Y%/i6WcX CXsrc288 5 _:YL(4"a\f/կjvmMain30 2 )Lw(aߢ0kotlin27 1 #KO50]\ŏ/)F+world27 1 +ΙyWe$trespect27 1 Ԅ H{ shared26 3 B ʢgUa {di1 0 G E +[^ futil2 0 6y< ƗS]'Hdomain23 6 opds6 1 yNA1p9(B{svalidator6 0 ܔOKI Bqaccount7 4 m|yO5uA;Zinvite1 0 tdSlҏ?mH|G3passkey4 0 ƕ"=]Kiӳvalidateauth1 0 `D$#?BWaauthwithpassword1 0 [z}:q7}miLvalidator3 0 `MR,~hh"getfavicons1 0 ~1+*bgi!rphonenumber5 0 SN\JvB+󟺲respectappmanifest1 1 ?s;Yz& rvalidator1 0 pn{\We,\ݔresources3 1 B|u2@+Lworld2 1 ZHe)*i a⛁respect2 1 —jHEtdomain2 1 %FUyyr\validator2 0 8Ox[1RjvmTest46 2 \tD$tQAf a2kotlin10 1 #^ڀC?f6/world10 1 M?^&\respect10 3 ,͎I*y`?domain4 2 S$˦I-2 account2 2 )0/cN-owinvite1 0 k8ِˏ%x)passkey1 0 vuH tm[Yvalidator2 0 ʌa&h^Eshared3 2 m<%|XݵWtjtGutil2 1 Cn qq5di2 0 +<}uf2n RKwZdomain1 1 c5P>5*d$nJaccount1 0 3ц8Datestutil2 0 o%bŔ]a]resources36 1 ǑꯔyNE7fʡworld36 1 U­!TG2^YlbLrespect36 1 }(mQiXE']Nvalidator36 4 ;N؏t,(̥Ycase_valid10 1 r݅E5OTograde17 1 Ut򃀉NmYJlesson0016 0 -p6<``S/rHcase_no_resources_in_manifest10 1 ҆ ^g}*COgrade17 1 Nr h2i󐫸r2lesson0016 0 YG;ildcase_manifest_not_discoverable10 1 ?\)pK;|;grade17 1 O{ x 'lesson0016 0 G)›aJ1çRmcase_manifest_resources_do_not_exist6 1 "1ycfL*hgrade13 1 < -IDMElesson0012 0 Ws^*:uQLԬdcommonMain182 3 ?N 2^*Pkotlin178 1 Y,u6imodel1 0 !*]"^query4 0 :醼èfפyZ8Zaformatter6 0 fu~h\t1 Asschool3 0 71}|I f$account35 9 Ar$ gT'invite7 0 =:8`<"signup1 0 k߶e|lu5B passkey9 0 tS >J^8_username4 2 /F.;yWQfilterusername1 0 ӷ`wbqk϶validateusername1 0 LZvT92:hٙ,^Fvalidatepassword1 0 P#!2 ǎauthenticatepassword1 0 aBf*sstorage3 0 q}`})C6ۙB-licenses2 1 _@k/>w,wwGmodel2 0 /T@c}%0vpihclipboard1 0 ^>d>Ըj :@Alaunchapp1 0 D,bLiQM!nvalidator6 0 j,VVUQponboarding1 0 a,ESy4eəWV@getfavicons1 0 px؉h|I'getwarnings1 0 ξj7݂(WljOphonenumber6 0 9U JqDfuqDgetdeviceinfo2 0 eC!#窛 +ۨϸappversioninfo1 0 |?׆|aI۶usagereporting2 0 ]B0+mR?respectappmanifest1 1 XukUրkA%@model1 0 04}0qU|V Zdirectory1 0 Ńh_!ig resources1 0 D 2pviewmodel62 12 b!Fe֡Z(6Tapp12 1 m˼O@c p{appstate12 0 ET`4ZaXzfapps4 4 -&JHs b:list1 0 ]ܭ\ >~I6aV^detail1 0 Lׂ'$6launcher1 0 VQ g2rkW_enterlink1 0 Ћ6w 9clazz4 4 •wr7Ǣaedit1 0 }'D GFMlist1 0 Ceqrp6detail1 0 Og7i>v4j?addperson1 0 e="ID:+passkeylist1 0 -}"%pdgs manageaccount1 0 R4)m**^?changepassword1 0 u l'X lwnsetusernameandpassword1 0 o#XGBE pwreport9 5 nlcd ޵̜p#.edit1 0 `AȒPelist2 0 pʫnl&CXdetail1 0 c wUindictor3 3 C8yhapcV.edit1 0 G(L 2}aIX)dyKlist1 0 T=@? n9i`CR*detail1 0 lk5H?P"ukfilteredit1 0 F"Xm2;-@8^}assignment3 3 [gz5}S eedit1 0 Gk@fPUÛTőjlist1 0 ña+Rodetail1 0 IGDGu9hmanageuser14 13 43,d]W=(h0login1 0 y)NA,signup1 0 p?y sprofile2 0 i?{f[ߜ1'cgetstarted1 0 c.bO ,accountlist1 0 Ɵױɶ)ᅿ庽otheroption1 0 k)U/ DM1hconfirmation1 0 0/Unp13#Vhowpasskeywork1 0 J@=Y<֒hXXjoinclazzwithcode1 0 0B Ap(U!\otheroptionsignup1 0 ?yt~o'ѭpgM-g}termsandcondition1 0 pb+0 I Kwaitingforapproval1 0 x&Kbʮwenterpasswordsignup1 0 6EVX{3Xonboarding1 0 .Q3\bnZxs˘ learningunit3 2 ]7;cST\list1 0 "HHzu7detail1 0 #{zO1-GjGrespectaccount1 1 )52/{>2list1 0 > Xٷacknowledgement1 0 R=W/Ņ1hnschooldirectory2 2  T̽œ0zxkSedit1 0 ά!P &"IIvŧlist1 0 .T1;c{navigation8 0 a4w1ᎍŋ resources2 1 *J]38F.Ѯdirectories1 0 ~67\x~uVt9composeResources2 2 3~h€B#C 4values1 0 -˯=%<.Csdrawable1 0 _{ #vsn?commonTest7 1 a6D(B" resources7 0 ECsIߙstorage3 0 5=>ˍN\C'ܭ.clipboard1 0  }Hc(launchapp1 0 5_D9wU`< ;getwarnings1 0 '@jqGPphonenumber5 0 ͗+5( getdeviceinfo1 0 1GP+۪+CfFyq(appversioninfo1 0 2͌>xbUjusagereporting2 0 1NwHH5Vresources1 1 }q VR directories1 0 \Z"?@gJZ{L\Rؿrespect-lib-xxhash7 1 N-rsYhKsrc6 1 }cAѵdgIy JcommonMain6 1 AB? a![c1kotlin6 1 %>z~ 4I7Dworld6 1 \.PpoHrespect6 1 ϓٙ+7Ced"Ȭlibxxhash6 1 ŃD Ҿ*src154 3 gW__@'xCcommonMain95 1 4HmDf7+Cmkotlin95 2 N](}Sa"ezoEݤ%Etheme3 0 c6:WQ|cworld92 1 9F ]VMng@q"respect92 3 µc0}PljyU~!lapps4 4 ~򌝵}R%1+list1 0 R~Õƺ~@@detail1 0 273!t8)f launcher1 0 )_ $KP4#enterlink1 0 v蓻'8[>Hclazz4 4 *<%< AG8Ό edit1 0 Dr4F"_Ulist1 0 ?%[`detail1 0 r 3n}_5addperson1 0 Ntjb zl&]person7 7 7p_XO0*`edit1 0 L͔ oy9!ũlist1 0 hϗPohE detail1 0 ,Y Vb11#ypasskeyList1 0 U,@dl啿VJmanageaccount1 0 >uF$jchangepassword1 0 Q䉟84n'$setusernameandpassword1 0 g%opԸ q:b report9 6 QC@"˜edit1 0 _iRp_)list2 0 uՂߪ}ːӨ8"graph1 0 `MA,D[ddetail1 0 Qk(B| ͖indicator3 3 g7TtRp."edit1 0 M*xxi?e%detail1 0 >AT+*vca]filteredit1 0 j5<~/a8[:assignment3 3 ߟ ;\ `/)1edit1 0 `j' 6H][yC(list1 0 Ƶ,U=Z detail1 0 l$ۥ7c"[r\XiPmanageuser14 13 [S"|n-['=m;elogin1 0 LJP9!signup1 0 Fo<:<0+ Zgetstarted1 0 z? VVP*m͔accountlist2 0 &,L y5AؓuuIotheroption1 0 a"*@KW Gxworld23 1 `&.Vj@respect23 4 q,JNv#salcJapp6 3 ^QSE|NzLy6r[app1 0 eV tn{§util2 1 ۄfG3V=zphonenum2 0 G հ͜components3 1 A%{ӑseŸwebview1 0 `GOD \#"Zimages1 0 ٔ`Ȗl'C~callback1 0 hte?Yocredentials9 2 군)l'g5passkey7 0 VGHZeys password2 0 b8 Zu2ߗ|desktopMain8 2 _ % U-(iDkotlin7 1 I0dFwW#t N78(world7 1 z]D6respect7 2 hp-&>~ˣapp5 3 NB{=RşF:Qapp1 0 [pO= XNRutil2 1 ž 8@OFphonenum2 0 y9_*8L~%components2 0 % 9Jd`𗭪I.images1 0 n`[z-zresources1 0 ɾ`EK:#ke=respect-credentials31 1 J(1 gp2k鐒asrc28 2 @^WT u 9:;main1 0 VrhSseN9Q lcommonMain27 1 S{/_Bkotlin27 1 V~'B~ZQ@my֌?world27 1 2 *8=1r9*respect27 1 nkˎ.ڧWBdtcredentials27 1 <%ZI+ school51 4 i:%pw )_3Bdaos14 0 Pu I7bjadapters10 0 W]+<܋(entities16 0 <>irRã#writequeue1 0 ƃ" WYG`xshared12 4 hؾy@dmext3 0 Xey;#ytdaos1 0 ZP9tZQeyJJadapters3 0 -r]AFR< entities3 0 GԍUB[rUo"Hscompatibleapps6 3 vHY =|lmedaos2 0 X8 nHlqcW?"adapters1 0 #]>Lzumentities2 0 XdX j5䤴xschooldirectory13 4 t n˱Qi)ext1 0 %ok' %daos4 0 vih$h"uHadapters2 0 wE{j @0tC@\xentities4 0 Z#c`>?networkvalidation3 2 `.Z9[񷏉daos1 0 ,hK ]V[w2[&entities1 0 %Lu"gT9#0:ustadmobile1 1 X;}g;By(ihttp1 1 #dYVy@,sJiext1 0 3OR)nge?$GL jvmMain1 1 mQuA(䯭#94e1ۨm鬳^Austadmobile26 1 ?1IV_X%Bihttp26 4 SZou.Cext4 0 yHi4Io/0]cs>headers13 1 %̯'ڑGCG䂳directives1 0 ysn! 1TM Eꆯrequest6 0 [Pkotlin1 1 MEg:潰fKKqcom1 1 =P`Vu6ustadmobile1 1 HY wv~ihttp1 1 '-[=ݫ@jext1 0 c^lvI ށrespect-lib-opds-model20 1 dILβHHsrc18 1 ;7a+commonMain18 1 (. ^ Lm8Jkotlin18 1 'Ee.PsBIm`world18 1 *z>h73;respect18 1 ?,#'GKC`2lib18 1 $ RHIm>)ցopds18 1 d+6krqv& model18 0 #!}D' [Crespect-lib-serializers9 1 6W_@^ 1 Ssrc7 1 0l?;.?g!0D>commonMain7 1 3veĥ_M7##S?kotlin7 1 вXTB#zworld7 1 Ǽpz{Z2WfOrespect7 1 tQgQb鍩s"Cclib7 1 t`x}uL .[serializers7 0 @/fǁX>q{respect-test-end-to-end4 1 v&sы>$ test-description3 0  jͪ\vlNrespect-lib-ihttp-okhttp11 1 5ƀմpqi7bsrc7 1 ox5x v7QmcommonMain7 1 ٴakuhiw72?kotlin6 1 q1{]I8}com6 1 %;n4x*ɍustadmobile6 1 =V@}lbJG7\i ihttp6 1 ב[H%3mDokhttp6 3 iǟqe6_Q)headers2 0 L)9:o Z request2 0 D)YLresponse2 0 I20]":=jfarespect-lib-primarykeygen7 1 ؗʡ񔍈.dg isrc6 4 kܭ2L_ՄjvmMain1 1 ] w,U%,5*Ikotlin1 1 ׼->[jGhzkkworld1 1 2v x8u2urespect1 1 H>DAȉK#M9/,_jvmTest1 1 ; xKC[?[kotlin1 1 n8J _oKpworld1 1 cvMprespect1 1 ͠V\-w_Tn-])lib1 1 Kmnڭ?L_]primarykeygen1 0 nYc/9u commonMain3 1 LN_ʺ"K^H{lkotlin3 1 ԛnAE9|4xmworld3 1 uGq)UAHrespect3 1 ׇpH5j'-<~Tlib3 1 #bNZ" primarykeygen3 1 V{r5vMlext1 0 í&~M$^3WandroidMain1 1 ߶nt7GFD•gkotlin1 1 Sߏ2world1 1 q*W ?MFԄrespect1 1 E7nc_'u3zd>alib1 1 ~7g!1v< H:primarykeygen1 0 NV?sv}respect-lib-ihttp-iostreams5 1 ߣAY8bGsrc2 1 >VnS,Xg tvcommonMain2 1 ]IPA`%=`kotlin2 1 h{MhEDO;)eg䏵com2 1 Q,Pʾ]9ustadmobile2 1 Z 3#+afžfUihttp2 1 ܦ7ҸC z2N#uiostreams2 0 OHr^&m6respect-lib-ihttp-nanohttpd4 1 X)1 l_ڷ%8src2 1 L3v 둄qcommonMain2 1 R ce? kotlin2 1 B0Ee! }com2 1 L0 yc΄FOustadmobile2 1 VٽI*t95ihttp2 1 QF7a}å2E nanohttpd2 0 !n($ȋӪH 45]S>respect-datalayer-repository30 1 TQ]`L2(Or:Dsrc28 3 ) ^$ˋjvmTest6 2 fȳcmafkotlin3 1 =k}IߺO˜cworld3 1 2B _ӑ37=respect3 1 (^wv՚datalayer3 1 ;6ܥ;ॅ YX FKrepository3 2 c zT mm\ 5opds1 0 񗸿)nf8Fn5T /school1 0 `}z4C ?resources3 1 OѺ=QAzpworld2 1 NE0{*}respect2 1 }[6 datalayer2 1 _xpa/M g;repository2 1 mriքJ'ڮn-9opds2 0 @R0qBJ~kcommonMain20 1 (oJ,Dm> \Økotlin20 1 ]F3c^world20 1 3NY&A,kVrespect20 1 8ge2jd Pdatalayer20 1 ]h 7%G>rWO[èrepository20 5 'PRsTAyopds1 0 Ԕ h< !\school9 1 q :Y'7writequeue1 0 J[>51ra|Rlshared5 1 i MAJBpaging5 0 (nPhWǴPOqcompatibleapps1 0 Aeo5 dRschooldirectory1 0 7l舨\?IIU֌dandroidMain2 1 O>u!)ALkotlin2 1 29|pN0/9world2 1 90o h܏?ӜgVXrespect2 1 ^'A9k8!datalayer2 1 72ה=ڦvWrepository2 1 J+> 8L=z ӂ@Ҕschool2 1 i\A H]٭򰾈zngwritequeue2 0 =o{\X!k_qFzjc% j>D\{+r_