DIRC:hydhyd <mIL%ʹh ,.fleet/receipt.jsonhydhyd <OY 軡2f^L~L8 .gitignorehyshys < ]R?rCRLICENSEhyshys <OE"%`lt}Vn} README.mdhyshys <2h!bwbuild.gradle.ktsh Eh E 7QXA(Y$ L猧9composeApp/src/desktopMain/resources/img/respect_logo.pngh Eh E 5^@yA|R-6composeApp/src/desktopMain/resources/img/spix_logo.pnghyshys <#qn#y>2o?gradle.propertieshz99_hz99_ < # STR.ڝtgradle/libs.versions.tomlhyshys <,5!}|EC %!gradle/wrapper/gradle-wrapper.jarhyshys <Gv1z^"`:w$ i(gradle/wrapper/gradle-wrapper.propertieshQ#3JThQ#3JT <":mkkZ&BGtgradlewhyshys < 8!4\'{[*n gradlew.bath||3 " 7respect-app-compose/src/androidMain/AndroidManifest.xmlhyshys <vTuԽ _#YOrespect-app-compose/src/androidMain/kotlin/world/respect/AbstractAppActivity.kthyshys <(R1R h2!>9vIGrespect-app-compose/src/androidMain/kotlin/world/respect/AppActivity.kth Eh E <#Nha2ToЊ~#26yIrespect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kthyshys <tf )rZ߉bHrespect-app-compose/src/androidMain/kotlin/world/respect/MainActivity.kth Eh E <t)pH]ĺfj[Frespect-app-compose/src/androidMain/kotlin/world/respect/RespectApp.kth}h3îh}h3î < bq<$0mp-59Krespect-app-compose/src/androidMain/kotlin/world/respect/WebViewActivity.kth Eh E ~vlhH ZSrespect-app-compose/src/androidMain/kotlin/world/respect/app/app/AppIcon.android.kth Eh E <{EZ2ǀn5H"awkrespect-app-compose/src/androidMain/kotlin/world/respect/app/components/RespectImageSelectButton.android.kthyhy <? kWwv~eHmrespect-app-compose/src/androidMain/kotlin/world/respect/app/components/webview/UstadAbstractWebViewClient.kth Eh E [ӭ5q׻6U=5Wrespect-app-compose/src/androidMain/kotlin/world/respect/images/RespectImage.android.kthyhy <+F*Kfb Orespect-app-compose/src/androidMain/res/drawable-v24/ic_launcher_foreground.xmlhyhy < dk0.DŽ;|TFrespect-app-compose/src/androidMain/res/drawable/baseline_close_24.xmlhyhy < Z:m[L%Q˔u@respect-app-compose/src/androidMain/res/drawable/ic_launcher.xmlhyhy <>va;h-ܒw3Krespect-app-compose/src/androidMain/res/drawable/ic_launcher_background.xmlh Eh E <}4n>eY+!zFٯ`Brespect-app-compose/src/androidMain/res/drawable/respect_logo.webph Eh E <~x}3OYr2q=?respect-app-compose/src/androidMain/res/drawable/spix_logo.webphyhy <lVm^y)iW^hDrespect-app-compose/src/androidMain/res/layout/activity_web_view.xmlhyhy <mO0jQ?ȶĂպ=respect-app-compose/src/androidMain/res/menu/menu_webview.xmlhyhy < Rf( h{Orespect-app-compose/src/androidMain/res/mipmap-anydpi-v26/ic_launcher_round.xmlhyhy <aUUa=,֑FIrespect-app-compose/src/androidMain/res/mipmap-hdpi/ic_launcher_round.pnghyhy < respect-app-compose/src/commonMain/kotlin/theme/CommonColor.kthyhy H ltP^ 5P 8respect-app-compose/src/commonMain/kotlin/theme/Theme.kthyH7hyH7 H̼9\eui/ʞD>respect-app-compose/src/commonMain/kotlin/world/respect/App.kthyH7hyH7 HֲJ n15RFIFrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/App.kth Eh E HI #C~ILZ-ql iIrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kth Eh E Hsl}`JsgS7Jrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppIcon.kth Eh E H$hB Pg1ڙ?L5YMrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kthyH7hyH7 HٟG{ۇN88_K'FTrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/RespectAsyncImage.kthyH7hyH7 H>G ߄^TaxY:z iLrespect-app-compose/src/commonMain/kotlin/world/respect/app/app/SizeClass.kth Eh E HtK7K]=Urespect-app-compose/src/commonMain/kotlin/world/respect/app/components/ModifierExt.kth Eh E Hu aNYyԚCRaiF?brespect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectImageSelectButton.kth ҇h ҇ Hv\&4K"(cj.:J_respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLocalDateField.kth]} h]} H!HG3 Olx6W]respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectPersonAvatar.kthyH7hyH7 HEu=WP. L?^respect-app-compose/src/commonMain/kotlin/world/respect/app/components/UiTextStringResource.kth ҇h ҇ Hw kjK6$?2;grespect-app-compose/src/commonMain/kotlin/world/respect/app/components/UstadExposedDropDownMenuField.kthyH7hyH7 HZI4e1DRD!uUgrespect-app-compose/src/commonMain/kotlin/world/respect/app/components/webview/UstadWebViewNavigator.kthyH7hyH7 J<EGPKk2/LGWrespect-app-compose/src/commonMain/kotlin/world/respect/app/effects/AppUiStateEffect.kth]}Fh]}F H{ݻ6LS/'Nrespect-app-compose/src/commonMain/kotlin/world/respect/app/util/ext/IntExt.kth ҇h ҇  w%ToZqvxJ1F7irespect-app-compose/src/commonMain/kotlin/world/respect/app/view/acknowledgement/AcknowledgementScreen.kth~}E&h~}E& J</\1ͧV`respect-app-compose/src/commonMain/kotlin/world/respect/app/view/apps/detail/AppsDetailScreen.kthyH7hyH7 J< EY4&gB!xbrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/apps/enterlink/EnterLinkScreen.kth~}T_h~}T_ J<0RCۈ^_3crespect-app-compose/src/commonMain/kotlin/world/respect/app/view/apps/launcher/AppLauncherScreen.kthyH7hyH7 J=-l<^by*+Ŝm] h[respect-app-compose/src/commonMain/kotlin/world/respect/app/view/apps/list/AppListScreen.kthyH7hyH7 J==} 9hւ%?brespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/signup/SignUpScreen.kth ҇h ҇ ,3mW7ۈb69Lxrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/termsandcondition/TermsAndConditionScreen.kth ҇h ҇ . o&VZzrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/waitingforapproval/WaitingForApprovalScreen.kthyqhyq J= (& ^BD1+U%`@VWrespect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/ReportScreen.kthyqhyq J= (ܘo@ respect-app-compose/src/desktopMain/resources/sample-feed.jsonhyqhyq J=B*18LyqzK}respect-cli/.gitignorehyqhyq J=p]ǎ 4M?+urespect-cli/build.gradle.ktshyqhyq J=!=b{M{S9 %<Z>respect-cli/src/main/java/world/respect/clitools/RespectCLI.kth ҇h ҇ 9B*18LyqzK}respect-credentials/.gitignoreh ҇h ҇ :w6ab&-$respect-credentials/build.gradle.ktsh ҇h ҇ ;H4Ayף gm4K &respect-credentials/proguard-rules.proh ҇h ҇ >r0o#Fj`|0respect-credentials/src/main/AndroidManifest.xmlh 0h 0 C76e]f,Zvrespect-credentials/src/main/java/world/respect/credentials/passkey/model/AuthenticationExtensionsClientOutputsJSON.kth 0h 0 Cⶢ` ڞw2srespect-credentials/src/main/java/world/respect/credentials/passkey/model/AuthenticationExtensionsPRFOutputsJSON.kth 0h 0 C'rځ5)8 grespect-credentials/src/main/java/world/respect/credentials/passkey/model/AuthenticationResponseJSON.kth 0h 0 Cj;OI Ft H|"Forespect-credentials/src/main/java/world/respect/credentials/passkey/model/AuthenticatorAssertionResponseJSON.kth 0h 0 C9W)#zOv5r31OY-krespect-credentials/src/main/java/world/respect/credentials/passkey/model/AuthenticatorSelectionCriteria.kth 0h 0 COf6AXsκ[respect-credentials/src/main/java/world/respect/credentials/passkey/model/ClientDataJSON.kth 0h 0 CRH06O8?s41srespect-credentials/src/main/java/world/respect/credentials/passkey/model/PublicKeyCredentialCreationOptionsJSON.kth 0h 0 C1"a?F Cnrespect-credentials/src/main/java/world/respect/credentials/passkey/model/PublicKeyCredentialDescriptorJSON.kth 0h 0 C_ '~/<,}>tjrespect-credentials/src/main/java/world/respect/credentials/passkey/model/PublicKeyCredentialParameters.kth 0h 0 CoRA >S|Drrespect-credentials/src/main/java/world/respect/credentials/passkey/model/PublicKeyCredentialRequestOptionsJSON.kth 0h 0 CMKbopPBnu>Hhrespect-credentials/src/main/java/world/respect/credentials/passkey/model/PublicKeyCredentialRpEntity.kth 0h 0 C+@ 8?Hm@ Dnrespect-credentials/src/main/java/world/respect/credentials/passkey/model/PublicKeyCredentialUserEntityJSON.kthyqhyq J=#Y?۴%ȠaG%respect-datalayer-db/build.gradle.ktsh~}T_h~}T_ J=&LXv^ R|Nrespect-datalayer-db/schemas/world.respect.datalayer.db.RespectDatabase/1.jsonhyqhyq J=(IG$m޼y7Orespect-datalayer-db/schemas/world.respect.datasource.db.RespectDatabase/1.jsonhy̫hy̫ J=0q;+ojSy[G7_respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/RespectAppDataSourceDb.kth~}T_h~}T_ J=1 @k9cs׿fx ?̀;Xrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/RespectDatabase.kth~}T_h~}T_ J=3)sm utMqrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/CompatibleAppDataSourceDb.kth~}T_h~}T_ J=5p_e>^/)EM6urespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/adapters/CompatbileAppAdapter.kth~}T_h~}T_ J=ב}.\&.\ v7trespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/daos/CompatibleAppAddJoinDao.kth~}T_h~}T_ J=7D(sgkftLQK,ZQsrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/daos/CompatibleAppEntityDao.kth~}T_h~}T_ J=ǭW3 lm.êQurespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/entities/CompatibleAppAddJoin.kthy̫hy̫ J=9 ꔀ h,`@ctrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/compatibleapps/entities/CompatibleAppEntity.kthy̫hy̫ J=;Y盢jH=\θm^respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/OpdsDataSourceDb.kthy̫hy̫ J=<Y'xW\respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/OpdsParentType.kthy̫hy̫ J==QhTdy@Q`respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/OpdsTypeConverters.kthy̫hy̫ J=?,$N:/GS9grespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/OpdsFacetAdapter.kthy̫hy̫ J=@Kk=VzXWFfrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/OpdsFeedAdapter.kthy̫hy̫ J=A쒦$gw-9#%9Ktrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/OpdsFeedMetadataEntityAdapter.kthy̫hy̫ J=Bt<^@y̔}dgrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/OpdsGroupAdapter.kthy̫hy̫ J=CwӴuVqw[fO,srespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/OpdsPublicationEntityAdapter.kthy̫hy̫ J=D",)h Dorespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/ReadiumLinkEntityAdapter.kthy̫hy̫ J=E h:=T"Ҙ%l:psrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/adapters/ReadiumSubjectEntityAdapters.kthy̫hy̫ J=GKFBOxdrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/daos/OpdsFeedEntityDao.kthy̫hy̫ J=HftLȆhHlrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/daos/OpdsFeedMetadataEntityDao.kthy̫hy̫ J=IxtR4KnjUP6erespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/daos/OpdsGroupEntityDao.kthy̫hy̫ J=JN˔Н/CSzkrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/daos/OpdsPublicationEntityDao.kthy̫hy̫ J=K1> "濵ԦVgrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/daos/ReadiumLinkEntityDao.kthy̫hy̫ J=M2NN Ck/,ݭYxsfrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/OpdsFacetEntity.kthy̫hy̫ J=NԊu^'㰸OdWerespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/OpdsFeedEntity.kthy̫hy̫ J=O*ǽAR&m (I~mrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/OpdsFeedMetadataEntity.kthy̫hy̫ J=Ps%== :32frespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/OpdsGroupEntity.kthy̫hy̫ J=Q;Ԡ_qOm ZLlrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/OpdsPublicationEntity.kthy̫hy̫ J=R ư{uYqhwihrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/ReadiumLinkEntity.kthyhy J=S? j*1Iذwpxz=+/krespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/opds/entities/ReadiumSubjectEntity.kthyhy rr+,L+g/4U`respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/SharedConverters.kthyhy rszP32O~94JU^respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/ValidationInfo.kthyhy ru^JNOOVfsgrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/adapters/LangMapAdapter.kthyhy rv].@k E6 uZnrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/adapters/ValidationInfoAdapter.kthyhy rx M͸C,vK.k]5<erespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/daos/LangMapEntityDao.kthyhy rz]PаJfrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/entities/LangMapEntity.kthyhy r|hRF)Ys\ fWdrespect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/ext/LangMapEntityExt.kthyhy r}p^6 NSi9*vEb[respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/shared/ext/ListExt.kthyhy rlcAr\$ʖ"HhXtrespect-datalayer-db/src/jvmTest/kotlin/world/respect/datalayer/db/opds/adapters/TestOpdsPublicationEntityAdapter.kthyhy r0^9a%Sڂbrespect-datalayer-db/src/jvmTest/resources/world/respect/datalayer/db/opds/adapters/lesson001.jsonhyhy rعCi]@Jab'respect-datalayer-http/build.gradle.ktshyQhyQ rkw1 pqferespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/RespectAppDataSourceHttp.kth~}T_h~}T_ r _$9e* _?wrespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/compatibleapps/CompatibleAppDataSourceHttp.kthyQhyQ r ?=˰_]WWJ4drespect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/opds/OpdsDataSourceHttp.kthyQhyQ rcY5B  -respect-datalayer-repository/build.gradle.ktshyQhyQ raKFW5 鑉(wrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/RespectAppDataSourceRepository.kth~}T_h~}T_ r -HhKp' D1ɬ>Irespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/compatibleapps/CompatibleAppDataSourceRepository.kthyQhyQ r|u޸{˝H>vrespect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/opds/OpdsDataSourceRepository.kthyQhyQ r A |I/d5XP1 xrespect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/RespectAppDataSourceRepositoryTest.kthyQhyQ rD5cmULtu9#dErespect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/opds/OpdsRespectRepositoryIntegrationTest.kthyQhyQ rŞ5b_ݹƯEb;erespect-datalayer-repository/src/jvmTest/resources/world/respect/datalayer/repository/opds/index.jsonhyQhyQ r0^9a%Sڂirespect-datalayer-repository/src/jvmTest/resources/world/respect/datalayer/repository/opds/lesson001.jsonhyQhyQ rB*18LyqzK}respect-datalayer/.gitignorehyQhyQ r]C:SNeҷ.horespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/compatibleapps/CompatibleAppsDataSourceLocal.kthyޓXhyޓX t f3CpXLbOY$mjrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/compatibleapps/model/RespectAppManifest.kthyޓXhyޓX t&Xid`XSSS;mWrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/DataLoadStateExt.kthyޓXhyޓX t Lݢď+YGciTrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/HttpClientExt.kthyޓXhyޓX tPE@~ڌҞT9j =Urespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/HttpHeadersExt.kthyޓXhyޓX t_x`KLsXrdBvrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/networkvalidation/NetworkDataSourceValidationHelper.kthyޓXhyޓX tg--c]!*ۓ48jrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/networkvalidation/NetworkValidationInfo.kthyޓXhyޓX tUӠ K-ۛi,`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/OneRosterDataSource.kth~}T_h~}T_ tD Ūuemzprespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/OneRosterRosterDataSource.kthyՓhyՓ t@hٹelvppw' *jrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterBase.kthyՓhyՓ tW;(O,}a-mtrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterBaseStatusEnum.kth~}T_h~}T_ tqřVsķȁ6krespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterClass.kth 0h 0 t"W|ʏ1~Yatrrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterClassGUIDRef.kth~}T_h~}T_ ts1^T ҈:prespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterEnrollment.kthyՓhyՓ th>:c|1mrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterGUIDRef.kthyՓhyՓ txe,&`prespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterGenderEnum.kthyՓhyՓ tЀ/җ1WA-prespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterOrgGUIDRef.kthyՓhyՓ tqxVS[zT[urespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterResourceGUIDRef.kthyՓhyՓ tDז ^Pf-֫jrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterRole.kthyՓhyՓ tąln:|Q>$nrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterRoleEnum.kthyՓhyՓ t&ޏ[}߱n18ّ<{qrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterRoleEnumExt.kthyՓhyՓ tKZ3xq0܍qȐrrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterRoleTypeEnum.kthyՓhyՓ tgvj.'"Djrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterUser.kth~}d6h~}d6 tUK@#yIaBqrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterUserGUIDRef.kthyՓhyՓ tj2 ?ۄ^lrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterUserId.kthyՓhyՓ tM"}+#gDѶfAqrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/oneroster/rostering/model/OneRosterUserProfile.kthyՓhyՓ tM6+4$<6_֟3Vrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/opds/OpdsDataSource.kthyՓhyՓ tsK~An\̃Nĥ]respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/opds/model/OpdsPublication.kthyՓhyՓ t yHy/% &r+jXrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/opds/model/OpdsSeries.kthyՓhyՓ tE0Nj@Nffrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/opds/model/ReadiumContributorObject.kthyՓhyՓ tGIƨ%۳ʗ~}Yrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/opds/model/ReadiumLink.kthyՓhyՓ t )K|Y [crespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/opds/model/ReadiumLinkProperties.kthyՓhyՓ tN^,藗.=:аflrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/opds/model/ReadiumLinkPropertiesEncrypted.kthyՓhyՓ t InR l>]respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/opds/model/ReadiumMetadata.kthyՓhyՓ t_\VT@ ]\respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/opds/model/ReadiumSubject.kthyՓhyՓ t>Р` 6$5a`respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/respect/RespectUserDataSource.kthyՓhyՓ t=;*@: V/Varespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/respect/model/RespectConstants.kthyՓhyՓ tkq@ j5d=3mjB]respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/respect/model/RespectRealm.kth 0h 0 t=g f..HY)irespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/respect/model/invite/RespectInviteInfo.kthyhy tx,k#3٣ tEqrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/respect/model/invite/RespectPendingInviteState.kth 0h 0 t9tqR rZ3rrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/respect/model/invite/RespectRedeemInviteRequest.kthyhy t=.H` Iprespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/serialization/InstantISO8601Serializer.kthyhy t lm+-O,Bŏkrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/serialization/LocalDateOrDateTime.kthyhy t#P 5DH\#CpO}respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/serialization/SingleItemToListTransformerSerializer.kthyhy t4r]+E9%Qj >lrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/serialization/StringListSerializer.kthyhy tCmƛP=f/tprespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/serialization/StringOrObjectSerializer.kthyhy tx?Թeɵ3ecrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/serialization/StringValue.kthyhy t'0rN9 8]okrespect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/serialization/UriStringSerializer.kthz99_hz99_ gB*18LyqzK}respect-lib-cache/.gitignorehz99_hz99_ g X'i&RI@DUrespect-lib-cache/README.mdhz99_hz99_ g C;_OSre?۰'"respect-lib-cache/build.gradle.ktshz99_hz99_ g'!1Tʳ.(Gx5řoJrespect-lib-cache/schemas/com.ustadmobile.libcache.db.UstadCacheDb/15.jsonhz99_hz99_ g`WlzS MNVrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/UstadCacheBuilder.kthz99_hz99_ g!_j>VUOz.wp]3Urespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/base64/Base64Ext.kthz99_hz99_ g#%1l䂃| Аkrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheNsdAndroid.kthz99_hz99_ g$ĢeCW]F_*srespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/distributed/LifeCycleOwnerDistributedCacheInit.kthz99_hz99_ g&9>o|j 0ig Yrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestAndroid.kthz99_hz99_ g'j7;Mo)H$Yrespect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestCreator.kth}h3îh}h3î  Pc8G@MK# T`respect-lib-cache/src/androidMain/kotlin/com/ustadmobile/libcache/webview/OkHttpWebViewClient.kthz99_hz99_ g-${md^/ ٱ&Urespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/CacheEntryToStore.kthz99_hz99_ g.<ި GS*9k0Nrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/CachePaths.kthz99_hz99_ g/oz)Vrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/CachePathsProvider.kthz99_hz99_ g0L ;J arespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/CacheStorageCompressionFilter.kthz99_hz99_ g1:,p9NSrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/CompressionType.kthz99_hz99_ g2m۽C(*]vVarespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/DefaultCacheCompressionFilter.kthz9.{hz9.{ g3\ ϘrOhj|<ҚKYrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/StoreProgressListener.kthz9.{hz9.{ g4`vŲOO],Orespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/StoreResult.kthz9.{hz9.{ g5f]M?t8(Mrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/StringExt.kthz9.{hz9.{ g6#%@hcSsaYNrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/UstadCache.kthz9.{hz9.{ g7m嗀ۻ>Bs_Rrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/UstadCacheImpl.kthz9.{hz9.{ g8 9*+q $RؾUrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/UstadCacheTrimmer.kthz9.{hz9.{ g9F)YJv2!_wF>Rrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/ValidatedEntry.kthz9.{hz9.{ g;W¦Ǧ@("Z_PTrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/base64/Base64Ext.kthz9.{hz9.{ g=;e聆krespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/cachecontrol/CacheControlDirectivesUtil.kthz9.{hz9.{ g>TU|gB{1ۑdt?ٱ-ɮªarespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/AddNewEntryTriggerCallback.kthz9.{hz9.{ gJf0-&.HP#9]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/ClearNeighborsCallback.kthz9.{hz9.{ gK 7mZ _>U J.cSrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/UstadCacheDb.kthz9.{hz9.{ gLYPozaVQ̜)_respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/UstadDbDiscoveryListener.kthz9.{hz9.{ gNMt J_]޳H(trespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/composites/NeighborCacheEntryAndNeighborCache.kthz9.{hz9.{ gP aCDw%A}!:4Xrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/CacheEntryDao.kthz9.{hz9.{ gQ i0X'k˲g[respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/NeighborCacheDao.kthz9.{hz9.{ gRjׄ ĕJ|im< `respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/NeighborCacheEntryDao.kthz9.{hz9.{ gS(y$gz(zW78[respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/NewCacheEntryDao.kthz9.{hz9.{ gTᇚ5*jV|Ywn\respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/RequestedEntryDao.kthz9.{hz9.{ gUku x󙪻[respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/dao/RetentionLockDao.kth}h3îh}h3î gW3bqJ Qt"Zrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/CacheEntry.kthz9=hz9= gXX +V@GQGhAbrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/CacheEntryAndLocks.kth}h3îh}h3î gY%d/c8**n]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/NeighborCache.kth}h3îh}h3î gZXG6J;MΐYZr ,Xbrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/NeighborCacheEntry.kth}h3îh}h3î g[=9vn$D, Z]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/NewCacheEntry.kth}h3îh}h3î g\R+`Xx0zC^respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/RequestedEntry.kth}h3îh}h3î g]PG}"pC )'[O]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/entities/RetentionLock.kthz9=hz9= g_~ZZ8:s+irespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheConstants.kthz9=hz9= g`D͖Ǥk\el&}b`irespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheHashtable.kthz9=hz9= ga7ծ@Tyrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheNeighborDiscoveryListener.kthz9=hz9= gbqOmޝ8﮴vGƢarespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/XXStringHasherExt.kthz9=hz9= gdn3L/K< %7qrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/http/DistributedCacheHttpEndpoint.kthz9=hz9= gfclA8vG&c93lrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedCachePacket.kthz9=hz9= gg$^7~Ռ aMjrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedCachePing.kthz9=hz9= ghbVH؇v2ʑjrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedCachePong.kthz9=hz9= giTtLńi jmɲzrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedCacheWhatWithIdAndPayload.kthz9=hz9= gjJd,Ź_}Yorespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedHashCacheEntry.kthz9=hz9= gk%W`\i.;߫Rlrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/distributed/model/DistributedHashEntries.kthz9=hz9= gmEf* ԰ATXrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/headers/CouponHeader.kthz9=hz9= gnyR|z߁;Obrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/headers/FileMimeTypeHelperImpl.kthz9=hz9= goZTqm-6B:(}W:LV]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/headers/HeadersBuilderExt.kthz9=hz9= gp$@ Pl@xZrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/headers/HttpHeadersExt.kthz9=hz9= gqfҔhyC6T|^respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/headers/LastModifiedHeader.kthz9=hz9= grWYK ̶ OHcZrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/headers/MimeTypeHelper.kthz9=hz9= gsɮ$4Lirespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/okhttp/ResponseCacheabilityCheckerExt.kthz9M hz9M gI:R(sboT`]5`respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/okhttp/UstadCacheInterceptor.kthz9M hz9M g`0^, S*zZHXrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/partial/ContentRange.kthz9M hz9M gy UmW&FB^orespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/partial/RangeRequestNotSatisfiableException.kthz9M hz9M gWԜգd\^respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/ByteArrayResponse.kthz9M hz9M gZnb8w`{;P"vpZrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/CacheResponse.kthz9M hz9M g:,*D-&RH]grespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/HeaderOverrideHttpResponse.kthz9M hz9M g =r$MMl Q]respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/HttpPathResponse.kthz9M hz9M g&(iDX8Q0\respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/HttpResponseExt.kthz9M hz9M g䃔i7_C Aѧ[respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/response/StringResponse.kthz9M hz9M g[aY)ˈ^gOQVrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/ByteBufferExt.kthz9M hz9M g ,++LpÛH\respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/ConcurrentSafeMapOf.kthz9M hz9M g$ɍb#D=Trespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/DatabaseExt.kthz9M hz9M g Mg'20 DSOrespect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/util/LruMap.kthz9M hz9M gՙ3 kh٣SRrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/UstadCacheBuilder.kthz9M hz9M g7qG-RB |ԱZQrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/base64/Base64Ext.kthz9M hz9M gfo{H%C!79<`Urespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestCreator.kthz9M hz9M g5c6^q=LƦMQrespect-lib-cache/src/jvmMain/kotlin/com/ustadmobile/libcache/md5/Md5DigestJvm.kthz9M hz9M gpln$9!@R F vKrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/FileAssert.kthz9\BChz9\BC gAV|#eVRrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/UstadCacheJvmTest.kthz9\BChz9\BC g 3 aޱuQVrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/UstadCacheTrimmerTest.kthz9\BChz9\BC g g{ ʹGœCIjrrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/cachecontrol/CacheControlFreshnessCheckerImplTest.kthz9\BChz9\BC g̛ɦd 3ޤ;BWqrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/cachecontrol/ResponseCacheabilityCheckerImplTest.kthz9\BChz9\BC g-Gy+\י4}*Zurespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/distributed/DistributedCacheHashtableIntegrationTest.kthz9\BChz9\BC g>$vBbCaI)s2d]rrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/distributed/http/DistributedCacheHttpEndpointTest.kthz9\BChz9\BC gDh1%:<\Xmrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/distributed/model/DistributedHashEntriesTest.kthz9\BChz9\BC g,u)\h[[6Xrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/io/RangeInputStreamTest.kthz9\BChz9\BC gFWUpќZiarespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/okhttp/UstadCacheInterceptorTest.kthz9\BChz9\BC g ,P6xߝMi#b2 Yrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/partial/ContentRangeTest.kthz9\BChz9\BC g]]Tw%qugRrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/util/ByteArrayExt.kthz9\BChz9\BC g֒D" J)DZP9SU\Srespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/util/NapierLogInit.kthz9\BChz9\BC gq ew,_e#Yrespect-lib-cache/src/jvmTest/kotlin/com/ustadmobile/libcache/util/NewFileFromResource.kthz9\BChz9\BC g (h.aL yyS:Q@p respect-lib-ihttp-core/README.mdhz9k}hz9k} gCDKmq{PEd'respect-lib-ihttp-core/build.gradle.ktshz9k}hz9k} gw-4OmSrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/ext/StringExt.kthz9k}hz9k} go;v~yث:o_respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/HttpHeaderListExt.kthz9k}hz9k} g` 2*ɽv/]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/HttpHeadersImpl.kthz9k}hz9k} gɺhw_l*!ax)]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHeadersBuilder.kthz9k}hz9k} g#h"(QC#-Yrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeader.kthz9k}hz9k} gTP+WxaT"%Z`>Z9\respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeaderExt.kthz9zƶhz9zƶ gAX+¯9M,]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeaderImpl.kthz9zƶhz9zƶ gœ3>7)Wh8Zrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeaders.kthz9zƶhz9zƶ g?-+J)W-Q R]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/IHttpHeadersExt.kthz9zƶhz9zƶ g=b+psDiarespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/KtorIHeadersAdapter.kthz9zƶhz9zƶ gA4ȏz^-7mǮcrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/MapHttpHeadersAdapter.kthz9zƶhz9zƶ g Cfz͂g$ˁ_respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/MappedHttpHeaders.kthz9zƶhz9zƶ g9EL z.k M}[respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/MergedHeaders.kthz9zƶhz9zƶ g( 'o]j?xL7\hrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/headers/directives/DirectivesToMap.kthz9zƶhz9zƶ g_&D(NƾT]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/BaseHttpRequest.kthz9zƶhz9zƶ gE2!j :p[$Zrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequest.kthz9zƶhz9zƶ g%^ғZ`A 3+iFkfrespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequestWithByteBody.kthz9zƶhz9zƶ gS=ĕ (8ozprespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequestWithFormUrlEncodedData.kthz9zƶhz9zƶ gM&s9frespect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/IHttpRequestWithTextBody.kthz9zƶhz9zƶ g$ ԱoZ8@C \respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/request/RequestBuilder.kthz9zƶhz9zƶ gYW^ \54cwFe*`respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/response/ByteArrayResponse.kthz9zƶhz9zƶ g>-p $\<%j+z`v\respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/response/IHttpResponse.kthz9zƶhz9zƶ gs0[an3d]respect-lib-ihttp-core/src/commonMain/kotlin/com/ustadmobile/ihttp/response/StringResponse.kthz9zƶhz9zƶ g {`Lv<~ )EľqUrespect-lib-ihttp-core/src/jsMain/kotlin/com/ustadmobile/ihttp/ext/ByteArrayExt.js.kthz9zƶhz9zƶ h2.m‚S RԵWrespect-lib-ihttp-core/src/jvmMain/kotlin/com/ustadmobile/ihttp/ext/ByteArrayExt.jvm.kthz9zƶhz9zƶ hB*18LyqzK}&respect-lib-ihttp-iostreams/.gitignorehz9zƶhz9zƶ hZ% -blzmm%respect-lib-ihttp-iostreams/README.mdhz9zƶhz9zƶ ha5Y {I7^,respect-lib-ihttp-iostreams/build.gradle.ktshz9zƶhz9zƶ h恿\\#SAMarespect-lib-ihttp-iostreams/src/commonMain/kotlin/com/ustadmobile/ihttp/iostreams/ByteArrayExt.kthz9zƶhz9zƶ hHAZ9f`:/{7'erespect-lib-ihttp-iostreams/src/commonMain/kotlin/com/ustadmobile/ihttp/iostreams/NullOutputStream.kthz9hz9 hB*18LyqzK}&respect-lib-ihttp-nanohttpd/.gitignorehz9hz9 h5JU6 rlmXƪLZ,respect-lib-ihttp-nanohttpd/build.gradle.ktshz9hz9 h 7䊓š@aG\lrespect-lib-ihttp-nanohttpd/src/commonMain/kotlin/com/ustadmobile/ihttp/nanohttpd/NanoHttpdRequestAdapter.kthz9hz9 hzM!c'!=rrespect-lib-ihttp-okhttp/src/commonMain/kotlin/com/ustadmobile/ihttp/okhttp/response/IHttpResponseOkHttpAdapter.kthz9hz9 h1ƯIDC zT% mrespect-lib-ihttp-okhttp/src/commonMain/kotlin/com/ustadmobile/ihttp/okhttp/response/OkHttpResponseAdapter.kthyhy t_;>40OC*respect-lib-primarykeygen/build.gradle.ktshyhy t 9X竭}jrespect-lib-primarykeygen/src/androidMain/kotlin/world/respect/lib/primarykeygen/GenerateNodeId.android.kthyhy t ].+-+ԉ+K&zFҼ_arespect-lib-primarykeygen/src/commonMain/kotlin/world/respect/lib/primarykeygen/GenerateNodeId.kthyhy t ߅X/g_(Rdv\zfrespect-lib-primarykeygen/src/commonMain/kotlin/world/respect/lib/primarykeygen/PrimaryKeyGenerator.kthyhy t,x@͞Bdγ Jrl}arespect-lib-primarykeygen/src/commonMain/kotlin/world/respect/lib/primarykeygen/ext/InstantExt.kthyhy t> O f0Ҽ>C3brespect-lib-primarykeygen/src/jvmMain/kotlin/world/respect/lib/primarykeygen/GenerateNodeId.jvm.kthy Zhy Z tbނR\!2gx\k krespect-lib-primarykeygen/src/jvmTest/kotlin/world/respect/lib/primarykeygen/DoorPrimaryKeyGeneratorTest.kth||4vh||4v t (ʝSK5PE@ #respect-lib-shared/build.gradle.ktshy Zhy Z t$n(Tj׆BhI^oKrespect-lib-shared/src/androidMain/kotlin/world/respect/Platform.android.kthy Zhy Z t( bbD4K>Yȕjrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCaseAndroid.kth||4vh||4v vOMU<=ЯcL1Qjrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/storage/CachePathsProviderAndroid.kth||4vh||4v vL4UI *p^Bkrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/storage/GetAndroidSdCardDirUseCase.kth||4vh||4v v Ty?p}WM{ wrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/storage/GetOfflineStorageOptionsUseCaseAndroid.kth||4h||4 v֧ʡ-ޙ0H!'MURrespect-lib-shared/src/androidMain/kotlin/world/respect/shared/util/ext/FileExt.kthy Zhy Z t,(˼yjnUrespect-lib-shared/src/commonMain/composeResources/drawable/compose-multiplatform.xmlh 0h 0 t.d Mʜw873(C-Erespect-lib-shared/src/commonMain/composeResources/values/strings.xmlhy Zhy Z t23zȾCQȚz7$\}/Crespect-lib-shared/src/commonMain/kotlin/world/respect/Constants.kthy Zhy Z t3FjL)-5؂hBrespect-lib-shared/src/commonMain/kotlin/world/respect/Greeting.kthy Zhy Z t4f뚰 c0N!t FBrespect-lib-shared/src/commonMain/kotlin/world/respect/Platform.kthy Zhy Z t70(5!Ww˹z)0Ahrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/datasource/RespectAppDataSourceProvider.kthy Zhy Z t8})Zp7kY{ Zcxrdrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/datasource/SingleDataSourceProvider.kthy Zhy Z t:Z \-Y^~L! hrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/directory/RespectDirectoryServersConfig.kthy Zhy Z t=a{D]$U@r=D^respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccount.kth]}Fh]}F t>.ߔ4+2 "Mgerespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccountManager.kthy@hy@ z8iؿg_j{respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/ApproveOrDeclineInviteRequestUseCase.kthy@hy@ z8k%@g"e'Ĉ^krespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/GetInviteInfoUseCase.kthy@hy@ z8la.NDZMR\r` wrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/SubmitRedeemInviteRequestUseCase.kthy@hy@ z8t8QMr>xN?erespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/getfavicons/GetFavIconUseCase.kthy@hy@ z8v*Ѿe\~brespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCase.kthy@hy@ z8y rb0´brespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/licenses/model/SpdxLicense.kthy@hy@ z8zu)F53K{frespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/licenses/model/SpdxLicenseList.kth 0h 0 Croج֌ ,erespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/mock/MockGetInviteInfoUseCase.kth 0h 0 C* ;\e5M_*".v*qrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/mock/MockSubmitRedeemInviteRequestUseCase.kthy@hy@ z8}6~2W`35Vdrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/opds/validator/HttpClientExt.kthy@hy@ z8U^J7J'lrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/respectappmanifest/model/RespectSite.kth||4h||4 v2ݙ:7Fcrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/validator/ValidatorReporter.kth 0h 0 z8jz`u3$ Urespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kth 0h 0 z8xR\ʢnY3o \Vrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/NavCommand.kth 0h 0 z8& +UֺwcgV^grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/RespectComposeNavController.kthy@hy@ z8np@ }bQrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/resources/UiText.kth]}Fh]}F T}#{-CMd 4˝@%SXrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/AvatarColorForName.kth 0h 0 CC49+1/!9Trespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/GenderToString.kth]}Fh]}F T$ev9#$kFHZ8Orespect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/StringExt.kthy@hy@ z8O,6(j{j neb[respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/RespectViewModel.kth  kh  k Ca;[r]XsPsrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/acknowledgement/AcknowledgementViewModel.kth  kh  k z;hA6!LJh}:ps-.nrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/ActionBarButtonUiState.kthy@hy@ z8-PJ[k|U{aց+grespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppActionButton.kthy@hy@ z8_[u: ْYqXdrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppBarColors.kthy@hy@ z8INjЛj CAkrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppBarSearchUiState.kthy@hy@ z8k\\܋rA fTdrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppStateIcon.kth  kh  k z8SKvbY %I hbrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppUiState.kthy@hy@ z8D_a^#/erespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/DisplayString.kthy*zhy*z z8I_mv\Blu"brespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/FabUiState.kthy*zhy*z z8=ˇ~]SD Tfrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/LoadingUiState.kthy*zhy*z z8qiCHu%E]respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/Snack.kthy*zhy*z z8~"\ǸWG?SMjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/SnackBarDispatcher.kth~}d6h~}d6 pQ:$Zzjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/detail/AppsDetailViewModel.kthy*zhy*z p 埽`c}Jt#olrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/enterlink/EnterLinkViewModel.kth~}d6h~}d6 p[03oTvb* vw?mrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/launcher/AppLauncherViewModel.kthy*zhy*z p pe1}g,Serespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/list/AppListViewModel.kthy*zhy*z p \bR̓i+rjrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignments/AssignmentViewModel.kthy*zhy*z p9?sX?p_respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/clazz/ClazzViewModel.kthy*zhy*z p :Ի 0G_TayMzrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kthy*zhy*z p'GUƦe,Q;g:,vrespect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/list/LearningUnitListViewModel.kth  kh  k C qL|fˎhrespect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/opds/validator/ValidationMessageExt.kthy: hy: pAIc?mu}respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/respectappmanifest/validator/RespectAppManifestValidator.kthy: hy: pPe pLHa\!g brespect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/validator/DiscardOutputStream.kthy: hy: p2n.1Sճ^respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/validator/HttpResponseExt.kth}h3îh}h3î o$} hfv/ Vprespect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/validator/ValidateHttpResponseForUrlUseCase.kthy: hy: pXQ3{ FwTi7Nz[respect-lib-shared/src/jvmMain/resources/world/respect/domain/validator/README-licenses.txthyIbhyIb p~7% rfnZUUrespect-lib-shared/src/jvmMain/resources/world/respect/domain/validator/licenses.jsonhyIbhyIb pkhaHɵs+{*4kLrespect-lib-shared/src/jvmTest/kotlin/world/respect/OpdsSerializationTest.kthyIbhyIb p<`~QBv!u.JZrespect-lib-shared/src/jvmTest/kotlin/world/respect/domain/validator/HttpLinkHeaderTest.kthyIbhyIb pNؔx^>eZ9)_respect-lib-shared/src/jvmTest/kotlin/world/respect/domain/validator/TestValidationScenarios.kthyIbhyIb pГζviWI<:UUd'respect-server/build.gradle.ktshy2hy2 q,_ ᢔ]kϨ@z;respect-server/src/main/kotlin/world/respect/Application.kthy2hy2 q.>ׁhŘh qI7-respect-server/src/main/resources/logback.xmlhy2hy2 q0gWuTA~ Ѥ!respect-test-end-to-end/README.mdh Nh N q3KmA&/gtR|(Nrespect-test-end-to-end/android-maestro/e2e-tests/001_browse_lessons_test.yamlh Nh N q5YRKxFE8?uyQOrespect-test-end-to-end/test-description/001_browse_lessons_test_description.mdh Nh N <XOjTETZEUsettings.gradle.ktsTREE=570 21 󋴄cȂK>(h.fleet1 0 G;ܼ,yʙHe)Tgradle3 1 r;s4ب(wrapper2 0 oꙭۆzWy5ZocomposeApp2 1 %w8Ud osrc2 1 J] k07Nܕ9desktopMain2 1 +,6ZJcxHgLresources2 1 4:hF#t@$8 ҁGimg2 0 'df$(respect-cli3 1 2wpp*src1 1 . I]hmain1 1 p<s$ java1 1 r.!clI˷world1 1 fG֮CX)arespect1 1 4qc]*TA|xclitools1 0 )u؏N፫^respect-server3 1 @Uу܀#vcsrc2 1 RD}%R\^QI`4=main2 2 i.*#_X vI} Q^kkotlin1 1 @p AƑsworld1 1 k;Z7Bu1respect1 0 f3&}6͎aresources1 0 ?'؉4bȫprespect-lib-util6 1 MKTU2LC /lsrc5 3 Ob;f*˴;jvmMain1 1 q5DQkotlin1 1 He]ZRDۨț1tworld1 1 {)% ârespect1 1 cO25Q0aAMUR/*wlibutil1 0 ZښJ*" ,ZjvmTest1 1 HS5T!kotlin1 1 ݻw !SDkILcommonMain64 1 11Sl2tkotlin64 1 e&mWeF>[world64 1 5Sr\~c\]!8respect64 1 H-SO{*xdatalayer64 7 sTgy @8NJtݾmext3 0 .K=p6?bXdRopds19 1  ױYQƵsmodel17 0 UVtGcF2\d*2shared7 1 3ܝ[& ]łUMserialization7 0 5?wÌX respect6 1 ZtG\,dmodel5 1  W[8cwpinvite3 0 %Fb^݀ oneroster19 1 \ष`C\ ;?rostering18 1 $$h^~Omodel17 0 *H;LB!q|;compatibleapps3 1 ](`3ys"vv model1 0 #iM5) @headers7 0 @ܾy,9\$ K)logging2 0 l.Y]H0cfCpartial2 0 '§ {VD~response6 0 Wa_"$\]integrity1 0 ٫#*ӧdistributed11 2 WqE> /I'!(@http1 0 ٓj}IartGFTmodel6 0 cۯf`~cachecontrol9 0 u3{t7sandroidMain7 1 Om mQ ъkotlin7 1 9q܅-?LɍԌ,ycom7 1 .o#+ ,W!ustadmobile7 1 g "Ƽnmlibcache7 4 N;~YfggXImd52 0 oA6h,sdkTAbase641 0 Ԗp?9El] webview1 0 ]eb\distributed2 0 0Ya9Iv%C+݈schemas1 1 (O_|\R.[!d com.ustadmobile.libcache.db.UstadCacheDb1 0 R 4ZnM`K8I respect-lib-shared139 1 dM%F;@src138 5 )>HmVFdjvmMain15 2 4+zdJe8:E kotlin13 1 _fW8ȩۉV _ world13 1 8V9..Krespect13 1 deL2Xq< 1shared12 2 UYnAxh-B=1." di1 0 G E +[^ fdomain11 4 fiDzŁ}opds6 1 'M$0y{Xvalidator6 0 "=l:;rAUvalidator3 0 `MR,~hh"getfavicons1 0 ~1+*bgi!rrespectappmanifest1 1 pbTGN_,ZX:validator1 0 t^>vȉresources2 1 k,';˶,/aʦworld2 1 ZHe)*i a⛁respect2 1 —jHEtdomain2 1 %FUyyr\validator2 0 8Ox[1RjvmTest41 2 L0 .%N.xkotlin5 1  VR91ovDƮworld5 1 M ^#!aoplrespect5 2 G 8ns5c 6domain2 1 N{c0V_/ Qvalidator2 0 P{ﱡ!~JhAtestutil2 0 o%bŔ]a]resources36 1 ǑꯔyNE7fʡworld36 1 U­!TG2^YlbLrespect36 1 }(mQiXE']Nvalidator36 4 ;N؏t,(̥Ycase_valid10 1 r݅E5OTograde17 1 Ut򃀉NmYJlesson0016 0 -p6<``S/rHcase_no_resources_in_manifest10 1 ҆ ^g}*COgrade17 1 Nr h2i󐫸r2lesson0016 0 YG;ildcase_manifest_not_discoverable10 1 ?\)pK;|;grade17 1 O{ x 'lesson0016 0 G)›aJ1çRmcase_manifest_resources_do_not_exist6 1 "1ycfL*hgrade13 1 < -IDMElesson0012 0 Ws^*:uQLԬdcommonMain69 3 >hKny.kotlin66 1 f^{RE q*world66 1 d5o&J7KqFp+respect66 1 ]!bsIshared63 7 Kʟ_hr#util3 0 Nw,wwGmodel2 0 /T@c}%0vpihlaunchapp1 0 պ<6L՞pvalidator6 0 aAܺq7 getfavicons1 0 px؉h|I'respectappmanifest1 1 XukUրkA%@model1 0 04}0qU|V Zdirectory1 0 Cr(呇DRǵcImresources1 0 D 2pviewmodel31 9 $ItPdWL5 (app11 1 ϳLk\3 /vqFappstate11 0 a$$WqD#apps4 4 9gшgn|[~list1 0 ^-+RFӴdetail1 0 8BY%6͍Ilauncher1 0 -(%^vĠ>Ad%enterlink1 0 z̞m(fiagclazz1 0 ER)Xij 6Mreport1 0 Vs b1<^pmanageuser8 7 Zϣ?(9ȑlogin1 0 ЃIʀY9̡8signup1 0 oW-lUS cM<4profile2 0 Mԑ uN8,`confirmation1 0 & [\'8Aէjoinclazzwithcode1 0 02list1 0 > Xٷacknowledgement1 0 o;gP)'sdatasource2 0 ׇM= M7navigation3 0 $cQ!y8yJRresources1 0 jNĚoK{composeResources2 2 gs-=<$Hk values1 0 4w:&D0]0۰]drawable1 0 _{ #vsn?commonTest7 1 a6D(B" resources7 0 Ebbrespect6 1 =2ⓣ)p{0asmHshared5 2 S%,<ؽP;util1 1 (mV un)ӌext1 0 XMPEI%[domain4 2 oIX X~&Lstorage3 0 5=>ˍN\C'ܭ.launchapp1 0 1*2AVtd sfWVrespect-lib-xxhash3 1 $@sksrc2 1 /%f:|m;7+commonMain2 1 ct0FK`+kotlin2 1 SwD~noAworld2 1 ˙Jb"URﻆrespect2 1 N?h؁͝ilibxxhash2 1 Fq1&S@`5jvmimpl1 0 [֎*g~e|respect-app-compose78 1 C! &q>\XFsrc75 3 qxGK&ӳɠLcommonMain39 1 t{nAPkotlin39 2 hԼ~vO@qFg{gZƠtheme3 0 ge3.I*ۦs)hEworld36 1 ѓ4vwFȬQrespect36 3 &@j|vhK@Happ33 6 kQIYa*Р61o{app6 0 h$"#䲋Ԫutil1 1 :,;pj'+mvext1 0 iBVeDview17 7 5\Zzy}=Kʼapps4 4 S߈a۞ ܁$wlist1 0 R~Õƺ~@@detail1 0 ܕoE( tlauncher1 0 C+KQ  ݶ 6denterlink1 0 ";IZO*xoaG8clazz1 0 ǯHC&_o1report1 0 / q"pGmanageuser7 7 7"ezlogin1 0 ]{Uw1H.signup1 0 v?~rXC)7confirmation1 0 %?PoL ؄_*hcreateaccount1 0 ~]q{)!i <؃joinclazzwithcode1 0 ^qd,,Rx ݚEwZres20 14 -8DOœcxml1 0 A;gcQPrqmenu1 0 ,#@}l]ŀܚlayout1 0 !Q7|]a]pS?values3 0 {*@AwP3drawable5 0 V H ¬p3>pvalues-v231 0 cǹ'@;Wsmipmap-hdpi1 0 Z4q񳫪x{ ͝mipmap-mdpi1 0 TՈRχfռ9{drawable-v241 0 UȤ.F~`omipmap-xhdpi1 0 t#geQ6Ovalues-night1 0 1I8H]"ecmipmap-xxhdpi1 0 Kaf?@A̞sGmipmap-xxxhdpi1 0 H53RҐW$mipmap-anydpi-v261 0 P=Q$Aw9okotlin10 1 Ex 志4world10 1 Kԫh,3b+utrespect10 2 ۢƂtryxapp3 2 bPԭ+[>capp1 0 eV tn{§components2 1 FI;_#oewebview1 0 `GOD \#"Zimages1 0  t;cQF0rs>desktopMain5 2 m#l1Opkotlin4 1 =90 H{v`9world4 1 Ox8_ ;$9krespect4 2 9pf:xʨl<[Vmodel12 0 jG:JHh%w*respect-datalayer-db43 2 r\ #~-_slmsrc40 2 ݷ$p|$j#i>jvmTest2 2  @\IG(kotlin1 1 G.(jB'iworld1 1 ;RmZ R`respect1 1 Ƣl%/cm@R薐]datalayer1 1  shared8 4 '\̤=) yHext2 0 02!`<ߚslDX/daos1 0 ;޶ғKJFv` adapters2 0 RUyѺN5 }:-entities1 0 Wk,M7Q9wDƥcompatibleapps6 3 ~|sD$B¾}daos2 0 vt]ݡoHcyNjsqadapters1 0 #]>Lzumentities2 0 XdX j5䤴xschemas2 2 _F1#{y4+world.respect.datalayer.db.RespectDatabase1 0 w[SCg$%dworld.respect.datasource.db.RespectDatabase1 0 9աeyw.0respect-datalayer-http4 1 +!1C ʟX!src3 1 PҪ MEJi&commonMain3 1 , N&[U:kotlin3 1 -a="O ;8~ Mworld3 1 *S{<@_ܧrespect3 1 xd{M"%!ǎdatalayer3 1 +Wb>?PJB2t=#0:ustadmobile1 1 X;}g;By(ihttp1 1 #dYVy@,sJiext1 0 3OR)nge?$GL jvmMain1 1 mQuA(䯭#94e1ۨm鬳^Austadmobile26 1 ?1IV_X%Bihttp26 4 SZou.Cext4 0 yHi4Io/0]cs>headers13 1 %̯'ڑGCG䂳directives1 0 ysn! 1TM Eꆯrequest6 0 [Pkotlin1 1 MEg:潰fKKqcom1 1 =P`Vu6ustadmobile1 1 HY wv~ihttp1 1 '-[=ݫ@jext1 0 c^lvI ށrespect-test-end-to-end3 2 90@TڤM`android-maestro1 1 'vă/ \%ƭe2e-tests1 0 ve՞2S?@p\test-description1 0 4Ka@o }Ugrespect-lib-ihttp-okhttp11 1 p?d]+/src7 1 ?WvۄԈė/,|qcommonMain7 1 \{1;aɲp4!eykotlin6 1 Q{/MŐ ]`:com6 1 %m~FL~2kErZustadmobile6 1 8b@d#ihttp6 1 m<5]Ш 0T8okhttp6 3 *;]Q< @6headers2 0 L)9:o Z request2 0 D)YLresponse2 0 ֊C@4NZtt1< respect-lib-primarykeygen7 1 'ϻA)/GEZY\Xsrc6 4 FɜDFx-"tT]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 PIUYrE1kotlin3 1 E*%uWTcq5world3 1 ,IQj>\_A9Lrespect3 1 & ۬ X7lib3 1 $GL{n,е7]6b6primarykeygen3 1 HZn9hElGH4$ext1 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-repository8 1 ;޹m~=Tsrc7 2 #t ' jvmTest4 2 ?~mw^&kotlin2 1 >AfoK Νq'world2 1 ƝmhiW<%H*Æirespect2 1 wrozjarvdatalayer2 1 O>@)uؤAXwžrepository2 1 . >oDhwh|*opds1 0 _thtk906Djresources2 1 ~|)z }yi~l world2 1 NE0{*}respect2 1 }[6 datalayer2 1 _xpa/M g;repository2 1 mriքJ'ڮn-9opds2 0 @R0qBJ~kcommonMain3 1 7G'+[a/44'n1xЬkotlin3 1 @B2&Bbworld3 1 4_Zvv3respect3 1 l:`PX(ZN`datalayer3 1 6:rrepository3 2 ܉tp&x Awopds1 0 1@*v%compatibleapps1 0 Aeo5 dRҤ VIItgkx0