DIRCiCNiCN #mIL%ʹh ,.fleet/receipt.jsoniC-iC- &) XU~4.github/ISSUE_TEMPLATE/add_app_to_default_catalog.MDiC-iC- 'h |*X0h?$׿e}$.github/ISSUE_TEMPLATE/bug_report.mdiC-iC- (S˾}aU zc|'m0).github/ISSUE_TEMPLATE/feature_request.mdiC-iC- )nuN9;G&.github/ISSUE_TEMPLATE/localization.MDiC-iC- *W_>f9L3l>5)%#.github/ISSUE_TEMPLATE/task_card.mdiC-iC- ѹ:b$67y u .gitignorejz88jz88 ,n׊@2/|d.maestro/README.mdiC-iC- .rex?]66ǁ0=.maestro/flow-passkey/006_user_signup_using_passkey_test.yamliC-iC- 0 {kbn N,.maestro/flow-passkey/scripts/school_init.jsiC-iC- 1P"B(VQ(.maestro/flow-passkey/scripts/setDate.jsiC-iC- 2P21AUKq†).maestro/flow-passkey/scripts/teardown.jsiC-iC- 4hg Ah>pH'ZO9.maestro/flow-passkey/subflows/choose_passkey_prompt.yamliC-iC- 5em{eSv@.maestro/flow-passkey/subflows/choose_passkey_prompt_cancel.yamliC-iC- 6wոg?0-oB.maestro/flow-passkey/subflows/create_passkey_to_sign_in_flow.yamliC-iC- 7 aiFH.maestro/flows/001_001a_invite_new_users_using_qr_code_or_link_test.yamljL4AjL4A ")mA_BNQ.maestro/flows/001_001b_invite_existing_users_using_invite_code_or_link_test.yamlj)-¯j)-¯ '&1M8 W,{&_q0.maestro/flows/001_002_add_user_direct_test.yamlj)-¯j)-¯ *DSUeeF!4i̗8.maestro/flows/001_003_login_using_school_link_test.yamlj)-¯j)-¯ + +r@cg–S2 }o=.maestro/flows/001_005_add_school_self_registration_test.yamlj)-¯j)-¯ ,3"{X݊ b64!A+.maestro/flows/002_browse_lessons_test.yamlj=)j=) =32RwAfl0UT.maestro/flows/flows-disabled/003_admin_user_assigns_assignment_to_a_class_test.yamliC-iC- CV˴p%#?1YӾZ%.maestro/flows/scripts/school_init.jsiC<iC< D q۬4/5ݲpw/!.maestro/flows/scripts/setDate.jsiC<iC< EP21AUKq†".maestro/flows/scripts/teardown.jsidid {nwlK+L]X..maestro/flows/subflows/add_person_to_app.yamliC<iC< G|夾Kz' uj<\R)~*.maestro/flows/subflows/admin_add_app.yamliC<iC< H K7zb~k6.maestro/flows/subflows/admin_add_app_and_teacher.yamliC<iC< JGvpUATLb6..maestro/flows/subflows/admin_add_student.yamliC<iC< KV(>UДQ1.maestro/flows/subflows/assign_qr_badge_flow.yamliC<iC< L!tY{L"=UL?.maestro/flows/subflows/chrome-first-run-accept-ad-privacy.yamliC<iC< MOPsHJV /XÇ)A.maestro/flows/subflows/chrome-first-run-accept-and-continue.yamliC<iC< N9(- W.SK3.maestro/flows/subflows/chrome-first-run-check.yamliC<iC< O;R<{c~w6EFO.maestro/flows/subflows/chrome-first-run-tap-accept-or-use-without-account.yamliC<iC< P mgjau#H.maestro/flows/subflows/chrome-first-run-tap-notification-no-thanks.yamliC<iC< QH$ 2QD(iY*І=.maestro/flows/subflows/chrome-first-run-without-account.yamliC<iC< RNjۓ:" oGRr'.maestro/flows/subflows/erase_text.yamliC<iC< S aiF.maestro/flows/subflows/get_started_select_school_by_name.yamliC<iC< Ts d8q5a-IYs5.maestro/flows/subflows/launch_clear_and_set_dir.yamlj97j97 v "]2Twut8. *.maestro/flows/subflows/openlink_flow.yamliC<iC< V]˵ }3da8.maestro/flows/subflows/save_password_prompt_cancel.yamliC<iC< W7̺LZ's aD4.maestro/flows/subflows/school_admin_login_flow.yamliC<iC< Xv|zrB!,/yd(.maestro/flows/subflows/school_init.yamli49 i49 {m5 ظbC'3.maestro/flows/subflows/school_user_login_flow.yamliC<iC< YtJ7\dqbyf1d+.maestro/flows/subflows/tap_done_again.yamli9 ami9 am {s:m OMMŽ0ʂ+.maestro/flows/subflows/user_add_class.yamliC<iC< [0Ng^>Kj_ *D^#.maestro/video-downloader/README.mdiC<iC< \ (`[t j :=+.maestro/video-downloader/ci-run-cypress.shiC<iC< ]ip)Mz:+.maestro/video-downloader/cypress.config.jsiC<iC< `)CLt 'F.ܛUUF.maestro/video-downloader/cypress/e2e/extract-maestro-video-urls.cy.jsiC<iC< b%Cxx_;̍"˷7.maestro/video-downloader/cypress/fixtures/example.jsoniC<iC< dH9Pk˫XԌH TB5.maestro/video-downloader/cypress/support/commands.jsiC<iC< eS>kCStTKʪ0.maestro/video-downloader/cypress/support/e2e.jsiCLTiCLT fn"iRm&]u+.maestro/video-downloader/package-lock.jsoniCLTiCLT gs^:;ʨ{>^r&.maestro/video-downloader/package.jsoniCLTiCLT  ₰qV 5P:G? AGENTS.mdiCLTiCLT 7{վiÏ$"aARCHITECTURE.mdj=)j=) *κs=8Wb%/[CODE_OF_CONDUCT.mdiCLTiCLT 4qV- ?9=CODING_GUIDELINES.mdiCLTiCLT 9|\c6v~ :s{CONTRIBUTING.mdiCLTiCLT 2&}-?g֘DESIGN_GUIDELINES.mdjz88jz88 mbI\.Ȥr BwCD INSTALL.mdiCLTiCLT  ]R?rCRLICENSEjz88jz88 Z=ffi` 2ԅ README.mdiCLTiCLT Hae@YYbuild.gradle.ktsiCLTiCLT `~{CL'cP4Xrespect-app-compose/README.mdj=)j=) w SJTL$respect-app-compose/build.gradle.ktsiC[WiC[W yQu7%Z2V"vT3#/respect-app-compose/doc/app-config-dropdown.pngiCjiCj z]9mcŨkpS8/respect-app-compose/doc/run-config-settings.pngiCjiCj {HV/$"s{WIlI&respect-app-compose/proguard-rules.proiCjiCj ~*l\|5I V9Gj67respect-app-compose/src/androidMain/AndroidManifest.xmliCjiCj *B}Hs`wx]b"Orespect-app-compose/src/androidMain/kotlin/world/respect/AbstractAppActivity.ktiCjiCj (R1R h2!>9vIGrespect-app-compose/src/androidMain/kotlin/world/respect/AppActivity.ktj -%j -%  ְV ˓JAIrespect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.ktiCjiCj "\8 "jzG1P:Hrespect-app-compose/src/androidMain/kotlin/world/respect/MainActivity.ktiCjiCj  pfW36n7Frespect-app-compose/src/androidMain/kotlin/world/respect/RespectApp.ktiCjiCj  ȳYwem{œ]cKrespect-app-compose/src/androidMain/kotlin/world/respect/WebViewActivity.ktiCjiCj ~vlhH ZSrespect-app-compose/src/androidMain/kotlin/world/respect/app/app/AppIcon.android.ktiCjiCj dQg4lCA&k2_respect-app-compose/src/androidMain/kotlin/world/respect/app/components/BasicWebView.android.ktiCjiCj EZ2ǀn5H"awkrespect-app-compose/src/androidMain/kotlin/world/respect/app/components/RespectImageSelectButton.android.ktiCyiCy ? kWwv~eHmrespect-app-compose/src/androidMain/kotlin/world/respect/app/components/webview/UstadAbstractWebViewClient.ktiCyiCy s :_Tmfrespect-app-compose/src/androidMain/kotlin/world/respect/app/util/phonenum/GuessCountryCode.android.ktiCyiCy Z2L ;u,˞y`respect-app-compose/src/androidMain/kotlin/world/respect/app/util/phonenum/PhoneUtils.android.ktiCyiCy {lm.RlN'УWjrespect-app-compose/src/androidMain/kotlin/world/respect/app/util/scanqrcode/PermissionsManager.android.ktiCyiCy YDrR K;~F7::s_respect-app-compose/src/androidMain/kotlin/world/respect/callback/AddSchoolDirectoryCallback.ktiCyiCy œC߬'|:urespect-app-compose/src/androidMain/kotlin/world/respect/credentials/passkey/CheckPasskeySupportUseCaseAndroidImpl.ktiCyiCy  LmuZ.sva;h-ܒw3Krespect-app-compose/src/androidMain/res/drawable/ic_launcher_background.xmliCCiCC 4n>eY+!zFٯ`Brespect-app-compose/src/androidMain/res/drawable/respect_logo.webpiCCiCC x}3OYr2q=?respect-app-compose/src/androidMain/res/drawable/spix_logo.webpiCCiCC rMOĹUPBrespect-app-compose/src/androidMain/res/drawable/works_offline.pngiCCiCC yĒ\#YޠI"4Drespect-app-compose/src/androidMain/res/layout/activity_web_view.xmliCCiCC mO0jQ?ȶĂպ=respect-app-compose/src/androidMain/res/menu/menu_webview.xmliCCiCC  Rf( h{Orespect-app-compose/src/androidMain/res/mipmap-anydpi-v26/ic_launcher_round.xmliCCiCC aUUa=,֑FIrespect-app-compose/src/androidMain/res/mipmap-hdpi/ic_launcher_round.pngiCCiCC  respect-app-compose/src/commonMain/kotlin/theme/CommonColor.ktiC`iC` ` vy*/`:=98respect-app-compose/src/commonMain/kotlin/theme/Theme.ktiC`iC` kF̼9\eui/ʞD>respect-app-compose/src/commonMain/kotlin/world/respect/App.ktir$ir$ <2gC=7@׿Frespect-app-compose/src/commonMain/kotlin/world/respect/app/app/App.ktiC`iC` kJ0֯O6s g![Irespect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.ktiC`iC` kKl}`JsgS7Jrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppIcon.kti49 i49 3jyLj3 )fMrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.ktiCiC kM BMSS~֤t&2bM/Prespect-app-compose/src/commonMain/kotlin/world/respect/app/app/ExpandableFab.ktiCiC kNkAv bxr>$6QTrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/RespectAsyncImage.ktiCiC kO>G ߄^TaxY:z iLrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/SizeClass.ktiCiC kQ`:7q=-QjVrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/BasicWebView.ktiCiC kRLS]穭XQchЦZrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/DevModeClickable.ktiCiC kS ZX3-m-Urespect-app-compose/src/commonMain/kotlin/world/respect/app/components/ModifierExt.ktiCiC kT4':o'Ln[`respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RememberAppVersionInfo.ktiCiC kU ܭ8-{2@0GA0arespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectBasicAlertDialog.ktiCiC kVAF0H2+]tMZ怯brespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectBottomSheetOption.kti0.i0. j2=iB4O7偟qrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectChildrenExposedDropDownMenuField.ktiCiC kWA詘஢kBsNG8Zrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectDateField.ktiCiC kXEfZrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLazyItems.ktiCiC k]\&4K"(cj.:J_respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLocalDateField.ktj=)j=) k^ dʺ}h8+ŀcrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLocalDateTimeField.ktiCiC k_O@?`} "(_respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLocalTimeField.ktiCiC k`ooE^respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectPasswordField.ktiCiC ketSBɘFa%Wn]respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectPersonAvatar.ktiCiC kfכּ:@ 秐]zerespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectPhoneNumberTextField.ktiCiC kgަ%EKNf Zm_respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectQrBadgeInfoBox.ktiCiC kh- 9}dA^qR_Kbrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectQuickActionButton.ktiCiC kiHH%׀4hJ٩s_^respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectRememberPager.ktiCiC kjt-y렼bD[[)erespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectShortVersionInfoText.ktiCiC kk^X W7j!  s[respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectSortHeader.ktiCiC kl6(I~qoNP&Jgrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectSortOptionsBottomSheet.ktiCiC km%ZxA4F7O TZrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/StringBuilderExt.ktiCiC knEu=WP. L?^respect-app-compose/src/commonMain/kotlin/world/respect/app/components/UiTextStringResource.ktiCiC ko ΂(_{[.*$%xgrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/UstadExposedDropDownMenuField.ktiCiC kqEGPKk2/LGWrespect-app-compose/src/commonMain/kotlin/world/respect/app/effects/AppUiStateEffect.ktiCiC kroj]X"vWE]respect-app-compose/src/commonMain/kotlin/world/respect/app/effects/NavControllerLogEffect.ktiCiC ku飥=F:&W^respect-app-compose/src/commonMain/kotlin/world/respect/app/util/ext/AppStateIconExtensions.ktiCiC kvݻ6LS/'Nrespect-app-compose/src/commonMain/kotlin/world/respect/app/util/ext/IntExt.ktiCiC kx)|^a.Lltܷfrespect-app-compose/src/commonMain/kotlin/world/respect/app/util/phonenum/CountryCodeTransformation.ktiCiC kyco}?jrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/accountlist/AccountListItem.ktiK9DiK9D <&[ yw3\N`"Ilrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/accountlist/AccountListScreen.ktjL4|jL4| ¾yt{VJXJvrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/accountlist/PendingPersonEnrollmentItem.ktj=)j=) k٢7`c ]߯prespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/createaccount/CreateAccountScreen.ktiC䫩iC䫩 k hIRa5[Mtrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/enterinvitecode/EnterInviteCodeScreen.ktiC䫩iC䫩 k o6avZ{n(e|respect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/enterpasswordsignup/EnterPasswordSignUpScreen.ktiC䫩iC䫩 kip0 _HJ)jrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/getstarted/GetStartedScreen.ktiC䫩iC䫩 k2%uv#q90 srespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/howpasskeywork/HowPasskeyWorksScreen.ktir$.,)&Ȕ M#`respect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/login/LoginScreen.ktiC䫩iC䫩 k μ|Ҋ_滑uTXmrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/otheroption/OtherOptionsScreen.ktiC䫩iC䫩 k Ju lĈSHkxoyrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/otheroptionsignup/OtherOptionsSignupScreen.ktivfivf t l̘y8Mִ;Ucprespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/selectAccount/SelectAccountScreen.ktiC䫩iC䫩 k:ɍ-Sz&ցbrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/signup/SignUpScreen.ktjLl jLl k0r-cnxrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/termsandcondition/TermsAndConditionScreen.ktiC䫩iC䫩 k W`!7N`^nzrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/waitingforapproval/WaitingForApprovalScreen.ktiC䫩iC䫩 kC:'OЧI 5:n_respect-app-compose/src/commonMain/kotlin/world/respect/app/view/onboarding/OnboardingScreen.ktiC䫩iC䫩 k #=^47,#g>nrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/changepassword/ChangePasswordScreen.ktiCiC k >8N~`+G>zhrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/copycode/CopyInviteCodeScreen.ktiCiC kZU0GL0% drespect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/detail/PersonDetailScreen.ktiCiC k'ӣgb 2IN6".B`respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/edit/PersonEditScreen.ktivfivf 30'Vj`*\Dsjrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/inviteperson/InvitePersonScreen.ktjLl jLl :(o46 :E^respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/list/PersonListItem.ktjLl jLl k"C5T6r{ KRN$l_Xjdrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/detail/ReportDetailScreen.ktiCiC k[O͇(N.U}U6~Y`respect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/edit/ReportEditScreen.ktiCiC k.{)>TqDyllrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/filteredit/ReportFilterEditScreen.ktiC0 iC0 k(-r@,1{^respect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/graph/CombinedGraph.ktiC0 iC0 k%i@w "hqrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/indicator/detail/IndicatorDetailScreen.ktiC0 iC0 k >/]rN_ֲ{]O+mrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/indicator/edit/IndicatorEditScreen.ktiC0 iC0 k i4_*p_WE<|mrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/indicator/list/IndicatorListScreen.ktiC0 iC0 k ]_jis0v `respect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/list/ReportListScreen.ktiC0 iC0 k"WUHԺhrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/list/ReportTemplateListScreen.ktiC0 iC0 k5u=Ւ.q@"NSwNrespect-app-compose/src/commonMain/kotlin/world/respect/images/RespectImage.ktiC0 iC0 lۤo4^ۮIGlVrespect-app-compose/src/commonMain/kotlin/world/respect/navigation/NavCommandEffect.ktiCr\iCr\ l^HDetI+\{YSrespect-app-compose/src/desktopMain/kotlin/world/respect/app/app/AppIcon.desktop.ktiCr\iCr\ l T_0 ? Q4!_respect-app-compose/src/desktopMain/kotlin/world/respect/app/components/BasicWebView.desktop.ktiCr\iCr\ l 0A i/VvI3Qkrespect-app-compose/src/desktopMain/kotlin/world/respect/app/components/RespectImageSelectButton.desktop.ktiCr\iCr\ l A >E.ԥVP$-4.frespect-app-compose/src/desktopMain/kotlin/world/respect/app/util/phonenum/GuessCountryCode.desktop.ktiCr\iCr\ lZ2L ;u,˞y`respect-app-compose/src/desktopMain/kotlin/world/respect/app/util/phonenum/PhoneUtils.desktop.ktiCr\iCr\ lec&3jrespect-app-compose/src/desktopMain/kotlin/world/respect/app/util/scanqrcode/PermissionsManager.desktop.ktiCr\iCr\ ldl%'f+QWrespect-app-compose/src/desktopMain/kotlin/world/respect/images/RespectImage.desktop.ktiCr\iCr\ lk״YU:K.SA@respect-app-compose/src/desktopMain/kotlin/world/respect/main.ktiCr\iCr\ l;D-tstoB>respect-app-compose/src/desktopMain/resources/sample-feed.jsoniCr\iCr\ lB*18LyqzK}respect-cli/.gitignoreiCr\iCr\ lRz$oG]%Frespect-cli/build.gradle.ktsiCr\iCr\ lK я}z Hcr2>respect-cli/src/main/java/world/respect/clitools/RespectCLI.ktiCr\iCr\ l!B*18LyqzK}respect-credentials/.gitignoreiCr\iCr\ l") o{r0{Ö$respect-credentials/build.gradle.ktsiCr\iCr\ l#H4Ayף gm4K &respect-credentials/proguard-rules.proiC!iC! l+HDQi2O ~QͯHirespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/CheckPasskeySupportUseCase.ktiC!iC! l,~"qP;Bu͍crespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/CreatePasskeyUseCase.ktiC!iC! l-߉3ǬW1{crespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/GetCredentialUseCase.ktiC!iC! l.OQ!0ǤWq]'`respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/RespectCredential.ktiC!iC! l/m^`x۶޿ `respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/RespectUserHandle.ktiC!iC! l0XJ6Xȵbrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/VerifyDomainUseCase.ktiC!iC! l237<(glOgrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AaguidProviderInfo.ktiC!iC! l376e]f,Z~respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AuthenticationExtensionsClientOutputsJSON.ktiC!iC! l4ⶢ` ڞw2{respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AuthenticationExtensionsPRFOutputsJSON.ktiC!iC! l5'rځ5)8 orespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AuthenticationResponseJSON.ktiC!iC! l6j;OI Ft H|"Fwrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AuthenticatorAssertionResponseJSON.ktiC!iC! l79W)#zOv5r31OY-srespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/AuthenticatorSelectionCriteria.ktiC!iC! l8Of6AXsκcrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/ClientDataJSON.ktiC!iC! l9ȱc'x"[hrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PasskeyVerifyResult.ktiC!iC! l:RH06O8?s41{respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialCreationOptionsJSON.ktiC!iC! l;1"a?F Cvrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialDescriptorJSON.ktiC!iC! l<_ '~/<,}>trrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialParameters.ktiC!iC! l=oRA >S|Dzrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialRequestOptionsJSON.ktiC!iC! l>MKbopPBnu>Hprespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialRpEntity.ktiC!iC! l?+@ 8?Hm@ Dvrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/model/PublicKeyCredentialUserEntityJSON.ktiC!iC! lAFǚUV`;Gnkrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/password/SavePasswordUseCase.ktiC!iC! lC Ҵ {\!W0p$z{respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/request/CreatePublicKeyCredentialCreationOptionsJsonUseCase.ktiC!iC! lDRs&T|(9i^respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/request/CreatePublicKeyCredentialRequestOptionsJsonUseCase.ktiC!iC! lEVXA;DҔ#nrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/request/DecodeUserHandleUseCase.ktiC!iC! lFg\r}ft$9nrespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/request/EncodeUserHandleUseCase.ktiC!iC! lGoޚ bi=?trespect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/request/GetPasskeyProviderInfoUseCase.ktiC!iC! lI]!qIl9K ]respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/util/StringExt.ktiC!iC! lKr0o#Fj`|0respect-credentials/src/main/AndroidManifest.xmliC!iC! lM_K(K j*~?1respect-datalayer-db/AGENTS.mdiC!iC! lNj(>i;F6?[brespect-datalayer-db/README.mdiC!iC! lO5*|e35>ӱ.%respect-datalayer-db/build.gradle.ktsiC0iC0 lRnAr) BnWwێQrespect-datalayer-db/schemas/world.respect.datalayer.db.RespectAppDatabase/1.jsoniC0iC0 lS'B59vKkf!Qrespect-datalayer-db/schemas/world.respect.datalayer.db.RespectAppDatabase/2.jsoniC0iC0 lT'ȳ $6L"lwV^VQrespect-datalayer-db/schemas/world.respect.datalayer.db.RespectAppDatabase/3.jsoniC0iC0 lUzbJS?^|HԄ 1EQrespect-datalayer-db/schemas/world.respect.datalayer.db.RespectAppDatabase/4.jsoniC0iC0 lWPMxPD/KTrespect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/1.jsoniC0iC0 lX8zdM&-8g)Urespect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/10.jsoniC0iC0 lYN:<& W!0WQI7Urespect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/11.jsoniC0iC0 lZ0F]7\}O˷YUrespect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/12.jsoniC0iC0 l[PǾ0ۧ&rfrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/AssignmentDatasourceDb.ktiCO{JiCO{J lyQ_iWMDgJ4arespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/ClassDatasourceDb.ktiCO{JiCO{J lz Jnmhv{erespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/IndicatorDataSourceDb.ktivfivf 3 6ۺ-I1"Pbrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/InviteDataSourceDb.ktiCO{JiCO{J l~*T_}3K2q0^brespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonDataSourceDb.ktiCO{JiCO{J l ڪR^H`@3]8irespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonPasskeyDataSourceDb.ktiCO{JiCO{J l1_<&qSc2Hjrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonPasswordDataSourceDb.ktiCO{JiCO{J l;+ fvOVirespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrBadgeDataSourceDb.ktiCO{JiCO{J l ʕ=)!Il c³(brespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/ReportDataSourceDb.ktiCO{JiCO{J l |ivl`}BQtBerespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/SchoolAppDataSourceDb.ktiCO{JiCO{J l_vשP\ҘBqrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/SchoolPermissionGrantDataSourceDb.ktiCO{JiCO{J ltIqh:z`drespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/SchoolTypeConverters.ktiCO{JiCO{J l_u,_|7G.jrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/AssignmentAdapter.ktiCO{JiCO{J l+}FHT\I7J҃irespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/AuthTokenAdapter.ktiCO{JiCO{J l ϷS0ZkmB,D\erespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/ClassAdapter.ktiCO{JiCO{J luGR8Ƽi;lxjrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/EnrollmentAdapter.ktiCO{JiCO{J l ka+G:&H}fW[JmVwfrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/InviteAdapter.ktiCO{JiCO{J l 1Ãr)%O(QHfrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonAdapter.ktiCO{JiCO{J lߌFCZ)Q4xmrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonPasskeyAdapter.ktiCO{JiCO{J lDM3b;~.tnrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonPasswordAdapter.ktiCO{JiCO{J l/E&/T$:qMmrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrBadgeAdapter.ktiCO{JiCO{J l^P:k;x4nrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PullSyncStatusAdapter.ktiCO{JiCO{J l$oN=EB8%afrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/ReportAdapter.ktiCO{JiCO{J l"JeSp'~U*m5irespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/SchoolAppAdapter.ktiCO{JiCO{J lihrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/EnrollmentEntityDao.ktiC^iC^ l[ppP5pPҔVOgrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/IndicatorEntityDao.ktiC^iC^ lco*qnډz,K(drespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/InviteEntityDao.ktjLl jLl lZ0#{~ZCP ?qHdrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonEntityDao.ktiC^iC^ ls S4nn}RYlrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonPasswordEntityDao.ktiC^iC^ l xUqs%]%Tkrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.ktiC^iC^ lW%Vi4c_Mqrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonRelatedPersonEntityDao.ktiC^iC^ l=fQDf hrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonRoleEntityDao.ktiC^iC^ lk`^Z.m3Ulrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PullSyncStatusEntityDao.ktiC^iC^ l>%Xo4qUG_^:vdrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/ReportEntityDao.ktiC^iC^ l{n~ci&]j Rgrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/SchoolAppEntityDao.ktiC^iC^ l 9?Z]`6or11lmrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/SchoolPermissionGrantDao.ktiC^iC^ ln-%`na+V{_flrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/WriteQueueItemEntityDao.ktiC^iC^ l̰kN6GմL'@X~respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/domain/AddDefaultSchoolPermissionGrantsUseCase.ktiC^iC^ l3.4{cj?:yrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/domain/CheckPersonPermissionUseCaseDbImpl.ktiC^iC^ l3su4(xnbSg }respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/domain/GetPermissionLastModifiedUseCaseDbImpl.ktiC^iC^ l(u"/#ps"irespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/AssignmentEntity.ktiC^iC^ l tD{R=h|respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/AssignmentLearningResourceRefEntity.ktiC^iC^ lY7Lgu/'hrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/AuthTokenEntity.ktiC^iC^ lNdȒ9UrȰdrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/ClassEntity.ktiC^iC^ lYx@/X~dHUsrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/ClassEntityWithPermissions.ktiC^iC^ l$㨓[1SÕnrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/ClassPermissionEntity.ktiC^iC^ lۍg&X+l;1h]irespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/EnrollmentEntity.ktiC^iC^ l9?JJV.T6hrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/IndicatorEntity.ktiC^iC^ lly`oU>uerespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/InviteEntity.ktiC^iC^ lz T+.0 W+rrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/LastModifiedAndPermission.ktiC^iC^ lI>?Nerespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonEntity.ktiC^iC^ lKDDo+POT:v/+nrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonEntityWithRoles.ktiC^iC^ l9KHVWS1L Qlrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonPasskeyEntity.ktiCmiCm l, fAvڱבmrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonPasswordEntity.ktiCmiCm l(qksk*4H\lrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrBadgeEntity.ktiCmiCm lFT$ļեPcw3rrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonRelatedPersonEntity.ktiCmiCm lcdGh>E pk`irespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonRoleEntity.ktiCmiCm lϟ3<<_[b?uZFmrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PullSyncStatusEntity.ktiCmiCm l$lu8)-BiQerespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/ReportEntity.ktiCmiCm lȫZ:/At(Mhrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/SchoolAppEntity.ktiCmiCm l1~Q2RuԭXtrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/SchoolPermissionGrantEntity.ktiCmiCm l0Y™ږOp+mrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/WriteQueueItemEntity.ktjz880.jz880. lz[[|0%]\t]respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/ext/PersonExt.ktiCmiCm l3\L*_?ũw_irespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/opds/OpdsFeedDataSourceDb.ktiCmiCm lm_KC,~S9i[A@crespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/opds/OpdsParentType.ktiCmiCm l3=+j0؁6Ҡprespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/opds/OpdsPublicationDataSourceDb.ktiCmiCm l#('> 4 e{3grespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/opds/OpdsTypeConverters.ktiCmiCm lxwPIn3u:Fnrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/opds/adapters/OpdsFacetAdapter.ktiCmiCm lSoAgQ*1RDʂmrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/opds/adapters/OpdsFeedAdapter.ktiCmiCm lE#+'ѵ~g12{respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/opds/adapters/OpdsFeedMetadataEntityAdapter.ktiCmiCm l-KQ`?nrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/adapters/ILangMapEntityAdapter.ktiC}AiC}A l UǟzΆFgrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/adapters/LangMapAdapter.ktiC}AiC}A lk#ègso^3EN3nrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/adapters/ValidationInfoAdapter.ktiC}AiC}A lvȵkJxW9`erespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/daos/LangMapEntityDao.ktiC}AiC}A m>[>+] `Ukrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/ext/SchoolUrlHttpDataSourceExt.ktiCuiCu m0/VfS6܀Zorespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/headers/directives/DirectivesToMap.ktiCuiCu m2#0jv 3m~0ާVTSlrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/AssignmentDataSourceHttp.ktiCuiCu m3^r_dfw?Fhgrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/ClassDataSourceHttp.ktiK9T8iK9T8 m4e뽼i$%qY'blrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/EnrollmentDataSourceHttp.ktiCuiCu m5ZRST.;#H[R2hrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/InviteDataSourceHttp.ktiCuiCu m6(_fFr9Q* 8hrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonDataSourceHttp.ktiCuiCu m7 _9Fporespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonPasskeyDataSourceHttp.ktiCuiCu m8 `s|Dn.s+Ɏ`%prespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonPasswordDataSourceHttp.ktiCuiCu m9!`K>كK  xorespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrBadgeDataSourceHttp.ktiCuiCu m:zp ru3iӰtPkrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/SchoolAppDataSourceHttp.ktiCuiCu m;V^|ޑ$Ǎ0-ȣGwrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/SchoolPermissionGrantDataSourceHttp.ktiCuiCu m<$In 9{#VAlrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/SchoolUrlBasedDataSource.ktiCuiCu m> |=&QL1borespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/opds/OpdsFeedDataSourceHttp.ktiCuiCu m? .Gnt5m[<4|vrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/opds/OpdsPublicationDataSourceHttp.ktiCuiCu mA m_?%J,R&Kmrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/schooldirectory/SchoolDirectoryEntryDataSourceHttp.ktiCiC mDLB<(rb }9vrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/shared/paging/OffsetLimitHttpPagingSource.ktiCiC mF# 7nm|\G%(&respect-datalayer-repository/AGENTS.mdiCiC mG0pjl-4>"&respect-datalayer-repository/README.mdiCiC mH ^"u>ub=j<-respect-datalayer-repository/build.gradle.ktsiCiC mQɻm3ϖ<ˢa4tYOtrespect-datalayer-repository/src/androidMain/kotlin/world/respect/datalayer/repository/school/RepoWorkerConstants.ktiCiC mSܨ궪>162respect-datalayer-repository/src/androidMain/kotlin/world/respect/datalayer/repository/school/pullsync/EnqueueRunPullSyncUseCaseAndroidImpl.ktiCiC mTY8G9vQgv{respect-datalayer-repository/src/androidMain/kotlin/world/respect/datalayer/repository/school/pullsync/RunPullSyncWorker.ktiCiC mVW%ز.D1|QVvrespect-datalayer-repository/src/androidMain/kotlin/world/respect/datalayer/repository/school/worker/DataBuilderExt.ktiCiC mW̴R^0${qrespect-datalayer-repository/src/androidMain/kotlin/world/respect/datalayer/repository/school/worker/WorkerExt.ktiCiC mYZoOOo+=_Nrespect-datalayer-repository/src/androidMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueWorker.ktiCiC mZ)̽$@ĕmfrespect-datalayer-repository/src/androidMain/kotlin/world/respect/datalayer/repository/school/writequeue/EnqueueDrainRemoteWriteQueueUseCaseAndroidImpl.ktiCiC ma@iK4fmՒ,߰ awrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/RespectAppDataSourceRepository.ktiCiC mb⛲CK)wZSyrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/RespectRealmDataSourceRepository.ktiCiC mcV( l}W .-p{,Fsrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/SchoolDataSourceRepository.ktiCiC me Pb _ 4wzrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/opds/OpdsFeedDataSourceRepository.ktiCiC mfόS=zLi{ bPrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/opds/OpdsPublicationDataSourceRepository.ktiCiC mh W^{~zp5 1~respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/AssignmentDataSourceRepository.ktiCiC mi jO,[&yrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/ClassDataSourceRepository.ktiCJiCJ mjh n+V$@.~respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/EnrollmentDataSourceRepository.ktiCJiCJ mk }I}Qc}HubՇzrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/InviteDataSourceRepository.ktiCJiCJ ml-\W땐xw=yQ?zrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonDataSourceRepository.ktiCJiCJ mmV?5A9[i48 6Xrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonPasskeyDataSourceRepository.ktiCJiCJ mn Nb~)h(ng1wy&e respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonPasswordDataSourceRepository.ktiCJiCJ mo s[?2Prespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeBadgeDataSourceRepository.ktiCJiCJ mp/>P!kSzrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/ReportDataSourceRepository.ktiCJiCJ mq !礫a; IX-O}respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/SchoolAppDataSourceRepository.ktiCJiCJ mr:DXV,>3Prespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/SchoolPermissionGrantDataSourceRepository.ktiCJiCJ mtFtȅ{ ÅE{respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/pullsync/RunPullSyncUseCase.ktiCJiCJ mv (>fMfIr%respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.ktiCJiCJ mxx=ȽR3Drespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/schooldirectory/SchoolDirectoryEntryDataSourceRepository.ktiCJiCJ m{'`禺7658#respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/shared/paging/DoorOffsetLimitRemoteMediator.ktiCJiCJ m|9Swbl5: vrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/shared/paging/PagingSourceExt.ktiCJiCJ m}%[{a2_yܒ&vrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/shared/paging/RemoteMediator2.ktiCJiCJ m~` lyeq jrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/shared/paging/RepositoryOffsetLimitPagingSource2.ktiCJiCJ mi۟w\|3!\!respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/shared/paging/RepositoryPagingSourceFactory.ktiCJiCJ m(.=$a Z 'R3respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/opds/OpdsRespectRepositoryIntegrationTest.ktiCJiCJ m0?<cU yFc/Ѭ|respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/PersonRepositoryIntegrationTest.ktiCɍ'iCɍ' mSd4$_~, 4d帖~respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/PlaylistRepositoryIntegrationTest.ktiCɍ'iCɍ' mvO<=%j,do>respect-datalayer-repository/src/jvmTest/resources/logback.xmliCɍ'iCɍ' mŞ5b_ݹƯEb;erespect-datalayer-repository/src/jvmTest/resources/world/respect/datalayer/repository/opds/index.jsoniCɍ'iCɍ' m0^9a%Sڂirespect-datalayer-repository/src/jvmTest/resources/world/respect/datalayer/repository/opds/lesson001.jsoniCɍ'iCɍ' mB*18LyqzK}respect-datalayer/.gitignoreiCɍ'iCɍ' m[#CwUV>ծ7H.respect-datalayer/AGENTS.mdiCɍ'iCɍ' mGLUuf/B`8]respect-datalayer/README.mdiCɍ'iCɍ' m:dJSJ(~7|y"respect-datalayer/build.gradle.ktsiCɍ'iCɍ' myha̮O Ԉ[vEs5respect-datalayer/src/androidMain/AndroidManifest.xmliCɍ'iCɍ' mB MܣW72Trespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/AuthTokenProvider.ktiCɍ'iCɍ' mTݦZ<>Y6_respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/AuthenticatedUserPrincipalId.ktiCɍ'iCɍ' m#Y) ?X/w;dNhZSrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLayerHeaders.ktiCɍ'iCɍ' mja~v#.^Rrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLayerParams.ktiCɍ'iCɍ' m[XJߤ5{nZSrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLoadMetaInfo.ktiCɍ'iCɍ' m;KTS4;zQrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLoadParams.ktiCɍ'iCɍ' ms-VW7"O'3Prespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLoadState.ktiCɍ'iCɍ' mS&&pb]ȴ`(Wrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/RespectAppDataSource.ktiCɍ'iCɍ' m1R0^܏Tσ\respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/RespectAppDataSourceLocal.ktiCɍ'iCɍ' mbcuUF crespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/exceptions/UnauthorizedException.ktiCciCc m~L'0M(=XbWrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/DataLoadStateExt.ktiCciCc mԚH p;nTrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/DateConstants.ktiCciCc m̲0 d_(Gn)Trespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/HttpClientExt.ktiCciCc m,rGo-dK:~8LUrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/HttpHeadersExt.ktiCciCc mZH7NJsd>!w!Y|\respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/HttpRequestBuilderExt.ktiCciCc m`p]:Vw1Y8>^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/LocalModelDataSourceExt.ktiCciCc m୅>*srespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/networkvalidation/BaseDataSourceValidationHelper.ktiCciCc m@qyЧaޤNwrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/networkvalidation/ExtendedDataSourceValidationHelper.ktiCciCc mb < `8Ivkjrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/networkvalidation/NetworkValidationInfo.ktiCciCc mUcoocxQЋphrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/composites/ClazzListDetails.ktiCciCc m6p{x)*vۜ)w`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterBase.ktiCciCc mnÌ>R)K(jrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterBaseStatusEnum.ktiCciCc meQЋ5X}١x˜carespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterClass.ktiCciCc mK!^-,fhrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterClassGUIDRef.ktiCciCc mhS]2GFrZfrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterEnrollment.ktiCciCc m^(fK`B<ظCr;Wcrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterGUIDRef.ktiCciCc mwŘ͋V6Ehfrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterGenderEnum.ktiCciCc mׄ:ZǔjnŌ*frespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterOrgGUIDRef.ktiCciCc mˀ񫒣?`$4krespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterResourceGUIDRef.ktiCciCc mp\p,QH`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterRole.ktiCciCc mn̒Mb2Cddrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterRoleEnum.ktiCciCc m_we^`*grespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterRoleEnumExt.ktiCciCc m:w'UEYIohrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterRoleTypeEnum.ktiCciCc mN K%u\h'#+Ca`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterUser.ktiCciCc mK-A=S}>8MOcPpgrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterUserGUIDRef.ktiCciCc mv8 ~8z[brespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterUserId.ktiCciCc mCV.Je$K|8z^grespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/model/OneRosterUserProfile.ktiCciCc mSiBͨYrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ClassDataSource.ktiCiC mL%̅Ǵvg]^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ClassDataSourceLocal.ktiCiC mXy.L4 [mrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/DummySchoolConfigSettingsDataSource.ktiK9T8iK9T8 m 0gW`:kW^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/EnrollmentDataSource.ktiCiC mIZ ,eq˶crespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/EnrollmentDataSourceLocal.ktiCiC mO GdTH]respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/IndicatorDataSource.ktiCiC m X2;7aKYQ[Zrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/InviteDataSource.ktiCiC mVTN ku7m_respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/InviteDataSourceLocal.ktiCiC m$ 43Z8Zrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonDataSource.ktiCiC m((iܡ䧞_respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonDataSourceLocal.ktiCiC m ތ(fnxn*,&arespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonPasskeyDataSource.ktiCiC m` 阚㹛@ufrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonPasskeyDataSourceLocal.ktiCiC mĴp#MF _brespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonPasswordDataSource.ktiCiC m\*rjn(ZawHqerespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonPasswordDataSourceExt.ktiCiC muwglGaMϔ|grespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonPasswordDataSourceLocal.ktiCiC mި~tTtQFarespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSource.ktiCiC mhC2j}g'L(X*[9jrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrCodeBadgeDataSourceLocal.ktiCiC m])9hV/oO&8Zrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ReportDataSource.ktiCiC m7u?1^0ZR_respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ReportDataSourceLocal.ktiCiC m< {GcqTաq1;]respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/SchoolAppDataSource.ktiCiC mKk}k@-^V4]fbrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/SchoolAppDataSourceLocal.ktiCiC my~=J`H3!/grespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/SchoolConfigSettingDataSource.ktiCiC m#Ɔ3l8lqeOhI]˿irespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/SchoolPermissionGrantDataSource.ktiCiC m' ;3XTgϕZTnrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/SchoolPermissionGrantDataSourceLocal.ktjLl jLl m- F\J~"Farespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/adapters/PersonAdapters.ktiCiC mF?~]D'#JBT\grespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/adapters/PersonPasskeyAdapter.ktjz880.jz880. ṃ~öQBr:>xmrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/domain/CheckPersonPermissionUseCase.ktiCiC m"I&{L\-qrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/domain/GetPermissionLastModifiedUseCase.ktiCiC mz+G_o0blrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/domain/GetWritableRolesListUseCase.ktjz880.jz880. m 8r}kO~Ԋwprespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/domain/GetWritableRolesListUseCaseImpl.ktiCiC m[ՀQX#\@_`Aslrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/domain/MakePlaylistOpdsFeedUseCase.ktj -%4j -%4 n8q"|yM蔙(u[respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ext/EnrollmentExt.ktiCiC nƤq[N.@crespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ext/EnrollmentRoleEnumExt.ktiCiC n M j ~YyM  KWrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ext/InviteExt.ktiCiC n&ܭ̉3$Т %\6brespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ext/JsonObjectBuilderExt.ktjLl jLl n-ڐ `RRql)Wrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ext/PersonExt.ktjz880.jz880. nc5낊FUØ(Mr_respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ext/PersonRoleEnumExt.ktiCSiCS n[ΏQGCM鉲'WIfrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ext/SchoolPermissionGrantExt.ktiCSiCS n rN5U<"#BZrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Assignment.ktiCSiCS n /+zf`!kr2emrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/AssignmentAssigneeRefTypeEnum.ktiCSiCS n 9þ 11Uy4~M),irespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/AssignmentLearningUnitRef.ktiCSiCS n {ltӍЦE\:Yrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/AuthToken.ktiCSiCS n u%Ng|]7brespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/ClassInvteModeEnum.ktiCSiCS n/5y^+U$_respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/ClassPermission.ktiCSiCS n[[$;o -aZhAUrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Clazz.ktiCSiCS n ́̾Z\qZrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/DeviceInfo.ktj -%4j -%4 nZ!s5@/Zrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Enrollment.ktiCSiCS n߉ ]>,ZgiSIbrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/EnrollmentRoleEnum.ktiCSiCS nQ݆mLBxזb{Yrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Indicator.ktii 3$PT*^>]b&sݱ&ޖVrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Invite.ktiCSiCS n3M'D#p{/#`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/InviteStatusEnum.ktjz880.jz880. n&KFZz4יPIZr_respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PermissionFlags.ktiCSiCS n,2`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonGenderEnum.ktiCSiCS n/2ku`q]Y{aq\]respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonPasskey.ktiCSiCS ntR%[ Jhq3g#eӏ^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonPassword.ktiCSiCS nDD9Ы#s]respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonQrBadge.ktiCSiCS n.45o'I9$=Zrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonRole.ktiCSiCS nr)2 rږ^1^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonRoleEnum.ktiCSiCS n D_D;+8DN`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonStatusEnum.ktjL4|jL4| 9Z2L_$ g:Vdrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonWithEnrollment.ktiCSiCS n-.qoN*^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PullSyncStatus.ktiCSiCS n Jw"+zT%Vrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Report.ktiCSiCS n!Լ ܕY}Z CvrgYrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/SchoolApp.ktiCSiCS n"THVݴ"n crespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/SchoolConfigSetting.ktiCSiCS n#Pu| h{ erespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/SchoolPermissionGrant.ktiCSiCS n$cn?P+nY)!>ܚ2Zrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/StatusEnum.ktj[Hj[H n&θҲܗj2zqlrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/composites/PersonListDetails.ktiCSiCS n(y幼X!arespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/OpdsFeedDataSource.ktiCiC n0R_'UAy<ƑeΣfrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/OpdsFeedDataSourceLocal.ktiCiC n1ٯ rcю!;/{ighrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/OpdsPublicationDataSource.ktiCiC n2ɾq^=s#p~mrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/OpdsPublicationDataSourceLocal.ktiCiC n4EiiCy ^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/ext/OpdsFeedExt.ktiCiC n5T<87'E"ɢ1arespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/ext/ReadiumLinkExt.ktiCiC n6N)t{͌i5VsHYhrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/ext/RespectAppManifestExt.ktiCiC n8.IiT%-#MlZ$mPxrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/EnqueueDrainRemoteWriteQueueUseCase.ktiCiC n9)i7꽐>nrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/EnqueueRunPullSyncUseCase.ktiCiC n:Dal+e[Iu 1o ;erespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/RemoteWriteQueue.ktiCiC n; )A]Lx!n_crespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/WriteQueueItem.ktiCiC n=>B D;.+P(lrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/schooldirectory/SchoolDirectoryDataSource.ktiCiC n>EU}imqrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/schooldirectory/SchoolDirectoryDataSourceLocal.ktiCiC n?½NZo49Zr`I ?qrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/schooldirectory/SchoolDirectoryEntryDataSource.ktiCiC n@)4x1y'{qvrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/schooldirectory/SchoolDirectoryEntryDataSourceLocal.ktiCiC nBvЉ+\ߘgQ Z^VWrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/DataLayerTags.ktiCiC nC VEL n )"^respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/LocalModelDataSource.ktiCiC nD# >#?f:!NqXrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/ModelWithTimes.ktiCiC nEDGpe$yۓ[respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/ModelWithTimesExt.ktiCiC nFQd^iNm~crespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/RepositoryModelDataSource.ktiCiC nG):[(p2m}O1\respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/WritableDataSource.ktiCiC nH)g%@O;Y_respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/XXHashUidNumberMapper.ktiCiC nJZgҎkJi-&)L8S&UJrespect-lib-cache/schemas/com.ustadmobile.libcache.db.UstadCacheDb/15.jsoniCQiCQ ndJ=A w]!.?5respect-lib-cache/src/androidMain/AndroidManifest.xmliCQiCQ ni ٳdON6VVrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/UstadCacheBuilder.ktiCQiCQ nk_j>VUOz.wp]3Urespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/base64/Base64Ext.ktiCQiCQ nm.6Mr_΋V*Y7Bsrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/connectivitymonitor/ConnectivityMonitorAndroid.ktiCQiCQ no%1l䂃| Аkrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheNsdAndroid.ktiCQiCQ npĢeCW]F_*srespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/distributed/LifeCycleOwnerDistributedCacheInit.ktiCQiCQ nrU)تux=Mo!9brespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/downloader/CoroutineWorkerExt.ktiCQiCQ nsan_y?c"_zrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/downloader/EnqueuePinPublicationPrepareUseCaseAndroid.ktiCQiCQ ntOSdnJ[& sP܅srespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/downloader/EnqueueRunDownloadJobUseCaseAndroid.ktiCQiCQ nu(1EUHV`'5$rrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/downloader/PinPublicationPrepareUseCaseWorker.ktiCQiCQ nv*Lxv`Puz~,krespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/downloader/RunDownloadJobUseCaseWorker.ktiCQiCQ nx9>o|j 0ig Yrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestAndroid.ktiCQiCQ nyj7;Mo)H$Yrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestCreator.ktiC%iC% n{Iz^=v#1Yم`respect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/webview/OkHttpWebViewClient.ktiC%iC% n${md^/ ٱ&Urespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/CacheEntryToStore.ktiC%iC% n<ި GS*9k0Nrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/CachePaths.ktiC%iC% noz)Vrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/CachePathsProvider.ktiC%iC% nL ;J arespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/CacheStorageCompressionFilter.ktiC%iC% n:,p9NSrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/CompressionType.ktiC%iC% nm۽C(*]vVarespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/DefaultCacheCompressionFilter.ktiC%iC% n\ ϘrOhj|<ҚKYrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/StoreProgressListener.ktiC%iC% n`vŲOO],Orespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/StoreResult.ktiC%iC% nf]M?t8(Mrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/StringExt.ktiC%iC% n1A$Ac#5Nrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/UstadCache.ktiC%iC% nx{~H+Lrw@Rrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/UstadCacheImpl.ktiC%iC% n 9*+q $RؾUrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/UstadCacheTrimmer.ktiC%iC% nF)YJv2!_wF>Rrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/ValidatedEntry.ktiC%iC% nW¦Ǧ@("Z_PTrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/base64/Base64Ext.ktiC%iC% n;e聆krespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/cachecontrol/CacheControlDirectivesUtil.ktiC%iC% nTU|gB{1ۑd]g\\c]Apkrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/connectivitymonitor/ConnectivityMonitor.ktiC%iC% n M[x_ܫ`Vrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/date/ParseHttpDate.ktiC%iC% n>t?ٱ-ɮªarespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/AddNewEntryTriggerCallback.ktiC4\iC4\ nf0-&.HP#9]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/ClearNeighborsCallback.ktiC4\iC4\ n_Yz񚛦b#Wrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/DbTypeConverters.ktiC4\iC4\ n xN4DHiGntZGSrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/UstadCacheDb.ktiC4\iC4\ nYPozaVQ̜)_respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/UstadDbDiscoveryListener.ktiC4\iC4\ nMt J_]޳H(trespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/composites/NeighborCacheEntryAndNeighborCache.ktiC4\iC4\ n aCDw%A}!:4Xrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/CacheEntryDao.ktiC4\iC4\ nc) )Iӽ=o=UzLYrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/DownloadJobDao.ktiC4\iC4\ n "T~+?M]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/DownloadJobItemDao.ktiC4\iC4\ n i0X'k˲g[respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/NeighborCacheDao.ktiC4\iC4\ njׄ ĕJ|im< `respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/NeighborCacheEntryDao.ktiC4\iC4\ n(y$gz(zW78[respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/NewCacheEntryDao.ktiC4\iC4\ nhz: E ˜s ș_respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/PinnedPublicationDao.ktiC4\iC4\ nᇚ5*jV|Ywn\respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/RequestedEntryDao.ktiC4\iC4\ n[pSU㶭5[respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/RetentionLockDao.ktiC4\iC4\ n3bqJ Qt"Zrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/CacheEntry.ktiC4\iC4\ nX +V@GQGhAbrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/CacheEntryAndLocks.ktiC4\iC4\ n8Nt-tg)espect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/DownloadJob.ktiC4\iC4\ nuRc|Pc#Q5_respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/DownloadJobItem.ktiC4\iC4\ n%d/c8**n]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/NeighborCache.ktiC4\iC4\ nXG6J;MΐYZr ,Xbrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/NeighborCacheEntry.ktiC4\iC4\ n=9vn$D, Z]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/NewCacheEntry.ktiC4\iC4\ n4w~ 6&ƕarespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/PinnedPublication.ktiC4\iC4\ nR+`Xx0zC^respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/RequestedEntry.ktiC4\iC4\ n(ȳo_wch+TM]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/RetentionLock.ktiC4\iC4\ n[r°ZؤC]n?erespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/TransferJobItemStatus.ktiC4\iC4\ n~ZZ8:s+irespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheConstants.ktiC4\iC4\ nD͖Ǥk\el&}b`irespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheHashtable.ktiC4\iC4\ n7ծ@Tyrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheNeighborDiscoveryListener.ktiC4\iC4\ nqOmޝ8﮴vGƢarespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/XXStringHasherExt.ktiC4\iC4\ nn3L/K< %7qrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/http/DistributedCacheHttpEndpoint.ktiC4\iC4\ nclA8vG&c93lrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedCachePacket.ktiC4\iC4\ n$^7~Ռ aMjrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedCachePing.ktiC4\iC4\ nbVH؇v2ʑjrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedCachePong.ktiC4\iC4\ nTtLńi jmɲzrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedCacheWhatWithIdAndPayload.ktiCCiCC nJd,Ź_}Yorespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedHashCacheEntry.ktiCCiCC n%W`\i.;߫Rlrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedHashEntries.ktiCCiCC n~rdu -ñ{Ószrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/downloader/AbstractEnqueuePinPublicationPrepareUseCase.ktiCCiCC n ɮ^8.pkrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/downloader/DownloadJobItemStatusUpdater.ktiCCiCC nQ@렽 oC8.Serespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/downloader/DownloadProgressUpdate.ktiCCiCC nWCmV0Ao:crespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/downloader/DownloadStatusUpdate.ktiCCiCC nQW","S+=rrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/downloader/EnqueuePinPublicationPrepareUseCase.ktiCCiCC nŜT\{+Rxudkrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/downloader/EnqueueRunDownloadJobUseCase.ktiCCiCC n󈻄ԙj.l<^_=krespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/downloader/PinPublicationPrepareUseCase.ktiCCiCC nm%фPOV< drespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/downloader/RunDownloadJobUseCase.ktiCCiCC n}:0P3$4Lirespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/okhttp/ResponseCacheabilityCheckerExt.ktiCCiCC nڙBQsTo#Vrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/okhttp/ResponseExt.ktiCR@iCR@ nN훕0-$8?a`respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/okhttp/UstadCacheInterceptor.ktiCR@iCR@ n`0^, S*zZHXrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/partial/ContentRange.ktiCR@iCR@ ny UmW&FB^orespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/partial/RangeRequestNotSatisfiableException.ktiCR@iCR@ nWԜգd\^respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/ByteArrayResponse.ktiCR@iCR@ nZnb8w`{;P"vpZrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/CacheResponse.ktiCR@iCR@ n:,*D-&RH]grespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/HeaderOverrideHttpResponse.ktiCR@iCR@ n ݱ58~ 6WM1&]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/HttpPathResponse.ktiCR@iCR@ n&(iDX8Q0\respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/HttpResponseExt.ktiCR@iCR@ n䃔i7_C Aѧ[respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/StringResponse.ktiCR@iCR@ n[aY)ˈ^gOQVrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/ByteBufferExt.ktiCR@iCR@ n ,++LpÛH\respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/ConcurrentSafeMapOf.ktiCR@iCR@ n$ɍb#D=Trespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/DatabaseExt.ktiCR@iCR@ o Mg'20 DSOrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/LruMap.ktiCR@iCR@ o /B$0jɺ*fHD=͎Rrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/UstadCacheBuilder.ktiCR@iCR@ o7qG-RB |ԱZQrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/base64/Base64Ext.ktiCR@iCR@ o \xraBȪ6LSkrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/connectivitymonitor/ConnectivityMonitorJvm.ktiCR@iCR@ o :`q.5rrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/downloader/EnqueuePinPublicationPrepareUseCaseJvm.ktiCR@iCR@ ofo{H%C!79<`Urespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestCreator.ktiCR@iCR@ o5c6^q=LƦMQrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestJvm.ktiCR@iCR@ opln$9!@R F vKrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/FileAssert.ktiCb#|iCb#| oMBXKG= ޟmRrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/UstadCacheJvmTest.ktiCb#|iCb#| o 3 aޱuQVrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/UstadCacheTrimmerTest.ktiCb#|iCb#| o g{ ʹGœCIjrrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/cachecontrol/CacheControlFreshnessCheckerImplTest.ktiCb#|iCb#| ơɦd 3ޤ;BWqrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/cachecontrol/ResponseCacheabilityCheckerImplTest.ktiCb#|iCb#| o/XDc>-7MƵ6urespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheHashtableIntegrationTest.ktiCb#|iCb#| o>$vBbCaI)s2d]rrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/distributed/http/DistributedCacheHttpEndpointTest.ktiCb#|iCb#| o Dh1%:<\Xmrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/distributed/model/DistributedHashEntriesTest.ktiCb#|iCb#| o"[6[k>Э<crespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/downloader/DownloadIntegrationTest.ktiCb#|iCb#| o$,u)\h[[6Xrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/io/RangeInputStreamTest.ktiCb#|iCb#| o&Q](!b'ETWUYdrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/okhttp/AbstractCacheInterceptorTest.ktiCb#|iCb#| o'AwΈ41Y+#Tc<$karespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/okhttp/UstadCacheInterceptorTest.ktiCb#|iCb#| o) ,P6xߝMi#b2 Yrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/partial/ContentRangeTest.ktiCb#|iCb#| o+]]Tw%qugRrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/util/ByteArrayExt.ktiCb#|iCb#| o,֒D" J)DZP9SU\Srespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/util/NapierLogInit.ktiCb#|iCb#| o-&[̢RNtOYrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/util/NewFileFromResource.ktiCb#|iCb#| o. (h.aL Pr&Srespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/util/UstadCacheExt.ktiCqeiCqe o1v znϫk՞"lfj~xArespect-lib-cache/src/jvmTest/resources/childrens-literature.epubiCqeiCqe o4Y9WZ{[E==ÅGrespect-lib-cache/src/jvmTest/resources/publication/lesson001/audio.oggiCqeiCqe o5L7_\ulh=NGrespect-lib-cache/src/jvmTest/resources/publication/lesson001/cover.pngiCqeiCqe o6]M B*18LyqzK}!respect-lib-ihttp-core/.gitignoreiC/iC/ o?Z0>yyS:Q@p respect-lib-ihttp-core/README.mdiC/iC/ o@CDKmq{PEd'respect-lib-ihttp-core/build.gradle.ktsiC/iC/ oHZ9\respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeaderExt.ktiC/iC/ oYAX+¯9M,]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeaderImpl.ktiC/iC/ oZœ3>7)Wh8Zrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeaders.ktiC/iC/ o[?-+J)W-Q R]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeadersExt.ktiC/iC/ o\=b+psDiarespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/KtorIHeadersAdapter.ktiC/iC/ o]A4ȏz^-7mǮcrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/MapHttpHeadersAdapter.ktiC/iC/ o^ Cfz͂g$ˁ_respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/MappedHttpHeaders.ktiC/iC/ o_9EL z.k M}[respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/MergedHeaders.ktiC/iC/ oa( 'o]j?xL7\hrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/directives/DirectivesToMap.ktiC,jiC,j oc_&D(NƾT]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/BaseHttpRequest.ktiC,jiC,j odE2!j :p[$Zrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequest.ktiC,jiC,j oe%^ғZ`A 3+iFkfrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequestWithByteBody.ktiC,jiC,j ofS=ĕ (8ozprespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequestWithFormUrlEncodedData.ktiC,jiC,j ogM&s9frespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequestWithTextBody.ktiC,jiC,j oh$ ԱoZ8@C \respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/RequestBuilder.ktiC,jiC,j ojYW^ \54cwFe*`respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/response/ByteArrayResponse.ktiC,jiC,j ok>-p $\<%j+z`v\respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/response/IHttpResponse.ktiC,jiC,j ols0[an3d]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/response/StringResponse.ktiC,jiC,j os {`Lv<~ )EľqUrespect-lib-ihttp-core/src/jsMain/kotlin/com/ustadmobile/ihttp/ext/ByteArrayExt.js.ktiC,jiC,j oz2.m‚S RԵWrespect-lib-ihttp-core/src/jvmMain/kotlin/com/ustadmobile/ihttp/ext/ByteArrayExt.jvm.ktiC,jiC,j o|B*18LyqzK}&respect-lib-ihttp-iostreams/.gitignoreiC,jiC,j o}Z% -blzmm%respect-lib-ihttp-iostreams/README.mdiC,jiC,j o~a5Y {I7^,respect-lib-ihttp-iostreams/build.gradle.ktsiC,jiC,j o恿\\#SAMarespect-lib-ihttp-iostreams/src/commonMain/kotlin/com/ustadmobile/ihttp/iostreams/ByteArrayExt.ktiC,jiC,j oHAZ9f`:/{7'erespect-lib-ihttp-iostreams/src/commonMain/kotlin/com/ustadmobile/ihttp/iostreams/NullOutputStream.ktiC,jiC,j oB*18LyqzK}&respect-lib-ihttp-nanohttpd/.gitignoreiC,jiC,j o5JU6 rlmXƪLZ,respect-lib-ihttp-nanohttpd/build.gradle.ktsiCniCn o 7䊓š@aG\lrespect-lib-ihttp-nanohttpd/src/commonMain/kotlin/com/ustadmobile/ihttp/nanohttpd/NanoHttpdRequestAdapter.ktiCniCn ozkAJ! `ƔL*G]respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/OpdsFeedMetadata.ktiCiC o?W| 8ڋ b|Vrespect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/OpdsGroup.ktiCiC ok8o?K;$Vrespect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/OpdsPrice.ktiCiC o0iZz@Xż\respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/OpdsPublication.ktiCiC o͕֮y@Ho'ΘA _respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/OpdsPublicationExt.ktiCiC o%m#`_pNBs:Wrespect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/OpdsSeries.ktiCiC oorPHFfkberespect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ReadiumContributorObject.ktiCiC o2xb򫟙N̈́ʦ֌ZXrespect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ReadiumLink.ktiCiC o÷;ua3>:&KObrespect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ReadiumLinkProperties.ktiCiC o\#c$rw*krespect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ReadiumLinkPropertiesEncrypted.ktiCiC o %:9~ww/"zI0\respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ReadiumMetadata.ktiCiC or4sH'0zG 88[respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ReadiumSubject.ktiCiC o_;>40OC*respect-lib-primarykeygen/build.gradle.ktsiCiC o 9X竭}jrespect-lib-primarykeygen/src/androidMain/kotlin/world/respect/lib/primarykeygen/GenerateNodeId.android.ktiCiC o].+-+ԉ+K&zFҼ_arespect-lib-primarykeygen/src/commonMain/kotlin/world/respect/lib/primarykeygen/GenerateNodeId.ktiCiC o2圙D,DZifrespect-lib-primarykeygen/src/commonMain/kotlin/world/respect/lib/primarykeygen/PrimaryKeyGenerator.ktiCiC o,x@͞Bdγ Jrl}arespect-lib-primarykeygen/src/commonMain/kotlin/world/respect/lib/primarykeygen/ext/InstantExt.ktiCiC o> O f0Ҽ>C3brespect-lib-primarykeygen/src/jvmMain/kotlin/world/respect/lib/primarykeygen/GenerateNodeId.jvm.ktiCiC obނR\!2gx\k krespect-lib-primarykeygen/src/jvmTest/kotlin/world/respect/lib/primarykeygen/DoorPrimaryKeyGeneratorTest.ktiCiC o59c(-G$]kv!respect-lib-serializers/README.mdiCiC o FZ)@ ,\=K(respect-lib-serializers/build.gradle.ktsiCiC oI@ 6Y_irespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/InstantAsISO8601Extensions.ktiCiC oӮס K;}5ܘw6/grespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/InstantISO8601Serializer.ktiCiC o ]ٳp|Rn'?brespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/LocalDateOrDateTime.ktiCiC o|Xfk"U υtrespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/SingleItemToListTransformerSerializer.ktiCiC o"rx^RE6]A_VNlcrespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/StringListSerializer.ktiCiC or[u{zղgrespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/StringOrObjectSerializer.ktiCiC oi:v'M8Dϙ?Zrespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/StringValue.ktiCiC o[C&ZNo1/brespect-lib-serializers/src/commonMain/kotlin/world/respect/lib/serializers/UriStringSerializer.ktiCiC o#X`E23 o#respect-lib-shared-se/README.mdiCiC o`_;63*5^ &respect-lib-shared-se/build.gradle.ktsiCiC p",TSfd\l֔2respect-lib-shared-se/src/commonMain/kotlin/world/respect/sharedse/domain/account/authenticatepassword/AuthenticatePasswordUseCaseDbImpl.ktiCiC pͱF^WY(PԤrespect-lib-shared-se/src/commonMain/kotlin/world/respect/sharedse/domain/account/authenticatepassword/AuthenticateQrBadgeUseCaseDbImpl.ktiC5YiC5Y p ͠ 0ĕs}#respect-lib-shared/build.gradle.ktsiC5YiC5Y p*H+=XQܢ35respect-lib-shared/src/androidMain/assets/aaguid.jsoniC5YiC5Y pn(Tj׆BhI^oKrespect-lib-shared/src/androidMain/kotlin/world/respect/Platform.android.ktiC5YiC5Y p_^-Ea G.urespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/account/passkey/LoadAaguidJsonUseCaseAndroid.ktiC5YiC5Y p1w%o #([6wrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/appversioninfo/GetAppVersionInfoUseCaseAndroid.ktiC5YiC5Y pXeѨ>T:dzn9.is2o^rrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/biometric/BiometricAuthUseCaseAndroidImpl.ktiCwiCw p =I2%s 2!dPsrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/clipboard/SetClipboardStringUseCaseAndroid.ktiCwiCw p"S3ArfElU jirrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/getdeviceinfo/GetDeviceInfoUseCaseAndroid.ktiCwiCw p$h `A u}\v&nrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/getwarnings/GetWarningsUseCaseAndroid.ktiCwiCw p& bT0/or|:l;jrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCaseAndroid.ktiCwiCw p)#v!%cw c7[!respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/navigation/deeplink/InitDeepLinkUriProviderUseCaseAndroid.ktiCwiCw p+zQ>:frespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/navigation/deferreddeeplink/GetDeferredDeepLinkUseCaseAndroid.ktiCwiCw p-vECJu{# Uvrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/phonenumber/IAsYouTypeFormatterAdapterAndroid.ktiCwiCw p.AVED*-&elrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/phonenumber/IPhoneNumberUtilAndroid.ktiCwiCw p/q_ N;7<".#gurespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/phonenumber/OnClickPhoneNumberUseCaseAndroid.ktiCwiCw p0H>s5p(߼)1l%mrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/phonenumber/PhoneNumValidatorAndroid.ktiCwiCw p1l 2 IIϲ'grespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/phonenumber/PhoneNumberAndroid.ktiCwiCw p3$蕒^6`V1mrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/school/LaunchCustomTabUseCaseAndroid.ktiCwiCw p4xE v-,torespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/school/MakeSchoolPathDirUseCaseAndroid.ktiCwiCw p6V$ԂWCS%ȀvqIsjrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/sendinvite/LaunchSendEmailAndroid.ktiCwiCw p7_[6'p76p;rKhrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/sendinvite/LaunchSendSmsAndroid.ktiCwiCw p8z#u+PlS2jrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/sendinvite/LaunchShareLinkAndroid.ktiCwiCw p:OMU<=ЯcL1Qjrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/storage/CachePathsProviderAndroid.ktiCwiCw p;L4UI *p^Bkrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/storage/GetAndroidSdCardDirUseCase.ktiCwiCw p< Ty?p}WM{ wrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/storage/GetOfflineStorageOptionsUseCaseAndroid.ktiCwiCw p>ԙٿY4p7U~respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/usagereporting/GetUsageReportingEnabledUseCaseAndroid.ktiCwiCw p?׻_!^)FH'~respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/usagereporting/SetUsageReportingEnabledUseCaseAndroid.ktiCwiCw pAYɪlEPK' ;+L2erespect-lib-shared/src/androidMain/kotlin/world/respect/shared/util/RememberDateTimeFormat.android.ktiCwiCw pB^ra4AK(?ߺI9*cdrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/util/RememberFormattedDate.android.ktiCwiCw pCMPRBJ66·;drespect-lib-shared/src/androidMain/kotlin/world/respect/shared/util/RememberFormattedTime.android.ktiCwiCw pD{>NQ+|Xrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/util/StringExt.android.ktiCwiCw pF֧ʡ-ޙ0H!'MURrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/util/ext/FileExt.ktiCiC pIGH!M3G}'`%i`Krespect-lib-shared/src/androidMain/resources/directories/default.propertiesiCiC pM(˼yjnUrespect-lib-shared/src/commonMain/composeResources/drawable/compose-multiplatform.xmliCiC pN@EAyq.nHrespect-lib-shared/src/commonMain/composeResources/drawable/copycode.pngiCiC pO(yT{(Jwu> 4;),Erespect-lib-shared/src/commonMain/composeResources/drawable/empty.pngiC iC pPg_3WCbQBKrespect-lib-shared/src/commonMain/composeResources/drawable/fingerprint.pngiC iC pQ!$J-Nnaz]tXrespect-lib-shared/src/commonMain/composeResources/drawable/undraw_qr_code_scan_bewe.xmlj[Hj[H 3wbn(qQiMFY#gErespect-lib-shared/src/commonMain/composeResources/values/strings.xmliC iC pW3zȾCQȚz7$\}/Crespect-lib-shared/src/commonMain/kotlin/world/respect/Constants.ktiC iC pXFjL)-5؂hBrespect-lib-shared/src/commonMain/kotlin/world/respect/Greeting.ktiC iC pYf뚰 c0N!t FBrespect-lib-shared/src/commonMain/kotlin/world/respect/Platform.ktiC iC p\qq.מq\C[b#hrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/directory/RespectDirectoryServersConfig.ktiC iC p_mq!Oab~v kycrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/AccountDepComponent.ktiC iC p`CB2huz˧|\respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/AuthResponse.ktiC iC pa"SC4GYIG^respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccount.ktiC iC pb0:jxw63r5JFerespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccountManager.ktiC iC pc*q\dS ˛smrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccountSchoolScopeLink.ktiC iC pdBT;q~aC:]b^respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectSession.ktiC iC peC0|: grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectSessionAndPerson.ktiC iC pfJȥd &oE)6lcrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectTokenManager.ktiC>GiC>G ph]v9:&K)=SL?respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/authenticatepassword/AuthenticatePasswordUseCase.ktiC>GiC>G pi4 h.Vrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/authenticatepassword/AuthenticateQrBadgeUseCase.ktiC>GiC>G pk#Bq7 584+mClrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/child/AddChildAccountUseCase.ktiC>GiC>G pl:2TbSK rrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/child/AddChildAccountUseCaseClient.ktiC>GiC>G pn]՛i̎D2TNq)respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/gettokenanduser/GetTokenAndUserProfileWithCredentialUseCase.ktiC>GiC>G po^G֓t2C1respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/gettokenanduser/GetTokenAndUserProfileWithCredentialUseCaseClient.ktjz880.jz880. pq)T0_#{respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/ApproveOrDeclineInviteRequestUseCase.ktiC>GiC>G pr`*B;?f-1tjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/CreateInviteUseCase.ktiC>GiC>G ps?;dnxoHS|lrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/CreateInviteUseCaseDb.ktiC>GiC>G pt%@g"e'Ĉ^krespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/GetInviteInfoUseCase.ktiC>GiC>G puԆ' ㋢|qrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/GetInviteInfoUseCaseClient.kti0.U:i0.U: Bv1V|fG@? ?bHjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/InviteRecipientType.kti0.U:i0.U: C!~GD!5GiC>G pvF7om!mooLjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/RedeemInviteUseCase.ktiC>GiC>G pwX! S6ͯg`prespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/RedeemInviteUseCaseClient.kti0.Зui0.Зu px csXyB%ˣ(ǝOqrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/RespectRedeemInviteRequest.ktiC>GiC>G py⛲CK)wZSwrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/SubmitRedeemInviteRequestUseCase.ktiC>GiC>G p{g:xfaxQX7Qsrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/DecodeUserHandleUseCaseImpl.ktiC>GiC>G p|ynrjRsrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/EncodeUserHandleUseCaseImpl.ktiC>GiC>G p}7 ~"ǚvrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/GetActivePersonPasskeysUseCase.ktiC>GiC>G p~VsrO1GG|respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/GetActivePersonPasskeysUseCaseClient.ktiC>GiC>G p wBc|eu 5yz[yrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/GetPasskeyProviderInfoUseCaseImpl.ktiC>GiC>G py6H/TώtFոPmrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/LoadAaguidJsonUseCase.ktiC>GiC>G p[M23S5Alrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/RevokePasskeyUseCase.ktiC>GiC>G p vX"tyrrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/RevokePasskeyUseCaseClient.ktiC>GiC>G pGFƳlrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/passkey/VerifyPasskeyUseCase.ktiC>GiC>G pUJr= XQ$xrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/setpassword/EncryptPersonPasswordUseCase.ktiC>GiC>G p =OĢGj;|respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/setpassword/EncryptPersonPasswordUseCaseImpl.ktiC>GiC>G p߄, 鈓D,}auܠgrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/signup/SignupCredential.ktiC>GiC>G p.9LjdU’ Mdrrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/UsernameSuggestionUseCase.ktiC>GiC>G pαJP!Jxn )A.xrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/UsernameSuggestionUseCaseClient.ktj[Hj[H aժ &v|js_Mrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/checkusernameunique/CheckUsernameUniqueUseCase.ktj[Hj[H  P1kQq&=s(Lrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/checkusernameunique/CheckUsernameUniqueUseCaseClient.ktiC>GiC>G pnZĕqr A, rcl>>}respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/filterusername/FilterUsernameUseCase.ktiC(iC( p|?:'-9<gYrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/validateusername/ValidateUsernameUseCase.ktiC(iC( ppDŵ)ޱZ1.yrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateauth/ValidateAuthorizationUseCase.ktiC(iC( py \Ju&ګxrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validatepassword/ValidatePasswordUseCase.ktiC(iC( pїf]ﮘd vCc{Turespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.ktiC(iC( pS^^3߁ۑvIorespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/appversioninfo/GetAppVersionInfoUseCase.ktiC(iC( p"wSb>:cIfrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/biometric/BiometricAuthUseCase.ktiC(iC( p|%:2{[&'LQkrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/clipboard/SetClipboardStringUseCase.ktiC(iC( pΙ^BghhLAfrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/createclass/CreateClassUseCase.ktiC(iC( p<d-* Q4jrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/createlink/CreateInviteLinkUseCase.ktiC(iC( p/ye\Ot/T,hrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/devmode/GetDevModeEnabledUseCase.ktiC(iC( pieko2ןTnG[h&hrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/devmode/SetDevModeEnabledUseCase.ktiC(iC( p׸]CUCicrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/getdeviceinfo/DeviceInfoExt.ktiC(iC( pOl^}~xjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/getdeviceinfo/GetDeviceInfoUseCase.ktiC(iC( p8QMr>xN?erespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/getfavicons/GetFavIconUseCase.ktiC(iC( p @,;K8@[0KJfrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/getwarnings/GetWarningsUseCase.ktiC(iC( pRKS||%=&hGfFbrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCase.ktiC(iC( p rb0´brespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/licenses/model/SpdxLicense.ktiC(iC( pu)F53K{frespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/licenses/model/SpdxLicenseList.ktiC(iC( p s{=8[fNvrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/navigation/deeplink/CustomDeepLinkToUrlUseCase.ktiC(iC( p$g,ܸ Wzrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/navigation/deeplink/InitDeepLinkUriProviderUseCase.ktiC(iC( pRx9(㖒%1@"a6vrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/navigation/deeplink/UrlToCustomDeepLinkUseCase.ktiC(iC( pHնl3%VJ "g~respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/navigation/deferreddeeplink/GetDeferredDeepLinkUseCase.ktj : gj : g |<7*K7.fwrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/navigation/onappstart/NavigateOnAppStartUseCase.ktiC7¿iC7¿ p29; 4\=ar>>nrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/onboarding/ShouldShowOnboardingUseCase.ktiC7¿iC7¿ p6~2W`35Vdrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/opds/validator/HttpClientExt.ktiC7¿iC7¿ pZl<9a qrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/permissions/CheckSchoolPermissionsUseCase.ktiC7¿iC7¿ p]譢^Mc40etgrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/IAsYouTypeFormatter.ktiC7¿iC7¿ pO1H⽀ńxn`respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/IPhoneNumber.ktiC7¿iC7¿ p8']Zxdrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/IPhoneNumberUtil.ktiC7¿iC7¿ p-EE 6grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/IPhoneNumberUtilExt.ktiC7¿iC7¿ p Ţ[L0D;jrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/OnClickPhoneNumUseCase.ktiC7¿iC7¿ pS4< 0Ylrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/phonenumber/PhoneNumValidatorUseCase.ktiC7¿iC7¿ pH[e[Wgrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/ext/ReportQueryResultExt.ktiC7¿iC7¿ p065p!lrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/CountGraphFormatter.ktiC7¿iC7¿ p Y;=+,BNl*/trespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/CreateGraphFormatterUseCase.ktiC7¿iC7¿ pĴ2Zkrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/DateGraphFormatter.ktiC7¿iC7¿ p>OELLD~zorespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/DurationGraphFormatter.ktiC7¿iC7¿ pib~.#n=+na:mrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/GenderGraphFormatter.ktiC7¿iC7¿ p"=r}Nh6grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/formatter/GraphFormatter.ktiC7¿iC7¿ pz!sQ+Tg mqrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/report/model/RunReportResultAndFormatters.ktiC7¿iC7¿ p rތ[IGV<hrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/school/SchoolPrimaryKeyGenerator.ktiCGiCG p M#}L, Ue5,hrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/school/add/RegisterSchoolUseCase.ktiCGiCG pmDv}%k&*ʊ,hrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/sharelink/LaunchSendEmailUseCase.ktiCGiCG p;D%P=+frespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/sharelink/LaunchSendSmsUseCase.ktiCGiCG pD͍6?g պQhrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/sharelink/LaunchShareLinkUseCase.ktiCGiCG p2ݙ:7Fcrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/validator/ValidatorReporter.ktiCVG6iCVG6 pSЁq]'|NYb8(Urespect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/DateFormatterExt.ktiCVG6iCVG6 pk]-/,TTrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/MutableStateExt.ktiCVG6iCVG6 pZ6&{쭜Rrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/NavCommandExt.ktiCVG6iCVG6 p>2t̑Iu6ξRrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/NextAfterScan.ktiCVG6iCVG6 p= ʈ@nVaڥ[jUrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/ReportExtensions.ktiCVG6iCVG6 q8.|zN6fa0P9 [respect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/RouteWithResultDestExt.ktiCVG6iCVG6 q>\D(20 @) arespect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/SnackBarDispatcherUseCaseExt.ktiCVG6iCVG6 qlvٕǟdA-ƆXtLrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/replace.ktj[Hj[H 3]IX\ Q,ŮWFeqWyUrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.ktiCVG6iCVG6 qel8w?$s^brespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/KClassStringSerializer.ktiCVG6iCVG6 qrt/GDCPhRVrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/NavCommand.ktiCVG6iCVG6 qCCoo1 [ѡԼUrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/NavResult.ktiCVG6iCVG6 qeIx^g݃0hʃ ]respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/NavResultReturner.ktiCVG6iCVG6 q XKrC(x?x'C4Q`respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/NavResultReturnerExt.ktiCVG6iCVG6 q 2v3h/<+arespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/NavResultReturnerImpl.ktiCVG6iCVG6 q  gKL{Pb Ѽ[vgrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/RespectComposeNavController.ktiCVG6iCVG6 q \g`Җm4 /_respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/RouteWithResultDest.ktiCVG6iCVG6 qnp@ }bQrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/resources/UiText.ktiCVG6iCVG6 q#{-CMd 4˝@%SXrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/AvatarColorForName.ktiCVG6iCVG6 q<U>8BRtWrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/FilterChipsOption.ktiCVG6iCVG6 q=WgRAU v;6Trespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/GenderToString.ktiCVG6iCVG6 q6)j2aQAEUrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/LaunchDebouncer.ktiCVG6iCVG6 q@p 0nb1&ž*Srespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/LongExtCommon.ktiCVG6iCVG6 qlq CY%`S-8qY\respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/RememberDateTimeFormat.ktiCVG6iCVG6 qc׳c)i)~[respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/RememberFormattedDate.ktiCVG6iCVG6 qYKm{/"lI[respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/RememberFormattedTime.ktiCVG6iCVG6 qM^ν3W8GvA<Urespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/SortOrderOption.ktiCVG6iCVG6 qdepFOrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/UrlParser.ktiCVG6iCVG6 q⎜'X0@^respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/di/RespectAccountScopeId.ktiCVG6iCVG6 q[S̀@f.5rWfrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/di/SchoolDataSourceLocalProvider.ktiCVG6iCVG6 q~r5ua a{5"drespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/di/SchoolDirectoryEntryScopeId.ktiCVG6iCVG6 q!:fGRò?WVA(crespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/exception/ExceptionWithUiText.ktiCeriCer q#gI?\zT{]:;*NWrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/AppUiStateExt.ktiCeriCer q$L腌Dxijjs6_respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/EnrollmentRoleEnumExt.ktj977j977 q%7C[_^vչESrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/InviteExt.ktiCeriCer q&$s 5yUrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/OpdsFeedExt.ktiCeriCer q' hYb&(Kp\respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/OpdsPublicationExt.ktiCeriCer q( f7b>]respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/PersonGenderEnumExt.ktiCeriCer q)nbZl49[:MC^respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/PersonListDetailsExt.ktiCeriCer q*z jK n[respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/PersonRoleEnumExt.ktj[Hj[H q++q mmcf;i5JXrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/ReadiumLinkExt.ktiCeriCer q,Zgޘ^VͨZכkPT7[respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/RespectAccountExt.ktiCeriCer q-Yg7)/qQ6MSrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/StringExt.ktiCeriCer q.L!M5W#$}@P]n[respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/StringResourceExt.ktiCeriCer q/lN1u.-=n* Nrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/toPerson.ktiCeriCer q1##l$YϙpMi[respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/RespectViewModel.ktiCeriCer q3j+h<92 srespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/acknowledgement/AcknowledgementViewModel.ktiCeriCer q6O`:3-ڑ'֗]nrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/ActionBarButtonUiState.ktiCeriCer q722.=.D|grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppActionButton.ktiCeriCer q8_[u: ْYqXdrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppBarColors.ktiCeriCer q9INjЛj CAkrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppBarSearchUiState.ktiCeriCer q:u9x{N+u-1Ddrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppStateIcon.ktiCeriCer q;TlJ@qbrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppUiState.ktiCeriCer q<L>.Γ7]ac)e#erespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/DisplayString.ktiCeriCer q= Lt1)O.١+Ulrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/ExpandableFabUiState.ktiCeriCer q>~9!f4FU0Xbrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/FabUiState.ktiCeriCer q?=ˇ~]SD Tfrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/LoadingUiState.ktiCeriCer q@Ʌ\?+6]respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/Snack.ktiCeriCer qA~"\ǸWG?SMjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/SnackBarDispatcher.ktiCeriCer qB) tL 0G~`nrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/SnackBarFlowDispatcher.ktjjjj qE/E4 `^ jrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/detail/AppsDetailViewModel.ktiCt˭iCt˭ qG ^hCCk/Y)ؙ0lrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/enterlink/EnterLinkViewModel.ktiCt˭iCt˭ qI_3@c+2wmrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/launcher/AppLauncherViewModel.ktiCt˭iCt˭ qK @z'n ¸յMd^erespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/list/AppListViewModel.ktiCt˭iCt˭ qNzؓRD$oФ8|΅vrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.ktiCt˭iCt˭ qP+w"4~J/V+&rrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.ktiCt˭iCt˭ qR wD-U㜠ES@rrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.ktjjjj qU>>zrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.ktiC iC qoR`OiČ 'nvrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/list/LearningUnitListViewModel.ktjL4jL4 3)Q6,`w#˕xrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/acceptinvite/AcceptInviteViewModel.ktj -%Qoj -%Qo <0﫥x8Ul.,_Vvrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/accountlist/AccountListViewModel.kti0.ٰi0.ٰ qv +![tP@cEq~respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/enterinvitecode/EnterInviteCodeViewModel.ktiC iC qx4пv?Oz(7`Mzrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/enterpasswordsignup/EnterPasswordSignUpViewModel.ktiCP%iCP% qz2< P*I9=trespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/getstarted/GetStartedViewModel.ktiCP%iCP% q|ٹwU)?}respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/howpasskeywork/HowPasskeyWorksViewModel.ktir$=nvir$=nv <)RL:VxL*OMjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/login/LoginViewModel.ktiCP%iCP% q`hj)"hswrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/otheroption/OtherOptionsViewModel.ktiCP%iCP% q&iZT>>=respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/otheroptionsignup/OtherOptionsSignupViewModel.ktiCP%iCP% q)/~7OQ^0mrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/profile/SignupViewModel.ktiɲiɲ (cK#yRT t;!Fzrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/selectaccount/SelectAccountViewModel.ktjjjj q.˟>_q"` |Hsrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/signup/CreateAccountViewModel.ktiCP%iCP% q "\"jWC=qrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/signup/SignupScreenModeEnum.ktjjjj qWT|}.respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/termsandcondition/TermsAndConditionViewModel.ktiCP%iCP% q ӫ &`N]b?oMrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/waitingforapproval/WaitingForApprovalViewModel.ktiCP%iCP% qCAgyR*Y35Eirespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/onboarding/OnboardingViewModel.ktiCP%iCP% qiW*ĺd4ͻﶼPxrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/changepassword/ChangePasswordViewModel.ktiCP%iCP% qjl^)65&Yrrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/copycode/CopyInviteCodeViewModel.ktiCP%iCP% qgu&V*(i|nrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/detail/PersonDetailViewModel.ktj<&X)arHjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/qrcode/InviteQrViewModel.ktiC`iC` q+FӢ:grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.ktjjjj q'ao' C#ЋkX@<.5respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.ktiC`iC` qM GQ7&g"arespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/ReportViewModel.ktiC`iC` qx.%򎫊nrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/detail/ReportDetailViewModel.ktiC`iC` q8yL!b` cMjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/edit/ReportEditViewModel.ktiC`iC` qAK*)m}<_ajvrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/filteredit/ReportFilterEditViewModel.ktiC`iC` q Q\H˙iAkWwzrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/indictor/detail/IndicatorDetailViewModel.ktiC`iC` qhۗʆH\njurespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/indictor/edit/IndictorEditViewmodel.ktiCԜiCԜ q 3-{[vrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/indictor/list/IndicatorListViewmodel.ktiCԜiCԜ q3@;䆵ézT42jrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/list/ReportListViewModel.ktiCԜiCԜ qbˈz/NM=& srrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/list/ReportTemplateListViewModel.ktiCԜiCԜ qã &h#RÍ`vzrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/respectaccount/list/RespectAccountListViewModel.ktiCԜiCԜ q o| OY*O|fˎhrespect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/opds/validator/ValidationMessageExt.ktiCiC qTW.oϪhk'qKfrespect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/phonenumber/AsYouTypeFormatterJvm.ktiCiC q_Է lK9Bq.O`jrespect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/phonenumber/OnClickPhoneNumUseCaseJvm.ktiCiC qu;e`&erespect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/phonenumber/PhoneNumValidatorJvm.ktiCiC q_ N9;_respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/phonenumber/PhoneNumberJvm.ktiCiC q&/ <]&;}UKrespect-lib-util/src/commonMain/kotlin/world/respect/libutil/ext/ListExt.ktiC;(iC;( r{l$D4.o.9< Prespect-lib-util/src/commonMain/kotlin/world/respect/libutil/ext/RandomString.ktiC;(iC;( r9>G}jT{!Mrespect-lib-util/src/commonMain/kotlin/world/respect/libutil/ext/StringExt.ktiC;(iC;( r  3%=JmCLPrespect-lib-util/src/commonMain/kotlin/world/respect/libutil/ext/ThrowableExt.ktiC;(iC;( rȫW0: Jrespect-lib-util/src/commonMain/kotlin/world/respect/libutil/ext/UrlExt.ktiC;(iC;( ri$"_d~J?͞Wrespect-lib-util/src/commonMain/kotlin/world/respect/libutil/util/ConcurrentSafeList.ktiC;(iC;( rcp2]ϺJ+ (\respect-lib-util/src/commonMain/kotlin/world/respect/libutil/util/PutDebugCrashCustomData.ktiCJjiCJj rпo׵%ebظjrespect-lib-util/src/commonMain/kotlin/world/respect/libutil/util/throwable/ExceptionWithHttpStatusCode.ktiCJjiCJj r1Y69bZM"9arespect-lib-util/src/commonMain/kotlin/world/respect/libutil/util/throwable/ForbiddenException.ktiCJjiCJj r]x2ػnzG@Vrespect-lib-util/src/commonMain/kotlin/world/respect/libutil/util/time/LocalDateExt.ktiCJjiCJj r16Go65lowl Hzexdrespect-lib-util/src/commonMain/kotlin/world/respect/libutil/util/time/LocalDateInCurrentTimeZone.ktiCJjiCJj rv;/w=mbRMu_^ aOWrespect-lib-util/src/commonMain/kotlin/world/respect/libutil/util/time/TimeConstants.ktiCJjiCJj rO.(D<άm֒l7xVrespect-lib-util/src/commonMain/kotlin/world/respect/libutil/util/time/TimeInMillis.ktiCJjiCJj r"@Tuː?|w[Yrespect-lib-util/src/commonMain/kotlin/world/respect/libutil/util/time/UtcStartOfToday.ktiCJjiCJj r`@.n$FN D:Irespect-lib-util/src/jvmMain/kotlin/world/respect/libutil/FindFreePort.ktiCJjiCJj r.rCI4M߀M̪]Xrespect-lib-util/src/jvmMain/kotlin/world/respect/libutil/util/ConcurrentSafeList.jvm.ktiCJjiCJj ra P I []respect-lib-util/src/jvmMain/kotlin/world/respect/libutil/util/PutDebugCrashCustomData.jvm.ktiCJjiCJj ry/*4, y4úWrespect-lib-util/src/jvmMain/kotlin/world/respect/libutil/util/time/TimeInMillis.jvm.ktiCJjiCJj r OF(CcQWz UOrespect-lib-util/src/jvmTest/kotlin/world/respect/libutil/ext/UrlResolveTest.ktiCJjiCJj rc&!;NOL#respect-lib-xxhash/build.gradle.ktsiCJjiCJj rs;F7֓5|owNrespect-lib-xxhash/src/commonMain/kotlin/world/respect/libxxhash/XXHasher64.ktiCJjiCJj rl2R*']!&ЃUrespect-lib-xxhash/src/commonMain/kotlin/world/respect/libxxhash/XXHasher64Factory.ktiCJjiCJj r?N1IR)t_Ne &kRrespect-lib-xxhash/src/commonMain/kotlin/world/respect/libxxhash/XXStringHasher.ktiCJjiCJj r}AN0{Ǹd|~_respect-lib-xxhash/src/commonMain/kotlin/world/respect/libxxhash/jvmimpl/XXHasher64CommonJvm.ktiCJjiCJj rt1Ҕg\]50Ïfrespect-lib-xxhash/src/commonMain/kotlin/world/respect/libxxhash/jvmimpl/XXHasher64FactoryCommonJvm.ktiCJjiCJj rS%ڨIِ R1Fgrespect-lib-xxhash/src/commonMain/kotlin/world/respect/libxxhash/jvmimpl/XXStringHasherCommonJvmImpl.ktiCJjiCJj r/KbLD A Dbrespect-server/.gitignoreiCJjiCJj rZXOM708+0UN]xrespect-server/README.mdiCY,iCY, r ` :p5K#6.E HN5respect-server/build.gradle.ktsjz88rijz88ri x,> W`ȏL16respect-server/src/dist/systemd/respect-server.serviceiCY,iCY, rs sŻ^0ԟ"-aCrespect-server/src/main/kotlin/world/respect/server/AppConfigExt.ktj -%ϓj -%ϓ <,k_7l[(9![Brespect-server/src/main/kotlin/world/respect/server/Application.ktiCY,iCY, r9䐪D89S,Grespect-server/src/main/kotlin/world/respect/server/ManagerServerCLI.ktiCY,iCY, r|ɡM`|jKCrespect-server/src/main/kotlin/world/respect/server/SchoolConfig.ktiCY,iCY, r?lO{$kt=SߎPrespect-server/src/main/kotlin/world/respect/server/ServerAccountScopeManager.ktiCY,iCY, rx&jt]:Drespect-server/src/main/kotlin/world/respect/server/ServerAppMain.ktj -%ϓj -%ϓ <@ܷ3G? @\HGrespect-server/src/main/kotlin/world/respect/server/ServerKoinModule.ktiCY,iCY, r⛲CK)wZS_respect-server/src/main/kotlin/world/respect/server/account/invite/CreateInviteUseCaseServer.ktj<Rxj<Rx 3k{#,%tg8~h`respect-server/src/main/kotlin/world/respect/server/account/invite/GetInviteInfoUseCaseServer.ktjz2jz2 ryZ^#^:%A]}C&nrespect-server/src/main/kotlin/world/respect/server/account/invite/username/UsernameSuggestionUseCaseServer.ktjz2jz2 /r3Yj~Ye R0respect-server/src/main/kotlin/world/respect/server/account/invite/username/checkusernameunique/CheckUsernameUniqueUseCaseServer.ktiCY,iCY, r оYaR8Yrespect-server/src/main/kotlin/world/respect/server/domain/school/add/AddSchoolUseCase.ktiCY,iCY, rvkh%cPo怉Rjrespect-server/src/main/kotlin/world/respect/server/domain/school/add/AddServerManagedDirectoryCallback.ktiCY,iCY, r~)i**_1;!zabrespect-server/src/main/kotlin/world/respect/server/domain/school/add/RegisterSchoolUseCaseImpl.ktiCY,iCY, rzef:q]d.ltrespect-server/src/main/kotlin/world/respect/server/domain/school/verify/VerifySchoolUrlPointsToThisServerUseCase.ktiCY,iCY, r YpM ueQF1Mrespect-server/src/main/kotlin/world/respect/server/logging/LogbackAntilog.ktiCY,iCY, r:onPubjC{|oGrespect-server/src/main/kotlin/world/respect/server/routes/AuthRoute.ktiCY,iCY, r-{>l2v)F |Yrespect-server/src/main/kotlin/world/respect/server/routes/RespectSchoolDirectoryRoute.ktiChhiChh r?q_respect-server/src/main/kotlin/world/respect/server/routes/passkey/GetAllActivePasskeysRoute.ktiChhiChh r,|[l$FNK\respect-server/src/main/kotlin/world/respect/server/routes/school/respect/AssignmentRoute.ktiChhiChh r_5:Z}9讹{Wrespect-server/src/main/kotlin/world/respect/server/routes/school/respect/ClassRoute.ktiChhiChh r#x; A>5$E\respect-server/src/main/kotlin/world/respect/server/routes/school/respect/EnrollmentRoute.ktiChhiChh r[wrGH\:!>%2^respect-server/src/main/kotlin/world/respect/server/routes/school/respect/InviteCreateRoute.ktiChhiChh rhywg8L j;9\respect-server/src/main/kotlin/world/respect/server/routes/school/respect/InviteInfoRoute.ktiChhiChh r ߰F2)zL)pLXrespect-server/src/main/kotlin/world/respect/server/routes/school/respect/InviteRoute.ktiChhiChh r)ak ?R9ܤi_respect-server/src/main/kotlin/world/respect/server/routes/school/respect/PersonPasskeyRoute.ktiChhiChh rصu1^`respect-server/src/main/kotlin/world/respect/server/routes/school/respect/PersonPasswordRoute.ktiChhiChh r"D |Ϫ4MXYwXrespect-server/src/main/kotlin/world/respect/server/routes/school/respect/PersonRoute.ktiChhiChh r@T#p+3SKuZrespect-server/src/main/kotlin/world/respect/server/routes/school/respect/PlaylistRoute.ktjL4-jL4- <>c pAJp";4jrespect-server/src/main/kotlin/world/respect/server/routes/school/respect/RedeemInviteExistingUserRoute.ktir$Lir$L <8!`N⒨u^respect-server/src/main/kotlin/world/respect/server/routes/school/respect/RedeemInviteRoute.ktiChhiChh rd [ҙV"\RFr, [respect-server/src/main/kotlin/world/respect/server/routes/school/respect/SchoolAppRoute.ktiChhiChh rx;۵lqDne\respect-server/src/main/kotlin/world/respect/server/routes/school/respect/SchoolLinkRoute.ktiChhiChh r~}< 1L$+eugrespect-server/src/main/kotlin/world/respect/server/routes/school/respect/SchoolPermissionGrantRoute.ktiChhiChh r 14̫J)L^drespect-server/src/main/kotlin/world/respect/server/routes/school/respect/SchoolRegistrationRoute.ktiChhiChh rVĠz)1{brespect-server/src/main/kotlin/world/respect/server/routes/school/respect/SchoolValidationRoute.ktiChhiChh rrCan%0k&^respect-server/src/main/kotlin/world/respect/server/routes/username/UsernameSuggestionRoute.ktjz2jz2 {R{ S%ʥ=NrOsrespect-server/src/main/kotlin/world/respect/server/routes/username/checkusernameunique/CheckUsernameUniqueRoute.ktiChhiChh r& J" gޢ(sXrespect-server/src/main/kotlin/world/respect/server/util/SchoolUrlVerificationManager.ktiChhiChh r;O}szOuRrespect-server/src/main/kotlin/world/respect/server/util/ext/ApplicationCallExt.ktiChhiChh rS)  W|Urespect-server/src/main/kotlin/world/respect/server/util/ext/ApplicationRequestExt.ktiChhiChh ro@Ij0pjVrespect-server/src/main/kotlin/world/respect/server/util/ext/ApplicationResponseExt.ktiChhiChh rxْߛÄFSrespect-server/src/main/kotlin/world/respect/server/util/ext/ExceptionExtensions.ktiChhiChh ri)ge8pwy\Mrespect-server/src/main/kotlin/world/respect/server/util/ext/ParametersExt.ktiChhiChh rD;&b=-B˃m2respect-server/src/main/resources/application.confiCx1iCx1 r? ޕҺ׼kG^;respect-server/src/main/resources/http/respect-ds/base.jsoniCx1iCx1 rD(vz*sf¦Erespect-server/src/main/resources/http/respect-ds/case_valid/app.htmliCx1iCx1 rC3gm#X>qxMrespect-server/src/main/resources/http/respect-ds/case_valid/appmanifest.jsoniCx1iCx1 s*xFGOgbl+TTOrespect-server/src/main/resources/http/respect-ds/case_valid/grade1/grade1.jsoniCx1iCx1 sY9WZ{[E==ÅWrespect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/audio.oggiCx1iCx1 sL7_\ulh=NWrespect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/cover.pngiCx1iCx1 s]M respect-server/src/main/resources/http/respect-ds/chimple.jsoniCsiCs s cz P)9GD 40Y?-respect-server/src/main/resources/logback.xmliCsiCs s\D va޸6respect-server/src/main/resources/openapi/openapi.yamliCsiCs sO@KzhJ'Ig8)respect-server/well-known/assetlinks.jsoniCiC 4r8r~>I 'Qn5csettings.gradle.ktsiCiC W>KǙ,j#E+POJ0write-jenkins-build-info.shTREEi1417 26 3F+Hy.fleet1 0 G;ܼ,yʙHe)Tgradle4 1 >H(bkS{_]Zwrapper2 0 oꙭۆzWy5Zo.github5 1 j5Қ(~"V*zZUISSUE_TEMPLATE5 0 ,70؆&߸"(.maestro52 3 , C/,3(@bOflows31 3 #UTo scripts3 0 z, V̾subflows21 0 eoe Kflows-disabled1 0 EZX5"j.dT'flow-passkey11 2 s361Uo\Ywscripts3 0 At J\m!subflows7 0 GlwqVb܃Mu3PWzvideo-downloader9 1 ,@ڌ`nvX~aFϓcypress4 3 NFK7Xa(M2main1 1 :KamOQ,6java1 1 k;+uT0k@world1 1 IACVSw`N=fۺrespect1 1 9YY%zm8clitools1 0 "Ʋl~ G"V2`respect-lib-test3 1 jWj'ًעsrc1 1 ;uxt{A/}:t⊖jvmMain1 1 g6^n\fG4kotlin1 1 a]m]5gUΣfyworld1 1 (]z|JM]Rrespect1 1 :  %`-Cl lib1 1 nܝ[P2s>ydH-test1 1 ًo.V63clientservertest1 0 ?- G-eSqrespect-lib-util24 1 fHT251oTsrc23 4 {/bB|ũYAѣ$vjvmMain4 1 ]!}\dkotlin4 1 pݨ|U:CuRLBgworld4 1 k D#@q(Xrespect4 1 a>N@pz_libutil4 1 KlU@{iI t>„Nutil3 1 ]cض5+0LŶfDCŴm,kotlin1 1 \ZT9UMworld1 1 oy 0L}tpʏrespect1 1 # ݯ=Nl"Yblibutil1 1 ֿ;*qyq&=+iPWext1 0 wR.Ao5;bcommonMain15 1 no.O^o0V-kotlin15 1 L!|w(world15 1 Yk ;S;world3 1 Beiwd I2respect3 1 ;re[xȲ;U ^s#,libutil3 1 )p 6k-)util3 1 ^|GĽ-+Τtime1 0 mY B;FUrespect-datalayer166 1 zEUS[`Wq`dsrc162 2 aeݟ)GF6]eNcommonMain161 1 MO_1c"K &kotlin161 1 jyLr]1h*world161 1 f ? ?`respect161 1 mϹ6{] ON.*datalayer161 9 #{0tG\L!h'ext6 0 P$ANBaKuV[school87 6 qlRa7^$b Zext7 0 /v(\p1mopds7 1 鳡{DOJ7HDھext3 0 uFnTLسmodel36 2 @%N0?report6 0 ÷ K1tqHXd Yscomposites1 0 OjxXD6Qdomain5 0 0=(铨~j|5adapters2 0 + 5|d-ym놼\writequeue4 0 `KiÑzshared22 3 P3[fA:Ƿc =>paging12 0 2kVaB& uRparams2 0 U@}fJs˫pullsync1 0 '$˵LI~respect6 1 xcdiF1oZumodel5 1 E 7s 3{oG;invite2 0 i'mQd!oneroster18 2 {IzZT+Simodel17 0 3{iGꢐW! composites1 0 Xj쯛n^1Z"#exceptions2 0 je?c|7`&aJgRc dgcom107 1 `od&\Yustadmobile107 1 [g-*!#Ӫ"+8libcache107 16 /q%/v F`=logging2 0 l.Y]H0cfCpartial2 0 '§ {VD~response6 0 TAF"#i bKintegrity1 0 ٫#*ӧdownloader9 0 H~MY :٠Kdistributed11 2 WqE> /I'!(@http1 0 ٓj}IartGFTmodel6 0 cۯf`~cachecontrol9 0 |)@. @EQconnectivitymonitor1 0 ȵ!& 4[>q|androidMain14 1 w g^_ɂkotlin13 1 ÆgưG%6rTcom13 1 hΎ⦋{ޮm69ustadmobile13 1 eZ{R 'i> c΅libcache13 6 ͍iؾp˸Wyة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-shared374 1 k*+2!rA+лsrc373 5 Q B~l4W?htwjvmMain35 2 D?'%[2K<*ckotlin32 1 ݺ[ {2D28world32 1 _7VRVL1NTrespect32 1 W&]jp-=shared31 3 &B&X>F{ u\Vdi1 0 G E +[^ futil4 0 蠗c^=ӊdomain26 6 ԰&TRopds6 1 yNA1p9(B{svalidator6 0 ܔOKI Bqaccount10 5 Rkq ҕsU(Q1child1 0 bb 1vFn3/s;invite3 0 WK-wM_a Hvpasskey4 0 ƕ"=]Kiӳvalidateauth1 0 `D$#?BWaauthwithpassword1 0 ,o UʍxpFgKvalidator3 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[1RjvmTest48 2 Z UB(b:8[i$kotlin12 1 Vlv RϷE?={X: world12 1 &#ґF&赋0zrespect12 3 Vz(Q^ޥ $+domain6 5 },Q*Xq'ϊוschool1 1 S34Jadd1 0 =7DFGh',z`account1 1 ;kBC.x#Ǝxpasskey1 0 vuH tm[Yvalidator2 0 ʌa&h^Enavigation1 1  ͧ7TX-ؕdeeplink1 0 "!%Ϲqbvalidateemail1 0 ~lFAҩfPshared3 2 &AοDXodutil2 1 Cn qq5di2 0 +<}uf2n RKwZdomain1 1 +}util29 3 ^xHĕ|h 0[+.di3 0 Ө]T ~ext12 0 Z"$/&쑆ǥyexception1 0 g &fFCbdomain111 26 h.?g7?oopds1 1 s9Jh:Nvalidator1 0 3/h"鋵j< report12 4 ؇mRr{j|ext1 0 Stֆ>,u6imodel1 0 !*]"^query4 0 :醼èfפyZ8Zaformatter6 0 fu~h\t1 Asschool5 1 R?}\(ʎ5 zWadd1 0 ^PC.樺3LOaccount47 11 nQ[y(q%tOnIchild2 0  muN@,LLinvite12 0 l@D"֬jsignup1 0 k߶e|lu5B passkey9 0 tS >J^8_username6 3 LaϠAWDc>Z7filterusername1 0 ӷ`wbqk϶validateusername1 0 LZvT92w,wwGmodel2 0 /T@c}%0vpihbiometric1 0 *]L{4:3FNclipboard1 0 ^>d>Ըj :@Alaunchapp1 0 ^:UΥ>apn|-sharelink3 0 cSGW{[/validator6 0 j,VVUQpcreatelink1 0 ;ݖ!&/PIΦbnavigation7 5 o}Gۡ|j؅deeplink3 0 SHYCF4+3,s> deferreddeeplink1 0 )If54U {bݺ"`onaccountcreated1 0 +ޭ,.nemμkLinviteforexistingusernavigation1 0 瀉vc2krmonboarding1 0 a,ESy4eəWV@createclass1 0 ?먯r6Y#Ngetfavicons1 0 px؉h|I'getwarnings1 0 ξj7݂(WljOpermissions1 0 ihpr)J)phonenumber6 0 9U JqDfuqDgetdeviceinfo2 0 eC!#窛 +ۨϸvalidateemail1 0 Yu_9$Ufappversioninfo1 0 ^~!_z+6ousagereporting2 0 ]B0+mR?urltonavcommand1 0 pT2ucrespectappmanifest1 1 XukUրkA%@model1 0 04}0qU|V Zdirectory1 0 Ńh_!ig resources1 0 D 2pviewmodel78 16 L"v/^=Vapp13 1 ;AzKR, W=sappstate13 0 gUCtEapps4 4 X{fB9ۡZ\list1 0  iуB̝sLdetail1 0 .'PBnR#ׂ|N"{#alauncher1 0 8‚@|aS- enterlink1 0 6ĞLn%^clazz3 3 Ft%-4edit1 0 yoƏf&|*Aw%}list1 0 5NASlU0+mnPdetail1 0 $ Dlv^#+e& Hperson11 10 kr.mKbV edit1 0 oc4alist1 0 O )UG i8Udetail1 0 K{7emqrcode1 0 ţNѡ+uD=kcopycode1 0 ]z\(u[4Qpasskeylist1 0 vx,}gR*~inviteperson1 0 gkTaA*Y#@m,manageaccount1 0 :q_h҅ vhZL{;changepassword1 0 Ҝu6eTF͕ɈQ@setusernameandpassword2 0 Lb5+xN9SĵUreport9 5 ;Kn2h>o5ОLedit1 0 _/Zʉ!Tբ6 i+list2 0 Ox-ѼªJ detail1 0 j}L`Xcurriculum6 1 㩶%^IvPmapping6 3 : ^fyOiedit1 0 95 Ƕ+v \list1 0 PO3o!ʄ|?ůmodel3 0 uC|ˁ8"ҁ g enrollment2 2 Ch2WvH)a<~edit1 0 VP|qc_#list1 0 w0Zϣ manageuser15 14 1G>d}login1 0 EdDmzsignup2 0 -n$h #h profile1 0 ~ $5ڳ;!I(getstarted1 0 F[]lC% 7$accountlist1 0 ;SWOaJѾ`$)otheroption1 0 ||;;߇&bacceptinvite1 0 ¯ljhΎv>selectaccount1 0 Ok͖w Hhowpasskeywork1 0 J@=Y<֒hXXenterinvitecode1 0 s߀[ux!otheroptionsignup1 0 ")Lr#vpeTDtermsandcondition1 0 Co$4=AN6waitingforapproval1 0 mV҄KY!enterpasswordsignup1 0 {o:u73FWNvonboarding1 0 k}{ 73iscanqrcode1 0 Lq;cڋݮwlearningunit3 2 6NQ{$,list1 0 1Ib@2list1 0 > Xٷacknowledgement1 0 ּ^zg3X^cOɭschooldirectory3 2 dN Jxvedit1 0 ߰9si\Z-H=B^Llist2 0 c=Ohc^.navigation9 0 oLCqD(#jpresources2 1 *J]38F.Ѯdirectories1 0 ~67\x~uVt9composeResources6 2 !/=kIT{h8jQvalues1 0 Xɴ(T:}$sdrawable5 0 2_-zO^@ek8commonTest7 1 a6D(B" resources7 0 ECsIߙstorage3 0 5=>ˍN\C'ܭ.biometric4 0 AT@Yj;xclipboard1 0  }Hc(launchapp1 0 [6v>U>%navigation2 2 hy.1$GN.deeplink1 0 v>7$wGR"z~ 4I7Dworld6 1 \.PpoHrespect6 1 ϓٙ+7Ced"Ȭlibxxhash6 1 ŃD Ҿ*v~tQĒ?;app110 6 fu IQXƕapp7 0 ݕp] ~۴FMvQuutil7 3 85pN"N'Text2 0 gKdS-Ik^9phonenum4 0 SA}Iscanqrcode1 0 E1 l t+Jview61 15 ҃Al `_h@apps4 4 XsMs7.ᅲDlist1 0 y~{=3̘4^Qo Rldetail1 0 !zE ֋**launcher1 0 d3K^Q+1/^enterlink1 0 v蓻'8[>Hhome1 0 N;{K_ Dtclazz4 3  ϯsK>-Ҿedit1 0 ى1#5dvAb. list1 0 ?%[`detail2 0 h-۵ꇹv]person12 10 _rQn}_edit1 0 FLb=Wccopycode1 0 F>Tk/'=UwpasskeyList1 0 U,@dl啿VJinviteperson1 0 ax,ccpM ;manageaccount1 0 SX96R_~=uڋchangepassword1 0 Q䉟84n'$setusernameandpassword2 0 `[ >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[:settings1 0 ]0We jҔQassignment3 3 ;G{"'Lbedit1 0 9=~_(?ÖF7XYklist1 0 Ƶ,U=Z detail1 0 i(ޛ)d=ٱh93curriculum2 1 \s/!P mapping2 2 6טD .YvCvot'edit1 0 3/t9OG}g[tlist1 0 cNɤG]$9xgqenrollment2 2 [U8pan7edit1 0 <='/>`olist1 0 7^08{:2V>manageuser16 14 /?800Rmlogin1 0 ' 1!旅qb^-a`œentities7 0 $,ϓ(+J=$ domain3 0 3R X_adapters14 0 }K2$Ji.]entities22 0 #m --_7f':writequeue1 0 ƃ" WYG`xshared13 4 MiFò"Yext3 0 Xey;#ytdaos1 0 ى[ȿ֊*>͐L.Uadapters3 0 -r]AFR< entities3 0 GԍUB[rUo"Hsschooldirectory13 4 A :T9e ext1 0 %ok' %daos4 0 |y~JP[adapters2 0 wE{j @0tC@\xentities4 0 Oh (3RPRB/anetworkvalidation3 2 \%`c!K72daos1 0 ,hK ]V[w2[&entities1 0 +U4/|schemas16 2 ãoBZSa8Mworld.respect.datalayer.db.RespectAppDatabase4 0 5VZ5:캟҇world.respect.datalayer.db.RespectSchoolDatabase12 0 &U] ]ƕrespect2 1 _;FF}ʼnGx_sharedse2 1 p, {}/pM1Udomain2 1 Ҟ^#,KaB"j׍account2 1 >U|0 gauthenticatepassword2 0 /`kKnc"33respect-datalayer-http24 1 ]{+ hw?Ȕsrc21 1 1pD@|%Q|ksMcommonMain21 1 )pl5#0ukotlin21 1 ўn袷fZNO:world21 1 ՟g:Id?Brespect21 1 ]Di41;WFǚKNXdatalayer21 1 + 7>cH . http21 5 A۬dHs6fF@=ext3 0 {TRo S]lHjʴschool13 1 hb鹚I6 {opds2 0 2ͧSm}@C9|SNshared1 1 ^Z.S?4h90paging1 0 h(O=)ʂE!Pheaders1 1 )Rk^.<\F:"directives1 0 {,Z!qK schooldirectory1 0 )鏆!m}respect-lib-ihttp-core32 1 dBc$;Asrc29 4 uZO- xjsMain1 1 ^I2FO[kotlin1 1 r=ϭAPx̽com1 1 LBWk%,>#0:ustadmobile1 1 X;}g;By(ihttp1 1 #dYVy@,sJiext1 0 3OR)nge?$GL jvmMain1 1 mQuA(䯭# 3;vc;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 0d?v_hCa$src18 1 'Ҵ:slqLcommonMain18 1 x.Դ]EDGLZFLskotlin18 1 HRM&Id~Oworld18 1 YIkv,Bb respect18 1 OQD+#;P5lib18 1 }W3}GLB4(opds18 1 ڌ JMVs+model18 0 ,a5r"Rʂrespect-lib-serializers10 1 w9h]cMEsrc8 1 nHfWYJ >! (commonMain8 1 -3W{sC-_Qkotlin8 1 C<^h-ZAworld8 1 ~g#`87Z雴respect8 1 ͉Z@B䟳7˴_~lib8 1 躴ԕ&^R~DQ~serializers8 0 v%8N¢%O!|respect-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-repository40 1 b@ZVwa꾀%>src37 3 84'TtƖ)H%s#vjvmTest6 2 vN=n2tA#"kڧ dkotlin3 1 @ݝ·#ʤworld3 1 ؚrVU?f8қrespect3 1  ёs]p;ʷdatalayer3 1 jfEnf zQrepository3 2 ۬_smd~"5a\Wopds1 0 R=u,JE@',ҽschool2 0 o~Љ[;Wresources3 1 OѺ=QAzpworld2 1 NE0{*}respect2 1 }[6 datalayer2 1 _xpa/M g;repository2 1 mriքJ'ڮn-9opds2 0 @R0qBJ~kcommonMain24 1 {{ɳO5_p\kotlin24 1 `f5].YJMAworld24 1 ıoaV:rh=w|Vrespect24 1 V96#V)datalayer24 1 vL[tUD&a;Z΁repository24 4 +Fje)Ɂ)Sopds2 0 UtlzR@ّcHgkqkotlin7 1 5qk~L03F T%&[respect7 1 w\ML_$datalayer7 1 Kr -w2z?̚mJb`repository7 1 *1z~T7Sschool7 3 a}*.<% worker2 0 [ZԺtC6A )MRpullsync2 0 ͜NdMHMYRL6writequeue2 0 BFGڝbZeeTt7DndM%0F1