Showing preview only (1,243K chars total). Download the full file or copy to clipboard to get everything.
Repository: devrath/KotlinAlchemy
Branch: main
Commit: b87ccbc3cba7
Files: 421
Total size: 1.0 MB
Directory structure:
gitextract_70x6tywz/
├── .gitignore
├── .idea/
│ ├── .gitignore
│ ├── .name
│ ├── compiler.xml
│ ├── jarRepositories.xml
│ └── misc.xml
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
└── application/
├── .idea/
│ ├── .gitignore
│ ├── .name
│ ├── compiler.xml
│ ├── gradle.xml
│ ├── jarRepositories.xml
│ ├── misc.xml
│ └── modules.xml
├── KotlinConcepts/
│ ├── .gitignore
│ ├── .idea/
│ │ ├── .gitignore
│ │ ├── .name
│ │ ├── appInsightsSettings.xml
│ │ ├── compiler.xml
│ │ ├── deploymentTargetDropDown.xml
│ │ ├── deploymentTargetSelector.xml
│ │ ├── gradle.xml
│ │ ├── inspectionProfiles/
│ │ │ └── Project_Default.xml
│ │ ├── kotlinc.xml
│ │ ├── material_theme_project_new.xml
│ │ ├── migrations.xml
│ │ ├── misc.xml
│ │ ├── other.xml
│ │ └── runConfigurations.xml
│ ├── app/
│ │ ├── .gitignore
│ │ ├── build.gradle.kts
│ │ ├── proguard-rules.pro
│ │ └── src/
│ │ ├── androidTest/
│ │ │ └── java/
│ │ │ └── com/
│ │ │ └── istudio/
│ │ │ └── app/
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main/
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── assets/
│ │ │ │ └── stockdata.csv
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── istudio/
│ │ │ │ └── app/
│ │ │ │ ├── application/
│ │ │ │ │ └── CurrentApplication.kt
│ │ │ │ ├── data/
│ │ │ │ │ └── mock/
│ │ │ │ │ ├── FlowMockApi.kt
│ │ │ │ │ ├── FlowMockData.kt
│ │ │ │ │ └── MockNetworkInterceptor.kt
│ │ │ │ ├── main/
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ └── MainViewModel.kt
│ │ │ │ ├── modules/
│ │ │ │ │ ├── module_demos/
│ │ │ │ │ │ ├── basic_fundamentals/
│ │ │ │ │ │ │ ├── ui/
│ │ │ │ │ │ │ │ ├── KotlinBasicsDemo.kt
│ │ │ │ │ │ │ │ └── KotlinBasicsDemoVm.kt
│ │ │ │ │ │ │ └── utils/
│ │ │ │ │ │ │ ├── Student.kt
│ │ │ │ │ │ │ └── multipleInheritance/
│ │ │ │ │ │ │ ├── in_java/
│ │ │ │ │ │ │ │ └── InJava.java
│ │ │ │ │ │ │ └── in_kotlin/
│ │ │ │ │ │ │ └── InKotlin.kt
│ │ │ │ │ │ ├── channels/
│ │ │ │ │ │ │ ├── ChannelsDemo.kt
│ │ │ │ │ │ │ └── ChannelsDemoVm.kt
│ │ │ │ │ │ ├── coroutines/
│ │ │ │ │ │ │ ├── CoroutinesDemo.kt
│ │ │ │ │ │ │ ├── CoroutinesDemoVm.kt
│ │ │ │ │ │ │ ├── compare_join_and_async/
│ │ │ │ │ │ │ │ ├── CompareJoinAsyncDemo.kt
│ │ │ │ │ │ │ │ └── CompareJoinAsyncDemoVm.kt
│ │ │ │ │ │ │ ├── coroutine_cancellation/
│ │ │ │ │ │ │ │ ├── CoroutinesCancellationSelection.kt
│ │ │ │ │ │ │ │ ├── ensure_active_demo/
│ │ │ │ │ │ │ │ │ ├── EnsureActiveDemo.kt
│ │ │ │ │ │ │ │ │ └── EnsureActiveDemoVm.kt
│ │ │ │ │ │ │ │ ├── is_active_demo/
│ │ │ │ │ │ │ │ │ ├── IsActiveDemo.kt
│ │ │ │ │ │ │ │ │ └── IsActiveDemoVm.kt
│ │ │ │ │ │ │ │ ├── non_cancellable_job/
│ │ │ │ │ │ │ │ │ ├── NonCancellableDemo.kt
│ │ │ │ │ │ │ │ │ └── NonCancellableDemoVm.kt
│ │ │ │ │ │ │ │ └── root_children_cencel_demo/
│ │ │ │ │ │ │ │ ├── RootChildrenCancelDemo.kt
│ │ │ │ │ │ │ │ └── RootChildrenCancelDemoVm.kt
│ │ │ │ │ │ │ ├── dispatchers/
│ │ │ │ │ │ │ │ ├── DispatchersDemo.kt
│ │ │ │ │ │ │ │ └── DispatchersDemoVm.kt
│ │ │ │ │ │ │ ├── exception_handeling/
│ │ │ │ │ │ │ │ ├── ExceptionHandlingSelectionDemo.kt
│ │ │ │ │ │ │ │ ├── using_async/
│ │ │ │ │ │ │ │ │ ├── UsingAsyncExceptionHandleDemo.kt
│ │ │ │ │ │ │ │ │ └── UsingAsyncExceptionHandleDemoVm.kt
│ │ │ │ │ │ │ │ └── using_launch/
│ │ │ │ │ │ │ │ ├── UsingLaunchExceptionHandleDemo.kt
│ │ │ │ │ │ │ │ └── UsingLaunchExceptionHandleDemoVm.kt
│ │ │ │ │ │ │ ├── job/
│ │ │ │ │ │ │ │ ├── JobDemoSelection.kt
│ │ │ │ │ │ │ │ └── JobDemoSelectionVm.kt
│ │ │ │ │ │ │ ├── launch_and_withcontext/
│ │ │ │ │ │ │ │ ├── LaunchAndWithContextDemo.kt
│ │ │ │ │ │ │ │ └── LaunchAndWithContextDemoVm.kt
│ │ │ │ │ │ │ ├── simple_structured_concurrency/
│ │ │ │ │ │ │ │ ├── SimpleStructuredConcurrencyDemo.kt
│ │ │ │ │ │ │ │ └── SimpleStructuredConcurrencyDemoVm.kt
│ │ │ │ │ │ │ ├── suspend_and_launch_demo/
│ │ │ │ │ │ │ │ ├── NonCancellableDemoVm.kt
│ │ │ │ │ │ │ │ └── SuspendAndLaunchDemo.kt
│ │ │ │ │ │ │ ├── using_async_await/
│ │ │ │ │ │ │ │ ├── UsingAsyncAwaitDemo.kt
│ │ │ │ │ │ │ │ └── UsingAsyncAwaitDemoVm.kt
│ │ │ │ │ │ │ └── using_join/
│ │ │ │ │ │ │ ├── UsingJoinDemo.kt
│ │ │ │ │ │ │ └── UsingJoinDemoVm.kt
│ │ │ │ │ │ ├── flows/
│ │ │ │ │ │ │ ├── FlowsDemo.kt
│ │ │ │ │ │ │ ├── FlowsDemoVm.kt
│ │ │ │ │ │ │ └── modules/
│ │ │ │ │ │ │ ├── collect_as_state_with_lifecycle/
│ │ │ │ │ │ │ │ ├── CollectAsStateWithLifeCycleDemo.kt
│ │ │ │ │ │ │ │ └── CollectAsStateWithLifeCycleVm.kt
│ │ │ │ │ │ │ ├── compose_and_flatten_flows/
│ │ │ │ │ │ │ │ ├── ComposeAndFlattenFlows.kt
│ │ │ │ │ │ │ │ └── ComposeAndFlattenFlowsVm.kt
│ │ │ │ │ │ │ ├── flatten_flows/
│ │ │ │ │ │ │ │ ├── FlattenFlowsDemo.kt
│ │ │ │ │ │ │ │ └── FlattenFlowsDemoVm.kt
│ │ │ │ │ │ │ ├── flow_basics/
│ │ │ │ │ │ │ │ ├── chapters/
│ │ │ │ │ │ │ │ │ └── display_data_from_server/
│ │ │ │ │ │ │ │ │ ├── DisplayDataFromServerDemo.kt
│ │ │ │ │ │ │ │ │ ├── DisplayDataFromServerVm.kt
│ │ │ │ │ │ │ │ │ └── composables/
│ │ │ │ │ │ │ │ │ └── StockItem.kt
│ │ │ │ │ │ │ │ ├── data/
│ │ │ │ │ │ │ │ │ ├── StockData.kt
│ │ │ │ │ │ │ │ │ ├── StockPriceDataSource.kt
│ │ │ │ │ │ │ │ │ └── api/
│ │ │ │ │ │ │ │ │ └── MockApiBehavior.kt
│ │ │ │ │ │ │ │ ├── state/
│ │ │ │ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ │ │ │ └── ui/
│ │ │ │ │ │ │ │ ├── FlowBasics.kt
│ │ │ │ │ │ │ │ └── FlowBasicsVm.kt
│ │ │ │ │ │ │ ├── intermediate_operators/
│ │ │ │ │ │ │ │ ├── IntermediateOperators.kt
│ │ │ │ │ │ │ │ └── IntermediateOperatorsVm.kt
│ │ │ │ │ │ │ ├── mutable_state_of_flow/
│ │ │ │ │ │ │ │ ├── MutableStateOfFlowDemo.kt
│ │ │ │ │ │ │ │ └── MutableStateOfFlowDemoVm.kt
│ │ │ │ │ │ │ ├── state_and_shared_flows/
│ │ │ │ │ │ │ │ ├── StateAndSharedFlowsDemo.kt
│ │ │ │ │ │ │ │ └── StateAndSharedFlowsDemoVm.kt
│ │ │ │ │ │ │ └── terminal_operators/
│ │ │ │ │ │ │ ├── TerminalOperators.kt
│ │ │ │ │ │ │ └── TerminalOperatorsVm.kt
│ │ │ │ │ │ ├── higher_order_functions/
│ │ │ │ │ │ │ └── ui/
│ │ │ │ │ │ │ ├── HigherOrderFunctionDemo.kt
│ │ │ │ │ │ │ └── HigherOrderFunctionDemoVm.kt
│ │ │ │ │ │ ├── kotlin_annotations/
│ │ │ │ │ │ │ ├── ui/
│ │ │ │ │ │ │ │ ├── KotlinAnnotationsDemoVm.kt
│ │ │ │ │ │ │ │ └── kotlinAnnotationsDemo.kt
│ │ │ │ │ │ │ └── utils/
│ │ │ │ │ │ │ ├── jvmField/
│ │ │ │ │ │ │ │ ├── JavaPerson.java
│ │ │ │ │ │ │ │ ├── KotlinPerson.kt
│ │ │ │ │ │ │ │ └── init/
│ │ │ │ │ │ │ │ ├── JavaInstanceJf.java
│ │ │ │ │ │ │ │ └── KotlinInstanceJf.kt
│ │ │ │ │ │ │ ├── jvmOverloads/
│ │ │ │ │ │ │ │ ├── Student1.kt
│ │ │ │ │ │ │ │ ├── Student2.kt
│ │ │ │ │ │ │ │ └── init/
│ │ │ │ │ │ │ │ ├── JavaInstanceJo.java
│ │ │ │ │ │ │ │ └── KotlinInstanceJo.kt
│ │ │ │ │ │ │ ├── jvmstatic/
│ │ │ │ │ │ │ │ ├── Cinema.kt
│ │ │ │ │ │ │ │ └── init/
│ │ │ │ │ │ │ │ ├── JavaInstanceJs.java
│ │ │ │ │ │ │ │ └── KotlinInstanceJs.kt
│ │ │ │ │ │ │ ├── nullableAndNotNull/
│ │ │ │ │ │ │ │ └── SuperHero.java
│ │ │ │ │ │ │ ├── stringDef/
│ │ │ │ │ │ │ │ ├── UserManager.kt
│ │ │ │ │ │ │ │ └── UserStatus.kt
│ │ │ │ │ │ │ └── stringRes/
│ │ │ │ │ │ │ ├── HomeNavItem.kt
│ │ │ │ │ │ │ └── init/
│ │ │ │ │ │ │ ├── JavaInstanceSr.java
│ │ │ │ │ │ │ └── KotlinInstanceSr.kt
│ │ │ │ │ │ ├── nested_vs_inner/
│ │ │ │ │ │ │ ├── ui/
│ │ │ │ │ │ │ │ ├── NestedVsInner.kt
│ │ │ │ │ │ │ │ └── NestedVsInnerVm.kt
│ │ │ │ │ │ │ └── utils/
│ │ │ │ │ │ │ └── OuterClass.kt
│ │ │ │ │ │ ├── sealed_class/
│ │ │ │ │ │ │ ├── ui/
│ │ │ │ │ │ │ │ ├── SealedClassDemo.kt
│ │ │ │ │ │ │ │ └── SealedClassDemoVm.kt
│ │ │ │ │ │ │ └── utils/
│ │ │ │ │ │ │ ├── Student/
│ │ │ │ │ │ │ │ └── Student.kt
│ │ │ │ │ │ │ ├── animals/
│ │ │ │ │ │ │ │ ├── Animal.kt
│ │ │ │ │ │ │ │ ├── Monkey.kt
│ │ │ │ │ │ │ │ └── Tiger.kt
│ │ │ │ │ │ │ ├── payment/
│ │ │ │ │ │ │ │ └── Payment.kt
│ │ │ │ │ │ │ └── superHero/
│ │ │ │ │ │ │ ├── Hero.kt
│ │ │ │ │ │ │ └── Payment.kt
│ │ │ │ │ │ └── type_alias/
│ │ │ │ │ │ ├── ui/
│ │ │ │ │ │ │ ├── TypeAlias.kt
│ │ │ │ │ │ │ └── TypeAliasVm.kt
│ │ │ │ │ │ └── utils/
│ │ │ │ │ │ └── TypeAliasReferences.kt
│ │ │ │ │ ├── module_exercises/
│ │ │ │ │ │ ├── ExerciseSelection.kt
│ │ │ │ │ │ ├── exercise_1/
│ │ │ │ │ │ │ ├── Exercise1.kt
│ │ │ │ │ │ │ └── Exercise1vm.kt
│ │ │ │ │ │ └── exercise_2/
│ │ │ │ │ │ ├── Exercise2.kt
│ │ │ │ │ │ └── Exercise2vm.kt
│ │ │ │ │ └── module_selection/
│ │ │ │ │ ├── ModuleDemo.kt
│ │ │ │ │ └── ModuleSelectionScreen.kt
│ │ │ │ ├── ui/
│ │ │ │ │ ├── composables/
│ │ │ │ │ │ ├── Buttons.kt
│ │ │ │ │ │ └── Text.kt
│ │ │ │ │ └── theme/
│ │ │ │ │ ├── Color.kt
│ │ │ │ │ ├── Shape.kt
│ │ │ │ │ ├── Theme.kt
│ │ │ │ │ └── Type.kt
│ │ │ │ └── utils/
│ │ │ │ ├── base/
│ │ │ │ │ └── BaseViewModel.kt
│ │ │ │ ├── endpoints/
│ │ │ │ │ └── EndPointSimulation.kt
│ │ │ │ ├── extensions/
│ │ │ │ │ ├── Activity.kt
│ │ │ │ │ └── Coroutine.kt
│ │ │ │ └── log/
│ │ │ │ └── ThreadInfoLogger.kt
│ │ │ └── res/
│ │ │ ├── drawable/
│ │ │ │ ├── ic_launcher_background.xml
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── values/
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── themes.xml
│ │ │ └── xml/
│ │ │ ├── backup_rules.xml
│ │ │ └── data_extraction_rules.xml
│ │ └── test/
│ │ └── java/
│ │ └── com/
│ │ └── istudio/
│ │ └── app/
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle.kts
│ ├── gradle/
│ │ └── wrapper/
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradle.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle.kts
└── Sample-Coroutines/
├── .idea/
│ ├── .name
│ ├── compiler.xml
│ ├── deploymentTargetDropDown.xml
│ ├── deploymentTargetSelector.xml
│ ├── gradle.xml
│ ├── kotlinc.xml
│ ├── material_theme_project_new.xml
│ ├── migrations.xml
│ ├── misc.xml
│ ├── modules.xml
│ ├── other.xml
│ └── workspace.xml
├── README.md
├── app/
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src/
│ ├── androidTest/
│ │ └── java/
│ │ └── com/
│ │ └── demo/
│ │ └── code/
│ │ └── ExampleInstrumentedTest.kt
│ ├── main/
│ │ ├── AndroidManifest.xml
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── demo/
│ │ │ └── code/
│ │ │ ├── CoroutineUsecasesOnAndroidApplication.kt
│ │ │ ├── activities/
│ │ │ │ ├── JobsActivity.kt
│ │ │ │ ├── MainActivity.kt
│ │ │ │ ├── SelectionActivity.kt
│ │ │ │ └── SuspendingFuncActivity.kt
│ │ │ ├── base/
│ │ │ │ ├── BaseActivity.kt
│ │ │ │ ├── BaseViewModel.kt
│ │ │ │ ├── UseCase.kt
│ │ │ │ ├── UseCaseActivity.kt
│ │ │ │ ├── UseCaseAdapter.kt
│ │ │ │ └── UseCaseCategoryAdapter.kt
│ │ │ ├── mock/
│ │ │ │ ├── MockAnalyticsApi.kt
│ │ │ │ ├── MockApi.kt
│ │ │ │ └── MockData.kt
│ │ │ ├── modules/
│ │ │ │ ├── legacycode/
│ │ │ │ │ ├── LegacyCallbackSampleOne.kt
│ │ │ │ │ ├── LegacyCallbackSampleTwo.kt
│ │ │ │ │ └── User.kt
│ │ │ │ ├── observabletypes/
│ │ │ │ │ ├── ObservableTypesActivity.kt
│ │ │ │ │ └── ObservableTypesViewModel.kt
│ │ │ │ └── placeholder
│ │ │ ├── playground/
│ │ │ │ ├── cancellation/
│ │ │ │ │ ├── 1_cancellation.kt
│ │ │ │ │ └── 2_cooperative_cancellation.kt
│ │ │ │ ├── coroutine_scope.kt
│ │ │ │ ├── coroutinebuilders/
│ │ │ │ │ ├── 1_launch.kt
│ │ │ │ │ └── 2_async.kt
│ │ │ │ ├── exceptionhandling/
│ │ │ │ │ ├── 1_try_catch.kt
│ │ │ │ │ ├── 2_coroutine_exception_handler.kt
│ │ │ │ │ ├── 3_try_catch_vs_exception_handler.kt
│ │ │ │ │ ├── 4_launch_and_async.kt
│ │ │ │ │ ├── 5_exception_handling_specifics_coroutineScope.kt
│ │ │ │ │ └── 6_exception_handling_specifics_supervisorScope.kt
│ │ │ │ ├── fundamentals/
│ │ │ │ │ ├── 10_how_delay_works.kt
│ │ │ │ │ ├── 1_routines.kt
│ │ │ │ │ ├── 2_coroutines.kt
│ │ │ │ │ ├── 3_routines_threads.kt
│ │ │ │ │ ├── 4_coroutines_with_thread_info.kt
│ │ │ │ │ ├── 5_starting_lots_of_coroutines.kt
│ │ │ │ │ ├── 7_starting_lots_of_threads.kt
│ │ │ │ │ ├── 8_suspending_coroutines.kt
│ │ │ │ │ └── 9_coroutine_in_different_threads.kt
│ │ │ │ └── structuredconcurrency/
│ │ │ │ ├── 1_coroutines_need_to_be_started_in_scope.kt
│ │ │ │ ├── 2_job_hierarchy.kt
│ │ │ │ ├── 3_parents_wait_for_children.kt
│ │ │ │ ├── 4_cancelling_parents_and_children.kt
│ │ │ │ ├── 5_exception_propagation.kt
│ │ │ │ ├── 6_globalscope.kt
│ │ │ │ └── 7_scoping_functions.kt
│ │ │ ├── usecases/
│ │ │ │ ├── channels/
│ │ │ │ │ └── usecase1/
│ │ │ │ │ └── ChannelUseCase1Activity.kt
│ │ │ │ ├── coroutines/
│ │ │ │ │ ├── usecase1/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── PerformSingleNetworkRequestActivity.kt
│ │ │ │ │ │ ├── PerformSingleNetworkRequestViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase10/
│ │ │ │ │ │ ├── CalculationInBackgroundActivity.kt
│ │ │ │ │ │ ├── CalculationInBackgroundViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase11/
│ │ │ │ │ │ ├── CooperativeCancellationActivity.kt
│ │ │ │ │ │ ├── CooperativeCancellationViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase12/
│ │ │ │ │ │ ├── CalculationInSeveralCoroutinesActivity.kt
│ │ │ │ │ │ ├── CalculationInSeveralCoroutinesViewModel.kt
│ │ │ │ │ │ ├── FactorialCalculator.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase13/
│ │ │ │ │ │ ├── ExceptionHandlingActivity.kt
│ │ │ │ │ │ ├── ExceptionHandlingViewModel.kt
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase14/
│ │ │ │ │ │ ├── AndroidVersionDao.kt
│ │ │ │ │ │ ├── AndroidVersionDatabase.kt
│ │ │ │ │ │ ├── AndroidVersionEntity.kt
│ │ │ │ │ │ ├── AndroidVersionRepository.kt
│ │ │ │ │ │ ├── ContinueCoroutineWhenUserLeavesScreenActivity.kt
│ │ │ │ │ │ ├── ContinueCoroutineWhenUserLeavesScreenViewModel.kt
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── UiState.kt
│ │ │ │ │ │ └── ViewModelFactory.kt
│ │ │ │ │ ├── usecase15/
│ │ │ │ │ │ ├── AnalyticsWorker.kt
│ │ │ │ │ │ ├── ViewModelFactory.kt
│ │ │ │ │ │ ├── WorkManagerActivity.kt
│ │ │ │ │ │ └── WorkManagerViewModel.kt
│ │ │ │ │ ├── usecase16/
│ │ │ │ │ │ ├── FactorialCalculator.kt
│ │ │ │ │ │ ├── PerformanceAnalysisActivity.kt
│ │ │ │ │ │ ├── PerformanceAnalysisViewModel.kt
│ │ │ │ │ │ ├── ResultAdapter.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase17/
│ │ │ │ │ │ ├── PerformCalculationOnMainThreadActivity.kt
│ │ │ │ │ │ ├── PerformCalculationOnMainThreadViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase2/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── Perform2SequentialNetworkRequestsActivity.kt
│ │ │ │ │ │ ├── Perform2SequentialNetworkRequestsViewModel.kt
│ │ │ │ │ │ ├── UiState.kt
│ │ │ │ │ │ ├── callbacks/
│ │ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ │ ├── SequentialNetworkRequestsCallbacksActivity.kt
│ │ │ │ │ │ │ ├── SequentialNetworkRequestsCallbacksViewModel.kt
│ │ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ │ └── rx/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── SequentialNetworkRequestsRxActivity.kt
│ │ │ │ │ │ ├── SequentialNetworkRequestsRxViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase3/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── PerformNetworkRequestsConcurrentlyActivity.kt
│ │ │ │ │ │ ├── PerformNetworkRequestsConcurrentlyViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase4/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── UiState.kt
│ │ │ │ │ │ ├── VariableAmountOfNetworkRequestsActivity.kt
│ │ │ │ │ │ └── VariableAmountOfNetworkRequestsViewModel.kt
│ │ │ │ │ ├── usecase5/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── NetworkRequestWithTimeoutActivity.kt
│ │ │ │ │ │ ├── NetworkRequestWithTimeoutViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase6/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── RetryNetworkRequestActivity.kt
│ │ │ │ │ │ ├── RetryNetworkRequestViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase7/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── TimeoutAndRetryActivity.kt
│ │ │ │ │ │ ├── TimeoutAndRetryViewModel.kt
│ │ │ │ │ │ ├── UiState.kt
│ │ │ │ │ │ ├── callbacks/
│ │ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ │ ├── TimeoutAndRetryCallbackActivity.kt
│ │ │ │ │ │ │ ├── TimeoutAndRetryCallbackViewModel.kt
│ │ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ │ └── rx/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── TimeoutAndRetryRxActivity.kt
│ │ │ │ │ │ ├── TimeoutAndRetryRxViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase8/
│ │ │ │ │ │ ├── AndroidVersionDao.kt
│ │ │ │ │ │ ├── AndroidVersionDatabase.kt
│ │ │ │ │ │ ├── AndroidVersionEntity.kt
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── RoomAndCoroutinesActivity.kt
│ │ │ │ │ │ ├── RoomAndCoroutinesViewModel.kt
│ │ │ │ │ │ ├── UiState.kt
│ │ │ │ │ │ └── ViewModelFactory.kt
│ │ │ │ │ └── usecase9/
│ │ │ │ │ ├── DebuggingCoroutinesActivity.kt
│ │ │ │ │ ├── DebuggingCoroutinesViewModel.kt
│ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ └── UiState.kt
│ │ │ │ └── flow/
│ │ │ │ └── usecase1/
│ │ │ │ └── FlowUseCase1Activity.kt
│ │ │ └── utils/
│ │ │ ├── Extensions.kt
│ │ │ └── MockNetworkInterceptor.kt
│ │ └── res/
│ │ ├── drawable/
│ │ │ ├── ic_arrow_back_white.xml
│ │ │ ├── ic_check_green_24dp.xml
│ │ │ ├── ic_clear_red_24dp.xml
│ │ │ ├── ic_launcher_background.xml
│ │ │ └── recyclerview_divider.xml
│ │ ├── drawable-v24/
│ │ │ └── ic_launcher_foreground.xml
│ │ ├── layout/
│ │ │ ├── activity_calculateonmain.xml
│ │ │ ├── activity_calculationinbackground.xml
│ │ │ ├── activity_calculationinmultiplebackgroundthreads.xml
│ │ │ ├── activity_channels_usecase1.xml
│ │ │ ├── activity_cooperativecancellation.xml
│ │ │ ├── activity_debuggingcoroutines.xml
│ │ │ ├── activity_exceptionhandling.xml
│ │ │ ├── activity_flow_usecase1.xml
│ │ │ ├── activity_jobs.xml
│ │ │ ├── activity_main.xml
│ │ │ ├── activity_networkrequestwithtimeout.xml
│ │ │ ├── activity_observable_types.xml
│ │ │ ├── activity_perform2sequentialnetworkrequests.xml
│ │ │ ├── activity_performanceanalysis.xml
│ │ │ ├── activity_performnetworkrequestsconcurrently.xml
│ │ │ ├── activity_performsinglenetworkrequest.xml
│ │ │ ├── activity_performvariableamountofnetworkrequestsconcurrently.xml
│ │ │ ├── activity_queryfromroomdatabase.xml
│ │ │ ├── activity_retrynetworkrequest.xml
│ │ │ ├── activity_selection.xml
│ │ │ ├── activity_suspending_func.xml
│ │ │ ├── activity_usecases.xml
│ │ │ ├── activity_workmanger.xml
│ │ │ ├── recyclerview_item.xml
│ │ │ ├── recyclerview_item_calculation_result.xml
│ │ │ └── toolbar.xml
│ │ ├── mipmap-anydpi-v26/
│ │ │ ├── ic_launcher.xml
│ │ │ └── ic_launcher_round.xml
│ │ └── values/
│ │ ├── colors.xml
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
│ └── test/
│ └── java/
│ └── com/
│ └── demo/
│ └── code/
│ ├── ExampleUnitTest.kt
│ ├── playground/
│ │ └── testing/
│ │ └── 1_testing_coroutines.kt
│ ├── usecases/
│ │ └── coroutines/
│ │ ├── usecase1/
│ │ │ ├── FakeErrorApi.kt
│ │ │ ├── FakeSuccessApi.kt
│ │ │ └── PerformSingleNetworkRequestViewModelTest.kt
│ │ ├── usecase10/
│ │ │ └── CalculationInBackgroundViewModelTest.kt
│ │ ├── usecase12/
│ │ │ └── FactorialCalculatorTest.kt
│ │ ├── usecase14/
│ │ │ ├── AndroidVersionRepositoryTest.kt
│ │ │ ├── FakeApi.kt
│ │ │ └── FakeDatabase.kt
│ │ ├── usecase2/
│ │ │ ├── FakeFeaturesErrorApi.kt
│ │ │ ├── FakeSuccessApi.kt
│ │ │ ├── FakeVersionsErrorApi.kt
│ │ │ ├── Perform2SequentialNetworkRequestsViewModelTest.kt
│ │ │ └── callbacks/
│ │ │ ├── FakeFeaturesErrorApi.kt
│ │ │ ├── FakeSuccessApi.kt
│ │ │ ├── FakeVersionsErrorApi.kt
│ │ │ └── SequentialNetworkRequestsCallbacksViewModelTest.kt
│ │ ├── usecase3/
│ │ │ ├── FakeErrorApi.kt
│ │ │ ├── FakeSuccessApi.kt
│ │ │ └── PerformNetworkRequestsConcurrentlyViewModelTest.kt
│ │ ├── usecase4/
│ │ │ ├── FakeFeaturesErrorApi.kt
│ │ │ ├── FakeSuccessApi.kt
│ │ │ ├── FakeVersionsErrorApi.kt
│ │ │ └── VariableAmountOfNetworkRequestsViewModelTest.kt
│ │ ├── usecase5/
│ │ │ ├── FakeSuccessApi.kt
│ │ │ ├── FakeVersionsErrorApi.kt
│ │ │ └── NetworkRequestWithTimeoutViewModelTest.kt
│ │ └── usecase6/
│ │ ├── FakeSuccessApi.kt
│ │ ├── FakeSuccessOnThirdAttemptApi.kt
│ │ ├── FakeVersionsErrorApi.kt
│ │ └── RetryNetworkRequestViewModelTest.kt
│ └── utils/
│ ├── EndpointShouldNotBeCalledException.kt
│ └── MainCoroutineScopeRule.kt
├── build.gradle.kts
├── buildSrc/
│ ├── build.gradle.kts
│ └── src/
│ └── main/
│ └── java/
│ ├── AppConfig.kt
│ ├── AppDependencies.kt
│ ├── BuildPlugins.kt
│ └── Versions.kt
├── gradle/
│ └── wrapper/
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradle.properties
├── gradlew
├── gradlew.bat
└── settings.gradle.kts
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitignore
================================================
# Built application files
*.apk
*.aar
*.ap_
*.aab
# Files for the ART/Dalvik VM
*.dex
# Java class files
*.class
# Generated files
bin/
gen/
out/
# Uncomment the following line in case you need and you don't have the release build type files in your app
# release/
# Gradle files
.gradle/
build/
# Local configuration file (sdk path, etc)
local.properties
# Proguard folder generated by Eclipse
proguard/
# Log Files
*.log
# Android Studio Navigation editor temp files
.navigation/
# Android Studio captures folder
captures/
# IntelliJ
*.iml
.idea/workspace.xml
.idea/tasks.xml
.idea/gradle.xml
.idea/assetWizardSettings.xml
.idea/dictionaries
.idea/libraries
# Android Studio 3 in .gitignore file.
.idea/caches
.idea/modules.xml
# Comment next line if keeping position of elements in Navigation Editor is relevant for you
.idea/navEditor.xml
# Keystore files
# Uncomment the following lines if you do not want to check your keystore files in.
#*.jks
#*.keystore
# External native build folder generated in Android Studio 2.2 and later
.externalNativeBuild
.cxx/
# Google Services (e.g. APIs or Firebase)
# google-services.json
# Freeline
freeline.py
freeline/
freeline_project_description.json
# fastlane
fastlane/report.xml
fastlane/Preview.html
fastlane/screenshots
fastlane/test_output
fastlane/readme.md
# Version control
vcs.xml
# lint
lint/intermediates/
lint/generated/
lint/outputs/
lint/tmp/
# lint/reports/
================================================
FILE: .idea/.gitignore
================================================
# Default ignored files
/shelf/
/workspace.xml
================================================
FILE: .idea/.name
================================================
My Application
================================================
FILE: .idea/compiler.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel target="1.8" />
</component>
</project>
================================================
FILE: .idea/jarRepositories.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="BintrayJCenter" />
<option name="name" value="BintrayJCenter" />
<option name="url" value="https://jcenter.bintray.com/" />
</remote-repository>
<remote-repository>
<option name="id" value="Google" />
<option name="name" value="Google" />
<option name="url" value="https://dl.google.com/dl/android/maven2/" />
</remote-repository>
</component>
</project>
================================================
FILE: .idea/misc.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
</project>
================================================
FILE: CODE_OF_CONDUCT.md
================================================
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, religion, or sexual identity
and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
overall community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
.
All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series
of actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within
the community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.
================================================
FILE: CONTRIBUTING.md
================================================
## Feeling Awesome! Thanks for thinking about this.
You can contribute us by filing issues, bugs and PRs. You can also take a look at active issues and fix them.
If you want to discuss on something then feel free to present your opinions, views or any other relevant comment on [discussions](https://github.com/devrath/DroidAndroidKotlinWiki/discussions).
### Code contribution
- Open issue regarding proposed change.
- If your proposed change is approved, Fork this repo and do changes.
- Open PR against latest *development* branch. Add nice description in PR.
- You're done!
### How to Contribute
- Fork it
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create new Pull Request
### Code contribution checklist
- New code addition/deletion should not break existing flow of a system.
- All tests should be passed.
- Verify `./gradlew build` is passing before raising a PR.
- Reformat code with Spotless `./gradlew spotlessApply` before raising a PR.
================================================
FILE: LICENSE
================================================
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
================================================
FILE: README.md
================================================
<h1 align="center">𝙺𝚘𝚝𝚕𝚒𝚗𝙰𝚕𝚌𝚑𝚎𝚖𝚢</h1>
<div align="center">

</div>
<div align="center">
⚗️ 𝚃𝚑𝚒𝚜 𝚙𝚛𝚘𝚓𝚎𝚌𝚝 𝚌𝚘𝚗𝚝𝚊𝚒𝚗𝚜 𝚟𝚊𝚛𝚒𝚘𝚞𝚜 𝚌𝚘𝚗𝚌𝚎𝚙𝚝𝚜 𝚊𝚗𝚍 𝚕𝚎𝚊𝚛𝚗𝚒𝚗𝚐𝚜 𝚘𝚏 𝚔𝚘𝚝𝚕𝚒𝚗 𝚞𝚜𝚎𝚍 𝚏𝚘𝚛 𝚊𝚗𝚍𝚛𝚘𝚒𝚍 𝚍𝚎𝚟𝚎𝚕𝚘𝚙𝚖𝚎𝚗𝚝
</div>
<div align="center">
| `𝙲𝙾𝙽𝚃𝙴𝙽𝚃𝚂` |
| ---------- |
| [`𝙺𝚘𝚝𝚕𝚒𝚗 𝙱𝚊𝚜𝚒𝚌 𝙵𝚞𝚗𝚍𝚊𝚖𝚎𝚗𝚝𝚊𝚕𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Basic-Fundamentals) |
| [`𝙺𝚘𝚝𝚕𝚒𝚗 𝚌𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚘𝚗 𝚏𝚞𝚗𝚌𝚝𝚒𝚘𝚗𝚜`](https://github.com/devrath/KotlinAlchemy/blob/main/README.md#kotlin-collection-functions)
| [`𝙺𝚘𝚝𝚕𝚒𝚗 𝙿𝚘𝚠𝚎𝚛𝚜`](https://github.com/devrath/KotlinAlchemy/blob/main/README.md#kotlin-powers) |
| [`𝙺𝚘𝚝𝚕𝚒𝚗 𝙲𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜`](https://github.com/devrath/KotlinAlchemy/blob/main/README.md#kotlin-coroutines) |
</div>
# `Kotlin Basic Fundamentals`
<div align="center">

</div>
* [**`𝚄𝚜𝚒𝚗𝚐 𝚅𝙰𝙻 𝚊𝚗𝚍 𝚅𝙰𝚁 𝚒𝚗 𝚔𝚘𝚝𝚕𝚒𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Using-val-and-var-in-Kotlin)
* [**`𝚄𝚜𝚒𝚗𝚐 (𝚅𝙰𝙻) 𝚊𝚗𝚍 (𝙲𝙾𝙽𝚂𝚃 𝚅𝙰𝙻) 𝚒𝚗 𝙺𝚘𝚝𝚕𝚒𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Using-(val)-and-(const-val)-in-Kotlin)
* [**`𝚄𝚜𝚒𝚗𝚐 𝚂𝚝𝚛𝚒𝚗𝚐𝚜 𝚒𝚗 𝙺𝚘𝚝𝚕𝚒𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Basics-:-Strings)
* [**`𝚄𝚜𝚒𝚗𝚐 𝚌𝚘𝚖𝚙𝚊𝚛𝚒𝚜𝚘𝚗 𝚘𝚙𝚎𝚛𝚊𝚝𝚘𝚛𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Basics-:-Comparison-Operators)
* [**`𝚆𝚑𝚊𝚝 𝚒𝚜 𝚝𝚑𝚎 𝚜𝚌𝚘𝚙𝚎 𝚒𝚗 𝚔𝚘𝚝𝚕𝚒𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Basics-:-Using-Scopes-in-kotlin)
* [**`𝙻𝚊𝚛𝚐𝚎 𝚝𝚛𝚎𝚎 𝚘𝚏 𝚌𝚘𝚗𝚍𝚒𝚝𝚒𝚘𝚗 𝚜𝚝𝚊𝚝𝚎𝚖𝚎𝚗𝚝𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Basics:-Large-tree-of-condition-statements)
* [**`𝙳𝚎𝚏𝚒𝚗𝚒𝚗𝚐 𝚊𝚗𝚍 𝚞𝚜𝚒𝚗𝚐 𝙽𝚞𝚕𝚕𝚊𝚋𝚕𝚎 𝚟𝚊𝚕𝚞𝚎𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Basics:-Defining-and-using-Nullable-values)
* [**`𝚆𝚑𝚊𝚝 𝚊𝚛𝚎 𝚙𝚊𝚒𝚛𝚜 𝚊𝚗𝚍 𝚝𝚛𝚒𝚙𝚕𝚎𝚝𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Basics-:-What-are-pairs-and-triplets)
* [**`𝙼𝚎𝚖𝚋𝚎𝚛 𝚁𝚎𝚏𝚎𝚛𝚎𝚗𝚌𝚎 𝚒𝚗 𝙺𝚘𝚝𝚕𝚒𝚗: 𝚄𝚜𝚒𝚗𝚐 (::) 𝙾𝚙𝚎𝚛𝚊𝚝𝚘𝚛`**](https://github.com/devrath/KotlinAlchemy/wiki/Member-Reference-in-Kotlin:-Using-(::)-Operator)
* [**`𝚆𝚑𝚊𝚝 𝚊𝚛𝚎 𝚝𝚑𝚎 𝚍𝚒𝚏𝚏𝚎𝚛𝚎𝚗𝚌𝚎𝚜 𝚋𝚎𝚝𝚠𝚎𝚎𝚗 𝚊𝚗 𝙴𝚚𝚞𝚊𝚕𝚒𝚝𝚢 𝙾𝚙𝚎𝚛𝚊𝚝𝚘𝚛 𝚊𝚗𝚍 𝚊 𝚁𝚎𝚏𝚎𝚛𝚎𝚗𝚝𝚒𝚊𝚕 𝙴𝚚𝚞𝚊𝚕𝚒𝚝𝚢 𝙾𝚙𝚎𝚛𝚊𝚝𝚘𝚛?`**](https://github.com/devrath/KotlinAlchemy/wiki/What-are-the-difference-between-Equality-Operator-and-Referential-Equality-Operator)
* [**`𝙻𝚘𝚘𝚙𝚒𝚗𝚐 𝚖𝚎𝚌𝚑𝚊𝚗𝚒𝚜𝚖𝚜 𝚒𝚗 𝚔𝚘𝚝𝚕𝚒𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-basics-:-Looping-mechanisms)
* [**`𝙲𝚞𝚜𝚝𝚘𝚖 𝙰𝚌𝚌𝚎𝚜𝚜𝚘𝚛𝚜 𝚒𝚗 𝚔𝚘𝚝𝚕𝚒𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-basics-:-Custom-Accessors)
* [**`𝙴𝚗𝚞𝚖 𝚒𝚗 𝙺𝚘𝚝𝚕𝚒𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-basics-:-Enum-in-Kotlin)
* **Classes and Interfaces**
* [**`𝙲𝚕𝚊𝚜𝚜𝚎𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Fundamentals:-Classes)
* [**`𝙸𝚗𝚑𝚎𝚛𝚒𝚝𝚊𝚗𝚌𝚎`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Fundamentals:-Inheritance)
* **Kotlin Basic collections**
* [**`𝚄𝚜𝚒𝚗𝚐 𝚊𝚛𝚛𝚊𝚢𝚜 𝚒𝚗 𝚝𝚑𝚎 𝚌𝚘𝚍𝚎`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-basics-:-Using-arrays-in-the-code)
* [**`𝚄𝚜𝚒𝚗𝚐 𝚕𝚒𝚜𝚝 𝚒𝚗 𝚝𝚑𝚎 𝚌𝚘𝚍𝚎`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-basics-:-Using-list-in-the-code)
* [**`𝚄𝚜𝚒𝚗𝚐 𝙼𝚊𝚙 𝚒𝚗 𝚝𝚑𝚎 𝚌𝚘𝚍𝚎`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-basics-:-Using-Map-in-the-code)
* [**`𝚄𝚜𝚒𝚗𝚐 𝚂𝚎𝚝 𝚒𝚗 𝚝𝚑𝚎 𝚌𝚘𝚍𝚎`**](https://github.com/devrath/KotlinAlchemy/wiki/kotlin-basics-:-Using-Set-in-the-code)
# `Kotlin Collection Functions`
<div align="center">
<img src="https://github.com/devrath/KotlinAlchemy/assets/1456191/e8da4540-39e3-4ca3-abab-b0c3ecbedea0"
alt="collection"
width="450"
height="300">
</div>
<div align="center">
| `Operation` | `Operators` |
| ----------- | ------------------------------------------------------------ |
| [`Removing Duplicates`](https://github.com/devrath/KotlinAlchemy/wiki/Collections:-Removing-duplicates) | `distinct` , `toSet` . `toMutableSet`, `toHashSet` |
| [`Combining a list of items to a string`](https://github.com/devrath/KotlinAlchemy/wiki/Collections:-Converting--a-list-array-to-string) | `joinToString` |
| [`Transform a collection into a single result`](https://github.com/devrath/KotlinAlchemy/wiki/Collections:-Transform-a-collection-into-a-single-result) | `reduce` |
| [`Find if all elements are satisfying a particular condition`](https://github.com/devrath/KotlinAlchemy/wiki/Collection:-Find-if-all-elements-are-satisfying-a-particular-condition) | `all` |
| [`Find a particular element based on a certain condition`](https://github.com/devrath/KotlinAlchemy/wiki/Collection:-Find-a-particular-element-based-on-a-certain-condition) | `single`,`all` |
| [`Break the list of items to sub‐chunks of items`](https://github.com/devrath/KotlinAlchemy/wiki/Collections:-Break-the-list-of-items-to-sub%E2%80%90chunks-of-items) | `chunked` |
| [`Associating the data using some key`](https://github.com/devrath/KotlinAlchemy/wiki/Collections:-Associating-the-data-using-some-key) | `AssociateBy` |
| [`Using the Intersection and Union`](https://github.com/devrath/KotlinAlchemy/wiki/Collection:-Intersection-&-Union) | `union`,`intersect` |
| [`Sorting a collection of objects based on a parameter in the object`](https://github.com/devrath/KotlinAlchemy/wiki/Collection:-Sorting-a-collection-of-objects-based-on-a-parameter-in-the-object) | `sortBy` |
</div>
# `Kotlin Powers`
<div align="center">
<img src="https://github.com/devrath/KotlinAlchemy/assets/1456191/629a6f77-5853-418c-8aa9-360df6f957bd"
alt="kotlin powers"
width="450"
height="270">
</div>
<div align="center">
| `🪴` | `🍀` | `🌿` |
| ---------- | --------------------------------------------- | --------------------------------------------- |
| [`𝙺𝚘𝚝𝚕𝚒𝚗 𝚂𝚌𝚘𝚙𝚎 𝙵𝚞𝚗𝚌𝚝𝚒𝚘𝚗𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-scope-functions) | [`𝙺𝚘𝚝𝚕𝚒𝚗: 𝙲𝚕𝚊𝚜𝚜 𝚟𝚜 𝙳𝚊𝚝𝚊𝙲𝚕𝚊𝚜𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin:-Class-vs-DataClass) | [`𝚂𝚎𝚊𝚕𝚎𝚍 𝚌𝚕𝚊𝚜𝚜𝚎𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Sealed-Class) |
| [`𝙷𝚒𝚐𝚑𝚎𝚛-𝚘𝚛𝚍𝚎𝚛 𝚏𝚞𝚗𝚌𝚝𝚒𝚘𝚗𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Higher-order-functions) | [`𝙺𝚘𝚝𝚕𝚒𝚗 𝙾𝚋𝚓𝚎𝚌𝚝`](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Object) | [`𝙺𝚘𝚝𝚕𝚒𝚗 𝙲𝚘𝚖𝚙𝚊𝚗𝚒𝚘𝚗 𝙾𝚋𝚓𝚎𝚌𝚝`](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Companion-Object) |
| [`𝙰𝚗𝚗𝚘𝚝𝚊𝚝𝚒𝚘𝚗𝚜 𝚒𝚗 𝚔𝚘𝚝𝚕𝚒𝚗`](https://github.com/devrath/KotlinAlchemy/wiki/Annotations-in-kotlin) | [`𝚃𝚢𝚙𝚎 𝙰𝚕𝚒𝚊𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin:-Type-Alias) | [`𝙸𝚗𝚕𝚒𝚗𝚎 𝙵𝚞𝚗𝚌𝚝𝚒𝚘𝚗`](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin:-Inline-Functions) |
| [`𝚂𝚖𝚊𝚛𝚝 𝙲𝚊𝚜𝚝𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin:-Smart-Casts) | [`𝙽𝚎𝚜𝚝𝚎𝚍 𝚌𝚕𝚊𝚜𝚜 𝚟𝚜 𝙸𝚗𝚗𝚎𝚛 𝚌𝚕𝚊𝚜𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Nested-class-vs-Inner-class) | [`𝚂𝚎𝚊𝚕𝚎𝚍 𝙲𝚕𝚊𝚜𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Sealed-Class) |
| [`𝙰𝚗𝚗𝚘𝚝𝚊𝚝𝚒𝚘𝚗𝚜 𝚒𝚗 𝚔𝚘𝚝𝚕𝚒𝚗`](https://github.com/devrath/KotlinAlchemy/wiki/Annotations-in-kotlin) | [`𝙶𝚎𝚗𝚎𝚛𝚒𝚌𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Generics) | [`𝚁𝚎𝚒𝚏𝚒𝚎𝚍`](https://github.com/devrath/KotlinAlchemy/wiki/Reified) |
| [`𝙲𝚛𝚘𝚜𝚜𝚕𝚒𝚗𝚎 𝚖𝚘𝚍𝚒𝚏𝚒𝚎𝚛`](https://github.com/devrath/KotlinAlchemy/wiki/Crossline-modifier) | [ `𝚍𝚎𝚕𝚎𝚐𝚊𝚝𝚒𝚘𝚗 𝚒𝚗 𝚔𝚘𝚝𝚕𝚒𝚗` ](https://github.com/devrath/KotlinAlchemy/wiki/what-is-delegation-in-kotlin) | [`𝚂𝚎𝚚𝚞𝚎𝚗𝚌𝚎𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Sequences-in-kotlin) |
| [`noinline`](https://github.com/devrath/KotlinAlchemy/wiki/noinline) | [`𝚆𝚑𝚊𝚝 𝚊𝚛𝚎 𝚎𝚡𝚝𝚎𝚗𝚜𝚒𝚘𝚗 𝚏𝚞𝚗𝚌𝚝𝚒𝚘𝚗𝚜?`](https://github.com/devrath/KotlinAlchemy/wiki/What-are-extension-functions) | [`𝚂𝚎𝚊𝚕𝚎𝚍 𝙸𝚗𝚝𝚎𝚛𝚏𝚊𝚌𝚎`](https://github.com/devrath/KotlinAlchemy/wiki/sealed-interface) |
| [`𝙺𝚘𝚝𝚕𝚒𝚗: 𝙾𝚋𝚓𝚎𝚌𝚝 𝙲𝚕𝚊𝚜𝚜 𝚟𝚜 𝙳𝚊𝚝𝚊 𝙾𝚋𝚓𝚎𝚌𝚝 𝙲𝚕𝚊𝚜𝚜`](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin:-Object-Class-vs-Data-Object-Class) | | |
</div>
# `Kotlin Coroutines`
<p align="center">
<img src="documentation/images/coroutines.png" height="200" />
</p>
<div align="center">
| `Contents` |
| ---------- |
| [𝙵𝚞𝚗𝚍𝚊𝚖𝚎𝚗𝚝𝚊𝚕 𝚌𝚘𝚗𝚌𝚎𝚙𝚝𝚜 𝚘𝚏 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜](https://github.com/devrath/KotlinAlchemy/blob/main/README.md#%F0%9D%99%B5%F0%9D%9A%9E%F0%9D%9A%97%F0%9D%9A%8D%F0%9D%9A%8A%F0%9D%9A%96%F0%9D%9A%8E%F0%9D%9A%97%F0%9D%9A%9D%F0%9D%9A%8A%F0%9D%9A%95-%F0%9D%9A%8C%F0%9D%9A%98%F0%9D%9A%97%F0%9D%9A%8C%F0%9D%9A%8E%F0%9D%9A%99%F0%9D%9A%9D%F0%9D%9A%9C-%F0%9D%9A%98%F0%9D%9A%8F-%F0%9D%9A%8C%F0%9D%9A%98%F0%9D%9A%9B%F0%9D%9A%98%F0%9D%9A%9E%F0%9D%9A%9D%F0%9D%9A%92%F0%9D%9A%97%F0%9D%9A%8E%F0%9D%9A%9C) |
| [𝙲𝚘𝚖𝚖𝚞𝚗𝚒𝚌𝚊𝚝𝚒𝚗𝚐 𝚋𝚎𝚝𝚠𝚎𝚎𝚗 𝚌𝚘-𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜](https://github.com/devrath/KotlinAlchemy/blob/main/README.md#%F0%9D%99%B2%F0%9D%9A%98%F0%9D%9A%96%F0%9D%9A%96%F0%9D%9A%9E%F0%9D%9A%97%F0%9D%9A%92%F0%9D%9A%8C%F0%9D%9A%8A%F0%9D%9A%9D%F0%9D%9A%92%F0%9D%9A%97%F0%9D%9A%90-%F0%9D%9A%8B%F0%9D%9A%8E%F0%9D%9A%9D%F0%9D%9A%A0%F0%9D%9A%8E%F0%9D%9A%8E%F0%9D%9A%97-%F0%9D%9A%8C%F0%9D%9A%98-%F0%9D%9A%9B%F0%9D%9A%98%F0%9D%9A%9E%F0%9D%9A%9D%F0%9D%9A%92%F0%9D%9A%97%F0%9D%9A%8E%F0%9D%9A%9C) |
| [𝙶𝚒𝚜𝚝 𝚎𝚡𝚊𝚖𝚙𝚕𝚎𝚜 𝚘𝚏 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜 𝚒𝚗 𝚊𝚌𝚝𝚒𝚘𝚗](https://github.com/devrath/KotlinAlchemy/blob/main/README.md#%F0%9D%99%B6%F0%9D%9A%92%F0%9D%9A%9C%F0%9D%9A%9D-%F0%9D%9A%8E%F0%9D%9A%A1%F0%9D%9A%8A%F0%9D%9A%96%F0%9D%9A%99%F0%9D%9A%95%F0%9D%9A%8E%F0%9D%9A%9C-%F0%9D%9A%98%F0%9D%9A%8F-%F0%9D%9A%8C%F0%9D%9A%98%F0%9D%9A%9B%F0%9D%9A%98%F0%9D%9A%9E%F0%9D%9A%9D%F0%9D%9A%92%F0%9D%9A%97%F0%9D%9A%8E%F0%9D%9A%9C-%F0%9D%9A%92%F0%9D%9A%97-%F0%9D%9A%8A%F0%9D%9A%8C%F0%9D%9A%9D%F0%9D%9A%92%F0%9D%9A%98%F0%9D%9A%97) |
| [𝙳𝚒𝚏𝚏𝚎𝚛𝚎𝚗𝚌𝚎 𝚋𝚎𝚝𝚠𝚎𝚎𝚗 𝙻𝚒𝚟𝚎𝙳𝚊𝚝𝚊, 𝚂𝚝𝚊𝚝𝚎𝙵𝚕𝚘𝚠, 𝙵𝚕𝚘𝚠, 𝚂𝚑𝚊𝚛𝚎𝚍𝙵𝚕𝚘𝚠](https://github.com/devrath/KotlinAlchemy/wiki/Difference-between-LiveData,-StateFlow,-Flow,-SharedFlow) |
| [𝙲𝚑𝚊𝚗𝚗𝚎𝚕𝚜 𝚊𝚗𝚍 𝙵𝚕𝚘𝚠𝚜 - 𝚆𝚑𝚎𝚗 𝚝𝚘 𝚞𝚜𝚎 𝚎𝚊𝚌𝚑 𝚘𝚏 𝚝𝚑𝚎𝚖](https://github.com/devrath/KotlinAlchemy/wiki/Channels-and-Flows-%E2%80%90-When-to-use-each-of-them) |
</div>
#### `𝙵𝚞𝚗𝚍𝚊𝚖𝚎𝚗𝚝𝚊𝚕 𝚌𝚘𝚗𝚌𝚎𝚙𝚝𝚜 𝚘𝚏 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜`
* [**`𝚆𝚑𝚊𝚝 𝚒𝚜 𝚌𝚘𝚗𝚌𝚞𝚛𝚛𝚎𝚗𝚌𝚢`**](https://github.com/devrath/KotlinAlchemy/wiki/What-is-concurrency)
* [**`𝙱𝚕𝚘𝚌𝚔𝚒𝚗𝚐 𝚟𝚜 𝚂𝚞𝚜𝚙𝚎𝚗𝚍𝚒𝚗𝚐`**](https://github.com/devrath/KotlinAlchemy/wiki/Blocking-function-vs-Suspending-function)
* About asynchronous code, suspending code, co-routines
* [**`𝙷𝚘𝚠 𝚊𝚜𝚢𝚗𝚌𝚑𝚛𝚘𝚗𝚘𝚞𝚜 𝚙𝚛𝚘𝚐𝚛𝚊𝚖𝚖𝚒𝚗𝚐 𝚠𝚘𝚛𝚔𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/How-asynchronous-programming-works)
* [**`𝙷𝚘𝚠 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜 𝚙𝚛𝚘𝚐𝚛𝚊𝚖𝚖𝚒𝚗𝚐 𝚠𝚘𝚛𝚔𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/How-coroutines-programming-works)
* [**`𝚆𝚑𝚊𝚝 𝚒𝚜 𝚊 𝚌𝚘-𝚛𝚘𝚞𝚝𝚒𝚗𝚎 𝚊𝚗𝚍 𝙷𝚘𝚠 𝚒𝚝 𝚠𝚘𝚛𝚔𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/What-is-Coroutine-and-How-it-works)
* [**`𝚆𝚑𝚊𝚝 𝚒𝚜 𝚜𝚞𝚜𝚙𝚎𝚗𝚍𝚒𝚗𝚐 𝚏𝚞𝚗𝚌𝚝𝚒𝚘𝚗 𝚊𝚗𝚍 𝚑𝚘𝚠 𝚒𝚝 𝚠𝚘𝚛𝚔𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/What-is-suspending-function-and-how-it-works)
* [**`𝙲𝚘𝚖𝚙𝚊𝚛𝚒𝚗𝚐 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎 𝚟𝚜 𝚜𝚞𝚜𝚙𝚎𝚗𝚍 𝚏𝚞𝚗𝚌𝚝𝚒𝚘𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Comparing-coroutine-vs-suspend-function)
* Context and Scope
* [**`𝙳𝚒𝚏𝚏𝚎𝚛𝚎𝚗𝚌𝚎 𝚋𝚎𝚝𝚠𝚎𝚎𝚗 𝚕𝚊𝚞𝚗𝚌𝚑 𝚊𝚗𝚍 𝚠𝚒𝚝𝚑𝙲𝚘𝚗𝚝𝚎𝚡𝚝`**](https://github.com/devrath/KotlinAlchemy/wiki/Difference-between-launch--and--withContext)
* [**`𝚁𝚎𝚕𝚊𝚝𝚒𝚘𝚗𝚜𝚑𝚒𝚙 𝚋𝚎𝚝𝚠𝚎𝚎𝚗 𝚜𝚌𝚘𝚙𝚎 𝚊𝚗𝚍 𝚌𝚘𝚗𝚝𝚎𝚡𝚝`**](https://github.com/devrath/KotlinAlchemy/wiki/Coroutines:-Relationship-between-Scope-and-Context)
* [**`𝚄𝚗𝚍𝚎𝚛𝚜𝚝𝚊𝚗𝚍𝚒𝚗𝚐 𝚟𝚒𝚎𝚠-𝚖𝚘𝚍𝚎𝚕 𝚜𝚌𝚘𝚙𝚎`**](https://github.com/devrath/KotlinAlchemy/wiki/Coroutines:-Understanding-ViewModel-Scope)
* [**`𝙷𝚘𝚠 𝚊𝚜𝚢𝚗𝚌/𝚊𝚠𝚊𝚒𝚝 𝚠𝚘𝚛𝚔𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/How-async-await-works)
* [**`𝚄𝚜𝚒𝚗𝚐 𝚓𝚘𝚒𝚗 𝚒𝚗 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Using-join-in-coroutines)
* Dispatchers
* [**`𝙳𝚒𝚏𝚏𝚎𝚛𝚎𝚗𝚝 𝚝𝚢𝚙𝚎𝚜 𝚘𝚏 𝚍𝚒𝚜𝚙𝚊𝚝𝚌𝚑𝚎𝚛𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Coroutines:-Types-of-dispatchers)
* [**`𝚂𝚝𝚛𝚊𝚝𝚎𝚐𝚒𝚎𝚜 𝚏𝚘𝚛 𝚞𝚜𝚒𝚗𝚐 𝚝𝚑𝚎 𝚍𝚒𝚜𝚙𝚊𝚝𝚌𝚑𝚎𝚛𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Strategies-for-using-the-dispatchers)
* [**`𝙳𝚒𝚜𝚙𝚊𝚝𝚌𝚑𝚎𝚛𝚜 𝚁𝚞𝚗𝚗𝚒𝚗𝚐 𝚘𝚗 𝚝𝚑𝚛𝚎𝚊𝚍 𝚍𝚎𝚖𝚘`**](https://github.com/devrath/KotlinAlchemy/wiki/Dispatchers-Running-on-thread-demo)
* Using coroutines sample use cases
* [**`𝙲𝚛𝚎𝚊𝚝𝚒𝚗𝚐 𝚊 𝚜𝚒𝚖𝚙𝚕𝚎 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎 𝚌𝚘𝚗𝚝𝚎𝚡𝚝`**](https://github.com/devrath/KotlinAlchemy/wiki/Coroutines:-Creating-a-simple-coroutine-context)
* [**`𝚆𝚊𝚒𝚝 𝚏𝚘𝚛 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎 𝚝𝚘 𝚏𝚒𝚗𝚒𝚜𝚑`**](https://github.com/devrath/KotlinAlchemy/wiki/Coroutines:-Wait-for-coroutine-to-finish)
* [**`𝚂𝚎𝚚𝚞𝚎𝚗𝚝𝚒𝚊𝚕 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜 𝚎𝚡𝚎𝚌𝚞𝚝𝚒𝚘𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Coroutines:-Sequential-coroutines-execution)
* Cancelling the coroutines
* [**`𝙱𝚕𝚘𝚌𝚔 𝙳𝚒𝚊𝚐𝚛𝚊𝚖 𝚘𝚏 𝚌𝚊𝚗𝚌𝚎𝚕𝚕𝚊𝚝𝚒𝚘𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Block-Diagram-of-cancellation)
* [**`𝚂𝚒𝚐𝚗𝚒𝚏𝚒𝚌𝚊𝚗𝚌𝚎 𝚘𝚏 𝚎𝚗𝚜𝚞𝚛𝚎 𝚊𝚌𝚝𝚒𝚟𝚎 𝚌𝚘‐𝚘𝚙𝚎𝚛𝚊𝚝𝚒𝚟𝚎 𝚌𝚊𝚗𝚌𝚎𝚕𝚕𝚊𝚝𝚒𝚘𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Significance-of-ensureActive-co%E2%80%90operative-cancellation)
* [**`𝚄𝚜𝚒𝚗𝚐 𝙸𝚜𝙰𝚌𝚝𝚒𝚟𝚎 𝚏𝚘𝚛 𝚌𝚘‐𝚘𝚙𝚎𝚛𝚊𝚝𝚒𝚟𝚎 𝚌𝚊𝚗𝚌𝚎𝚕𝚕𝚊𝚝𝚒𝚘𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Using-IsActive-for-co%E2%80%90operative-cancellation)
* [**`𝙲𝚊𝚗𝚌𝚎𝚕𝚕𝚒𝚗𝚐 𝙲𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎 𝚅𝚜 𝙲𝚊𝚗𝚌𝚎𝚕𝚕𝚒𝚗𝚐 𝙲𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜 𝚌𝚑𝚒𝚕𝚍𝚛𝚎𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/Cancelling-Coroutine-Vs-Cancelling-Coroutines-children)
* [**`𝙽𝚘𝚗-𝚌𝚊𝚗𝚌𝚎𝚕𝚕𝚊𝚋𝚕𝚎 𝚓𝚘𝚋`**](https://github.com/devrath/KotlinAlchemy/wiki/Non-Cancellable-job)
* Structured Concurrency
* [**`𝚆𝚑𝚊𝚝 𝚒𝚜 𝚂𝚝𝚛𝚞𝚌𝚝𝚞𝚛𝚎𝚍 𝚌𝚘𝚗𝚌𝚞𝚛𝚛𝚎𝚗𝚌𝚢?`**](https://github.com/devrath/KotlinAlchemy/wiki/What-is-Structured-concurrency)
* Jobs
* [**`𝙷𝚘𝚠 𝚓𝚘𝚋 𝚒𝚗 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎 𝚠𝚘𝚛𝚔𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/How-Job-in-coroutine-works)
* [**`𝙹𝚘𝚋-𝙷𝚒𝚎𝚛𝚊𝚛𝚌𝚑𝚢`**](https://github.com/devrath/KotlinAlchemy/wiki/Job%E2%80%90Hierarchy)
* Parallel Decomposition
* [**`𝙰𝚋𝚘𝚞𝚝 𝚙𝚊𝚛𝚊𝚕𝚕𝚎𝚕 𝚍𝚎𝚌𝚘𝚖𝚙𝚘𝚜𝚒𝚝𝚒𝚘𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/About-parallel-decomposition)
* [**`𝙰𝚋𝚘𝚞𝚝 𝙰𝚜𝚢𝚗𝚌 𝚊𝚗𝚍 𝙰𝚠𝚊𝚒𝚝`**](https://github.com/devrath/KotlinAlchemy/wiki/About-Async-and-Await)
* [**`𝙺𝚘𝚝𝚕𝚒𝚗 𝙲𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜 𝚓𝚘𝚒𝚗 𝚟𝚜 𝚊𝚠𝚊𝚒𝚝`**](https://github.com/devrath/KotlinAlchemy/wiki/Kotlin-Coroutines-join-vs-await)
* Exception Handling
* [**`𝙴𝚡𝚌𝚎𝚙𝚝𝚒𝚘𝚗 𝚑𝚊𝚗𝚍𝚕𝚒𝚗𝚐 𝚒𝚗 𝚕𝚊𝚞𝚗𝚌𝚑`**](https://github.com/devrath/KotlinAlchemy/wiki/Exception-handling-in-launch)
* [**`𝙴𝚡𝚌𝚎𝚙𝚝𝚒𝚘𝚗 𝚑𝚊𝚗𝚍𝚕𝚒𝚗𝚐 𝚒𝚗 𝚊𝚜𝚢𝚗𝚌`**](https://github.com/devrath/KotlinAlchemy/wiki/Exception-handling-in-async)
* [**`𝚂𝚞𝚙𝚎𝚛𝚟𝚒𝚜𝚘𝚛 𝚂𝚌𝚘𝚙𝚎 𝚊𝚗𝚍 𝚂𝚞𝚙𝚎𝚛𝚟𝚒𝚜𝚘𝚛 𝙹𝚘𝚋 𝚒𝚗 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Supervisor-Scope-and-Supervisor-Job-in-coroutines)
* [**`𝚆𝚑𝚊𝚝 𝚒𝚜 𝚝𝚊𝚒𝚕𝚛𝚎𝚌 𝚒𝚗 𝚔𝚘𝚝𝚕𝚒𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/What-is-tailrec-in-kotlin)
#### `𝙲𝚘𝚖𝚖𝚞𝚗𝚒𝚌𝚊𝚝𝚒𝚗𝚐 𝚋𝚎𝚝𝚠𝚎𝚎𝚗 𝚌𝚘-𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜`
* [𝙰𝚋𝚘𝚞𝚝 𝙲𝚘𝚖𝚖𝚞𝚗𝚒𝚌𝚊𝚝𝚒𝚗𝚐 𝚋𝚎𝚝𝚠𝚎𝚎𝚗 𝚝𝚑𝚎 𝚌𝚘‐𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜](https://github.com/devrath/KotlinAlchemy/wiki/About-Communicating-between-the-co%E2%80%90routines)
* Kotlin flow
* [𝙰𝚋𝚘𝚞𝚝 𝙵𝚕𝚘𝚠](https://github.com/devrath/KotlinAlchemy/wiki/About-Flow)
* [𝙵𝚕𝚘𝚠 𝙱𝚞𝚒𝚕𝚍𝚎𝚛𝚜](https://github.com/devrath/KotlinAlchemy/wiki/KotlinFlow:-Flow-Builders)
* [𝙵𝚕𝚘𝚠 𝙲𝚘𝚗𝚝𝚎𝚡𝚝](https://github.com/devrath/KotlinAlchemy/wiki/Flow-Context)
* Composing and Flattening Flows
* [𝙰𝚋𝚘𝚞𝚝 𝚌𝚘𝚖𝚙𝚘𝚜𝚒𝚗𝚐 𝚊𝚗𝚍 𝚏𝚕𝚊𝚝𝚝𝚎𝚗𝚒𝚗𝚐 𝚏𝚕𝚘𝚠𝚜](https://github.com/devrath/KotlinAlchemy/wiki/About-composing-and-flattening-flows)
* Composing
* [𝙱𝚞𝚏𝚏𝚎𝚛𝚒𝚗𝚐](https://github.com/devrath/KotlinAlchemy/wiki/Flows:-Buffering)
* [𝙲𝚘𝚗𝚏𝚕𝚊𝚝𝚒𝚘𝚗](https://github.com/devrath/KotlinAlchemy/wiki/Flows:-Conflation)
* [𝙲𝚘𝚕𝚕𝚎𝚌𝚝𝚒𝚗𝚐 𝙻𝚊𝚝𝚎𝚜𝚝](https://github.com/devrath/KotlinAlchemy/wiki/Flows:-Collecting-Latest)
* [𝚉𝚒𝚙𝚙𝚒𝚗𝚐](https://github.com/devrath/KotlinAlchemy/wiki/Flows:-Zipping)
* [𝙲𝚘𝚖𝚋𝚒𝚗𝚒𝚗𝚐](https://github.com/devrath/KotlinAlchemy/wiki/Flows:-Combining)
* Flattening
* [𝚆𝚑𝚊𝚝 𝚒𝚜 𝚖𝚎𝚊𝚗𝚝 𝚋𝚢 𝚏𝚕𝚊𝚝𝚝𝚎𝚗𝚒𝚗𝚐](https://github.com/devrath/KotlinAlchemy/wiki/Flows:-What-is-meant-by-flattening)
* [𝙵𝚕𝚊𝚝𝙼𝚊𝚙𝙲𝚘𝚗𝚌𝚊𝚝 𝚘𝚛 𝙵𝚕𝚊𝚝𝚝𝚎𝚗𝙲𝚘𝚗𝚌𝚊𝚝](https://github.com/devrath/KotlinAlchemy/wiki/Flattening-Flow:-FlatMapConcat-or-FlattenConcat)
* [𝙵𝚕𝚊𝚝𝙼𝚊𝚙𝙼𝚎𝚛𝚐𝚎 𝚘𝚛 𝙵𝚕𝚊𝚝𝚝𝚎𝚗𝙼𝚎𝚛𝚐𝚎](https://github.com/devrath/KotlinAlchemy/wiki/Flattening-Flow:-FlatMapMerge-or-FlattenMerge)
* [𝙵𝚕𝚊𝚝𝙼𝚊𝚙𝙻𝚊𝚝𝚎𝚜𝚝 𝚘𝚛 𝙵𝚕𝚊𝚝𝚝𝚎𝚗𝙻𝚊𝚝𝚎𝚜𝚝](https://github.com/devrath/KotlinAlchemy/wiki/Flattening-Flow:-FlatMapLatest-or-FlattenLatest)
* Operators
* [𝚃𝚎𝚛𝚖𝚒𝚗𝚊𝚕 𝚘𝚙𝚎𝚛𝚊𝚝𝚘𝚛𝚜](https://github.com/devrath/KotlinAlchemy/wiki/Flow:-Terminal-operators)
* [𝙸𝚗𝚝𝚎𝚛𝚖𝚎𝚍𝚒𝚊𝚝𝚎 𝚘𝚙𝚎𝚛𝚊𝚝𝚘𝚛𝚜](https://github.com/devrath/KotlinAlchemy/wiki/Flow:-Intermediate-operators)
* [𝙻𝚒𝚏𝚎𝚌𝚢𝚌𝚕𝚎 𝙾𝚙𝚎𝚛𝚊𝚝𝚘𝚛𝚜](https://github.com/devrath/KotlinAlchemy/wiki/Flow:-Lifecycle-operators)
* [𝙴𝚡𝚌𝚎𝚙𝚝𝚒𝚘𝚗 𝙷𝚊𝚗𝚍𝚕𝚒𝚗𝚐](https://github.com/devrath/KotlinAlchemy/wiki/Flows:-Exception-Handeling)
* [𝚂𝚝𝚊𝚝𝚎 𝙵𝚕𝚘𝚠 𝚊𝚗𝚍 𝚂𝚑𝚊𝚛𝚎𝚍 𝙵𝚕𝚘𝚠](https://github.com/devrath/KotlinAlchemy/wiki/State-Flow-and-Shared-Flow)
* Shared Flow
* [𝙲𝚛𝚎𝚊𝚝𝚒𝚗𝚐 𝚊 𝚂𝚑𝚊𝚛𝚎𝚍 𝙵𝚕𝚘𝚠 𝚠𝚒𝚝𝚑 𝚂𝚑𝚊𝚛𝚎𝚍‐𝙸𝚗](https://github.com/devrath/KotlinAlchemy/wiki/Creating-a-Shared-Flow-with-Shared%E2%80%90In)
* [𝚄𝚜𝚒𝚗𝚐 𝙼𝚞𝚝𝚊𝚋𝚕𝚎 𝚂𝚑𝚊𝚛𝚎𝚍 𝙵𝚕𝚘𝚠](https://github.com/devrath/KotlinAlchemy/wiki/Using-Mutable-Shared-Flow)
* State Flow
* [𝙲𝚛𝚎𝚊𝚝𝚒𝚗𝚐 𝚊 𝚂𝚝𝚊𝚝𝚎 𝙵𝚕𝚘𝚠 𝚠𝚒𝚝𝚑 𝚂𝚝𝚊𝚝𝚎‐𝙸𝚗](https://github.com/devrath/KotlinAlchemy/wiki/Creating-a-state-flow-with-state-in)
* [𝚄𝚜𝚒𝚗𝚐 𝙼𝚞𝚝𝚊𝚋𝚕𝚎 𝚂𝚝𝚊𝚝𝚎 𝙵𝚕𝚘𝚠](https://github.com/devrath/KotlinAlchemy/wiki/Using-Mutable-State-Flow)
* Collecting the flows
* [𝙲𝚘𝚗𝚜𝚞𝚖𝚒𝚗𝚐 𝚝𝚑𝚎 𝚏𝚕𝚘𝚠𝚜 𝚜𝚊𝚏𝚎𝚕𝚢 𝚒𝚗 𝙲𝚘𝚖𝚙𝚘𝚜𝚎](https://github.com/devrath/KotlinAlchemy/wiki/Consuming-the-flows-safely-in-Compose)
* [𝙲𝚊𝚕𝚕𝚋𝚊𝚌𝚔 𝙵𝚕𝚘𝚠](https://github.com/devrath/KotlinAlchemy/wiki/CallbackFlow)
* 𝙺𝚘𝚝𝚕𝚒𝚗 𝙲𝚑𝚊𝚗𝚗𝚎𝚕𝚜
* [𝙰𝚋𝚘𝚞𝚝 𝙲𝚑𝚊𝚗𝚗𝚎𝚕𝚜](https://github.com/devrath/KotlinAlchemy/wiki/Channels-%E2%80%90-About)
* [𝙲𝚘𝚖𝚖𝚞𝚗𝚒𝚌𝚊𝚝𝚒𝚘𝚗 𝚋𝚎𝚝𝚠𝚎𝚎𝚗 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜](https://github.com/devrath/KotlinAlchemy/wiki/Channels-%E2%80%90-Communication-between-coroutines)
* [𝚄𝚜𝚒𝚗𝚐 𝙿𝚛𝚘𝚍𝚞𝚌𝚎](https://github.com/devrath/KotlinAlchemy/wiki/Channel-%E2%80%90-Using-produce
)
* [𝙴𝚗𝚍-𝚝𝚘-𝚎𝚗𝚍 𝚌𝚘𝚖𝚖𝚞𝚗𝚒𝚌𝚊𝚝𝚒𝚘𝚗 𝚝𝚢𝚙𝚎𝚜](https://github.com/devrath/KotlinAlchemy/wiki/End-to-end-communication-types-in-channels)
* [𝙲𝚑𝚊𝚗𝚗𝚎𝚕 𝚝𝚢𝚙𝚎𝚜](https://github.com/devrath/KotlinAlchemy/wiki/Channel-Types)
#### `𝙶𝚒𝚜𝚝 𝚎𝚡𝚊𝚖𝚙𝚕𝚎𝚜 𝚘𝚏 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜 𝚒𝚗 𝚊𝚌𝚝𝚒𝚘𝚗`
* [**`𝚂𝚒𝚗𝚐𝚕𝚎 𝚗𝚎𝚝𝚠𝚘𝚛𝚔 𝚛𝚎𝚚𝚞𝚎𝚜𝚝`**](https://github.com/devrath/KotlinAlchemy/wiki/Single-network-request)
* [**`𝚂𝚎𝚚𝚞𝚎𝚗𝚝𝚒𝚊𝚕 𝚗𝚎𝚝𝚠𝚘𝚛𝚔 𝚛𝚎𝚚𝚞𝚎𝚜𝚝`**](https://github.com/devrath/KotlinAlchemy/wiki/Sequential-network-request)
* [**`𝙲𝚘𝚗𝚌𝚞𝚛𝚛𝚎𝚗𝚝 𝚗𝚎𝚝𝚠𝚘𝚛𝚔 𝚛𝚎𝚚𝚞𝚎𝚜𝚝`**](https://github.com/devrath/KotlinAlchemy/wiki/Concurrent-network-request)
* [**`𝚅𝚊𝚛𝚒𝚊𝚋𝚕𝚎 𝚗𝚞𝚖𝚋𝚎𝚛 𝚘𝚏 𝚗𝚎𝚝𝚠𝚘𝚛𝚔 𝚛𝚎𝚚𝚞𝚎𝚜𝚝𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Variable-number-of-network-requests)
* [**`𝙸𝚖𝚙𝚕𝚎𝚖𝚎𝚗𝚝𝚒𝚗𝚐 𝚊 𝚝𝚒𝚖𝚎𝚘𝚞𝚝 𝚏𝚘𝚛 𝚗𝚎𝚝𝚠𝚘𝚛𝚔 𝚛𝚎𝚚𝚞𝚎𝚜𝚝`**](https://github.com/devrath/KotlinAlchemy/wiki/Implementing-a-timeout-for-network-request)
* [**`𝚁𝚎𝚝𝚛𝚢𝚒𝚗𝚐 𝚗𝚎𝚝𝚠𝚘𝚛𝚔 𝚛𝚎𝚚𝚞𝚎𝚜𝚝𝚜 𝚒𝚗 𝚌𝚊𝚜𝚎 𝚘𝚏 𝚏𝚊𝚒𝚕𝚞𝚛𝚎`**](https://github.com/devrath/KotlinAlchemy/wiki/Retrying-network-requests-in-case-of-failure)
* [**`𝙲𝚘𝚖𝚋𝚒𝚗𝚒𝚗𝚐 𝚝𝚒𝚖𝚎𝚘𝚞𝚝 𝚊𝚗𝚍 𝚛𝚎𝚝𝚛𝚢 𝚘𝚏 𝚗𝚎𝚝𝚠𝚘𝚛𝚔 𝚛𝚎𝚚𝚞𝚎𝚜𝚝`**](https://github.com/devrath/KotlinAlchemy/wiki/Combining-timeout-and-retry-of-network-request)
* [**`𝚄𝚜𝚒𝚗𝚐 𝚛𝚘𝚘𝚖 𝚒𝚗 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Using-room-in-coroutines)
* [**`𝙰𝚗𝚊𝚕𝚢𝚣𝚒𝚗𝚐 𝚊𝚗𝚍 𝚍𝚎𝚋𝚞𝚐𝚐𝚒𝚗𝚐 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Analysing-and-debugging-of-coroutines)
* [**`𝙷𝚘𝚠 𝚝𝚘 𝚙𝚎𝚛𝚏𝚘𝚛𝚖 𝚊 𝚑𝚎𝚊𝚟𝚢 𝚘𝚙𝚎𝚛𝚊𝚝𝚒𝚘𝚗 𝚒𝚗 𝚝𝚑𝚎 𝚋𝚊𝚌𝚔𝚐𝚛𝚘𝚞𝚗𝚍 𝚝𝚑𝚛𝚎𝚊𝚍`**](https://github.com/devrath/KotlinAlchemy/wiki/How-to-perform-a-heavy-operation-in-background-thread)
* [**`𝙷𝚘𝚠 𝚝𝚘 𝚙𝚎𝚛𝚏𝚘𝚛𝚖 𝚝𝚑𝚎 𝚌𝚊𝚗𝚌𝚎𝚕𝚕𝚊𝚝𝚒𝚘𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/How-to-perform-cancellation)
* [**`𝚄𝚜𝚒𝚗𝚐 𝚖𝚊𝚗𝚢 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜 𝚝𝚘 𝚙𝚊𝚜𝚜 𝚘𝚗 𝚝𝚑𝚎 𝚠𝚘𝚛𝚔`**](https://github.com/devrath/KotlinAlchemy/wiki/Using-many-coroutines-to-pass-on-the-work)
* [**`𝙷𝚘𝚠 𝚝𝚘 𝚙𝚎𝚛𝚏𝚘𝚛𝚖 𝚎𝚡𝚌𝚎𝚙𝚝𝚒𝚘𝚗 𝚑𝚊𝚗𝚍𝚕𝚒𝚗𝚐 𝚒𝚗 𝚝𝚑𝚎 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/How-to-perform-exception-handling-in-the-coroutines)
* [**`𝙷𝚘𝚠 𝚝𝚘 𝚛𝚞𝚗 𝚝𝚑𝚎 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎 𝚎𝚟𝚎𝚗 𝚒𝚏 𝚝𝚑𝚎 𝚞𝚜𝚎𝚛 𝚕𝚎𝚊𝚟𝚎𝚜 𝚝𝚑𝚎 𝚜𝚌𝚛𝚎𝚎𝚗`**](https://github.com/devrath/KotlinAlchemy/wiki/How-to-run-the-coroutine-even-if-the-user-leaves-the-screen)
* [**`𝚄𝚜𝚒𝚗𝚐 𝚠𝚘𝚛𝚔 𝚖𝚊𝚗𝚊𝚐𝚎𝚛 𝚊𝚕𝚘𝚗𝚐 𝚠𝚒𝚝𝚑 𝚌𝚘𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜`**](https://github.com/devrath/KotlinAlchemy/wiki/Using-work-manager-along-with-coroutines)
* [**`𝙼𝚊𝚔𝚒𝚗𝚐 𝚙𝚊𝚛𝚎𝚗𝚝 𝚌𝚘 𝚛𝚘𝚞𝚝𝚒𝚗𝚎 𝚝𝚘 𝚠𝚊𝚒𝚝 𝚞𝚗𝚝𝚒𝚕 𝚊𝚕𝚕 𝚝𝚑𝚎 𝚌𝚑𝚒𝚕𝚍𝚛𝚎𝚗 𝚌𝚘 𝚛𝚘𝚞𝚝𝚒𝚗𝚎𝚜 𝚊𝚛𝚎 𝚏𝚒𝚗𝚒𝚜𝚑𝚎𝚍`**](https://github.com/devrath/KotlinAlchemy/wiki/Making-parent-co-routine-to-wait-until-all-the-children-co-routines-are-finished)
* [**`𝙲𝚊𝚗𝚌𝚎𝚕𝚒𝚗𝚐 𝚝𝚑𝚎 𝚙𝚊𝚛𝚎𝚗𝚝 𝚊𝚗𝚍 𝚌𝚑𝚒𝚕𝚍 𝚓𝚘𝚋`**](https://github.com/devrath/KotlinAlchemy/wiki/Canceling-the-parent-and-child-job)
## **`𝚂𝚞𝚙𝚙𝚘𝚛𝚝`** ☕
𝙸𝚏 𝚢𝚘𝚞 𝚏𝚎𝚎𝚕 𝚕𝚒𝚔𝚎 𝚜𝚞𝚙𝚙𝚘𝚛𝚝 𝚖𝚎 𝚊 𝚌𝚘𝚏𝚏𝚎𝚎 𝚏𝚘𝚛 𝚖𝚢 𝚎𝚏𝚏𝚘𝚛𝚝𝚜, 𝙸 𝚠𝚘𝚞𝚕𝚍 𝚐𝚛𝚎𝚊𝚝𝚕𝚢 𝚊𝚙𝚙𝚛𝚎𝚌𝚒𝚊𝚝𝚎 𝚒𝚝.</br>
<a href="https://www.buymeacoffee.com/devrath" target="_blank"><img src="https://www.buymeacoffee.com/assets/img/custom_images/yellow_img.png" alt="𝙱𝚞𝚢 𝙼𝚎 𝙰 𝙲𝚘𝚏𝚏𝚎𝚎" style="height: 41px !important;width: 174px !important;box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;-webkit-box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;" ></a>
## **`𝙲𝚘𝚗𝚝𝚛𝚒𝚋𝚞𝚝𝚎`** 🙋♂️
𝚁𝚎𝚊𝚍 [𝚌𝚘𝚗𝚝𝚛𝚒𝚋𝚞𝚝𝚒𝚘𝚗 𝚐𝚞𝚒𝚍𝚎𝚕𝚒𝚗𝚎𝚜](CONTRIBUTING.md) 𝚏𝚘𝚛 𝚖𝚘𝚛𝚎 𝚒𝚗𝚏𝚘𝚛𝚖𝚊𝚝𝚒𝚘𝚗 𝚛𝚎𝚐𝚊𝚛𝚍𝚒𝚗𝚐 𝚌𝚘𝚗𝚝𝚛𝚒𝚋𝚞𝚝𝚒𝚘𝚗.
## **`𝙵𝚎𝚎𝚍𝚋𝚊𝚌𝚔`** ✍️
𝙵𝚎𝚊𝚝𝚞𝚛𝚎 𝚛𝚎𝚚𝚞𝚎𝚜𝚝𝚜 𝚊𝚛𝚎 𝚊𝚕𝚠𝚊𝚢𝚜 𝚠𝚎𝚕𝚌𝚘𝚖𝚎, [𝙵𝚒𝚕𝚎 𝚊𝚗 𝚒𝚜𝚜𝚞𝚎 𝚑𝚎𝚛𝚎](https://github.com/devrath/KotlinAlchemy/issues/new).
## **`𝙵𝚒𝚗𝚍 𝚝𝚑𝚒𝚜 𝚙𝚛𝚘𝚓𝚎𝚌𝚝 𝚞𝚜𝚎𝚏𝚞𝚕`** ? ❤️
𝚂𝚞𝚙𝚙𝚘𝚛𝚝 𝚒𝚝 𝚋𝚢 𝚌𝚕𝚒𝚌𝚔𝚒𝚗𝚐 𝚝𝚑𝚎 ⭐ 𝚋𝚞𝚝𝚝𝚘𝚗 𝚘𝚗 𝚝𝚑𝚎 𝚞𝚙𝚙𝚎𝚛 𝚛𝚒𝚐𝚑𝚝 𝚘𝚏 𝚝𝚑𝚒𝚜 𝚙𝚊𝚐𝚎. ✌️
## **`𝙻𝚒𝚌𝚎𝚗𝚜𝚎`**  :credit_card:
𝚃𝚑𝚒𝚜 𝚙𝚛𝚘𝚓𝚎𝚌𝚝 𝚒𝚜 𝚕𝚒𝚌𝚎𝚗𝚜𝚎𝚍 𝚞𝚗𝚍𝚎𝚛 𝚝𝚑𝚎 𝙰𝚙𝚊𝚌𝚑𝚎 𝙻𝚒𝚌𝚎𝚗𝚜𝚎 𝟸.𝟶 - 𝚜𝚎𝚎 𝚝𝚑𝚎 [𝙻𝙸𝙲𝙴𝙽𝚂𝙴](https://github.com/devrath/KotlinAlchemy/blob/main/LICENSE) 𝚏𝚒𝚕𝚎 𝚏𝚘𝚛 𝚍𝚎𝚝𝚊𝚒𝚕𝚜.
<p align="center">
<a><img src="https://forthebadge.com/images/badges/built-for-android.svg"></a>
</p>
================================================
FILE: application/.idea/.gitignore
================================================
# Default ignored files
/shelf/
/workspace.xml
================================================
FILE: application/.idea/.name
================================================
My Application
================================================
FILE: application/.idea/compiler.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel target="1.8" />
</component>
</project>
================================================
FILE: application/.idea/gradle.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="testRunner" value="GRADLE" />
<option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
<option value="$PROJECT_DIR$/app" />
<option value="$PROJECT_DIR$/buildSrc" />
</set>
</option>
<option name="resolveModulePerSourceSet" value="false" />
</GradleProjectSettings>
</option>
</component>
</project>
================================================
FILE: application/.idea/jarRepositories.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="BintrayJCenter" />
<option name="name" value="BintrayJCenter" />
<option name="url" value="https://jcenter.bintray.com/" />
</remote-repository>
<remote-repository>
<option name="id" value="Google" />
<option name="name" value="Google" />
<option name="url" value="https://dl.google.com/dl/android/maven2/" />
</remote-repository>
</component>
</project>
================================================
FILE: application/.idea/misc.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DesignSurface">
<option name="filePathToZoomLevelMap">
<map>
<entry key="app/src/main/res/layout/activity_cooperativecancellation.xml" value="0.19293478260869565" />
<entry key="app/src/main/res/layout/activity_debuggingcoroutines.xml" value="0.13722826086956522" />
<entry key="app/src/main/res/layout/activity_exceptionhandling.xml" value="0.13722826086956522" />
<entry key="app/src/main/res/layout/activity_flow_usecase1.xml" value="0.19293478260869565" />
<entry key="app/src/main/res/layout/activity_jobs.xml" value="0.1" />
<entry key="app/src/main/res/layout/activity_observable_types.xml" value="0.13722826086956522" />
<entry key="app/src/main/res/layout/activity_selection.xml" value="0.19293478260869565" />
<entry key="app/src/main/res/layout/activity_suspending_func.xml" value="0.1" />
</map>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
</project>
================================================
FILE: application/.idea/modules.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/modules/My_Application.iml" filepath="$PROJECT_DIR$/.idea/modules/My_Application.iml" />
<module fileurl="file://$PROJECT_DIR$/.idea/modules/app/My_Application.app.iml" filepath="$PROJECT_DIR$/.idea/modules/app/My_Application.app.iml" />
<module fileurl="file://$PROJECT_DIR$/.idea/modules/My_Application.buildSrc.iml" filepath="$PROJECT_DIR$/.idea/modules/My_Application.buildSrc.iml" />
</modules>
</component>
</project>
================================================
FILE: application/KotlinConcepts/.gitignore
================================================
*.iml
.gradle
/local.properties
/.idea/caches
/.idea/libraries
/.idea/modules.xml
/.idea/workspace.xml
/.idea/navEditor.xml
/.idea/assetWizardSettings.xml
.DS_Store
/build
/captures
.externalNativeBuild
.cxx
local.properties
================================================
FILE: application/KotlinConcepts/.idea/.gitignore
================================================
# Default ignored files
/shelf/
/workspace.xml
================================================
FILE: application/KotlinConcepts/.idea/.name
================================================
KotlinAlchemy
================================================
FILE: application/KotlinConcepts/.idea/appInsightsSettings.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="AppInsightsSettings">
<option name="tabSettings">
<map>
<entry key="Android Vitals">
<value>
<InsightsFilterSettings>
<option name="connection">
<ConnectionSetting>
<option name="appId" value="com.istudio.distancetracker" />
</ConnectionSetting>
</option>
<option name="failureTypes">
<list>
<option value="FATAL" />
</list>
</option>
<option name="signal" value="SIGNAL_UNSPECIFIED" />
<option name="timeIntervalDays" value="SEVEN_DAYS" />
<option name="visibilityType" value="ALL" />
</InsightsFilterSettings>
</value>
</entry>
<entry key="Firebase Crashlytics">
<value>
<InsightsFilterSettings>
<option name="connection">
<ConnectionSetting>
<option name="appId" value="PLACEHOLDER" />
<option name="mobileSdkAppId" value="" />
<option name="projectId" value="" />
<option name="projectNumber" value="" />
</ConnectionSetting>
</option>
<option name="signal" value="SIGNAL_UNSPECIFIED" />
<option name="timeIntervalDays" value="THIRTY_DAYS" />
<option name="visibilityType" value="ALL" />
</InsightsFilterSettings>
</value>
</entry>
</map>
</option>
</component>
</project>
================================================
FILE: application/KotlinConcepts/.idea/compiler.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel target="21" />
</component>
</project>
================================================
FILE: application/KotlinConcepts/.idea/deploymentTargetDropDown.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="deploymentTargetDropDown">
<value>
<entry key="app">
<State />
</entry>
</value>
</component>
</project>
================================================
FILE: application/KotlinConcepts/.idea/deploymentTargetSelector.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="deploymentTargetSelector">
<selectionStates>
<SelectionState runConfigName="app">
<option name="selectionMode" value="DROPDOWN" />
</SelectionState>
</selectionStates>
</component>
</project>
================================================
FILE: application/KotlinConcepts/.idea/gradle.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleJvm" value="#GRADLE_LOCAL_JAVA_HOME" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
<option value="$PROJECT_DIR$/app" />
</set>
</option>
<option name="resolveExternalAnnotations" value="false" />
</GradleProjectSettings>
</option>
</component>
</project>
================================================
FILE: application/KotlinConcepts/.idea/inspectionProfiles/Project_Default.xml
================================================
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="PreviewAnnotationInFunctionWithParameters" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewApiLevelMustBeValid" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewDimensionRespectsLimit" enabled="true" level="WARNING" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewFontScaleMustBeGreaterThanZero" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewMultipleParameterProviders" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewMustBeTopLevelFunction" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewNeedsComposableAnnotation" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewNotSupportedInUnitTestFiles" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
<inspection_tool class="PreviewPickerAnnotation" enabled="true" level="ERROR" enabled_by_default="true">
<option name="composableFile" value="true" />
<option name="previewFile" value="true" />
</inspection_tool>
</profile>
</component>
================================================
FILE: application/KotlinConcepts/.idea/kotlinc.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="KotlinJpsPluginSettings">
<option name="version" value="1.9.24" />
</component>
</project>
================================================
FILE: application/KotlinConcepts/.idea/material_theme_project_new.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="MaterialThemeProjectNewConfig">
<option name="metadata">
<MTProjectMetadataState>
<option name="migrated" value="true" />
<option name="pristineConfig" value="false" />
<option name="userId" value="1aad7385:1912621c654:-7ff9" />
</MTProjectMetadataState>
</option>
</component>
</project>
================================================
FILE: application/KotlinConcepts/.idea/migrations.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectMigrations">
<option name="MigrateToGradleLocalJavaHome">
<set>
<option value="$PROJECT_DIR$" />
</set>
</option>
</component>
</project>
================================================
FILE: application/KotlinConcepts/.idea/misc.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="jbr-21" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
</project>
================================================
FILE: application/KotlinConcepts/.idea/other.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="direct_access_persist.xml">
<option name="deviceSelectionList">
<list>
<PersistentDeviceSelectionData>
<option name="api" value="27" />
<option name="brand" value="DOCOMO" />
<option name="codename" value="F01L" />
<option name="id" value="F01L" />
<option name="manufacturer" value="FUJITSU" />
<option name="name" value="F-01L" />
<option name="screenDensity" value="360" />
<option name="screenX" value="720" />
<option name="screenY" value="1280" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="28" />
<option name="brand" value="DOCOMO" />
<option name="codename" value="SH-01L" />
<option name="id" value="SH-01L" />
<option name="manufacturer" value="SHARP" />
<option name="name" value="AQUOS sense2 SH-01L" />
<option name="screenDensity" value="480" />
<option name="screenX" value="1080" />
<option name="screenY" value="2160" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="31" />
<option name="brand" value="samsung" />
<option name="codename" value="a51" />
<option name="id" value="a51" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy A51" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="google" />
<option name="codename" value="akita" />
<option name="id" value="akita" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 8a" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="samsung" />
<option name="codename" value="b0q" />
<option name="id" value="b0q" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy S22 Ultra" />
<option name="screenDensity" value="600" />
<option name="screenX" value="1440" />
<option name="screenY" value="3088" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="32" />
<option name="brand" value="google" />
<option name="codename" value="bluejay" />
<option name="id" value="bluejay" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 6a" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="29" />
<option name="brand" value="samsung" />
<option name="codename" value="crownqlteue" />
<option name="id" value="crownqlteue" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy Note9" />
<option name="screenDensity" value="420" />
<option name="screenX" value="2220" />
<option name="screenY" value="1080" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="samsung" />
<option name="codename" value="dm3q" />
<option name="id" value="dm3q" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy S23 Ultra" />
<option name="screenDensity" value="600" />
<option name="screenX" value="1440" />
<option name="screenY" value="3088" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="google" />
<option name="codename" value="felix" />
<option name="id" value="felix" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel Fold" />
<option name="screenDensity" value="420" />
<option name="screenX" value="2208" />
<option name="screenY" value="1840" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="google" />
<option name="codename" value="felix_camera" />
<option name="id" value="felix_camera" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel Fold (Camera-enabled)" />
<option name="screenDensity" value="420" />
<option name="screenX" value="2208" />
<option name="screenY" value="1840" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="samsung" />
<option name="codename" value="gts8uwifi" />
<option name="id" value="gts8uwifi" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy Tab S8 Ultra" />
<option name="screenDensity" value="320" />
<option name="screenX" value="1848" />
<option name="screenY" value="2960" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="google" />
<option name="codename" value="husky" />
<option name="id" value="husky" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 8 Pro" />
<option name="screenDensity" value="390" />
<option name="screenX" value="1008" />
<option name="screenY" value="2244" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="30" />
<option name="brand" value="motorola" />
<option name="codename" value="java" />
<option name="id" value="java" />
<option name="manufacturer" value="Motorola" />
<option name="name" value="G20" />
<option name="screenDensity" value="280" />
<option name="screenX" value="720" />
<option name="screenY" value="1600" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="google" />
<option name="codename" value="lynx" />
<option name="id" value="lynx" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 7a" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="31" />
<option name="brand" value="google" />
<option name="codename" value="oriole" />
<option name="id" value="oriole" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 6" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="google" />
<option name="codename" value="panther" />
<option name="id" value="panther" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 7" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="31" />
<option name="brand" value="samsung" />
<option name="codename" value="q2q" />
<option name="id" value="q2q" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy Z Fold3" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1768" />
<option name="screenY" value="2208" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="samsung" />
<option name="codename" value="q5q" />
<option name="id" value="q5q" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy Z Fold5" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1812" />
<option name="screenY" value="2176" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="30" />
<option name="brand" value="google" />
<option name="codename" value="r11" />
<option name="id" value="r11" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel Watch" />
<option name="screenDensity" value="320" />
<option name="screenX" value="384" />
<option name="screenY" value="384" />
<option name="type" value="WEAR_OS" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="30" />
<option name="brand" value="google" />
<option name="codename" value="redfin" />
<option name="id" value="redfin" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 5" />
<option name="screenDensity" value="440" />
<option name="screenX" value="1080" />
<option name="screenY" value="2340" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="34" />
<option name="brand" value="google" />
<option name="codename" value="shiba" />
<option name="id" value="shiba" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel 8" />
<option name="screenDensity" value="420" />
<option name="screenX" value="1080" />
<option name="screenY" value="2400" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="33" />
<option name="brand" value="google" />
<option name="codename" value="tangorpro" />
<option name="id" value="tangorpro" />
<option name="manufacturer" value="Google" />
<option name="name" value="Pixel Tablet" />
<option name="screenDensity" value="320" />
<option name="screenX" value="1600" />
<option name="screenY" value="2560" />
</PersistentDeviceSelectionData>
<PersistentDeviceSelectionData>
<option name="api" value="29" />
<option name="brand" value="samsung" />
<option name="codename" value="x1q" />
<option name="id" value="x1q" />
<option name="manufacturer" value="Samsung" />
<option name="name" value="Galaxy S20" />
<option name="screenDensity" value="480" />
<option name="screenX" value="1440" />
<option name="screenY" value="3200" />
</PersistentDeviceSelectionData>
</list>
</option>
</component>
</project>
================================================
FILE: application/KotlinConcepts/.idea/runConfigurations.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RunConfigurationProducerService">
<option name="ignoredProducers">
<set>
<option value="com.intellij.execution.junit.AbstractAllInDirectoryConfigurationProducer" />
<option value="com.intellij.execution.junit.AllInPackageConfigurationProducer" />
<option value="com.intellij.execution.junit.PatternConfigurationProducer" />
<option value="com.intellij.execution.junit.TestInClassConfigurationProducer" />
<option value="com.intellij.execution.junit.UniqueIdConfigurationProducer" />
<option value="com.intellij.execution.junit.testDiscovery.JUnitTestDiscoveryConfigurationProducer" />
<option value="org.jetbrains.kotlin.idea.junit.KotlinJUnitRunConfigurationProducer" />
<option value="org.jetbrains.kotlin.idea.junit.KotlinPatternConfigurationProducer" />
</set>
</option>
</component>
</project>
================================================
FILE: application/KotlinConcepts/app/.gitignore
================================================
/build
================================================
FILE: application/KotlinConcepts/app/build.gradle.kts
================================================
plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
id("com.google.dagger.hilt.android")
kotlin("kapt")
}
android {
namespace = "com.istudio.app"
compileSdk = 34
defaultConfig {
applicationId = "com.istudio.app"
minSdk = 24
targetSdk = 34
versionCode = 1
versionName = "1.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables {
useSupportLibrary = true
}
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = "1.8"
}
buildFeatures {
compose = true
}
composeOptions {
kotlinCompilerExtensionVersion = "1.5.14"
}
packaging {
resources {
excludes += "/META-INF/{AL2.0,LGPL2.1}"
}
}
// Allow references to generated code
kapt {
correctErrorTypes = true
}
}
dependencies {
implementation("androidx.core:core-ktx:1.13.1")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.6")
implementation("androidx.activity:activity-compose:1.9.3")
implementation(platform("androidx.compose:compose-bom:2024.10.00"))
implementation("androidx.compose.ui:ui")
implementation("androidx.compose.ui:ui-graphics")
implementation("androidx.compose.ui:ui-tooling-preview")
implementation("androidx.compose.material3:material3")
testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.test.ext:junit:1.2.1")
androidTestImplementation("androidx.test.espresso:espresso-core:3.6.1")
androidTestImplementation(platform("androidx.compose:compose-bom:2024.10.00"))
androidTestImplementation("androidx.compose.ui:ui-test-junit4")
debugImplementation("androidx.compose.ui:ui-tooling")
debugImplementation("androidx.compose.ui:ui-test-manifest")
// Hilt
implementation("com.google.dagger:hilt-android:2.51.1")
kapt("com.google.dagger:hilt-android-compiler:2.51.1")
// Hilt-Navigation
implementation("androidx.hilt:hilt-navigation-compose:1.2.0")
// Navigation
implementation ("androidx.navigation:navigation-compose:2.8.3")
// Lifecycle
implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.6")
implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.8.6")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.6")
implementation("androidx.lifecycle:lifecycle-runtime-compose:2.8.6")
// Retrofit
implementation("com.squareup.retrofit2:retrofit:2.9.0")
implementation("com.google.code.gson:gson:2.10.1")
implementation("com.squareup.retrofit2:converter-gson:2.9.0")
// Joda Time
implementation("joda-time:joda-time:2.10.13")
// Open CSV reader
implementation("com.opencsv:opencsv:5.5.2")
// Desugar jdk
coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.1.2")
}
================================================
FILE: application/KotlinConcepts/app/proguard-rules.pro
================================================
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
================================================
FILE: application/KotlinConcepts/app/src/androidTest/java/com/istudio/app/ExampleInstrumentedTest.kt
================================================
package com.istudio.app
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.ext.junit.runners.AndroidJUnit4
import org.junit.Test
import org.junit.runner.RunWith
import org.junit.Assert.*
/**
* Instrumented test, which will execute on an Android device.
*
* See [testing documentation](http://d.android.com/tools/testing).
*/
@RunWith(AndroidJUnit4::class)
class ExampleInstrumentedTest {
@Test
fun useAppContext() {
// Context of the app under test.
val appContext = InstrumentationRegistry.getInstrumentation().targetContext
assertEquals("com.istudio.app", appContext.packageName)
}
}
================================================
FILE: application/KotlinConcepts/app/src/main/AndroidManifest.xml
================================================
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<application
android:name=".application.CurrentApplication"
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher"
android:supportsRtl="true"
android:theme="@style/Theme.KotlinConcepts"
tools:targetApi="31">
<activity
android:name=".main.MainActivity"
android:exported="true"
android:label="@string/app_name"
android:theme="@style/Theme.KotlinConcepts">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
================================================
FILE: application/KotlinConcepts/app/src/main/assets/stockdata.csv
================================================
"Rank","Name","Symbol","marketcap","price (USD)","country"
"1","Apple","AAPL","2378193174528","146.94","United States"
"2","Saudi Aramco","2222.SR","2224200000000","10.11","Saudi Arabia"
"3","Microsoft","MSFT","1951727484928","260.96","United States"
"4","Alphabet (Google)","GOOG","1534749310976","2338.99","United States"
"5","Amazon","AMZN","1133733478400","111.43","United States"
"6","Tesla","TSLA","720812179456","695.5","United States"
"7","Berkshire Hathaway","BRK-B","615390314496","278.77","United States"
"8","UnitedHealth","UNH","485138137088","517.11","United States"
"9","Johnson & Johnson","JNJ","467810287616","177.78","United States"
"10","Meta Platforms (Facebook)","META","443647000576","163.93","United States"
"11","Visa","V","438732455936","207.32","United States"
"12","TSMC","TSM","414552883200","79.94","Taiwan"
"13","Tencent","TCEHY","414527651840","43.11","China"
"14","NVIDIA","NVDA","378534789120","151.9","United States"
"15","Kweichow Moutai","600519.SS","363981359625","289.75","China"
"16","Procter & Gamble","PG","351233540096","146.39","United States"
"17","Exxon Mobil","XOM","350748901376","83.25","United States"
"18","Walmart","WMT","347239546880","126.68","United States"
"19","JPMorgan Chase","JPM","333942587392","113.7","United States"
"20","Roche","ROG.SW","329940108327","334.04","Switzerland"
"21","Alibaba","BABA","323570630656","107.45","China"
"22","Nestlé","NESN.SW","321120893727","116.77","Switzerland"
"23","Mastercard","MA","316819668992","325.73","United States"
"24","Eli Lilly","LLY","312279597056","328.66","United States"
"25","LVMH","MC.PA","306576221828","609.15","France"
"26","Home Depot","HD","300447301632","292.34","United States"
"27","Samsung","005930.KS","298950483006","44.43","South Korea"
"28","Pfizer","PFE","293365907456","52.29","United States"
"29","Coca-Cola","KO","274329354240","63.28","United States"
"30","AbbVie","ABBV","271138455552","153.44","United States"
"31","Chevron","CVX","270799929344","137.83","United States"
"32","Bank of America","BAC","252113485824","31.29","United States"
"33","Novo Nordisk","NVO","248601198592","109.17","Denmark"
"34","Pepsico","PEP","237420003328","171.71","United States"
"35","Merck","MRK","236737069056","93.62","United States"
"36","ICBC","1398.HK","235530494429","0.54","China"
"37","Costco","COST","221647618048","500.38","United States"
"38","Prosus","PRX.AS","214848079027","67.54","Netherlands"
"39","Verizon","VZ","213635678208","50.87","United States"
"40","Thermo Fisher Scientific","TMO","213437136896","545.23","United States"
"41","Toyota","TM","212765818880","155.05","Japan"
"42","Astrazeneca","AZN","207878225920","67.08","United Kingdom"
"43","Reliance Industries","RELIANCE.NS","205975990364","30.44","India"
"44","Broadcom","AVGO","197727453184","489.65","United States"
"45","Abbott Laboratories","ABT","192463323136","109.92","United States"
"46","Danaher","DHR","191083102208","262.81","United States"
"47","Oracle","ORCL","189423239168","71.08","United States"
"48","McDonald","MCD","188900343808","255.43","United States"
"49","Novartis","NVS","187214659584","84.23","Switzerland"
"50","ASML","ASML","182929080320","439.8","Netherlands"
"51","CATL","300750.SZ","182810754503","74.9","China"
"52","L'Oréal","OR.PA","181052129239","337.61","France"
"53","Cisco","CSCO","180587266048","43.61","United States"
"54","Adobe","ADBE","179328237568","383.18","United States"
"55","Comcast","CMCSA","178707611648","39.89","United States"
"56","Shell","SHEL","176618078208","47.24","United Kingdom"
"57","Accenture","ACN","174998831104","276.44","Ireland"
"58","Walt Disney","DIS","171856625664","94.35","United States"
"59","T-Mobile US","TMUS","169308520448","135.06","United States"
"60","China Construction Bank","601939.SS","168015942810","0.86","China"
"61","Salesforce","CRM","166821707776","167.66","United States"
"62","Nike","NKE","165167153152","104.95","United States"
"63","Bristol-Myers Squibb","BMY","160829194240","75.54","United States"
"64","Nextera Energy","NEE","158613716992","80.74","United States"
"65","United Parcel Service","UPS","158335139840","181.21","United States"
"66","Agricultural Bank of China","601288.SS","154914093284","0.45","China"
"67","Intel","INTC","152376573952","37.27","United States"
"68","QUALCOMM","QCOM","150750658560","134.6","United States"
"69","Wells Fargo","WFC","150306324480","39.66","United States"
"70","AT&T","T","148364541952","20.72","United States"
"71","CM Bank","3968.HK","145418845079","5.99","China"
"72","Philip Morris","PM","145338318848","93.76","United States"
"73","Texas Instruments","TXN","142718681088","154.77","United States"
"74","Tata Consultancy Services","TCS.NS","141961448754","38.8","India"
"75","Raytheon Technologies","RTX","140765806592","94.65","United States"
"76","Meituan","3690.HK","140235181378","22.68","China"
"77","Linde","LIN","138571120640","275.64","United Kingdom"
"78","Royal Bank Of Canada","RY","138145038336","98.09","Canada"
"79","Bank of China","601988.SS","135173874314","0.5","China"
"80","China Mobile","0941.HK","134848291425","6.31","China"
"81","Amgen","AMGN","133353414656","249.63","United States"
"82","Morgan Stanley","MS","133269602304","76.19","United States"
"83","PetroChina","PTR","131350069248","44.55","China"
"84","Union Pacific Corporation","UNP","129662050304","206.46","United States"
"85","BHP Group","BHP","127157625000","50.25","Australia"
"86","TotalEnergies","TTE","127135703040","48.45","France"
"87","AIA","1299.HK","126843997277","10.61","Hong Kong"
"88","IBM","IBM","126609686528","141.26","United States"
"89","HSBC","HSBC","125697081344","31.17","United Kingdom"
"90","CVS Health","CVS","125439918080","95.66","United States"
"91","Sanofi","SNY","125390430208","50.21","France"
"92","BYD","002594.SZ","124273194295","45.95","China"
"93","Ping An Insurance","601318.SS","123036377112","6.77","China"
"94","AMD","AMD","121959579648","75.26","United States"
"95","S&P Global","SPGI","120256618496","353.8","United States"
"96","American Tower","AMT","119659479040","257.5","United States"
"97","Charles Schwab","SCHW","119471185920","63","United States"
"98","Medtronic","MDT","119132143616","89.66","Ireland"
"99","Honeywell","HON","118369255424","173.89","United States"
"100","Unilever","UL","118089531392","45.94","United Kingdom"
"101","Lowe's Companies","LOW","117864972288","184.42","United States"
"102","Anthem","ANTM","116342792192","482.58","United States"
"103","Toronto Dominion Bank","TD","114630156288","62.36","Canada"
"104","Hermès","RMS.PA","113668592298","1086.98","France"
"105","Intuit","INTU","112438706176","398.61","United States"
"106","Lockheed Martin","LMT","111373762560","418.53","United States"
"107","Wuliangye Yibin","000858.SZ","109674459453","28.25","China"
"108","HDFC Bank","HDB","108887891968","58.81","India"
"109","Commonwealth Bank","CBA.AX","108265977043","63.29","Australia"
"110","GlaxoSmithKline","GSK","107212218368","42.18","United Kingdom"
"111","SAP","SAP","106530742272","87.56","Germany"
"112","ConocoPhillips","COP","106476806144","82.32","United States"
"113","Dior","CDI.PA","106033417653","587.73","France"
"114","American Express","AXP","106015784960","140.78","United States"
"115","Equinor","EQNR","105215623168","32.77","Norway"
"116","China Life Insurance","LFC","103967932416","7.88","China"
"117","Sony","SONY","102031015936","82.53","Japan"
"118","Goldman Sachs","GS","101423333376","295.31","United States"
"119","Nippon Telegraph & Telephone","NPPXF","100178526208","28.15","Japan"
"120","Diageo","DEO","97791942656","171.37","United Kingdom"
"121","Anheuser-Busch Inbev","BUD","96170795008","54.6","Belgium"
"122","Deutsche Telekom","DTE.DE","95439246480","19.2","Germany"
"123","CSL","CSL.AX","95308949865","197.86","Australia"
"124","China Shenhua Energy","601088.SS","93917975546","4.42","China"
"125","Jingdong Mall","JD","93776707584","59.44","China"
"126","Rio Tinto","RIO","93689520128","57.48","United Kingdom"
"127","Caterpillar","CAT","93137764352","174.62","United States"
"128","British American Tobacco","BTI","92813344768","40.61","United Kingdom"
"129","Volkswagen","VOW3.DE","92251598834","129.97","Germany"
"130","BlackRock","BLK","92232753152","608.79","United States"
"131","Starbucks","SBUX","90919804928","79.27","United States"
"132","Deere & Company","DE","90821263360","297.16","United States"
"133","Automatic Data Processing","ADP","90730471424","217.19","United States"
"134","Prologis","PLD","90695835648","122.51","United States"
"135","Citigroup","C","89988571136","46.34","United States"
"136","Cigna","CI","89369452544","281.68","United States"
"137","ServiceNow","NOW","88252514304","440.25","United States"
"138","Estee Lauder","EL","88073527296","246.47","United States"
"139","Mondelez","MDLZ","87463747584","63.2","United States"
"140","BP","BP","87246266368","26.68","United Kingdom"
"141","Al Rajhi Bank","1120.SR","86965784828","21.74","Saudi Arabia"
"142","Keyence","6861.T","86548585173","356.86","Japan"
"143","Boeing","BA","84349542400","142.57","United States"
"144","Enbridge","ENB","84313849856","41.56","Canada"
"145","China Yangtze Power","600900.SS","84210470774","3.7","China"
"146","Zoetis","ZTS","83847266304","178.16","United States"
"147","Duke Energy","DUK","83434070016","108.37","United States"
"148","PayPal","PYPL","83043049472","71.71","United States"
"149","Chubb","CB","82276999168","193.69","Switzerland"
"150","The Saudi National Bank","1180.SR","79657426000","17.96","Saudi Arabia"
"151","Gazprom","GAZP.ME","79519488952","3.36","Russia"
"152","Marsh & McLennan Companies","MMC","78662475776","156.73","United States"
"153","Netflix","NFLX","78436573184","176.55","United States"
"154","Charter Communications","CHTR","78328422400","466.64","United States"
"155","Gilead Sciences","GILD","78325391360","62.45","United States"
"156","Airbus","AIR.PA","78078384459","99.17","Netherlands"
"157","SABIC","2010.SR","78013429632","26","Saudi Arabia"
"158","Applied Materials","AMAT","77725417472","89.35","United States"
"159","Siemens","SIE.DE","77468197840","96.55","Germany"
"160","Analog Devices","ADI","77321142272","148.75","United States"
"161","Canadian National Railway","CNI","77027328000","111.44","Canada"
"162","Altria Group","MO","76668166144","42.35","United States"
"163","Southern Company","SO","76607692800","72.1","United States"
"164","Infosys","INFY","76407988224","18.17","India"
"165","Merck KGaA","MRK.DE","76247297416","176.92","Germany"
"166","CME Group","CME","75446059008","209.91","United States"
"167","Stryker Corporation","SYK","75354742784","199.27","United States"
"168","Crown Castle","CCI","74888552448","172.94","United States"
"169","3M","MMM","74546733056","131","United States"
"170","Intuitive Surgical","ISRG","74311278592","207.02","United States"
"171","Northrop Grumman","NOC","74147258368","477","United States"
"172","Vertex Pharmaceuticals","VRTX","74020904960","289.42","United States"
"173","Inditex","IDEXY","73387630592","11.78","Spain"
"174","Petrobras","PBR","73373630464","11.25","Brazil"
"175","Brookfield Asset Management","BAM","73337307136","44.68","Canada"
"176","Allianz","ALV.DE","73295170799","177.56","Germany"
"177","Fomento Económico Mexicano","FMX","72901607424","60.37","Mexico"
"178","Hindustan Unilever","HINDUNILVR.NS","72388160781","30.81","India"
"179","LG Energy Solution","373220.KS","71759376859","306.66","South Korea"
"180","KDDI","9433.T","71515200856","32.46","Japan"
"181","Pinduoduo","PDD","70906994688","56.08","China"
"182","Booking.com","BKNG","70722723840","1740.94","United States"
"183","Progressive","PGR","69725921280","119.21","United States"
"184","Scotiabank","BNS","69618311168","57.86","Canada"
"185","Blackstone Group","BX","69571920000","96.36","United States"
"186","TJX Companies","TJX","69278605312","59.13","United States"
"187","General Electric","GE","68956348416","62.65","United States"
"188","Becton Dickinson","BDX","68917313536","241.76","United States"
"189","Target","TGT","68803215360","148.38","United States"
"190","Postal Savings Bank of China","601658.SS","68796334378","0.76","China"
"191","U.S. Bancorp","USB","68745191424","46.27","United States"
"192","Sinopec","SNP","68631175168","43.73","China"
"193","Moderna","MRNA","68466429952","172.13","United States"
"194","Mitsubishi UFJ Financial","MUFG","67919392768","5.39","Japan"
"195","Regeneron Pharmaceuticals","REGN","67411390464","613.69","United States"
"196","Air Liquide","AI.PA","67053509309","128.53","France"
"197","LONGi Green Energy Technology","601012.SS","66441263206","8.76","China"
"198","Canadian Pacific Railway","CP","66365038592","71.37","Canada"
"199","ICICI Bank","IBN","66358902784","19.08","India"
"200","Colgate-Palmolive","CL","66247692288","79.06","United States"
"201","Glencore","GLCNF","65910607872","5.03","Switzerland"
"202","PNC Financial Services","PNC","65668390912","158.78","United States"
"203","Bank of Montreal","BMO","65290514432","96.42","Canada"
"204","Sherwin-Williams","SHW","64902684672","249.5","United States"
"205","Dominion Energy","D","64836698112","79.92","United States"
"206","EssilorLuxottica","EL.PA","64815075169","145.8","France"
"207","Micron Technology","MU","64732839936","58.68","United States"
"208","Schneider Electric","SU.PA","64583495690","115.9","France"
"209","Zurich Insurance Group","ZURN.SW","63836780707","430.48","Switzerland"
"210","Waste Management","WM","63725969408","153.48","United States"
"211","Iberdrola","IBE.MC","63707956642","10.2","Spain"
"212","Nongfu Spring","9633.HK","63684359373","5.66","China"
"213","Truist Financial","TFC","63117758464","47.41","United States"
"214","America Movil","AMX","62997082112","19.71","Mexico"
"215","Vale","VALE","62857179136","13.26","Brazil"
"216","Midea","000333.SZ","62540821091","8.94","China"
"217","Humana","HUM","61536317440","486.48","United States"
"218","CSX Corporation","CSX","61488074752","28.28","United States"
"219","Kering","KER.PA","61436474433","497.79","France"
"220","National Australia Bank","NAB.AX","61399004005","19.02","Australia"
"221","General Dynamics","GD","61331398656","220.85","United States"
"222","Activision Blizzard","ATVI","61111824384","78.16","United States"
"223","Airbnb","ABNB","60882583552","95.66","United States"
"224","Edwards Lifesciences","EW","60850868224","97.87","United States"
"225","SoftBank","9984.T","60702771275","38.16","Japan"
"226","Fiserv","FISV","60696395776","93.9","United States"
"227","Industrial Bank","601166.SS","59562283228","2.87","China"
"228","CNOOC","0883.HK","59472837162","1.25","China"
"229","China Tourism Group Duty Free","601888.SS","59098487748","30.27","China"
"230","Bank Central Asia","BBCA.JK","59025566624","0.48","Indonesia"
"231","Aon","AON","58756030464","276.65","United Kingdom"
"232","Equinix","EQIX","58737278976","645.31","United States"
"233","Hong Kong Exchanges & Clearing","0388.HK","58726209021","46.32","Hong Kong"
"234","Compagnie Financière Richemont","CFR.SW","58713235001","103.47","Switzerland"
"235","Foshan Haitian Flavouring and Food","603288.SS","58332025005","12.59","China"
"236","FedEx","FDX","58248957952","224.75","United States"
"237","United Heavy Machinery","OMZZP.ME","58162943422","68.7","Russia"
"238","EOG Resources","EOG","58003161088","99.03","United States"
"239","Dollar General","DG","57786626048","254.57","United States"
"240","Bayer","BAYZF","57762664448","57.68","Germany"
"241","Fidelity National Information Services","FIS","57697112064","94.91","United States"
"242","Illinois Tool Works","ITW","57582698496","184.89","United States"
"243","Walmex","WMMVF","57335689216","3.24","Mexico"
"244","NetEase","NTES","57259651072","87.18","China"
"245","Life Insurance Corporation of India (LIC)","LICI.NS","57114731940","9.03","India"
"246","Mercedes-Benz","MBG.DE","56972073315","53.25","Germany"
"247","Rosneft","ROSN.ME","56669219081","5.97","Russia"
"248","DBS Group","D05.SI","56341976050","21.86","Singapore"
"249","Mindray","300760.SZ","56326308614","46.46","China"
"250","Lam Research","LRCX","56281530368","405.74","United States"
"251","UBS","UBS","56033374208","15.88","Switzerland"
"252","Public Storage","PSA","55115890688","313.13","United States"
"253","Canadian Natural Resources","CNQ","54877323264","47.54","Canada"
"254","Siemens Healthineers","SHL.DE","54502265629","48.55","Germany"
"255","State Bank of India","SBIN.NS","54473674788","6.1","India"
"256","Reckitt Benckiser","RKT.L","54187486436","7574.08","United Kingdom"
"257","Heineken","HEIA.AS","53953714647","93.74","Netherlands"
"258","Intercontinental Exchange","ICE","53800095744","96.37","United States"
"259","Boston Scientific","BSX","53794721792","37.63","United States"
"260","Enterprise Products","EPD","53660876800","24.61","United States"
"261","BNP Paribas","BNP.PA","53500106844","43.38","France"
"262","Investor AB","IVS.F","53287584370","18.05","Sweden"
"263","Enel","ENEL.MI","53178304161","5.22","Italy"
"264","Occidental Petroleum","OXY","53026267136","56.58","United States"
"265","Norfolk Southern","NSC","52740706304","221.29","United States"
"266","Moody's","MCO","52438589440","284.22","United States"
"267","Saudi Telecom Company","7010.SR","52147685099","26.11","Saudi Arabia"
"268","Air Products and Chemicals","APD","52090040320","234.88","United States"
"269","Thomson Reuters","TRI","51974729728","106.52","Canada"
"270","RELX","RELX","51832664064","26.97","United Kingdom"
"271","Monster Beverage","MNST","51748855808","97.7","United States"
"272","Liberty Bancshares","LBSI","51685834752","66.56","United States"
"273","Palo Alto Networks","PANW","51661709312","515","United States"
"274","ABB","ABB","51578695680","26.61","Switzerland"
"275","London Stock Exchange","LS4C.F","51571333599","91.5","United Kingdom"
"276","Keurig Dr Pepper","KDP","51500457984","36.31","United States"
"277","Eaton","ETN","51263516672","128.48","Ireland"
"278","Fast Retailing","9983.T","51152133899","500.78","Japan"
"279","Sberbank","SBER.ME","51004713573","2.26","Russia"
"280","Centene","CNC","50885165056","87","United States"
"281","Housing Development Finance Corporation","HDFC.NS","50820582823","28.01","India"
"282","Nintendo","7974.T","50580466642","434.46","Japan"
"283","MetLife","MET","50561085440","62.18","United States"
"284","Novatek","NVTK.ME","50524683940","16.87","Russia"
"285","Daiichi Sankyō","4568.T","50499079512","26.35","Japan"
"286","Hapag-Lloyd","HLAG.DE","50376528957","283.16","Germany"
"287","Muyuan Foods","002714.SZ","50257023990","9.44","China"
"288","HCA Healthcare","HCA","50209378304","169.92","United States"
"289","Pioneer Natural Resources","PXD","49988730880","206.6","United States"
"290","Recruit","6098.T","49960211199","31.05","Japan"
"291","TC Energy","TRP","49863196672","50.7","Canada"
"292","Fortinet","FTNT","49806376960","62.05","United States"
"293","Baidu","BIDU","49384947712","142.44","China"
"294","Vinci","DG.PA","49287252432","87.13","France"
"295","American Electric Power","AEP","49079398400","95.57","United States"
"296","Atlassian","TEAM","49067483136","193.57","Australia"
"297","SK Hynix","000660.KS","49064590654","71.35","South Korea"
"298","Bharti Airtel","BHARTIARTL.NS","49043471562","8.34","India"
"299","Dassault Systèmes","DSY.PA","49038131612","37.62","France"
"300","China Telecom","0728.HK","48866688441","0.35","China"
"301","AXA","CS.PA","48822738437","21.5","France"
"302","Snowflake","SNOW","48573870080","152.7","United States"
"303","BMW","BMW.DE","48400963700","73.84","Germany"
"304","Synopsys","SNPS","48324751360","315.91","United States"
"305","National Grid","NGG","47789305856","65.47","United Kingdom"
"306","McKesson","MCK","47787528192","330.95","United States"
"307","Kraft Heinz","KHC","47706955776","38.98","United States"
"308","Emerson","EMR","47603929088","80.14","United States"
"309","Shin-Etsu Chemical","4063.T","47578818234","115.33","Japan"
"310","Tokyo Electron","8035.T","47554904096","305.33","Japan"
"311","Vmware","VMW","47538995200","112.8","United States"
"312","Westpac Banking","WBC.AX","47502607558","13.59","Australia"
"313","Bank of Communications","601328.SS","47165156457","0.69","China"
"314","Ørsted","DOGEF","46992867328","111.4","Denmark"
"315","Daikin","6367.T","46857195400","160.09","Japan"
"316","Foxconn (Hon Hai Precision Industry)","2317.TW","46683448783","3.37","Taiwan"
"317","Sempra Energy","SRE","46608285696","148.29","United States"
"318","Newmont","NEM","46349221888","58.4","United States"
"319","Marriott International","MAR","46090104832","140.82","United States"
"320","Constellation Brands","STZ","46058692608","241.75","United States"
"321","Schlumberger","SLB","46008119296","32.55","United States"
"322","Atlas Copco","ATCO-B.ST","46002917355","8.55","Sweden"
"323","Adani Green Energy","ADANIGREEN.NS","45843912306","28.86","India"
"324","Kimberly-Clark","KMB","45700644864","135.64","United States"
"325","General Mills","GIS","45658701824","76.46","United States"
"326","The Hershey Company","HSY","45656645632","222.06","United States"
"327","Samsung Biologics","207940.KS","45610158120","637.8","South Korea"
"328","Hikvision","002415.SZ","45591390965","4.83","China"
"329","Hitachi","6501.T","45513616919","47.35","Japan"
"330","East Money Information","300059.SZ","45472018864","3.44","China"
"331","General Motors","GM","45467922432","31.18","United States"
"332","ITC","ITC.NS","45454863826","3.68","India"
"333","Adyen","ADYEN.AS","45439376539","1467.07","Netherlands"
"334","Pernod Ricard","RI.PA","45369874277","179.49","France"
"335","KLA","KLAC","45263466496","317.22","United States"
"336","L3Harris Technologies","LHX","45221474304","234.46","United States"
"337","Takeda Pharmaceutical","TAK","45028302848","14.5","Japan"
"338","Ford","F","44997832704","11.4","United States"
"339","Bajaj Finance","BAJFINANCE.NS","44725276759","73.87","India"
"340","WuXi AppTec","2359.HK","44569958476","13.67","China"
"341","Anglo American","AAL.L","44560876178","3213.52","United Kingdom"
"342","Sysco","SYY","44492541952","87.33","United States"
"343","Ecolab","ECL","44490768384","155.75","United States"
"344","Chugai Pharmaceutical","4519.T","44476216931","27.05","Japan"
"345","BCE","BCE","44400099328","48.7","Canada"
"346","Oriental Land","4661.T","44200711170","134.95","Japan"
"347","CIBC","CM","44183601152","48.67","Canada"
"348","Marathon Petroleum","MPC","44161421312","81.63","United States"
"349","Deutsche Post","DPW.DE","44030088945","35.98","Germany"
"350","Kuaishou Technology","1024.HK","43991504193","10.25","China"
"351","Cadence Design Systems","CDNS","43989078016","159.52","United States"
"352","Exelon Corporation","EXC","43844792320","44.73","United States"
"353","Macquarie","MQG.AX","43815332592","113.34","Australia"
"354","Nornickel","GMKN.ME","43636719546","283.99","Russia"
"355","O'Reilly Automotive","ORLY","43592699904","663.26","United States"
"356","Maersk","DP4A.F","43546093723","2306.69","Denmark"
"357","Suncor Energy","SU","43243556864","30.59","Canada"
"358","Vodafone","VOD","43209293824","15.32","United Kingdom"
"359","Lukoil","LKOH.ME","43201620616","66.43","Russia"
"360","Wanhua Chemical","600309.SS","43194032529","13.76","China"
"361","ANZ Bank","ANZ.AX","43175575215","15.35","Australia"
"362","Kotak Mahindra Bank","KOTAKBANK.NS","42924670528","21.62","India"
"363","Safran","SAF.PA","42691197361","100","France"
"364","AutoZone","AZO","42428403712","2177.2","United States"
"365","CrowdStrike","CRWD","42415800320","182.77","United States"
"366","Lonza","LONN.SW","42258575330","568.89","Switzerland"
"367","Roper Technologies","ROP","42250285056","398.92","United States"
"368","Paychex","PAYX","42198274048","117.25","United States"
"369","Capital One","COF","42174373888","107.3","United States"
"370","CITIC Securities","600030.SS","42155743279","3.01","China"
"371","Valero Energy","VLO","41993080832","102.9","United States"
"372","Uber","UBER","41992871936","21.39","United States"
"373","Realty Income","O","41883254784","69.62","United States"
"374","Bank Rakyat Indonesia","BYRA.F","41618214226","0.26","Indonesia"
"375","Ping An Bank","000001.SZ","41613961470","2.14","China"
"376","Mitsubishi Corporation","8058.T","41579827574","28.16","Japan"
"377","Nutrien","NTR","41556250624","74.92","Canada"
"378","Republic Services","RSG","41337495552","130.86","United States"
"379","IQVIA","IQV","41335693312","218.39","United States"
"380","Santander","SAN","41277276160","2.46","Spain"
"381","Archer Daniels Midland (ADM)","ADM","41027039232","72.91","United States"
"382","Honda","HMC","40985972736","23.96","Japan"
"383","Alimentation Couche-Tard","ATD.TO","40978640490","40.05","Canada"
"384","Sumitomo Mitsui Financial Group","SMFG","40955514880","5.98","Japan"
"385","American International Group","AIG","40940482560","51.68","United States"
"386","KKR & Co.","KKR","40930082816","48","United States"
"387","Itōchū Shōji","8001.T","40872562434","27.77","Japan"
"388","WuXi Biologics","WXXWY","40697753600","19.31","China"
"389","Shopify","SHOP","40466481152","32.08","Canada"
"390","Tokio Marine","8766.T","40461255380","60.07","Japan"
"391","The Travelers Companies","TRV","40441827328","168.54","United States"
"392","Denso","6902.T","40406937165","52.93","Japan"
"393","NXP Semiconductors","NXPI","40400875520","153.87","Netherlands"
"394","Sea (Garena)","SE","40400195584","71.92","Singapore"
"395","Woodside Energy","WDS","39997214720","20.56","Australia"
"396","EDF (Electricité de France)","EDF.PA","39682723459","10.26","France"
"397","Itaú Unibanco","ITUB","39643025408","4.05","Brazil"
"398","BioNTech","BNTX","39420112896","162.21","Germany"
"399","ENI","E","39257710592","22.18","Italy"
"400","Cintas","CTAS","39170519040","382.81","United States"
"401","Amphenol","APH","39064764416","65.42","United States"
"402","Xiaomi","XIACF","39041183744","1.56","China"
"403","Marvell Technology Group","MRVL","39038627840","45.93","United States"
"404","Ambev","ABEV","39033462784","2.48","Brazil"
"405","YANGHE","002304.SZ","38868666275","25.79","China"
"406","Bank of China (Hong Kong)","2388.HK","38790566845","3.67","Hong Kong"
"407","BASF","BAS.DE","38780223710","42.22","Germany"
"408","Adani Total Gas","ATGL.NS","38706103498","35.19","India"
"409","Autodesk","ADSK","38622769152","177.76","United States"
"410","Stellantis","STLA","38392586240","12.26","Netherlands"
"411","Xcel Energy","XEL","38314487808","70.35","United States"
"412","Freeport-McMoRan","FCX","38229250048","26.37","United States"
"413","Compass Group","CPG.L","38167271842","2153.24","United Kingdom"
"414","Phillips 66","PSX","38122364928","79.24","United States"
"415","Adani Transmission","ADANITRANS.NS","38047871769","34.59","India"
"416","Banco Santander Brasil","BSBR","38042787840","5.1","Brazil"
"417","Corteva","CTVA","37965299712","52.46","United States"
"418","Budweiser APAC","1876.HK","37958801916","2.87","Hong Kong"
"419","Jardine Matheson","J36.SI","37895760000","52.56","Hong Kong"
"420","Block","SQ","37703794688","64.95","United States"
"421","TE Connectivity","TEL","37691576320","113.93","Switzerland"
"422","S.F. Express","002352.SZ","37657626877","7.69","China"
"423","Southern Copper","SCCO","37641748480","48.69","United States"
"424","Welltower","WELL","37636214784","82.91","United States"
"425","Dollar Tree","DLTR","37622112256","167.54","United States"
"426","Williams Companies","WMB","37599969280","30.87","United States"
"427","Kinder Morgan","KMI","37435932672","16.51","United States"
"428","Nidec","6594.T","37264206473","64.62","Japan"
"429","Dow","DOW","37256978432","51.17","United States"
"430","Simon Property Group","SPG","37024165888","98.49","United States"
"431","Verbund AG","OEWA.F","36857014765","105.88","Austria"
"432","Digital Realty","DLR","36771905536","126.38","United States"
"433","OCBC Bank","O39.SI","36731549362","8.17","Singapore"
"434","Agilent Technologies","A","36650807296","122.09","United States"
"435","lululemon athletica","LULU","36449734656","285.56","Canada"
"436","Great Wall Motors","601633.SS","36312608778","5.01","China"
"437","Workday","WDAY","36286439424","142.86","United States"
"438","Prudential Financial","PRU","36279525376","96.75","United States"
"439","Aflac","AFL","36208513024","56.21","United States"
"440","Chipotle Mexican Grill","CMG","36164608000","1293.33","United States"
"441","Motorola Solutions","MSI","35921174528","214.72","United States"
"442","Li Auto","LI","35884945408","37.18","China"
"443","Allstate","ALL","35670794240","129.72","United States"
"444","Ferrari","RACE","35639443456","191.68","Italy"
"445","ING","ING","35577761792","9.23","Netherlands"
"446","7-Eleven","3382.T","35426306526","40.12","Japan"
"447","MSCI","MSCI","35397861376","435.57","United States"
"448","Luxshare Precision","002475.SZ","35192810072","4.97","China"
"449","Arthur J. Gallagher & Co.","AJG","35192692736","167.53","United States"
"450","Sika","SIKA.SW","35188874825","228.94","Switzerland"
"451","Fortescue","FMG.AX","35154218347","11.42","Australia"
"452","Jiangsu Hengrui Medicine","600276.SS","34975643191","5.48","China"
"453","Asian Paints","ASIANPAINT.NS","34902598884","36.39","India"
"454","Alcon","ALC","34899640320","70.44","Switzerland"
"455","SBA Communications","SBAC","34897780736","323.64","United States"
"456","Lloyds Banking Group","LYG","34818658304","1.98","United Kingdom"
"457","China State Construction Engineering","601668.SS","34740253999","0.83","China"
"458","Electronic Arts","EA","34698182656","124.23","United States"
"459","Danone","BN.PA","34626047743","54.16","France"
"460","Yili Group","600887.SS","34625138400","5.41","China"
"461","Cognizant Technology Solutions","CTSH","34590322688","66.37","United States"
"462","Shanghai Pudong Development Bank","600000.SS","34526863637","1.18","China"
"463","Wesfarmers","WES.AX","34331634779","30.27","Australia"
"464","Murata Manufacturing (Murata Seisakusho)","6981.T","34324091587","54.1","Japan"
"465","Kroger","KR","34300368896","47.94","United States"
"466","Sun Hung Kai Properties","0016.HK","34297124771","11.83","Hong Kong"
"467","Bank of New York Mellon","BK","34064840704","42.17","United States"
"468","Zijin Mining","601899.SS","33931947428","1.33","China"
"469","Adani Enterprises","ADANIENT.NS","33919113816","29.75","India"
"470","NIO","NIO","33894887424","20.29","China"
"471","Intesa Sanpaolo","ISP.MI","33770904261","1.7","Italy"
"472","Devon Energy","DVN","33706199040","51.07","United States"
"473","Manulife Financial","MFC","33578180608","17.27","Canada"
"474","China Overseas Land & Investment","0688.HK","33462832246","3.06","Hong Kong"
"475","Yum! Brands","YUM","33406963712","117.15","United States"
"476","Warner Bros. Discovery","WBD","33288810000","13.83","United States"
"477","AIER Eye Hospital","300015.SZ","33285517067","4.73","China"
"478","Brown Forman","BF-A","33279332352","68.31","United States"
"479","Prudential","PUK","33260937216","23.87","United Kingdom"
"480","Mitsui Bussan","8031.T","33228178527","20.91","Japan"
"481","Neste","NESTE.HE","33225672913","43.26","Finland"
"482","Bank of Ningbo","002142.SZ","33172618650","5.02","China"
"483","Naspers","NPSNY","33147598848","30.77","South Africa"
"484","Cenovus Energy","CVE","33133355008","16.72","Canada"
"485","MercadoLibre","MELI","33098346496","657","Argentina"
"486","Consolidated Edison","ED","33087610880","93.39","United States"
"487","Johnson Controls","JCI","33065146368","47.53","Ireland"
"488","Hoya","7741.T","33010072838","91.39","Japan"
"489","Microchip Technology","MCHP","32981719040","59.48","United States"
"490","Nordea Bank","NDA-FI.HE","32963714252","8.8","Finland"
"491","Walgreens Boots Alliance","WBA","32962762752","38.14","United States"
"492","Volvo Group","VOLVF","32942080000","15.29","Sweden"
"493","HP","HPQ","32833945600","31.75","United States"
"494","Banco Bradesco","BBD","32828178432","3.08","Brazil"
"495","MTR Corporation","0066.HK","32782946422","5.29","Hong Kong"
"496","MediaTek","2454.TW","32740699373","20.58","Taiwan"
"497","ResMed","RMD","32598441984","219.11","United States"
"498","Zoom","ZM","32526184448","109.01","United States"
"499","Baxter","BAX","32517902336","64.58","United States"
"500","Chunghwa Telecom","CHT","32468807680","41.86","Taiwan"
"501","Seagen","SGEN","32344913920","175.72","United States"
"502","Anta Sports","AS7.F","32279661659","11.9","China"
"503","Hang Seng Bank","0011.HK","32270898416","16.88","Hong Kong"
"504","Givaudan","GIVN.SW","32193741568","3491.12","Switzerland"
"505","COSCO Shipping","601919.SS","32149213756","2.16","China"
"506","Waste Connections","WCN","32144594944","125","United States"
"507","Parker-Hannifin","PH","32134080512","250.32","United States"
"508","Veeva Systems","VEEV","32056428544","207.02","United States"
"509","Maruti Suzuki India","MARUTI.NS","31989522640","105.9","India"
"510","WEC Energy Group","WEC","31940950016","101.26","United States"
"511","Maaden","1211.SR","31935271806","12.98","Saudi Arabia"
"512","UOB","U11.SI","31910380516","19.06","Singapore"
"513","Datadog","DDOG","31882868736","101.21","United States"
"514","DSV","DSV.VI","31849153319","139.37","Denmark"
"515","Dell","DELL","31847342080","43.07","United States"
"516","Constellation Software","CSU.TO","31846662697","1502.8","Canada"
"517","Biogen","BIIB","31845986304","217.45","United States"
"518","Global Payments","GPN","31816835072","113.01","United States"
"519","Hilton Worldwide","HLT","31750721536","114.08","United States"
"520","Silergy","6415.TW","31651959760","83.27","China"
"521","IDEXX Laboratories","IDXX","31643832320","376.68","United States"
"522","DMart","DMART.NS","31601242379","48.78","India"
"523","HCL Technologies","HCLTECH.NS","31592785377","11.67","India"
"524","Carrier","CARR","31427364864","37.05","United States"
"525","Grupo México","GMBXF","31385446400","3.98","Mexico"
"526","Arista Networks","ANET","31350745088","102.02","United States"
"527","Hyundai","HYMTF","31325120512","34.34","South Korea"
"528","Maybank","MLYBY","31312375808","5.23","Malaysia"
"529","Vanke","2202.HK","31180951322","2.35","China"
"530","PSEG","PEG","31133782016","62.34","United States"
"531","Lucid Motors","LCID","31071858688","18.63","United States"
"532","BAE Systems","BSP.F","31046901575","9.83","United Kingdom"
"533","Munich RE (Münchener Rück)","MUV2.DE","30964065174","221.02","Germany"
"534","Adidas","ADS.DE","30944614838","161.09","Germany"
"535","Cheniere Energy","LNG","30885513216","121.53","United States"
"536","Trane Technologies","TT","30860167168","131.96","Ireland"
"537","Apollo Global Management","APO","30780000256","51.3","United States"
"538","Japan Tobacco","2914.T","30734430180","17.32","Japan"
"539","Singtel","Z74.SI","30655097381","1.88","Singapore"
"540","Loblaw Companies","L.TO","30598907599","91.54","Canada"
"541","CITIC Bank","601998.SS","30596231300","0.71","China"
"542","Woolworths Group","WOW.AX","30576051614","25.12","Australia"
"543","Telus","TU","30549661696","22.12","Canada"
"544","Old Dominion Freight Line","ODFL","30523965440","269.28","United States"
"545","VICI Properties","VICI","30262337536","31.43","United States"
"546","Deutsche Börse","DB1.DE","30206204267","164.5","Germany"
"547","SAIC Motor","600104.SS","30179868895","2.57","China"
"548","CITIC limited","0267.HK","30165897051","1.04","China"
"549","Telstra","TLS.AX","30149384255","2.61","Australia"
"550","Tyson Foods","TSN","29923602432","82.77","United States"
"551","Illumina","ILMN","29889060864","190.26","United States"
"552","AmerisourceBergen","ABC","29886322688","142.68","United States"
"553","International Flavors & Fragrances","IFF","29810950144","116.98","United States"
"554","Barclays","BCS","29784672256","7.2","United Kingdom"
"555","Infineon","IFX.DE","29696706349","22.81","Germany"
"556","Barrick Gold","GOLD","29670825984","16.68","Canada"
"557","Otis Worldwide","OTIS","29582895104","69.97","United States"
"558","Transurban","TCL.AX","29517676004","9.61","Australia"
"559","Japan Post Bank","7182.T","29472872088","7.86","Japan"
"560","TransDigm","TDG","29429962752","538.96","United States"
"561","Fanuc","6954.T","29375321518","153.14","Japan"
"562","Mizuho Financial Group","MFG","29337997312","2.32","Japan"
"563","Fastenal","FAST","29298348032","50.9","United States"
"564","Gree Electric Appliances","000651.SZ","29252012361","5.19","China"
"565","Nucor","NUE","29234892800","109.88","United States"
"566","Larsen & Toubro","LT.NS","29226829370","20.8","India"
"567","MPLX","MPLX","29194733568","28.84","United States"
"568","Eversource Energy","ES","29185095680","84.22","United States"
"569","Energy Transfer Partners","ET","29111977984","9.44","United States"
"570","LG Chem","051910.KS","29035879627","393.08","South Korea"
"571","Royalty Pharma","RPRX","29022887936","43.05","United Kingdom"
"572","Orange","ORAN","29004179456","10.71","France"
"573","Astellas Pharma","4503.T","28922668451","15.83","Japan"
"574","Hexagon","HXGBF","28862496768","10.79","Sweden"
"575","Hess","HES","28729577472","92.3","United States"
"576","LyondellBasell","LYB","28706449408","87.63","United States"
"577","Experian","EXPGF","28630034432","30.85","Ireland"
"578","China Pacific Insurance","601601.SS","28531854609","3.25","China"
"579","M&T Bank","MTB","28490520576","158.8","United States"
"580","People’s Insurance Company of China","1339.HK","28471188635","0.3","China"
"581","Foxconn Industrial Internet","601138.SS","28448347253","1.43","China"
"582","STMicroelectronics","STM","28430168064","31.23","Switzerland"
"583","DNB","DNB.OL","28423626770","18.34","Norway"
"584","Verisk Analytics","VRSK","28386199552","179.77","United States"
"585","Kühne + Nagel","KNIN.SW","28363932345","237.19","Switzerland"
"586","Discover Financial Services","DFS","28328294400","100.83","United States"
"587","Wipro","WIT","28326803456","5.15","India"
"588","Cummins","CMI","28274628608","200.39","United States"
"589","Capgemini","CAP.PA","28252307242","165.71","France"
"590","Dupont De Nemours","DD","28197822464","55.45","United States"
"591","SMC corp","6273.T","28004967723","428.6","Japan"
"592","Cellnex Telecom","CLNX.MC","27956886588","41.23","Spain"
"593","Equity Residential","EQR","27933915136","71.61","United States"
"594","Cerner","CERN","27915780096","94.92","United States"
"595","Paccar","PCAR","27910254592","80.28","United States"
"596","Swisscom","SCMN.SW","27897225615","538.54","Switzerland"
"597","Telefónica","TEF","27778904064","4.81","Spain"
"598","Mettler-Toledo","MTD","27673141248","1220.14","United States"
"599","Airports of Thailand","AOT.BK","27633442380","1.93","Thailand"
"600","American Water Works","AWK","27611004928","151.92","United States"
"601","Corning","GLW","27610363904","32.69","United States"
"602","Baker Hughes","BKR","27569195008","27.15","United States"
"603","Imperial Oil","IMO","27543427072","42.58","Canada"
"604","PPG Industries","PPG","27504791552","116.45","United States"
"605","NatWest Group","NWG","27461072896","5.27","United Kingdom"
"606","Banco Bilbao Vizcaya Argentaria","BBVA","27244232704","4.11","Spain"
"607","First Republic Bank","FRC","27220330496","151.49","United States"
"608","Copart","CPRT","27108980736","114.06","United States"
"609","Naturgy","NTGY.MC","26867509156","27.96","Spain"
"610","AvalonBay Communities","AVB","26862393344","192.12","United States"
"611","Samsung SDI","006405.KS","26815211489","206.1","South Korea"
"612","Naver","035420.KS","26775127887","178.57","South Korea"
"613","Enphase Energy","ENPH","26746345472","198.08","United States"
"614","Cement Roadstone Holding","CRH","26737291264","34.65","Ireland"
"615","Riyad Bank","1010.SR","26697219874","8.9","Saudi Arabia"
"616","Telkom Indonesia","TLK","26648188928","26.65","Indonesia"
"617","Sun Life Financial","SLF","26643374080","45.3","Canada"
"618","PTT PCL","PTT-R.BK","26638697971","0.93","Thailand"
"619","Anhui Conch Cement","AHCHF","26614216704","4.41","China"
"620","Saudi Electricity","5110.SR","26576832484","6.38","Saudi Arabia"
"621","Ross Stores","ROST","26468403200","75.64","United States"
"622","Formosa Petrochemical","6505.TW","26431737677","2.77","Taiwan"
"623","Thales","HO.PA","26430091777","124.13","France"
"624","Ahold Delhaize","AD.AS","26414101108","26.46","Netherlands"
"625","Hormel Foods","HRL","26407268352","48.36","United States"
"626","Rivian","RIVN","26367723520","29.85","United States"
"627","T. Rowe Price","TROW","26282350592","115.63","United States"
"628","D. R. Horton","DHI","26279041024","74.65","United States"
"629","Nasdaq","NDAQ","26251321344","159.41","United States"
"630","Henkel","HEN3.DE","26190993697","60.98","Germany"
"631","Japan Post Holdings","6178.T","26183242730","7.19","Japan"
"632","ENGIE","ENGI.PA","26171415682","10.81","France"
"633","China Securities","601066.SS","26052228978","4.01","China"
"634","SMIC","MKN2.F","26031375316","2.17","China"
"635","Weyerhaeuser","WY","26020204544","34.95","United States"
"636","Ametek","AME","26003929088","112.62","United States"
"637","Axis Bank","AXISBANK.BO","25997195827","8.5","India"
"638","Nokia","NOK","25982339072","4.59","Finland"
"639","CK Hutchison Holdings","0001.HK","25889638320","6.75","Hong Kong"
"640","GoTo","GOTO.JK","25856055572","0.02","Indonesia"
"641","Keysight","KEYS","25805156352","143.41","United States"
"642","Coupang","CPNG","25793163264","14.64","South Korea"
"643","Sartorius","SRT.DE","25773409689","369.53","Germany"
"644","CK Asset Holdings","1113.HK","25761081560","7.08","Hong Kong"
"645","Twitter","TWTR","25730052096","33.67","United States"
"646","Sun Pharmaceutical","SUNPHARMA.NS","25698914226","10.71","India"
"647","Intact Financial","IFC.TO","25692246045","146.04","Canada"
"648","Crédit Agricole","ACA.PA","25636079397","8.48","France"
"649","Ameriprise Financial","AMP","25622743040","233.14","United States"
"650","Fujitsu","6702.T","25605668899","130.3","Japan"
"651","Bridgestone","5108.T","25577604040","36.65","Japan"
"652","Ericsson","ERIC","25555001344","7.27","Sweden"
"653","Halliburton","HAL","25507880960","28.28","United States"
"654","Longfor Group","RLF.F","25398904728","4.06","China"
"655","Holcim","HOLN.SW","25313110640","41.63","Switzerland"
"656","Franco-Nevada","FNV","25291442176","131.29","Canada"
"657","DoorDash","DASH","25244338176","71.87","United States"
"658","CBRE Group","CBRE","25119266816","76.85","United States"
"659","JD Health","6618.HK","25104054724","7.9","China"
"660","Kellogg's","K","24879278080","73.64","United States"
"661","Koninklijke DSM","DSM.AS","24845271328","143.64","Netherlands"
"662","Wolters Kluwer","WOSB.F","24830662468","96.57","Netherlands"
"663","XPeng","XPEV","24785737728","29.01","China"
"664","Galaxy Entertainment","0027.HK","24784435898","5.68","Hong Kong"
"665","Olympus","7733.T","24757929786","19.65","Japan"
"666","RWE","RWE.DE","24750538200","36.6","Germany"
"667","Las Vegas Sands","LVS","24722745344","32.36","United States"
"668","Lindt","LISN.SW","24704239857","101637.61","Switzerland"
"669","Sirius XM","SIRI","24581068800","6.25","United States"
"670","W. W. Grainger","GWW","24539037696","480.2","United States"
"671","eBay","EBAY","24526678016","43.81","United States"
"672","DTE Energy","DTE","24502171648","126.47","United States"
"673","Shenzhen Inovance","300124.SZ","24420329463","9.26","China"
"674","Oneok","OKE","24313774080","54.44","United States"
"675","CoStar Group","CSGP","24169723904","61","United States"
"676","Extra Space Storage","EXR","24167462912","171.65","United States"
"677","UDR Apartments","UDR","24161243136","44.93","United States"
"678","Kia","000270.KS","24130306176","60.19","South Korea"
"679","KONE","KNEBV.HE","24014860356","46.34","Finland"
"680","EDP Renováveis","EDPR.LS","24001878363","24.99","Spain"
"681","SVB Financial Group","SIVB","23977744384","407.43","United States"
"682","Aptiv","APTV","23966556160","88.46","Ireland"
"683","Generali","G.MI","23944707346","15.15","Italy"
"684","Edison International","EIX","23939358720","62.8","United States"
"685","Tesco","TSCDF","23826530304","3.13","United Kingdom"
"686","Sany Heavy Industry","600031.SS","23820871685","2.8","China"
"687","Titan Company","TITAN.NS","23783569719","26.79","India"
"688","Bajaj Finserv","BAJAJFINSV.NS","23772328336","149.23","India"
"689","Partners Group","PGHN.SW","23771629395","901.5","Switzerland"
"690","Assa Abloy","ASAZF","23745069056","21.28","Sweden"
"691","Canon","CAJ","23717197824","22.98","Japan"
"692","Coca-Cola European Partners","CCEP","23624986624","50.75","United Kingdom"
"693","Restaurant Brands International","QSR","23607676928","51.75","Canada"
"694","Alexandria Real Estate Equities","ARE","23528689664","144.16","United States"
"695","Amadeus IT Group","AMS.MC","23523713094","52.29","Spain"
"696","Goodman Group","GMG.AX","23477461827","12.57","Australia"
"697","Ferguson","FERG","23458136064","110.72","United Kingdom"
"698","Coloplast","CBHD.F","23457927916","110.21","Denmark"
"699","Rockwell Automation","ROK","23446556672","201.67","United States"
"700","Vestas Wind Systems","VWSB.F","23412830729","23.2","Denmark"
"701","Kakao","035720.KS","23402079836","53.76","South Korea"
"702","West Pharmaceutical","WST","23391221760","315.78","United States"
"703","Equifax","EFX","23363536896","190.98","United States"
"704","Terumo","4543.T","23332181238","30.85","Japan"
"705","Church & Dwight","CHD","23298734080","95.97","United States"
"706","Snap","SNAP","23217743872","14.15","United States"
"707","ON Semiconductor","ON","23211309056","53.42","United States"
"708","Bank Mandiri","PPERF","23191015424","0.5","Indonesia"
"709","Fifth Third Bank","FITB","23182878720","33.79","United States"
"710","Z Holdings","4689.T","23163886115","3.09","Japan"
"711","State Street Corporation","STT","23124574208","62.99","United States"
"712","Rogers Communication","RCI","23093321728","45.66","Canada"
"713","Zscaler","ZS","23051321344","162.49","United States"
"714","Sociedad Química y Minera","SQM","23026708480","80.62","Chile"
"715","BT Group","BT-A.L","23007427089","230.78","United Kingdom"
"716","Albemarle","ALB","22982256640","196.24","United States"
"717","China Railway Group","0390.HK","22880204154","0.66","China"
"718","Roblox","RBLX","22859640832","38.54","United States"
"719","Ameren","AEE","22811772928","88.34","United States"
"720","Tractor Supply","TSCO","22786447360","203.67","United States"
"721","Entergy","ETR","22775853056","111.99","United States"
"722","SSE","SCT.F","22759997522","21.32","United Kingdom"
"723","Southwest Airlines","LUV","22757652480","38.38","United States"
"724","The Saudi British Bank","1060.SR","22747661805","11.07","Saudi Arabia"
"725","ČEZ Group","CEZ.F","22710548979","42.31","Czech Republic"
"726","Interactive Brokers","IBKR","22703095808","54.47","United States"
"727","Vonovia","VNA.DE","22702915057","28.14","Germany"
"728","GlobalFoundries","GFS","22693701632","42.05","United States"
"729","Great-West Lifeco","GWO.TO","22690573390","24.29","Canada"
"730","Continental Resources","CLR","22652895232","62.41","United States"
"731","China Tower","0788.HK","22646308620","0.13","China"
"732","LabCorp","LH","22597478400","243.77","United States"
"733","Lennar","LEN","22571474944","79.3","United States"
"734","National Bank of Canada","NA.TO","22542125874","67.01","Canada"
"735","Sampo","SAMPO.HE","22517163825","42.45","Finland"
"736","Brookfield Renewable Partners","BEP","22513283072","34.53","Bermuda"
"737","China Minsheng Bank","600016.SS","22473901979","0.55","China"
"738","KBC","KBCSF","22430013440","53.79","Belgium"
"739","China Everbright Bank","601818.SS","22394563412","0.44","China"
"740","Duke Realty","DRE","22389692416","57.62","United States"
"741","Mitsubishi Electric","6503.T","22355433967","10.59","Japan"
"742","Willis Towers Watson","WTW","22321012736","200.21","United Kingdom"
"743","Beiersdorf","BEI.DE","22250841452","98.1","Germany"
"744","McCormick & Company","MKC","22244671488","82.91","United States"
"745","Compagnie de Saint-Gobain","SGO.PA","22184780324","41.54","France"
"746","Fortis","FTS","22180380672","46.49","Canada"
"747","EnBW Energie","EBK.DE","22060588533","81.45","Germany"
"748","The Trade Desk","TTD","22006251520","45.25","United States"
"749","Nestlé India","NESTLEIND.NS","21979536178","227.97","India"
"750","BOE Technology","000725.SZ","21885115912","0.57","China"
"751","Invitation Homes","INVH","21863745536","35.68","United States"
"752","Ball Corporation","BALL","21851183104","68.33","United States"
"753","CaixaBank","CABK.MC","21822400676","2.71","Spain"
"754","Fujifilm","4901.T","21804731399","54.4","Japan"
"755","Genmab","GMAB","21745997824","33.25","Denmark"
"756","China Resources Beer","0291.HK","21716867019","6.69","Hong Kong"
"757","Geely","0175.HK","21701759883","2.17","China"
"758","Zimmer Biomet","ZBH","21699602432","103.54","United States"
"759","Central Japan Railway","9022.T","21666951653","110.1","Japan"
"760","CDW Corporation","CDW","21655042048","160.27","United States"
"761","The Hartford","HIG","21517635584","65.43","United States"
"762","BTG Pactual","BPAC3.SA","21487048166","2.19","Brazil"
"763","Unicharm","8113.T","21454739104","35.94","Japan"
"764","FirstEnergy","FE","21444204544","37.56","United States"
"765","Swiss Re","SREN.SW","21423107838","74.14","Switzerland"
"766","Volvo Car","VOLCAR-B.ST","21364076742","6.94","Sweden"
"767","Polestar","PSNY","21343750310","10.04","Sweden"
"768","CLP Group","0002.HK","21338696040","8.45","Hong Kong"
"769","Ansys","ANSS","21332580352","245.23","United States"
"770","ZTO Express","ZTO","21295976448","26.3","China"
"771","Steris","STE","21149906944","211.33","Ireland"
"772","Chongqing Changan","000625.SZ","21146246120","2.46","China"
"773","E.ON","EOAN.DE","21136869486","8.11","Germany"
"774","Waters Corporation","WAT","21025130496","349.05","United States"
"775","UltraTech Cement","ULTRACEMCO.NS","20960215181","72.68","India"
"776","Coterra Energy","CTRA","20942872576","25.99","United States"
"777","Aker BP","AKRBP.OL","20913513005","33.11","Norway"
"778","H&M","HM-B.ST","20883314697","12.62","Sweden"
"779","Standard Chartered","STAN.L","20864153669","682.29","United Kingdom"
"780","Skandinaviska Enskilda Banken","SEBA.F","20819181337","9.79","Sweden"
"781","Tata Motors","TTM","20750245888","27.1","India"
"782","EQT","EQT.ST","20747167276","20.84","Sweden"
"783","MongoDB","MDB","20713164800","304.09","United States"
"784","FirstRand","FSRA.F","20701610281","3.62","South Africa"
"785","Daimler Truck","DTG.F","20642371700","24.08","Germany"
"786","Ventas","VTR","20484419584","51.25","United States"
"787","WEG ON","WEGE3.SA","20470792735","4.88","Brazil"
"788","CRRC","1766.HK","20397071466","0.37","China"
"789","Pacific Gas and Electric","PCG","20312047616","10.22","United States"
"790","Ecopetrol","EC","20311601152","9.88","Colombia"
"791","Match Group","MTCH","20311373824","71.12","United States"
"792","Sandvik","SAND.ST","20276365497","16.16","Sweden"
"793","Agnico Eagle Mines","AEM","20240758784","44.18","Canada"
"794","Sonova","SOON.SW","20237726055","331.29","Switzerland"
"795","PPL","PPL","20215255040","27.47","United States"
"796","Mid-America Apartment Communities","MAA","20171931648","170.04","United States"
"797","Porsche SE","PAH3.DE","20164152889","65.84","Germany"
"798","Imperial Brands","ITBA.F","20135464414","20.92","United Kingdom"
"799","Delta Electronics","2308.TW","20107628977","7.74","Taiwan"
"800","Fortive","FTV","20083841024","56.03","United States"
"801","Kaō","4452.T","20070685821","42.41","Japan"
"802","Ashtead","0LC.F","20054034534","44.85","United Kingdom"
"803","ULTA Beauty","ULTA","20029769728","386.54","United States"
"804","Sun Communities","SUI","19984195584","160.95","United States"
"805","Komatsu","6301.T","19932904156","21.09","Japan"
"806","Northern Trust","NTRS","19923212288","95.61","United States"
"807","Hong Kong and China Gas","0003.HK","19896578186","1.07","Hong Kong"
"808","Take 2 Interactive","TTWO","19878430720","122.72","United States"
"809","Gartner","IT","19850043392","246.47","United States"
"810","Garmin","GRMN","19828142080","102.67","Switzerland"
"811","Celltrion","068270.KS","19824424666","143.39","South Korea"
"812","ORIX","IX","19809046528","83.16","Japan"
"813","Vulcan Materials","VMC","19801503744","149","United States"
"814","CGI","GIB","19801077760","80.86","Canada"
"815","Constellation Energy","CEG","19765288960","60.5","United States"
"816","Align Technology","ALGN","19754176512","250.67","United States"
"817","Cheniere Energy","CQP","19748300800","40.8","United States"
"818","Martin Marietta","MLM","19711240192","316.06","United States"
"819","Mitsui Fudosan","8801.T","19710824291","20.87","Japan"
"820","Otsuka Holdings","4578.T","19637872929","36.21","Japan"
"821","Oil & Natural Gas","ONGC.NS","19635950838","1.56","India"
"822","ArcelorMittal","MT","19621896192","21.82","Luxembourg"
"823","Schindler Group","SCHN.SW","19616270099","181.07","Switzerland"
"824","Raymond James","RJF","19607640064","90.5","United States"
"825","Delta Air Lines","DAL","19574706176","30.54","United States"
"826","Genuine Parts Company","GPC","19562766336","138.16","United States"
"827","Techtronic Industries","TIB1.F","19545939017","10.65","Hong Kong"
"828","Legrand","LR.PA","19523276131","73.32","France"
"829","Palantir","PLTR","19483332608","9.52","United States"
"830","Adani Ports & SEZ","ADANIPORTS.NS","19453325749","9.21","India"
"831","VeriSign","VRSN","19405895680","177.15","United States"
"832","NTT Data","9613.T","19393753755","13.83","Japan"
"833","Yum China","YUMC","19373137920","45.97","China"
"834","Cathay Financial Holding","2882.TW","19329478745","1.47","Taiwan"
"835","CMS Energy","CMS","19322591232","66.6","United States"
"836","M3, Inc","2413.T","19301553259","28.43","Japan"
"837","Spotify","SPOT","19250487296","99.92","Sweden"
"838","Catalent","CTLT","19249268736","107.41","United States"
"839","Pembina Pipeline","PBA","19238918144","34.71","Canada"
"840","Endesa","ELE.MC","19234511220","18.17","Spain"
"841","KE Holdings","BEKE","19225354240","15.21","China"
"842","Polyus","PLZL.ME","19206824475","142.27","Russia"
"843","Philips","PHG","19200432128","20.82","Netherlands"
"844","Diamondback Energy","FANG","19155331072","109.09","United States"
"845","Fubon Financial","2881.TW","19135916837","1.87","Taiwan"
"846","Argenx","ARGX","19129954304","352.7","Netherlands"
"847","Paycom","PAYC","19109857280","317.16","United States"
"848","Horizon Therapeutics","HZNP","19020601344","82.74","Ireland"
"849","Panasonic","6752.T","19015356946","8.15","Japan"
"850","Live Nation","LYV","18992029696","83.28","United States"
"851","Huatai Securities","206G.F","18983843845","20.92","China"
"852","Mengniu Dairy","2319.HK","18967403746","4.8","China"
"853","Straumann","STMN.SW","18956581000","119.31","Switzerland"
"854","Chow Tai Fook","1929.HK","18955993037","1.9","Hong Kong"
"855","Ferrovial","FER.MC","18939261490","25.19","Spain"
"856","Amcor","AMCR","18927388672","12.6","Switzerland"
"857","Mitsubishi Estate","8802.T","18884756047","14.28","Japan"
"858","Cincinnati Financial","CINF","18878595072","117.73","United States"
"859","Liberty Broadband","LBRDA","18799249408","113.93","United States"
"860","CenterPoint Energy","CNP","18738698240","29.77","United States"
"861","Powergrid Corporation of India","POWERGRID.NS","18730926309","2.69","India"
"862","Teleperformance","TEP.PA","18702646958","313.62","France"
"863","Quanta Services","PWR","18687916032","130.04","United States"
"864","Evolution Gaming","EVO.ST","18663730583","86.32","Sweden"
"865","Air China","601111.SS","18654770747","1.49","China"
"866","EDP Group","EDP.F","18588014560","4.71","Portugal"
"867","Centrais Electricas Brasileiras","EBR","18524712960","7.73","Brazil"
"868","UniCredit","UCG.MI","18522628891","8.97","Italy"
"869","Michelin","ML.PA","18494210188","25.93","France"
"870","Kyocera","6971.T","18466953297","51.45","Japan"
"871","Atlantia","ATL.MI","18443093591","22.52","Italy"
"872","Nu Holdings","NU","18439960576","4","Brazil"
"873","East Japan Railway","9020.T","18416384740","48.82","Japan"
"874","EPAM Systems","EPAM","18415513600","322.23","United States"
"875","Nippon Paint","4612.T","18375762176","7.83","Japan"
"876","Carlsberg","CBGA.F","18350518637","139.27","Denmark"
"877","Rollins","ROL","18255527936","37.07","United States"
"878","Wilmar International","F34.SI","18242552352","2.91","Singapore"
"879","Avantor","AVTR","18224723968","29.86","United States"
"880","Formosa Plastics","1301.TW","18217693590","2.86","Taiwan"
"881","Kubota","6326.T","18206599682","15.23","Japan"
"882","Nexon","3659.T","18205920368","21.04","Japan"
"883","Telenor","TEL.OL","18205067649","13.01","Norway"
"884","China Communications Construction","601800.SS","18182136995","1.35","China"
"885","Monolithic Power Systems","MPWR","18156720128","389.27","United States"
"886","Toyota Industries","6201.T","18114193856","58.34","Japan"
"887","PerkinElmer","PKI","18108545024","143.55","United States"
"888","United Rentals","URI","18093363200","252.66","United States"
"889","American Campus Communities","ACC","17999226880","64.96","United States"
"890","Citizens Financial Group","CFG","17979736064","36.29","United States"
"891","Hologic","HOLX","17965406208","72.04","United States"
"892","Teledyne","TDY","17960036352","383.41","United States"
"893","NTPC Limited","NTPC.NS","17940082850","1.85","India"
"894","Mahindra & Mahindra","M&M.NS","17920560235","14.41","India"
"895","Fox Corporation","FOX","17914306560","30.69","United States"
"896","Ares Management","ARES","17878687744","60.91","United States"
"897","CF Industries","CF","17877190656","85.7","United States"
"898","Dai-ichi Life Holdings","8750.T","17867513716","17.37","Japan"
"899","Markel","MKL","17826592768","1313.88","United States"
"900","Essex Property Trust","ESS","17822771200","263.59","United States"
"901","Incyte","INCY","17784635392","80.29","United States"
"902","Huntington Bancshares","HBAN","17744965632","12.33","United States"
"903","Alinma Bank","1150.SR","17744857039","8.87","Saudi Arabia"
"904","Regions Financial","RF","17736808448","18.98","United States"
"905","W. R. Berkley","WRB","17730803712","66.86","United States"
"906","Orient Overseas Container Line","0316.HK","17716729106","26.83","Hong Kong"
"907","BeiGene","BGNE","17694849024","171.14","China"
"908","Epiroc","EPI-A.ST","17679608871","15.46","Sweden"
"909","Aena","AENA.MC","17667000510","117.78","Spain"
"910","Dover","DOV","17658525696","122.49","United States"
"911","Chewy","CHWY","17648668672","41.96","United States"
"912","Avangrid","AGR","17606201344","45.53","United States"
"913","VF Corporation","VFC","17598144512","45.3","United States"
"914","Alnylam Pharmaceuticals","ALNY","17589309440","145.59","United States"
"915","Power Corporation of Canada","POW.TO","17587120168","25.91","Canada"
"916","Essity","ESWB.F","17577744329","25.2","Sweden"
"917","PhosAgro","PHOR.ME","17576778390","135.73","Russia"
"918","Henderson Land Development","0012.HK","17575829085","3.63","Hong Kong"
"919","Clorox","CLX","17567823872","142.74","United States"
"920","PTT Exploration and Production","PTTEP.BK","17545462847","4.42","Thailand"
"921","Brookfield Infrastructure Partners","BIP","17520183296","38.25","Bermuda"
"922","Broadridge Financial Solutions","BR","17503162368","149.31","United States"
"923","Dollarama","DOL.TO","17475489586","59.41","Canada"
"924","Rocket Companies","RKT","17458429952","8.79","United States"
"925","JSW Steel","JSWSTEEL.NS","17401834953","7.22","India"
"926","George Weston","WN.TO","17346409303","118.73","Canada"
"927","MS&AD Insurance","8725.T","17321001855","31.64","Japan"
"928","Repsol","REP.MC","17305690510","12.37","Spain"
"929","Hewlett Packard Enterprise","HPE","17294084096","13.31","United States"
"930","Conagra Brands","CAG","17286674432","35.77","United States"
"931","J. B. Hunt","JBHT","17281859584","164.93","United States"
"932","Renesas Electronics","6723.T","17238178383","8.83","Japan"
"933","Legal & General","LGEN.L","17236211332","288.69","United Kingdom"
"934","ICON plc","ICLR","17197533184","211","Ireland"
"935","Banco do Brasil","BZLA.F","17196063061","6.03","Brazil"
"936","Link REIT","0823.HK","17177434006","8.14","Hong Kong"
"937","Ingersoll Rand","IR","17093711872","42.11","Ireland"
"938","Copel","ELP","17076070400","6.24","Brazil"
"939","Toshiba","6502.T","17002873627","39.3","Japan"
"940","SGS","SGSN.SW","16960433109","2263.91","Switzerland"
"941","Cloudflare","NET","16931700736","51.9","United States"
"942","Magna International","MGA","16925381632","55.78","Canada"
"943","Brown & Brown","BRO","16913797120","59.92","United States"
"944","Sumitomo","8053.T","16880528264","13.5","Japan"
"945","Saudi Arabian Fertilizer Company","2020.SR","16868979627","35.44","Saudi Arabia"
"946","Molina Healthcare","MOH","16852183040","287.09","United States"
"947","Geberit","GEBN.SW","16845247416","479.1","Switzerland"
"948","Svenska Handelsbanken","SVHH.F","16842764548","8.46","Sweden"
"949","Coles Group","COL.AX","16839072753","12.58","Australia"
"950","Tourmaline Oil","TOU.TO","16822056242","50.14","Canada"
"951","Fleetcor","FLT","16809248768","217.34","United States"
"952","Principal","PFG","16765583360","66.35","United States"
"953","Arch Capital","ACGL","16754078720","44.6","Bermuda"
"954","Freddie Mac","FMCCT","16750811136","5.2","United States"
"955","Nomura Research Institute","4307.T","16682763555","28.3","Japan"
"956","Advanced Info Service (AIS)","ADVANC.BK","16666609286","5.6","Thailand"
"957","Société Générale","GLE.PA","16662235693","20.05","France"
"958","Tradeweb","TW","16613964800","71.36","United States"
"959","China Merchants Securities","600999.SS","16534660315","2.06","China"
"960","Novozymes","NZYM.VI","16504899060","58.9","Denmark"
"961","Astra International","ASII.JK","16479809757","0.41","Indonesia"
"962","United Microelectronics","UMC","16475988992","6.6","Taiwan"
"963","Snam","SRG.MI","16453529353","5.03","Italy"
"964","Zhongsheng Group","0881.HK","16423793799","6.81","China"
"965","Hannover Rück","HNR1.DE","16407054399","136.05","Germany"
"966","NIBE Industrier","NIBE-B.ST","16397239893","7.95","Sweden"
"967","Stanley Black & Decker","SWK","16393892864","108.59","United States"
"968","BioMarin Pharmaceutical","BMRN","16348009472","88.37","United States"
"969","Shiseido","4911.T","16342537951","40.91","Japan"
"970","Aeon","8267.T","16334468739","19.29","Japan"
"971","UCB","UCB.VI","16291460474","86.12","Belgium"
"972","Sunny Optical","2382.HK","16279603370","14.17","China"
"973","Jacobs Engineering","J","16275174400","126.53","United States"
"974","Seagate Technology","STX","16242205696","75.6","Ireland"
"975","KeyCorp (KeyBank)","KEY","16234319872","17.41","United States"
"976","Tsingtao","600600.SS","16228974486","14.23","China"
"977","The Mosaic Company","MOS","16217285632","44.8","United States"
"978","Flutter Entertainment","PPBA.F","16179559984","43.99","Ireland"
"979","Check Point Software","CHKP","16179517440","126.29","Israel"
"980","Deutsche Bank","DB","16162776064","7.8","Germany"
"981","Best Buy","BBY","16119776256","71.59","United States"
"982","Aristocrat","ALL.AX","16117585561","24.18","Australia"
"983","Veolia","VIE.PA","16114174713","23.42","France"
"984","Nan Ya Plastics","1303.TW","16102917739","2.03","Taiwan"
"985","Hydro One","H.TO","16099800949","26.89","Canada"
"986","Insulet","PODD","16096494592","232.14","United States"
"987","Quest Diagnostics","DGX","16087221248","137.07","United States"
"988","Expeditors","EXPD","16076704768","95.84","United States"
"989","HEICO","HEI","16068281344","133.87","United States"
"990","Trip.com","TCOM","16058397696","24.46","China"
"991","Bandai Namco","7832.T","16051378774","72.97","Japan"
"992","TransUnion","TRU","16023071744","83.28","United States"
"993","Bayan Resources","BYAN.JK","16015999506","4.8","Indonesia"
"994","W. P. Carey","WPC","15948861440","82.69","United States"
"995","Shionogi","4507.T","15859047659","52.6","Japan"
"996","ZTE","000063.SZ","15847459024","3.57","China"
"997","Huaneng Power","HNP","15840093184","21.51","China"
"998","International Paper","IP","15833271296","42.72","United States"
"999","Santos","STO.AX","15809833170","4.71","Australia"
"1000","Surgutneftegas","SNGS.ME","15773744352","0.44","Russia"
"1001","Okta","OKTA","15769223168","99.95","United States"
"1002","UPM-Kymmene","UPM.HE","15685999590","29.41","Finland"
"1003","Twilio","TWLO","15644379136","86.11","United States"
"1004","Wheaton Precious Metals","WPM","15619410944","34.22","Canada"
"1005","CK Infrastructure","1038.HK","15615641002","6.2","Hong Kong"
"1006","Atmos Energy","ATO","15611385856","112.3","United States"
"1007","Icahn Enterprises","IEP","15578626048","50.75","United States"
"1008","CP All","CPALL.BK","15576524330","1.73","Thailand"
"1009","Tatneft","TATN.ME","15567219405","6.96","Russia"
"1010","Fairfax Financial","FFH.TO","15559306954","530.34","Canada"
"1011","Zebra Technologies","ZBRA","15555111936","296.21","United States"
"1012","Skyworks Solutions","SWKS","15555107840","96.66","United States"
"1013","Telia Company","TELIA.ST","15541533516","3.81","Sweden"
"1014","Splunk","SPLK","15507542016","96.38","United States"
"1015","Fresenius","FRE.DE","15477714180","27.66","Germany"
"1016","Banque Saudi Fransi","1050.SR","15437674705","12.87","Saudi Arabia"
"1017","Daiwa House","1925.T","15421327016","23.52","Japan"
"1018","FactSet","FDS","15408513024","405.71","United States"
"1019","Banorte","GFNORTEO.MX","15388265745","5.34","Mexico"
"1020","MTN Group","MTN.JO","15381611979","8.29","South Africa"
"1021","Evergreen Marine","2603.TW","15266223685","2.89","Taiwan"
"1022","Swedish Match","SWMA.ST","15247164069","10.02","Sweden"
"1023","MFHC","2886.TW","15244573811","1.12","Taiwan"
"1024","Ryanair","RYAAY","15236452352","67.11","Ireland"
"1025","Weichai Power","2338.HK","15208417276","1.54","China"
"1026","Paramount Global","PARA","15201156096","24.58","United States"
"1027","China Railway Construction","601186.SS","15199983421","1.2","China"
"1028","Sompo Holdings","8630.T","15189017150","44.41","Japan"
"1029","Synchrony","SYF","15185087488","30.28","United States"
"1030","Ubiquiti","UI","15183143936","251.3","United States"
"1031","POOLCORP","POOL","15178914816","379.24","United States"
"1032","Bio-Rad Laboratories","BIO","15154044928","513.74","United States"
"1033","Wabtec","WAB","15142431744","82.91","United States"
"1034","SS&C Technologies","SSNC","15105965056","59.29","United States"
"1035","Suzuki Motor","7269.T","15104701680","31.1","Japan"
"1036","Cooper Companies","COO","15074274304","305.54","United States"
"1037","China Steel","2002A.TW","15067551283","1.7","Taiwan"
"1038","Terna","TRN.MI","15048704000","7.5","Italy"
"1039","Evergy","EVRG","15035398144","65.52","United States"
"1040","Coal India","COALINDIA.NS","15029345882","2.44","India"
"1041","CNH Industrial","CNHI","15022291968","11.09","United Kingdom"
"1042","Symrise","SY1.DE","15017232346","107.44","Germany"
"1043","CTBC Financial Holding","2891.TW","14994677868","0.77","Taiwan"
"1044","Swiss Life","SLHN.SW","14967219162","484.26","Switzerland"
"1045","Telefonica Brasil","VIV","14887016448","8.89","Brazil"
"1046","China Merchants Shekou Industrial Zone","001979.SZ","14869384537","1.92","China"
"1047","Associated British Foods","ABF.L","14867805927","1870.94","United Kingdom"
"1048","Grupo Bimbo","BIMBOA.MX","14848312640","3.38","Mexico"
"1049","Tenaris","TS","14843764736","25.15","Luxembourg"
"1050","SolarEdge","SEDG","14797271040","267.16","Israel"
"1051","Eurofins Scientific","ERF.PA","14794644915","76.88","Luxembourg"
"1052","Trimble","TRMB","14788395008","59.12","United States"
"1053","Shimano","7309.T","14784310375","162.22","Japan"
"1054","Campbell Soup","CPB","14776315904","49.16","United States"
"1055","Standard Bank Group","SBK.JO","14750515537","8.94","South Africa"
"1056","ZoomInfo","ZI","14697624576","36.44","United States"
"1057","DiDi","DIDIY","14659201024","3.02","China"
"1058","Alliant Energy","LNT","14640013312","58.37","United States"
"1059","Marubeni","8002.T","14637211177","8.64","Japan"
"1060","NVR","NVR","14624325632","4445.53","United States"
"1061","Expedia Group","EXPE","14581633024","92.82","United States"
"1062","Darden Restaurants","DRI","14573920256","116.84","United States"
"1063","Akamai","AKAM","14566915072","90.87","United States"
"1064","Cardinal Health","CAH","14558498816","53.44","United States"
"1065","Teradyne","TER","14544030720","90.79","United States"
"1066","China Unicom","0762.HK","14539415144","0.48","Hong Kong"
"1067","SEGRO","SGRO.L","14501205187","1199.35","United Kingdom"
"1068","Nissan","7201.T","14487917643","3.7","Japan"
"1069","Shanghai Airport","600009.SS","14485512375","7.52","China"
"1070","CarMax","KMX","14455455744","90.82","United States"
"1071","Shinhan Financial Group","SHG","14441759744","27.13","South Korea"
"1072","China Southern Airlines","ZNH","14436993024","27.61","China"
"1073","Domino's Pizza","DPZ","14436080640","400.5","United States"
"1074","NetApp","NTAP","14421586944","65.2","United States"
"1075","Marathon Oil","MRO","14419204096","20.38","United States"
"1076","Healthpeak Properties","PEAK","14406171648","26.7","United States"
"1077","Pidilite","PIDILITIND.NS","14389167297","28.31","India"
"1078","LKQ Corporation","LKQ","14387714048","50.87","United States"
"1079","Equity LifeStyle Properties","ELS","14378648576","73.62","United States"
"1080","CNP Assurances","CNP.PA","14366616004","20.94","France"
"1081","American Homes 4 Rent","AMH","14356146176","35.92","United States"
"1082","HDFC Life","HDFCLIFE.NS","14345518944","6.79","India"
"1083","SBI Life Insurance","SBILIFE.NS","14341915239","14.34","India"
"1084","Loews Corporation","L","14311180288","58.15","United States"
"1085","Western Digital","WDC","14285158400","45.62","United States"
"1086","LPL Financial","LPLA","14277698560","178.55","United States"
"1087","AES","AES","14272167936","21.37","United States"
"1088","IDEX","IEX","14261310464","187.64","United States"
"1089","Bio-Techne","TECH","14247841792","363.16","United States"
"1090","J.M. Smucker Company","SJM","14231353344","133.56","United States"
"1091","Swedbank","SWED-A.ST","14230920599","12.67","Sweden"
"1092","Hindustan Zinc","HINDZINC.NS","14229125536","3.37","India"
"1093","Credit Suisse","CS","14221350912","5.47","Switzerland"
"1094","Albertsons","ACI","14217375744","26.75","United States"
"1095","Hyundai Mobis","012330.KS","14204180135","156.01","South Korea"
"1096","Adani Power","ADANIPOWER.NS","14201327880","3.68","India"
"1097","Xylem","XYL","14189527040","78.79","United States"
"1098","Exor","EYX.F","14189486142","61.64","Netherlands"
"1099","Camden Property Trust","CPT","14179010560","133.11","United States"
"1100","Generac Power Systems","GNRC","14153025536","221.73","United States"
"1101","Tyler Technologies","TYL","14126564352","340.62","United States"
"1102","KPN","KPN.F","14122638351","3.39","Netherlands"
"1103","Coinbase","COIN","14087601152","53.79","United States"
"1104","Novolipetsk Steel","NLMK.ME","14047824989","2.34","Russia"
"1105","Iron Mountain","IRM","14022520832","48.26","United States"
"1106","Swire Properties","1972.HK","13980809066","2.39","Hong Kong"
"1107","Bajaj Auto","BAJAJ-AUTO.NS","13971421060","48.4","India"
"1108","Leidos","LDOS","13947723776","102.06","United States"
"1109","Fresenius Medical Care","FMS","13923907584","23.28","Germany"
"1110","Wharf REIC","1997.HK","13904145256","4.58","Hong Kong"
"1111","Bank Leumi","LUMI.TA","13878871318","9.3","Israel"
"1112","Power Financial","PWF-PS.TO","13865844361","15.09","Canada"
"1113","Secom","9735.T","13856154169","64.07","Japan"
"1114","Tata Steel","TATASTEEL.NS","13855541995","11.35","India"
"1115","JDE Peet's","JDE.F","13841255095","27.41","Netherlands"
"1116","Howmet Aerospace","HWM","13820414976","33.07","United States"
"1117","Boston Properties","BXP","13782819840","87.95","United States"
"1118","Teck Resources","TECK","13781452800","25.74","Canada"
"1119","Formula One Group","FWONK","13778725888","59.85","United States"
"1120","Jack Henry & Associates","JKHY","13758493696","188.83","United States"
"1121","Ono Pharmaceutical","4528.T","13754910551","28.17","Japan"
"1122","Power Assets","0006.HK","13689588651","6.41","Hong Kong"
"1123","Almarai","2280.SR","13639170346","13.72","Saudi Arabia"
"1124","Entegris","ENTG","13623327744","91.57","United States"
"1125","Avery Dennison","AVY","13593991168","166.36","United States"
"1126","Sasol","SSL","13552975872","21.33","South Africa"
"1127","Ajinomoto","2802.T","13547678676","25.25","Japan"
"1128","Itaúsa","ITSA3.SA","13531824768","1.6","Brazil"
"1129","OMV","OMV.F","13529297022","39.72","Austria"
"1130","3i Group","III.L","13506805748","1381.21","United Kingdom"
"1131","Brookfield Property Partners","BPYPP","13500818432","20.43","Bermuda"
"1132","OBIC","4684.T","13482780249","152.04","Japan"
"1133","Grupo Elektra","XEKT.MC","13467905416","53.8","Mexico"
"1134","HubSpot","HUBS","13454645248","281.66","United States"
"1135","Bolloré","BOP.F","13436910496","4.48","France"
"1136","Shaw Communications","SJR","13434424320","26.9","Canada"
"1137","Prada","1913.HK","13430141644","5.25","Italy"
"1138","NortonLifeLock","NLOK","13411080192","23.12","United States"
"1139","Kirin Holdings","2503.T","13410732720","16.16","Japan"
"1140","Aviva","AV.L","13392562603","473.68","United Kingdom"
"1141","Warner Music Group","WMG","13380925440","25.99","United States"
"1142","Capitec Bank","CPI.JO","13378098430","115.23","South Africa"
"1143","Inpex","1605.T","13328633653","10.17","Japan"
"1144","Vodacom","5VD.F","13280862986","7.84","South Africa"
"1145","Uni-President Enterprises","1216.TW","13233483245","2.33","Taiwan"
"1146","Textron","TXT","13227604992","61.5","United States"
"1147","Targa Resources","TRGP","13216464896","57.97","United States"
"1148","Bunge","BG","13215128576","87.1","United States"
"1149","WSP Global","WSP.TO","13207427636","111.86","Canada"
"1150","Omnicom","OMC","13193656320","64.13","United States"
"1151","Carlisle Companies","CSL","13167866880","254.71","United States"
"1152","AppLovin","APP","13167343616","34.83","United States"
"1153","Bill.com","BILL","13152355328","126.14","United States"
"1154","Sysmex","6869.T","13137419376","62.79","Japan"
"1155","Metro","MRU.TO","13133462642","54.73","Canada"
"1156","FMC","FMC","13108989952","104.09","United States"
"1157","POSCO","PKX","13066746880","43.03","South Korea"
"1158","Jerónimo Martins","JEM.F","13063726592","20.43","Portugal"
"1159","Chandra Asri Petrochemical","TPIA.JK","13061895079","0.6","Indonesia"
"1160","NN Group","NN.AS","13052732879","43.63","Netherlands"
"1161","Cboe","CBOE","13034169344","122.75","United States"
"1162","Packaging Corporation of America","PKG","13023529984","138.99","United States"
"1163","Antofagasta","ANTO.L","12957025749","1259.97","United Kingdom"
"1164","Continental","CON.DE","12935531471","64.68","Germany"
"1165","Nippon Steel","5401.T","12932667763","14.04","Japan"
"1166","Eisai","4523.T","12926204690","45.09","Japan"
"1167","NICE","NICE","12850889728","200.14","Israel"
"1168","Citrix Systems","CTXS","12830148608","101.36","United States"
"1169","IHH Healthcare","Q0F.SI","12773078392","1.45","Malaysia"
"1170","Subaru","7270.T","12766507488","16.65","Japan"
"1171","Formosa Chemicals & Fibre","1326.TW","12661997290","2.16","Taiwan"
"1172","Masco","MAS","12653462528","53.63","United States"
"1173","DocuSign","DOCU","12638459904","63.21","United States"
"1174","First Quantum Minerals","FM.TO","12622978263","16.73","Canada"
"1175","bioMérieux","BIM.PA","12576296414","105.18","France"
"1176","Steel Dynamics","STLD","12572413952","66.63","United States"
"1177","Indian Oil","IOC.NS","12547954267","0.89","India"
"1178","Sino Biopharmaceutical","1177.HK","12535859929","0.67","China"
"1179","JBS","JBSS3.SA","12524485424","5.65","Brazil"
"1180","EQT Corporation","EQT","12492164096","33.81","United States"
"1181","kyowa Kirin","4151.T","12488499398","23.24","Japan"
"1182","Carrefour","CA.PA","12480119698","16.87","France"
"1183","Siam Cement","SCC.BK","12435061205","10.36","Thailand"
"1184","Unilever Indonesia","UNVR.JK","12423890639","0.33","Indonesia"
"1185","Dassault Aviation","AM.PA","12416147757","149.22","France"
"1186","Siemens Gamesa","GCTAF","12404151296","18.13","Spain"
"1187","Kimco Realty","KIM","12403399680","20.07","United States"
"1188","Molson Coors","TAP","12396820480","57.13","United States"
"1189","Stora Enso","STEAV.HE","12392199851","15.99","Finland"
"1190","Israel Chemicals","ICL","12369510400","9.61","Israel"
"1191","KB Financial Group","KB","12346183680","35.03","South Korea"
"1192","Westlake Chemical","WLK","12326000640","96.05","United States"
"1193","MGM Resorts","MGM","12321424384","28.92","United States"
"1194","Emera","EMA.TO","12316344557","46.81","Canada"
"1195","Divis Laboratories","DIVISLAB.NS","12312013796","46.38","India"
"1196","Pinterest","PINS","12301011968","18.54","United States"
"1197","PTC","PTC","12298856448","105.14","United States"
"1198","Booz Allen Hamilton","BAH","12295330816","92.89","United States"
"1199","Essential Utilities","WTRG","12275265536","46.84","United States"
"1200","Viatris","VTRS","12226348032","10.09","United States"
"1201","China Eastern Airlines","CEA","12224380928","18.95","China"
"1202","Celanese","CE","12221587456","112.84","United States"
"1203","Tech Mahindra","TECHM.NS","12199824985","12.54","India"
"1204","Gaming and Leisure Properties","GLPI","12199317504","47.95","United States"
"1205","New China Life Insurance","601336.SS","12155254149","4.59","China"
"1206","Huazhu Hotels","HTHT","12135794688","37.71","China"
"1207","C. H. Robinson","CHRW","12128450560","95.3","United States"
"1208","Abiomed","ABMD","12126881792","265.79","United States"
"1209","Liberty Media","LSXMB","12117979136","37.02","United States"
"1210","Dabur","DABUR.NS","12110060417","6.84","India"
"1211","United Airlines Holdings","UAL","12069442560","36.94","United States"
"1212","Lufax","LU","12057647104","5.28","China"
"1213","Franklin Resources","BEN","12045668352","24.1","United States"
"1214","Mowi","MNHVF","12041125888","23.2","Norway"
"1215","CNA Financial","CNA","12027173888","44.33","United States"
"1216","Bank Hapoalim","POLI.TA","12006175256","8.99","Israel"
"1217","Nordson","NDSN","12000412672","208.66","United States"
"1218","Arab National Bank","1080.SR","11989768594","7.99","Saudi Arabia"
"1219","Shinkin Central Bank","8421.T","11986768808","1786.88","Japan"
"1220","Mitsubishi Heavy Industries","7011.T","11982530775","35.69","Japan"
"1221","Signature Bank","SBNY","11966388224","190.16","United States"
"1222","Aéroports de Paris","ADP.PA","11953905199","120.81","France"
"1223","Barry Callebaut","BARN.SW","11922940329","2175.33","Switzerland"
"1224","Newcrest Mining","NCM.AX","11905265031","12.99","Australia"
"1225","Unity Software","U","11902682112","40.21","United States"
"1226","Suntory","2587.T","11897926500","38.5","Japan"
"1227","Smith & Nephew","SNN","11863567360","26.92","United Kingdom"
"1228","E.SUN Bank","2884.TW","11859419025","0.89","Taiwan"
"1229","Bangkok Dusit Medical Services (BDMS)","BDMS.BK","11857079249","0.75","Thailand"
"1230","Hua Xia Bank","600015.SS","11853029104","0.77","China"
"1231","Siemens India","SIEMENS.NS","11849540238","33.27","India"
"1232","Swatch","UHR.SW","11843308978","236.17","Switzerland"
"1233","Vifor Pharma","VIFN.SW","11812897246","182.04","Switzerland"
"1234","American Financial Group","AFG","11801094144","138.67","United States"
"1235","B3","B3SA3.SA","11796704623","1.94","Brazil"
"1236","Campari","CPR.MI","11794060292","10.44","Italy"
"1237","Roku","ROKU","11792837632","86.73","United States"
"1238","LG Electronics","LGLG.F","11788304475","16.69","South Korea"
"1239","Suzano","SUZ","11779824640","8.73","Brazil"
"1240","AspenTech","AZPN","11753614336","189.06","United States"
"1241","NiSource","NI","11747853312","28.95","United States"
"1242","QBE Insurance","QBE.AX","11741347502","7.92","Australia"
"1243","Texas Pacific Land Trust","TPL","11734085632","1515.7","United States"
"1244","GoDaddy","GDDY","11709195264","72.25","United States"
"1245","GBL","GBLB.VI","11700485534","81.15","Belgium"
"1246","Severstal","CHMF.ME","11687513808","13.95","Russia"
"1247","Eastman Chemical","EMN","11685730304","90.67","United States"
"1248","Teleflex","TFX","11682111488","249.09","United States"
"1249","Country Garden","2007.HK","11675332374","0.51","China"
"1250","First Horizon National","FHN","11670993920","21.82","United States"
"1251","Carlyle Group","CG","11664633856","32.29","United States"
"1252","New Hope Liuhe","000876.SZ","11637060963","2.58","China"
"1253","ESR","1821.HK","11632630399","2.61","Hong Kong"
"1254","Bunzl","BNZL.L","11591576783","3434.01","United Kingdom"
"1255","Host Hotels & Resorts","HST","11585006592","15.98","United States"
"1256","ENEOS Holdings","5020.T","11582446786","3.66","Japan"
"1257","Hasbro","HAS","11575080960","83.01","United States"
"1258","Sekisui House","1928.T","11570607733","17.29","Japan"
"1259","Hansoh Pharma","3692.HK","11558365822","1.95","China"
"1260","SG Holdings","9143.T","11556028399","18.18","Japan"
"1261","Sumitomo Mitsui Trust Holdings","8309.T","11547624293","30.8","Japan"
"1262","Hai Di Lao Hot Pot","6862.HK","11531787448","2.07","China"
"1263","Edenred","EDEN.PA","11511885225","46.19","France"
"1264","Taiwan Cooperative Financial","5880.TW","11485630372","0.84","Taiwan"
"1265","Carl Zeiss Meditec","AFXA.F","11453254146","122.67","Germany"
"1266","Nippon Yūsen","9101.T","11438941809","67.71","Japan"
"1267","Dynatrace","DT","11430693888","39.85","United States"
"1268","Grasim Industries","GRASIM.NS","11426271397","17.36","India"
"1269","South32","S32.AX","11413226559","2.4","Australia"
"1270","Arca Continental","AC.MX","11403721308","6.46","Mexico"
"1271","Coca-Cola FEMSA","KOF","11401204736","54.27","Mexico"
"1272","Wharf Holdings","0004.HK","11368000881","3.72","Hong Kong"
"1273","Charles River Laboratories","CRL","11362515968","223.65","United States"
"1274","Croda International","CRDA.L","11331553400","8011.51","United Kingdom"
"1275","Sino Land","0083.HK","11307203946","1.47","Hong Kong"
"1276","Britannia Industries","BRITANNIA.NS","11290034531","46.86","India"
"1277","Danske Bank","DANS.VI","11277905601","13.25","Denmark"
"1278","Poste Italiane","PST.MI","11246046793","8.5","Italy"
"1279","Alleghany","Y","11226768384","834.4","United States"
"1280","Nitori Holdings","9843.T","11204827157","99.23","Japan"
"1281","Advance Auto Parts","AAP","11193846784","184.6","United States"
"1282","Toyota Tsusho","8015.T","11178168900","31.77","Japan"
"1283","Publicis Groupe","PUB.PA","11176023521","44.71","France"
"1284","Nomura Holdings","NMR","11156177920","3.68","Japan"
"1285","Service Corporation International","SCI","11151204352","70.25","United States"
"1286","ASX","ASX.AX","11149481317","57.16","Australia"
"1287","AkzoNobel","AKZA.AS","11142298964","62.99","Netherlands"
"1288","Rentokil Initial","RTO.L","11139247736","597.65","United Kingdom"
"1289","Norsk Hydro","NHY.OL","11137382595","5.39","Norway"
"1290","Thai Beverage","TBVPF","11135013888","0.44","Thailand"
"1291","Ally","ALLY","11119243264","34.42","United States"
"1292","Lumen","LUMN","11100229632","10.75","United States"
"1293","Hongkong Land","H78.SI","11095524352","4.95","Hong Kong"
"1294","Interpublic Group","IPG","11059989504","28.1","United States"
"1295","Bureau Veritas","BVI.PA","11048024036","24.28","France"
"1296","Everest Re","RE","11017793536","279.37","BM"
"1297","Etsy","ETSY","11017403392","86.67","United States"
"1298","Godrej","GODREJCP.NS","11015100355","10.77","India"
"1299","Moncler","MONC.MI","11001975441","40.94","Italy"
"1300","Singapore Airlines","C6L.SI","10975850231","3.7","Singapore"
"1301","Apache Corporation","APA","10968863744","32.43","United States"
"1302","Fortum","FORTUM.HE","10964111638","12.34","Finland"
"1303","Sodexo","SW.PA","10960084625","74.75","France"
"1304","FICO","FICO","10950176768","422.27","United States"
"1305","Lamb Weston","LW","10933194752","75.69","United States"
"1306","Crown Holdings","CCK","10917250048","88.8","United States"
"1307","Shandong Gold Mining","600547.SS","10914485022","2.63","China"
"1308","Sonic Healthcare","SHL.AX","10904565824","22.71","Australia"
"1309","Bank Albilad","1140.SR","10897368057","10.9","Saudi Arabia"
"1310","ASE Group","ASX","10894992384","5.09","Taiwan"
"1311","Hotai Motor","2207.TW","10890268722","19.94","Taiwan"
"1312","Reliance Steel & Aluminum","RS","10880253952","175.64","United States"
"1313","Bouygues","EN.PA","10867331539","28.3","France"
"1314","Kikkoman","2801.T","10866350570","56.73","Japan"
"1315","Lasertec","6920.T","10859081532","120.42","Japan"
"1316","UiPath","PATH","10855202816","19.93","United States"
"1317","Korea Electric Power","KEP","10849208320","8.45","South Korea"
"1318","Lenovo","0992.HK","10830191639","0.9","Hong Kong"
"1319","United Therapeutics","UTHR","10827033600","239.01","United States"
"1320","DLF","DLF.NS","10807991997","4.36","India"
"1321","Ramsay Health Care","RHC.AX","10801225098","47.19","Australia"
"1322","Kanzhun","BZ","10795334656","24.82","China"
"1323","NEC Corp","6701.T","10791446662","39.6","Japan"
"1324","Vedanta","VEDL.NS","10788145242","2.9","India"
"1325","First Citizens BancShares","FCNCA","10784381952","676.82","United States"
"1326","Qiagen","QGEN","10758479872","47.3","Netherlands"
"1327","TDK","6762.T","10751439126","28.37","Japan"
"1328","Snap-on","SNA","10744760320","201.31","United States"
"1329","Hong Kong Telecom","6823.HK","10731822017","1.42","Hong Kong"
"1330","Nexi","NEXI.MI","10720400668","8.17","Italy"
"1331","Builders FirstSource","BLDR","10689772544","61.88","United States"
"1332","Rede D'Or Sao Luiz","RDOR3.SA","10679800796","5.41","Brazil"
"1333","PulteGroup","PHM","10676581376","44.93","United States"
"1334","Fidelity National Financial","FNF","10658331648","37.97","United States"
"1335","Henry Schein","HSIC","10645112832","77.11","United States"
"1336","First Financial Holding","2892.TW","10643842732","0.82","Taiwan"
"1337","SK Innovation","096775.KS","10638275958","82.21","South Korea"
"1338","Acciona","ANA.MC","10616869068","194.27","Spain"
"1339","Adani Wilmar","AWL.NS","10599575523","8.15","India"
"1340","OpenText","OTEX","10565862400","38.94","Canada"
"1341","James Hardie Industries","JHX","10556738560","23.7","Ireland"
"1342","WPP","WPP","10555172864","46.88","United Kingdom"
"1343","Plug Power","PLUG","10552829952","17.89","United States"
"1344","Agilon Health","AGL","10550602752","25.94","United States"
"1345","RPM International","RPM","10539679744","81.39","United States"
"1346","Liberty Global","LBTYB","10539267072","21.75","United Kingdom"
"1347","AMEC","688012.SS","10520456461","17.07","China"
"1348","Regency Centers","REG","10470418432","60.48","United States"
"1349","REA Group","REA.AX","10457364472","79.15","Australia"
"1350","Asahi Kasei","3407.T","10449841203","7.53","Japan"
"1351","ASM International","ASM.AS","10436029329","214.93","Netherlands"
"1352","Yara International","YAR.OL","10399024330","40.53","Norway"
"1353","Ryan Specialty Group","RYAN","10348439552","39.93","United States"
"1354","Brambles","BXB.AX","10340000076","7.46","Australia"
"1355","Lundbergföretagen","LUND-B.ST","10335889668","41.98","Sweden"
"1356","Siemens Energy","ENR.F","10322812718","14.39","Germany"
"1357","Enel Américas","ENIA","10320480256","4.81","Chile"
"1358","Westrock","WRK","10320231424","40.5","United States"
"1359","Biohaven Pharmaceutical","BHVN","10319734784","145.26","United States"
"1360","Erie Indemnity","ERIE","10279932928","196.6","United States"
"1361","Amundi","AMUN.PA","10278610309","50.68","France"
"1362","Ovintiv","OVV","10258245632","39.74","United States"
"1363","Paylocity","PCTY","10247700480","185.9","United States"
"1364","Tenaga Nasional","TNABY","10235984896","6.83","Malaysia"
"1365","Carnival","CCL","10234935296","8.67","United States"
"1366","Morningstar","MORN","10207912960","238.89","United States"
"1367","Amdocs","DOX","10204318720","83.07","United States"
"1368","Qorvo","QRVO","10196364288","98.3","United States"
"1369","Alfa Laval","ALFA.ST","10183201813","24.64","Sweden"
"1370","Rexford Industrial","REXR","10173134848","59.83","United States"
"1371","InterContinental Hotels Group","IHG","10166884352","55.25","United Kingdom"
"1372","Graco","GGG","10166312960","60.08","United States"
"1373","Eicher Motors","EICHERMOT.NS","10159014338","37.15","India"
"1374","Red Eléctrica","REE.MC","10140251383","18.8","Spain"
"1375","Magellan Midstream Partners","MMP","10140118016","47.93","United States"
"1376","Western Midstream","WES","10131750912","25.12","United States"
"1377","Aluminum Corporation of China","ACH","10112157696","8.98","China"
"1378","Black Knight","BKI","10092559360","64.71","United States"
"1379","SBI Card","SBICARD.NS","10083582988","10.69","India"
"1380","CIMB Group","1023.KL","10070020753","1.15","Malaysia"
"1381","Gjensidige Forsikring","XGJ.F","10060795367","20.01","Norway"
"1382","GameStop","GME","10060446720","132.15","United States"
"1383","Getlink","GET.PA","10040153709","18.6","France"
"1384","Computershare","CPU.AX","10023378971","16.6","Australia"
"1385","Hubbell","HUBB","10011589632","186.57","United States"
"1386","Worldline","WLN.PA","10003468871","35.33","France"
"1387","HF Sinclair","DINO","9987310592","44.74","United States"
"1388","Bentley Systems","BSY","9983181824","34.72","United States"
"1389","MarketAxess","MKTX","9972191232","264.22","United States"
"1390","Yonyou","600588.SS","9962793782","2.9","China"
"1391","Globe Life","GL","9945988096","100.87","United States"
"1392","Quanta Computer","2382.TW","9920148808","2.57","Taiwan"
"1393","Omron","6645.T","9878232474","49.44","Japan"
"1394","Equitable Holdings","EQH","9875676160","25.92","United States"
"1395","Watsco","WSO","9872649216","254.1","United States"
"1396","Burlington Stores","BURL","9869189120","149.37","United States"
"1397","INWIT","INW.MI","9862284549","10.28","Italy"
"1398","Advantest","6857.T","9856308302","51.9","Japan"
"1399","CapitaLand Mall Trust","C38U.SI","9855451910","1.49","Singapore"
"1400","Chesapeake Energy","CHK","9848011776","77.43","United States"
"1401","Taiwan Mobile","3045.TW","9829762012","3.49","Taiwan"
"1402","Jazz Pharmaceuticals","JAZZ","9784427520","156.7","Ireland"
"1403","Bruker","BRKR","9750830080","65.33","United States"
"1404","Hindalco Industries","HINDALCO.NS","9733426828","4.36","India"
"1405","Life Storage","LSI","9727062016","114","United States"
"1406","Grifols","GRFS","9720487936","10.68","Spain"
"1407","Next plc","NXT.L","9712928289","7505.14","United Kingdom"
"1408","Comerica","CMA","9708930048","74.25","United States"
"1409","Halma","HLMA.L","9702204339","2555.6","United Kingdom"
"1410","AerCap","AER","9694582784","39.47","Ireland"
"1411","Vistra","VST","9693583360","22.45","United States"
"1412","Elbit Systems","ESLT","9663606784","218.18","Israel"
"1413","Assurant","AIZ","9659328512","178.6","United States"
"1414","Industrivarden","INDU-A.ST","9653890071","22.7","Sweden"
"1415","Credicorp","BAP","9634506752","121.14","Bermuda"
"1416","PUMA","PUM.DE","9630745227","64.37","Germany"
"1417","Vivendi","VIV.PA","9627847755","9.3","France"
"1418","Saputo","SAP.TO","9625415168","23.09","Canada"
"1419","Havells India","HAVELLS.NS","9623609439","15.36","India"
"1420","Erste Group Bank","EBO.F","9622037366","23.73","Austria"
"1421","XP Inc.","XP","9621108736","17.18","Brazil"
"1422","Scentre Group","SCG.AX","9613764435","1.85","Australia"
"1423","Yang Ming","2609.TW","9607634481","2.75","Taiwan"
"1424","Localiza","RENT3.SA","9607092445","9.85","Brazil"
"1425","Evonik Industries","EVK.DE","9605074695","19.72","Germany"
"1426","Chailease Holding","5871.TW","9594419010","6.3","Taiwan"
"1427","Anaplan","PLAN","9593149440","63.73","United States"
"1428","Kasikornbank","KBANK.BK","9591766234","4.05","Thailand"
"1429","Annaly Capital Management","NLY","9545636864","6.12","United States"
"1430","Elanco","ELAN","9535255552","20.11","United States"
"1431","Suncorp","SUN.AX","9516655759","7.54","Australia"
"1432","ICICI Prulife","ICICIPRULI.NS","9512760065","6.61","India"
"1433","CubeSmart","CUBE","9499011072","42.05","United States"
"1434","Cipla","CIPLA.NS","9496695058","11.77","India"
"1435","WH Group","0288.HK","9479928220","0.74","Hong Kong"
"1436","Hua Nan Financial Holdings","2880.TW","9461939263","0.72","Taiwan"
"1437","MTU Aero Engines","MTX.DE","9454061209","176.92","Germany"
"1438","SK Telecom","SKM","9428099072","23.34","South Korea"
"1439","Ares Capital","ARCC","9418213376","19.04","United States"
"1440","Antero Resources","AR","9409792000","30.25","United States"
"1441","Medical Properties Trust","MPW","9400565760","15.67","United States"
"1442","Informa plc","INF.L","9392071547","635.69","United Kingdom"
"1443","LG Corp","003550.KS","9386466483","58.81","South Korea"
"1444","East West Bancorp","EWBC","9380829184","66.11","United States"
"1445","Brenntag","BNR.DE","9380302319","60.71","Germany"
"1446","Repligen","RGEN","9375139840","169.13","United States"
"1447","Spirax-Sarco Engineering","SPX.L","9364439164","12694.79","United Kingdom"
"1448","Yandex","YNDX.ME","9355487462","28.94","Netherlands"
"1449","Darling Ingredients","DAR","9329048576","57.76","United States"
"1450","Full Truck Alliance","YMM","9327185920","8.42","China"
"1451","Yakult","2267.T","9324382803","59.51","Japan"
"1452","Juniper Networks","JNPR","9321290752","28.85","United States"
"1453","Julius Bär","BAER.SW","9320319896","44.55","Switzerland"
"1454","Pan Pacific","7532.T","9318984756","15.63","Japan"
"1455","Lamar Advertising","LAMR","9275454464","91.4","United States"
"1456","Delivery Hero","DHER.F","9272773567","38.09","Germany"
"1457","Bank Negara Indonesia","BBNI.JK","9271459590","0.5","Indonesia"
"1458","BJ's Wholesale Club","BJ","9265374208","68.54","United States"
"1459","American Airlines","AAL","9265332224","14.27","United States"
"1460","Ambuja Cements","AMBUJACEM.NS","9264148927","4.66","India"
"1461","Whirlpool","WHR","9259486208","164.75","United States"
"1462","Dr. Reddy's","RDY","9257973760","55.78","India"
"1463","Saudi International Petrochemical Company (Sipchem)","2310.SR","9251656110","12.62","Saudi Arabia"
"1464","AECOM","ACM","9216833536","65.35","United States"
"1465","Bilibili","BILI","9212935168","24.06","China"
"1466","Clarivate","CLVT","9197121536","13.68","United Kingdom"
"1467","F5 Networks","FFIV","9194162176","152.04","United States"
"1468","Dish Network","DISH","9192797184","17.35","United States"
"1469","News Corp","NWS","9189396480","15.87","United States"
"1470","Adevinta","ADE.OL","9185834844","7.02","Norway"
"1471","Zendesk","ZEN","9162733568","74.33","United States"
"1472","Wan Hai Lines","2615.TW","9158357870","3.75","Taiwan"
"1473","Rémy Cointreau","RCO.PA","9157875515","180.49","France"
"1474","Neurocrine Biosciences","NBIX","9154336768","95.78","United States"
"1475","Amerco","UHAL","9136254976","465.95","United States"
"1476","Cochlear","COH.AX","9115079273","138.58","Australia"
"1477","Kesko","KESKOA.HE","9111499487","21.67","Finland"
"1478","Grab Holdings","GRAB","9099851776","2.37","Singapore"
"1479","HMM","011200.KS","9097479796","18.01","South Korea"
"1480","HeidelbergCement","HEI.DE","9096390210","47.11","Germany"
"1481","Far EasTone","4904.TW","9085057300","2.79","Taiwan"
"1482","Olaplex","OLPX","9084991488","14","United States"
"1483","KEPCO","9503.T","9081179935","10.18","Japan"
"1484","WiseTech Global","WTC.AX","9071416849","27.8","Australia"
"1485","ABN AMRO","ABN.AS","9069981410","10.11","Netherlands"
"1486","Algonquin Power & Utilities","AQN","9066323968","13.42","Canada"
"1487","Impala Platinum","IMP.JO","9062835638","10.1","South Africa"
"1488","Mizrahi-Tefahot","MZTF.TA","9060288693","35.31","Israel"
"1489","Shree Cement","SHREECEM.NS","9058792965","251.07","India"
"1490","ST Engineering","SJX.F","9048355395","2.9","Singapore"
"1491","Talanx","TLX.DE","9034741189","35.7","Germany"
"1492","NRG Energy","NRG","9033401344","38.07","United States"
"1493","Knorr-Bremse","KBX.DE","9031447296","55.87","Germany"
"1494","Kingdom Holding","4280.SR","9005306789","2.43","Saudi Arabia"
"1495","Williams-Sonoma","WSM","9004171264","130.95","United States"
"1496","Nitto Denko","6988.T","9003904186","60.83","Japan"
"1497","Recordati","REC.MI","8995928036","43.76","Italy"
"1498","Azrieli Group","AZRG.TA","8932622104","73.6","Israel"
"1499","A. O. Smith","AOS","8930933760","57.25","United States"
"1500","Schroders","SDR.L","8927620621","3228.38","United Kingdom"
"1501","Tata Power","TATAPOWER.NS","8906439987","2.79","India"
"1502","Embracer Group","EMBRAC-B.ST","8891998066","7.9","Sweden"
"1503","SK Group","034730.KS","8863366892","157.92","South Korea"
"1504","Logitech","LOGI","8857518080","53.48","Switzerland"
"1505","Resona Holdings","8308.T","8837456067","3.71","Japan"
"1506","Toray Industries","3402.T","8812004839","5.22","Japan"
"1507","Alstom","ALO.PA","8806193038","23.56","France"
"1508","Synnex","SNX","8796947456","91.78","United States"
"1509","Doosan Enerbility","034020.KS","8771925823","13.88","South Korea"
"1510","Tata Consumer Products","TATACONSUM.NS","8767771527","9.51","India"
"1511","Larsen & Toubro Infotech","LTI.BO","8753932871","50.15","India"
"1512","Randstad","RAND.AS","8743292975","47.82","Netherlands"
"1513","Elisa","ELISA.HE","8695454826","54.26","Finland"
"1514","Allegion","ALLE","8685220864","98.92","Ireland"
"1515","Deutsche Wohnen","DWNI.DE","8677090783","21.86","Germany"
"1516","Demant","WDH1.F","8675608068","36.6","Denmark"
"1517","New World Development Company","0017.HK","8672219286","3.45","Hong Kong"
"1518","Huntington Ingalls Industries","HII","8670618624","216.51","United States"
"1519","Jones Lang LaSalle","JLL","8662467584","177.28","United States"
"1520","Cameco","CCJ","8637496320","21.21","Canada"
"1521","SIG Combibloc","SIGN.SW","8634821704","22.59","Switzerland"
"1522","Robert Half","RHI","8626722816","78.06","United States"
"1523","Ascendas Reit","A17U.SI","8605646763","2.05","Singapore"
"1524","Rolls-Royce Holdings","RR.L","8598143213","102.3","United Kingdom"
"1525","Nippon Building Fund","8951.T","8579224827","5043.67","Japan"
"1526","Mondi","MNDI.L","8576854764","1748.51","United Kingdom"
"1527","GFL Environmental","GFL","8556924928","25","Canada"
"1528","Xero","XRO.AX","8554251508","56.97","New Zealand"
"1529","Vail Resorts","MTN","8535533568","211.9","United States"
"1530","Eiffage","FGR.PA","8510386260","86.78","France"
"1531","Krafton","259960.KS","8501239218","181.25","South Korea"
"1532","Admiral Group","ADM.L","8481681152","2805.22","United Kingdom"
"1533","Galp Energia","GZ5.F","8479003672","10.05","Portugal"
"1534","United Utilities","UU.L","8478108733","1243.33","United Kingdom"
"1535","Americold","COLD","8474674176","31.45","United States"
"1536","West Japan Railway","9021.T","8471918240","34.75","Japan"
"1537","UGI Corporation","UGI","8466917376","40.32","United States"
"1538","Dropbox","DBX","8454845952","22.51","United States"
"1539","AEGON","AEG","8451020800","4.14","Netherlands"
"1540","Rheinmetall","RHM.F","8425587322","194.57","Germany"
"1541","Bharat Petroleum","BPCL.NS","8423627586","3.88","India"
"1542","Taiwan Cement","1101.TW","8403303692","1.37","Taiwan"
"1543","Nielsen","NLSN","8400324096","23.35","United States"
"1544","Gold Fields","GFI","8388414976","9.11","South Africa"
"1545","Hapvida","HAPV3.SA","8386664748","1.18","Brazil"
"1546","Zillow","ZG","8385399808","34.03","United States"
"1547","Euronext","ENX.PA","8379058904","78.43","Netherlands"
"1548","Sealed Air","SEE","8376456704","57.34","United States"
"1549","Nykaa","NYKAA.NS","8361292226","17.62","India"
"1550","AVEVA","AVV.L","8360927927","2771.93","United Kingdom"
"1551","Caesars Entertainment","CZR","8358130688","38.99","United States"
"1552","Royal Caribbean","RCL","8354908160","32.77","United States"
"1553","Legend Biotech","LEGN","8349132288","54.14","United States"
"1554","Swire Pacific","0019.HK","8347702852","5.9","Hong Kong"
"1555","Hyatt Hotels","H","8340312576","75.61","United States"
"1556","Wolfspeed","WOLF","8335471616","67.42","United States"
"1557","ANA Holdings","9202.T","8316568454","17.68","Japan"
"1558","Penske Automotive","PAG","8300968960","109.38","United States"
"1559","Organon","OGN","8286320128","32.67","United States"
"1560","Isuzu","7202.T","8284326968","10.69","Japan"
"1561","Keppel","BN4.SI","8282496428","4.64","Singapore"
"1562","Advantech","2395.TW","8277735851","10.62","Taiwan"
"1563","Sumitomo Denki Kōgyō","5802.T","8269398382","10.6","Japan"
"1564","Banco de Chile","BCH","8258139648","16.35","Chile"
"1565","IndusInd Bank","INDUSINDBK.NS","8257671693","10.65","India"
"1566","Fortune Brands Home & Security","FBHS","8255229952","63.11","United States"
"1567","Boliden","BOL.ST","8251548977","30.17","Sweden"
"1568","China Gas","0384.HK","8247391615","1.52","China"
"1569","Dentsu","4324.T","8245411324","30.67","Japan"
"1570","Chr. Hansen","51C.F","8242232117","62.68","Denmark"
"1571","Monotaro","3064.T","8225576905","16.29","Japan"
"1572","The Toro Company","TTC","8225555456","78.66","United States"
"1573","Intertek","ITRK.L","8216503018","5090.99","United Kingdom"
"1574","BorgWarner","BWA","8215027200","34.29","United States"
"1575","GitLab","GTLB","8207688704","55.57","United States"
"1576","Largan Precision","3008.TW","8207291404","61.49","Taiwan"
"1577","InterGlobe Aviation","INDIGO.NS","8205590242","21.3","India"
"1578","SRF Limited","SRF.NS","8201087259","27.67","India"
"1579","Ocado","OCDO.L","8199938437","994.19","United Kingdom"
"1580","Empire Company","EMP-A.TO","8167087810","31.18","Canada"
"1581","Lincoln National Corporation","LNC","8164903936","47.49","United States"
"1582","Mitsui O.S.K. Lines","9104.T","8161909494","22.62","Japan"
"1583","HK Electric Investments","2638.HK","8161069819","0.92","Hong Kong"
"1584","New Fortress Energy","NFE","8156950528","39.3","United States"
"1585","Japan Exchange Group","8697.T","8154068605","15.46","Japan"
"1586","Genpact","G","8148406784","44.01","Bermuda"
"1587","Aisin Seiki","7259.T","8148139004","30.23","Japan"
"1588","Switch","SWCH","8147959808","33.73","United States"
"1589","Sage Group","SGE.L","8147350245","799.72","United Kingdom"
"1590","Samsung Life Insurance","032830.KS","8129916196","45.27","South Korea"
"1591","Orkla","ORKLF","8127648768","8.08","Norway"
"1592","Marico","MARICO.NS","8122892959","6.29","India"
"1593","Solvay","SOLB.VI","8111790270","77.24","Belgium"
"1594","Lithia Motors","LAD","8108931072","280.26","United States"
"1595","Canadian Utilities","CU.TO","8101373397","30.19","Canada"
"1596","Advanced Drainage Systems","WMS","8095749632","95.36","United States"
"1597","Genscript Biotech","1548.HK","8084348089","3.83","China"
"1598","Commerce Bancshares","CBSH","8081934336","66.94","United States"
"1599","Pinnacle West Capital","PNW","8077312000","71.48","United States"
"1600","Tōkyō Gas","9531.T","8070803767","18.49","Japan"
"1601","Hang Lung Properties","0101.HK","8069790408","1.79","Hong Kong"
"1602","Bank Jago","ARTO.JK","8067757319","0.58","Indonesia"
"1603","Hana Financial Group","086790.KS","8038150359","27.57","South Korea"
"1604","Mattel","MAT","8035101184","22.8","United States"
"1605","Knight-Swift","KNX","8031188480","49.1","United States"
"1606","Exact Sciences","EXAS","8023091200","45.6","United States"
"1607","S-OIL","010950.KS","8021236756","69.75","South Korea"
"1608","Umicore","UMI.VI","8020689794","32.5","Belgium"
"1609","Disco Corp.","6146.T","8018321522","222.17","Japan"
"1610","Ipsen","IPN.PA","8009014443","97.03","France"
"1611","Cleveland-Cliffs","CLF","7970754560","15.19","United States"
"1612","Lifco","LIFCO-B.ST","7951126241","16.23","Sweden"
"1613","Tele2","TEL2-A.ST","7930454578","11.37","Sweden"
"1614","Canadian Tire","CTC.TO","7929058974","205.35","Canada"
"1615","Burberry","BRBY.L","7928591644","1992.18","United Kingdom"
"1616","dLocal","DLO","7927402496","26.87","Uruguay"
"1617","Mohawk Industries","MHK","7920186368","124.65","United States"
"1618","Newell Brands","NWL","7910254592","19.13","United States"
"1619","Aramark","ARMK","7906890240","30.73","United States"
"1620","Owens Corning","OC","7885176832","81.23","United States"
"1621","Yaskawa","6506.T","7874549809","30.12","Japan"
"1622","Western Alliance Bancorporation","WAL","7871906304","72.7","United States"
"1623","Doximity","DOCS","7870616576","41.14","United States"
"1624","Lennox","LII","7860164608","218.89","United States"
"1625","AMC Entertainment","AMC","7859031040","15.31","United States"
"1626","Federal Realty Investment Trust","FRT","7853151232","98.07","United States"
"1627","National Retail Properties","NNN","7852667392","44.64","United States"
"1628","Melrose Industries","MRO.L","7850835854","186.74","United Kingdom"
"1629","DaVita","DVA","7844231680","82.92","United States"
"1630","Pentair","PNR","7830035968","47.34","United Kingdom"
"1631","Reinsurance Group of America","RGA","7824420352","116.8","United States"
"1632","Floor & Decor","FND","7820788736","73.88","United States"
"1633","Tapestry","TPR","7813416448","31.03","United States"
"1634","IMCD","IMCD.AS","7811278447","137.2","Netherlands"
"1635","OGE Energy","OGE","7807316992","39","United States"
"1636","TFI International","TFII","7807016960","85.23","Canada"
"1637","Petro Rabigh","2380.SR","7773625663","4.72","Saudi Arabia"
"1638","Yuanta Financial Holding","2885.TW","7768651957","0.64","Taiwan"
"1639","Cognex","CGNX","7759138816","44.66","United States"
"1640","Alcoa","AA","7757943296","42.06","United States"
"1641","CAE","CAE","7746366464","24.42","Canada"
"1642","Chubu Electric Power","9502.T","7738168029","10.23","Japan"
"1643","Cable One","CABO","7736752128","1291.01","United States"
"1644","LG Household & Health Care","051905.KS","7723371470","244.34","South Korea"
"1645","Manhattan Associates","MANH","7709629440","122.16","United States"
"1646","Pure Storage","PSTG","7702493184","26.02","United States"
"1647","DexCom","DXCM","7700670000","79.23","United States"
"1648","JD Sports Fashion","JD.L","7698195600","147.45","United Kingdom"
"1649","Lear Corporation","LEA","7689594368","128.64","United States"
"1650","Zions Bancorporation","ZION","7673901568","50.7","United States"
"1651","GAIL","GAIL.NS","7663286209","1.75","India"
"1652","Teva Pharmaceutical Industries","TEVA","7659096064","6.84","Israel"
"1653","Jardine Cycle & Carriage","C07.SI","7641023322","19.33","Singapore"
"1654","Sinopharm","1099.HK","7632930564","2.45","China"
"1655","ASUS","2357.TW","7628964919","10.27","Taiwan"
"1656","Webster Financial","WBS","7626199552","42.82","United States"
"1657","Regal Rexnord","RRX","7622420480","113.76","United States"
"1658","Novocure","NVCR","7612814848","72.79","Jersey"
"1659","ARC Resources","ARX.TO","7604524891","11.17","Canada"
"1660","Oracle Corp Japan","4716.T","7602290457","59.37","Japan"
"1661","ICICI Lombard","ICICIGI.NS","7600271651","15.48","India"
"1662","Ceridian","CDAY","7597141504","49.77","United States"
"1663","Confluent","CFLT","7586880000","27.26","United States"
"1664","Churchill Downs","CHDN","7549582336","198.54","United States"
"1665","Dentsply Sirona","XRAY","7541897728","35.01","United States"
"1666","China Oilfield Services","2883.HK","7541790995","0.93","China"
"1667","Mitsubishi Chemical Holdings","4188.T","7536800989","5.3","Japan"
"1668","Avalara","AVLR","7529575424","85.7","United States"
"1669","Universal Health Services","UHS","7525880320","101.18","United States"
"1670","Tetra Tech","TTEK","7525324800","140.18","United States"
"1671","KT&G (Korea Tobacco)","033780.KS","7523867621","62.71","South Korea"
"1672","Indus Towers","INDUSTOWER.NS","7515129586","2.79","India"
"1673","AGC","5201.T","7510722739","33.89","Japan"
"1674","TPG Telecom","TPG.AX","7502688028","3.99","Australia"
"1675","Becle","CUERVO.MX","7501366476","2.09","Mexico"
"1676","Performance Food Group","PFGC","7495896576","48.36","United States"
"1677","Cullen/Frost Bankers","CFR","7493580288","116.91","United States"
"1678","Sampoerna","HSZ.F","7492542102","0.06","Indonesia"
"1679","Commerzbank","CBK.F","7491998439","5.97","Germany"
"1680","Entain","ENT.L","7491819962","1247.49","Isle of Man"
"1681","HELLA","HLE.F","7490914204","65.76","Germany"
"1682","Qualtrics","XM","7488699392","12.86","United States"
"1683","Chemed","CHE","7486943744","500.2","United States"
"1684","Central Pattana","CPN.BK","7474478322","1.67","Thailand"
"1685","Meridian Energy","MEZ.AX","7472737084","2.87","New Zealand"
"1686","Samsung Electro-Mechanics","009155.KS","7469770876","55.9","South Korea"
"1687","Globant","GLOB","7461611520","178.61","Luxembourg"
"1688","Arrow Electronics","ARW","7455577600","112.9","United States"
"1689","STORE Capital","STOR","7451886080","26.56","United States"
"1690","West Fraser Timber","WFG","7417688064","82.93","Canada"
"1691","SEI Investments","SEIC","7413736448","54.01","United States"
"1692","Tencent Music","TME","7399023616","4.37","China"
"1693","Dolby","DLB","7387531776","73.22","United States"
"1694","Fisher & Paykel Healthcare","FPH.NZ","7386256024","12.79","New Zealand"
"1695","Magnit","MGNT.ME","7383510057","75.4","Russia"
"1696","Casey's General Stores","CASY","7362167808","197.97","United States"
"1697","Insurance Australia Group","IAG.AX","7348807679","2.98","Australia"
"1698","Meggitt","MGGT.L","7347825325","938.56","United Kingdom"
"1699","Syneos Health","SYNH","7344369664","71.6","United States"
"1700","Unimicron","3037.TW","7341446884","4.98","Taiwan"
"1701","Hess Midstream","HESM","7339876864","27.84","United States"
"1702","Fosun","0656.HK","7333350922","0.88","China"
"1703","Osaka Gas","9532.T","7332728689","17.64","Japan"
"1704","Singapore Exchange","S68.SI","7328224426","6.86","Singapore"
"1705","Change Healthcare","CHNG","7328150016","23.01","United States"
"1706","DiaSorin","DIA.MI","7328018405","135.19","Italy"
"1707","Hindustan Aeronautics","HAL.NS","7326986838","21.91","India"
"1708","Nissin Foods","2897.T","7326811561","71.89","Japan"
"1709","Konami Holdings","9766.T","7324033380","54.83","Japan"
"1710","Masimo","MASI","7318810112","131.86","United States"
"1711","Daifuku","6383.T","7315253637","58.05","Japan"
"1712","Trend Micro","4704.T","7313405194","52.34","Japan"
"1713","Shanghai Commercial and Savings Bank","5876.TW","7310285934","1.64","Taiwan"
"1714","FinecoBank","FBK.MI","7302008084","11.97","Italy"
"1715","Toast","TOST","7299408896","14.26","United States"
"1716","Ritchie Bros. Auctioneers","RBA","7298430464","65.91","Canada"
"1717","Rational AG","RAA.F","7293734741","625.94","Germany"
"1718","Meiji Holdings","2269.T","7277732600","51.68","Japan"
"1719","Avis Budget Group","CAR","7269411328","150.55","United States"
"1720","Sibanye-Stillwater","SBSW","7262510592","9.94","South Africa"
"1721","Indofood CBP","ICBP.JK","7257071270","0.62","Indonesia"
"1722","First Solar","FSLR","7254106624","68.06","United States"
"1723","SentinelOne","S","7250560512","25.99","United States"
"1724","Lincoln Electric","LECO","7249236992","123.66","United States"
"1725","Maravai LifeSciences","MRVI","7241498624","28.38","United States"
"1726","United Spirits","UNITDSPR.BO","7241261190","10.21","India"
"1727","Telus International","TIXT","7239633920","27.2","Canada"
"1728","WillScot","WSC","7234189824","32.51","United States"
"1729","Invesco","IVZ","7230347264","15.89","United States"
"1730","Rakuten","4755.T","7227569904","4.56","Japan"
"1731","Pilgrim's Pride","PPC","7226722816","30.07","United States"
"1732","Hero MotoCorp","HEROMOTOCO.NS","7226688110","36.17","India"
"1733","Deckers Brands","DECK","7215457280","269.34","United States"
"1734","WEX","WEX","7209920512","160.26","United States"
"1735","Jabil","JBL","7203755520","52.37","United States"
"1736","Olin","OLN","7202956800","47.44","United States"
"1737","Omega Healthcare","OHI","7188016640","29.75","United States"
"1738","Yanbu National Petrochemical","2290.SR","7186367175","12.78","Saudi Arabia"
"1739","Hainan Airlines","900945.SS","7170642944","0.19","China"
"1740","Ciena","CIEN","7152904192","47.78","United States"
"1741","US Foods","USFD","7151110656","31.94","United States"
"1742","Japan Airlines","9201.T","7143387321","16.35","Japan"
"1743","Gerdau","GGB","7142145536","4.18","Brazil"
"1744","Etihad Etisalat (Mobily)","7020.SR","7139507416","9.27","Saudi Arabia"
"1745","Indutrade","INDT.ST","7119296662","19.54","Sweden"
"1746","Bharat Electronics","BEL.NS","7117497991","2.92","India"
"1747","PKO Bank Polski","P9O.F","7114598580","5.6","Poland"
"1748","SKF (Svenska Kullagerfabriken)","SKF-B.ST","7109230090","15.45","Sweden"
"1749","Bâloise","BALN.SW","7108920710","157.45","Switzerland"
"1750","Apollo Hospitals","APOLLOHOSP.NS","7106603624","49.43","India"
"1751","Bank of Baroda","BANKBARODA.NS","7105838702","1.37","India"
"1752","Traton","8TRA.DE","7104072334","14.21","Germany"
"1753","Elastic NV","ESTC","7098194432","74.83","United States"
"1754","OTE Group","OTE.F","7097878910","15.88","Greece"
"1755","Phoenix Group","PHNX.L","7096174304","709.62","United Kingdom"
"1756","Berger Paints","BERGEPAINT.NS","7090545211","7.3","India"
"1757","ShockWave Medical","SWAV","7085364736","197.96","United States"
"1758","Royal Gold","RGLD","7085073920","107.94","United States"
"1759","Zoomlion","1157.HK","7054232600","0.55","China"
"1760","Motherson Sumi Systems","MOTHERSUMI.NS","7039944148","1.56","India"
"1761","Prysmian Group","PRY.MI","7023777657","26.66","Italy"
"1762","AGCO","AGCO","7017543680","94.14","United States"
"1763","Old Republic International","ORI","7010810368","22.74","United States"
"1764","Grupo Aeroportuario del Pacífico","PAC","7006988288","139.32","Mexico"
"1765","Quidel","QDEL","7000135168","104.59","United States"
"1766","PGNiG","7GG.F","6998561207","1.15","Poland"
"1767","Nemetschek","NEM.F","6997511465","59.95","Germany"
"1768","Idemitsu Kosan","5019.T","6996927139","23.53","Japan"
"1769","Indorama Ventures","I93A.F","6991415859","1.23","Thailand"
"1770","Dino Polska","DNP.WA","6989006553","71.29","Poland"
"1771","Sofina","SOF.VI","6988384531","207.94","Belgium"
"1772","Dick's Sporting Goods","DKS","6987756032","86.78","United States"
"1773","Mobile TeleSystems","MBT","6986429952","5.5","Russia"
"1774","Accor","AC.PA","6985480366","26.57","France"
"1775","Plains All American Pipeline","PAA","6981007360","9.94","United States"
"1776","Spring Airlines","601021.SS","6979264823","7.62","China"
"1777","Varun Beverages","VBL.NS","6972360665","10.73","India"
"1778","Robinhood","HOOD","6965351424","8.34","United States"
"1779","QNB Finansbank","QNBFB.IS","6961211883","2.08","Turkey"
"1780","Range Resources","RRC","6958064640","25.79","United States"
"1781","Samsara","IOT","6955699200","13.66","United States"
"1782","China Development Financial","2883.TW","6946629325","0.41","Taiwan"
"1783","Berry Global","BERY","6946293248","53.31","United States"
"1784","Sarepta Therapeutics","SRPT","6931829248","79.22","United States"
"1785","Bajaj Holdings & Investment","BAJAJHLDNG.NS","6918500441","62.16","India"
"1786","Bangkok Bank","BBL.BK","6909971015","3.62","Thailand"
"1787","Tokyu","9005.T","6909335995","11.47","Japan"
"1788","Cathay Pacific","0293.HK","6904825780","1.07","Hong Kong"
"1789","Sagax","SAGA-B.ST","6889612294","20.64","Sweden"
"1790","Middleby","MIDD","6887924224","126.64","United States"
"1791","MISC Berhad","3816.KL","6874168840","1.54","Malaysia"
"1792","Bancolombia","CIB","6857833472","28.52","Colombia"
"1793","Starwood Property Trust","STWD","6853733888","21.64","United States"
"1794","Zalando","ZAL.DE","6850421510","26.38","Germany"
"1795","Ivanhoe Mines","IVN.TO","6849753347","5.44","Canada"
"1796","Clearway Energy","CWEN","6849362944","34.99","United States"
"1797","Futu Holdings","FUTU","6841007616","46.54","Hong Kong"
"1798","United Tractors","UTY.F","6834905516","1.78","Indonesia"
"1799","Copenhagen Airport","KLH.F","6830854822","854.7","Denmark"
"1800","Elang Mahkota Teknologi","EMTK.JK","6818239310","0.11","Indonesia"
"1801","Ternium","TX","6805998080","34.67","Luxembourg"
"1802","Yamaha","7951.T","6793559099","39.6","Japan"
"1803","Pearson","PSO","6778295296","9.19","United Kingdom"
"1804","Banco Santander-Chile","BSAC","6774633984","14.38","Chile"
"1805","Nexstar Media Group","NXST","6774588928","167.67","United States"
"1806","ABB India","ABB.NS","6774337403","31.96","India"
"1807","Persimmon","PSN.L","6767511797","2119.36","United Kingdom"
"1808","Dexus","DXS.AX","6754576873","6.28","Australia"
"1809","CACI","CACI","6750817792","288.34","United States"
"1810","IAC/InterActiveCorp","IAC","6748615680","75.09","United States"
"1811","Halozyme Therapeutics","HALO","6745755136","48.9","United States"
"1812","Concentrix","CNXC","6741843968","129.54","United States"
"1813","Unum","UNM","6740704768","33.52","United States"
"1814","KBR","KBR","6739352576","48.29","United States"
"1815","Renault","RNO.PA","6731336849","23.2","France"
"1816","Hertz","HTZ","6729772544","16.33","United States"
"1817","Five Below","FIVE","6725955072","121.21","United States"
"1818","Levi Strauss","LEVI","6724302336","16.95","United States"
"1819","EastGroup Properties","EGP","6722254336","154.36","United States"
"1820","Procore","PCOR","6718552064","49.56","United States"
"1821","KT Corporation","KT","6704936960","14.2","South Korea"
"1822","Nippon Prologis REIT","3283.T","6704854476","2510.85","Japan"
"1823","Flex","FLEX","6703276032","14.63","Singapore"
"1824","Unibail-Rodamco-Westfield","URW.AS","6694862576","48.25","France"
"1825","Credit Acceptance","CACC","6691867136","509.29","United States"
"1826","DXC Technology","DXC","6689850368","29.13","United States"
"1827","AutoNation","AN","6689324032","114.69","United States"
"1828","Axon Enterprise","AXON","6686078464","94.16","United States"
"1829","Lufthansa","LHA.DE","6680078673","5.59","Germany"
"1830","Acadia Healthcare","ACHC","6679059968","73.78","United States"
"1831","Getinge","GETI-B.ST","6669309323","22.95","Sweden"
"1832","MinebeaMitsumi","6479.T","6668658964","16.42","Japan"
"1833","Nissan Chemical","4021.T","6662229953","47.14","Japan"
"1834","Gentex","GNTX","6662152704","28.42","United States"
"1835","Daiwa Securities Group","8601.T","6652368873","4.48","Japan"
"1836","Jefferies Financial Group","JEF","6643506688","28.58","United States"
"1837","Lodha Group","LODHA.NS","6640579114","13.79","India"
"1838","Planet Fitness","PLNT","6636835840","72.88","United States"
"1839","Atacadão","CRFB3.SA","6628580140","3.15","Brazil"
"1840","Shoprite","SHP.JO","6628522511","12.16","South Africa"
"1841","Rohm","6963.T","6623684189","67.49","Japan"
"1842","OCI","OCI.AS","6623057472","31.55","Netherlands"
"1843","Kakao Pay","377300.KS","6607407285","49.86","South Korea"
"1844","Coherent","COHR","6605557248","266.22","United States"
"1845","Inter & Co","INTR","6604856832","2.55","Brazil"
"1846","Exelixis","EXEL","6594434560","20.56","United States"
"1847","Great Eastern","G07.SI","6581823914","13.91","Singapore"
"1848","Healthcare Trust of America","HTA","6576714240","28.71","United States"
"1849","Auckland Airport","AIA.AX","6574795755","4.45","New Zealand"
"1850","Lattice Semiconductor","LSCC","6571613696","47.76","United States"
"1851","Wacker Chemie","WCH.F","6568785472","132.23","Germany"
"1852","AptarGroup","ATR","6563867136","100.1","United States"
"1853","FTI Consulting","FCN","6554144768","190.14","United States"
"1854","Southwestern Energy","SWN","6551976448","5.87","United States"
"1855","Five9","FIVN","6547438080","94.13","United States"
"1856","Arabian Internet and Communications Services","7202.SR","6545838423","55.1","Saudi Arabia"
"1857","Swedish Orphan Biovitrum","SOBI.ST","6544897571","22.17","Sweden"
"1858","Airtel Africa","AAF.L","6535408052","173.9","United Kingdom"
"1859","PLDT","PHI","6533372928","30.02","Philippines"
"1860","Makita","6586.T","6531540781","24.05","Japan"
"1861","RenaissanceRe","RNR","6531134464","147.8","Bermuda"
"1862","Apartment Income REIT","AIRC","6530522112","41.57","United States"
"1863","Autoliv","ALV","6511502848","74.55","Sweden"
"1864","Holmen","HOLM-B.ST","6500435649","40.22","Sweden"
"1865","CPFL Energia","CPFE3.SA","6499729863","5.64","Brazil"
"1866","Trex","TREX","6489189376","57.33","United States"
"1867","Origin Energy","ORG.AX","6486661010","3.77","Australia"
"1868","National Storage","NSA","6474109440","50.25","United States"
"1869","Murphy USA","MUSA","6473928192","267.5","United States"
"1870","Polaris","PII","6466761728","108.69","United States"
"1871","Ralph Lauren","RL","6446697984","92.48","United States"
"1872","Graphic Packaging","GPK","6443616256","20.9","United States"
"1873","Sanlam","SLM.JO","6423670230","3.13","South Africa"
"1874","UPL","UPL.NS","6421536986","8.56","India"
"1875","Restoration Hardware","RH","6421307904","260.17","United States"
"1876","Gecina","GFC.PA","6418259531","87.03","France"
"1877","TIS","3626.T","6414349128","26.1","Japan"
"1878","Hankyu Hanshin Holdings","9042.T","6411588217","26.61","Japan"
"1879","Cholamandalam Investment and Finance","CHOLAFIN.NS","6407254049","7.8","India"
"1880","Arkema","AKE.PA","6392182283","86.44","France"
"1881","CDK Global","CDK","6390491648","54.76","United States"
"1882","T&D Holdings","8795.T","6385589124","11.42","Japan"
"1883","PKN Orlen","PKY1.F","6380186707","14.62","Poland"
"1884","First Industrial Realty Trust","FR","6379608576","48.33","United States"
"1885","Japan Real Estate Investment","8952.T","6378129629","4604.45","Japan"
"1886","Israel Discount Bank","ISDAY","6378023936","51.56","Israel"
"1887","R1 RCM","RCM","6374476800","22.79","United States"
"1888","Hitachi Metals","5486.T","6372294057","14.9","Japan"
"1889","Woori Financial Group","WF","6370507264","26.25","South Korea"
"1890","Pershing Square Holdings","PSHZF","6367568384","29.53","United States"
"1891","Sensata Technologies","ST","6362240000","40.55","United States"
"1892","Axfood"
gitextract_70x6tywz/
├── .gitignore
├── .idea/
│ ├── .gitignore
│ ├── .name
│ ├── compiler.xml
│ ├── jarRepositories.xml
│ └── misc.xml
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE
├── README.md
└── application/
├── .idea/
│ ├── .gitignore
│ ├── .name
│ ├── compiler.xml
│ ├── gradle.xml
│ ├── jarRepositories.xml
│ ├── misc.xml
│ └── modules.xml
├── KotlinConcepts/
│ ├── .gitignore
│ ├── .idea/
│ │ ├── .gitignore
│ │ ├── .name
│ │ ├── appInsightsSettings.xml
│ │ ├── compiler.xml
│ │ ├── deploymentTargetDropDown.xml
│ │ ├── deploymentTargetSelector.xml
│ │ ├── gradle.xml
│ │ ├── inspectionProfiles/
│ │ │ └── Project_Default.xml
│ │ ├── kotlinc.xml
│ │ ├── material_theme_project_new.xml
│ │ ├── migrations.xml
│ │ ├── misc.xml
│ │ ├── other.xml
│ │ └── runConfigurations.xml
│ ├── app/
│ │ ├── .gitignore
│ │ ├── build.gradle.kts
│ │ ├── proguard-rules.pro
│ │ └── src/
│ │ ├── androidTest/
│ │ │ └── java/
│ │ │ └── com/
│ │ │ └── istudio/
│ │ │ └── app/
│ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── main/
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── assets/
│ │ │ │ └── stockdata.csv
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── istudio/
│ │ │ │ └── app/
│ │ │ │ ├── application/
│ │ │ │ │ └── CurrentApplication.kt
│ │ │ │ ├── data/
│ │ │ │ │ └── mock/
│ │ │ │ │ ├── FlowMockApi.kt
│ │ │ │ │ ├── FlowMockData.kt
│ │ │ │ │ └── MockNetworkInterceptor.kt
│ │ │ │ ├── main/
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ └── MainViewModel.kt
│ │ │ │ ├── modules/
│ │ │ │ │ ├── module_demos/
│ │ │ │ │ │ ├── basic_fundamentals/
│ │ │ │ │ │ │ ├── ui/
│ │ │ │ │ │ │ │ ├── KotlinBasicsDemo.kt
│ │ │ │ │ │ │ │ └── KotlinBasicsDemoVm.kt
│ │ │ │ │ │ │ └── utils/
│ │ │ │ │ │ │ ├── Student.kt
│ │ │ │ │ │ │ └── multipleInheritance/
│ │ │ │ │ │ │ ├── in_java/
│ │ │ │ │ │ │ │ └── InJava.java
│ │ │ │ │ │ │ └── in_kotlin/
│ │ │ │ │ │ │ └── InKotlin.kt
│ │ │ │ │ │ ├── channels/
│ │ │ │ │ │ │ ├── ChannelsDemo.kt
│ │ │ │ │ │ │ └── ChannelsDemoVm.kt
│ │ │ │ │ │ ├── coroutines/
│ │ │ │ │ │ │ ├── CoroutinesDemo.kt
│ │ │ │ │ │ │ ├── CoroutinesDemoVm.kt
│ │ │ │ │ │ │ ├── compare_join_and_async/
│ │ │ │ │ │ │ │ ├── CompareJoinAsyncDemo.kt
│ │ │ │ │ │ │ │ └── CompareJoinAsyncDemoVm.kt
│ │ │ │ │ │ │ ├── coroutine_cancellation/
│ │ │ │ │ │ │ │ ├── CoroutinesCancellationSelection.kt
│ │ │ │ │ │ │ │ ├── ensure_active_demo/
│ │ │ │ │ │ │ │ │ ├── EnsureActiveDemo.kt
│ │ │ │ │ │ │ │ │ └── EnsureActiveDemoVm.kt
│ │ │ │ │ │ │ │ ├── is_active_demo/
│ │ │ │ │ │ │ │ │ ├── IsActiveDemo.kt
│ │ │ │ │ │ │ │ │ └── IsActiveDemoVm.kt
│ │ │ │ │ │ │ │ ├── non_cancellable_job/
│ │ │ │ │ │ │ │ │ ├── NonCancellableDemo.kt
│ │ │ │ │ │ │ │ │ └── NonCancellableDemoVm.kt
│ │ │ │ │ │ │ │ └── root_children_cencel_demo/
│ │ │ │ │ │ │ │ ├── RootChildrenCancelDemo.kt
│ │ │ │ │ │ │ │ └── RootChildrenCancelDemoVm.kt
│ │ │ │ │ │ │ ├── dispatchers/
│ │ │ │ │ │ │ │ ├── DispatchersDemo.kt
│ │ │ │ │ │ │ │ └── DispatchersDemoVm.kt
│ │ │ │ │ │ │ ├── exception_handeling/
│ │ │ │ │ │ │ │ ├── ExceptionHandlingSelectionDemo.kt
│ │ │ │ │ │ │ │ ├── using_async/
│ │ │ │ │ │ │ │ │ ├── UsingAsyncExceptionHandleDemo.kt
│ │ │ │ │ │ │ │ │ └── UsingAsyncExceptionHandleDemoVm.kt
│ │ │ │ │ │ │ │ └── using_launch/
│ │ │ │ │ │ │ │ ├── UsingLaunchExceptionHandleDemo.kt
│ │ │ │ │ │ │ │ └── UsingLaunchExceptionHandleDemoVm.kt
│ │ │ │ │ │ │ ├── job/
│ │ │ │ │ │ │ │ ├── JobDemoSelection.kt
│ │ │ │ │ │ │ │ └── JobDemoSelectionVm.kt
│ │ │ │ │ │ │ ├── launch_and_withcontext/
│ │ │ │ │ │ │ │ ├── LaunchAndWithContextDemo.kt
│ │ │ │ │ │ │ │ └── LaunchAndWithContextDemoVm.kt
│ │ │ │ │ │ │ ├── simple_structured_concurrency/
│ │ │ │ │ │ │ │ ├── SimpleStructuredConcurrencyDemo.kt
│ │ │ │ │ │ │ │ └── SimpleStructuredConcurrencyDemoVm.kt
│ │ │ │ │ │ │ ├── suspend_and_launch_demo/
│ │ │ │ │ │ │ │ ├── NonCancellableDemoVm.kt
│ │ │ │ │ │ │ │ └── SuspendAndLaunchDemo.kt
│ │ │ │ │ │ │ ├── using_async_await/
│ │ │ │ │ │ │ │ ├── UsingAsyncAwaitDemo.kt
│ │ │ │ │ │ │ │ └── UsingAsyncAwaitDemoVm.kt
│ │ │ │ │ │ │ └── using_join/
│ │ │ │ │ │ │ ├── UsingJoinDemo.kt
│ │ │ │ │ │ │ └── UsingJoinDemoVm.kt
│ │ │ │ │ │ ├── flows/
│ │ │ │ │ │ │ ├── FlowsDemo.kt
│ │ │ │ │ │ │ ├── FlowsDemoVm.kt
│ │ │ │ │ │ │ └── modules/
│ │ │ │ │ │ │ ├── collect_as_state_with_lifecycle/
│ │ │ │ │ │ │ │ ├── CollectAsStateWithLifeCycleDemo.kt
│ │ │ │ │ │ │ │ └── CollectAsStateWithLifeCycleVm.kt
│ │ │ │ │ │ │ ├── compose_and_flatten_flows/
│ │ │ │ │ │ │ │ ├── ComposeAndFlattenFlows.kt
│ │ │ │ │ │ │ │ └── ComposeAndFlattenFlowsVm.kt
│ │ │ │ │ │ │ ├── flatten_flows/
│ │ │ │ │ │ │ │ ├── FlattenFlowsDemo.kt
│ │ │ │ │ │ │ │ └── FlattenFlowsDemoVm.kt
│ │ │ │ │ │ │ ├── flow_basics/
│ │ │ │ │ │ │ │ ├── chapters/
│ │ │ │ │ │ │ │ │ └── display_data_from_server/
│ │ │ │ │ │ │ │ │ ├── DisplayDataFromServerDemo.kt
│ │ │ │ │ │ │ │ │ ├── DisplayDataFromServerVm.kt
│ │ │ │ │ │ │ │ │ └── composables/
│ │ │ │ │ │ │ │ │ └── StockItem.kt
│ │ │ │ │ │ │ │ ├── data/
│ │ │ │ │ │ │ │ │ ├── StockData.kt
│ │ │ │ │ │ │ │ │ ├── StockPriceDataSource.kt
│ │ │ │ │ │ │ │ │ └── api/
│ │ │ │ │ │ │ │ │ └── MockApiBehavior.kt
│ │ │ │ │ │ │ │ ├── state/
│ │ │ │ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ │ │ │ └── ui/
│ │ │ │ │ │ │ │ ├── FlowBasics.kt
│ │ │ │ │ │ │ │ └── FlowBasicsVm.kt
│ │ │ │ │ │ │ ├── intermediate_operators/
│ │ │ │ │ │ │ │ ├── IntermediateOperators.kt
│ │ │ │ │ │ │ │ └── IntermediateOperatorsVm.kt
│ │ │ │ │ │ │ ├── mutable_state_of_flow/
│ │ │ │ │ │ │ │ ├── MutableStateOfFlowDemo.kt
│ │ │ │ │ │ │ │ └── MutableStateOfFlowDemoVm.kt
│ │ │ │ │ │ │ ├── state_and_shared_flows/
│ │ │ │ │ │ │ │ ├── StateAndSharedFlowsDemo.kt
│ │ │ │ │ │ │ │ └── StateAndSharedFlowsDemoVm.kt
│ │ │ │ │ │ │ └── terminal_operators/
│ │ │ │ │ │ │ ├── TerminalOperators.kt
│ │ │ │ │ │ │ └── TerminalOperatorsVm.kt
│ │ │ │ │ │ ├── higher_order_functions/
│ │ │ │ │ │ │ └── ui/
│ │ │ │ │ │ │ ├── HigherOrderFunctionDemo.kt
│ │ │ │ │ │ │ └── HigherOrderFunctionDemoVm.kt
│ │ │ │ │ │ ├── kotlin_annotations/
│ │ │ │ │ │ │ ├── ui/
│ │ │ │ │ │ │ │ ├── KotlinAnnotationsDemoVm.kt
│ │ │ │ │ │ │ │ └── kotlinAnnotationsDemo.kt
│ │ │ │ │ │ │ └── utils/
│ │ │ │ │ │ │ ├── jvmField/
│ │ │ │ │ │ │ │ ├── JavaPerson.java
│ │ │ │ │ │ │ │ ├── KotlinPerson.kt
│ │ │ │ │ │ │ │ └── init/
│ │ │ │ │ │ │ │ ├── JavaInstanceJf.java
│ │ │ │ │ │ │ │ └── KotlinInstanceJf.kt
│ │ │ │ │ │ │ ├── jvmOverloads/
│ │ │ │ │ │ │ │ ├── Student1.kt
│ │ │ │ │ │ │ │ ├── Student2.kt
│ │ │ │ │ │ │ │ └── init/
│ │ │ │ │ │ │ │ ├── JavaInstanceJo.java
│ │ │ │ │ │ │ │ └── KotlinInstanceJo.kt
│ │ │ │ │ │ │ ├── jvmstatic/
│ │ │ │ │ │ │ │ ├── Cinema.kt
│ │ │ │ │ │ │ │ └── init/
│ │ │ │ │ │ │ │ ├── JavaInstanceJs.java
│ │ │ │ │ │ │ │ └── KotlinInstanceJs.kt
│ │ │ │ │ │ │ ├── nullableAndNotNull/
│ │ │ │ │ │ │ │ └── SuperHero.java
│ │ │ │ │ │ │ ├── stringDef/
│ │ │ │ │ │ │ │ ├── UserManager.kt
│ │ │ │ │ │ │ │ └── UserStatus.kt
│ │ │ │ │ │ │ └── stringRes/
│ │ │ │ │ │ │ ├── HomeNavItem.kt
│ │ │ │ │ │ │ └── init/
│ │ │ │ │ │ │ ├── JavaInstanceSr.java
│ │ │ │ │ │ │ └── KotlinInstanceSr.kt
│ │ │ │ │ │ ├── nested_vs_inner/
│ │ │ │ │ │ │ ├── ui/
│ │ │ │ │ │ │ │ ├── NestedVsInner.kt
│ │ │ │ │ │ │ │ └── NestedVsInnerVm.kt
│ │ │ │ │ │ │ └── utils/
│ │ │ │ │ │ │ └── OuterClass.kt
│ │ │ │ │ │ ├── sealed_class/
│ │ │ │ │ │ │ ├── ui/
│ │ │ │ │ │ │ │ ├── SealedClassDemo.kt
│ │ │ │ │ │ │ │ └── SealedClassDemoVm.kt
│ │ │ │ │ │ │ └── utils/
│ │ │ │ │ │ │ ├── Student/
│ │ │ │ │ │ │ │ └── Student.kt
│ │ │ │ │ │ │ ├── animals/
│ │ │ │ │ │ │ │ ├── Animal.kt
│ │ │ │ │ │ │ │ ├── Monkey.kt
│ │ │ │ │ │ │ │ └── Tiger.kt
│ │ │ │ │ │ │ ├── payment/
│ │ │ │ │ │ │ │ └── Payment.kt
│ │ │ │ │ │ │ └── superHero/
│ │ │ │ │ │ │ ├── Hero.kt
│ │ │ │ │ │ │ └── Payment.kt
│ │ │ │ │ │ └── type_alias/
│ │ │ │ │ │ ├── ui/
│ │ │ │ │ │ │ ├── TypeAlias.kt
│ │ │ │ │ │ │ └── TypeAliasVm.kt
│ │ │ │ │ │ └── utils/
│ │ │ │ │ │ └── TypeAliasReferences.kt
│ │ │ │ │ ├── module_exercises/
│ │ │ │ │ │ ├── ExerciseSelection.kt
│ │ │ │ │ │ ├── exercise_1/
│ │ │ │ │ │ │ ├── Exercise1.kt
│ │ │ │ │ │ │ └── Exercise1vm.kt
│ │ │ │ │ │ └── exercise_2/
│ │ │ │ │ │ ├── Exercise2.kt
│ │ │ │ │ │ └── Exercise2vm.kt
│ │ │ │ │ └── module_selection/
│ │ │ │ │ ├── ModuleDemo.kt
│ │ │ │ │ └── ModuleSelectionScreen.kt
│ │ │ │ ├── ui/
│ │ │ │ │ ├── composables/
│ │ │ │ │ │ ├── Buttons.kt
│ │ │ │ │ │ └── Text.kt
│ │ │ │ │ └── theme/
│ │ │ │ │ ├── Color.kt
│ │ │ │ │ ├── Shape.kt
│ │ │ │ │ ├── Theme.kt
│ │ │ │ │ └── Type.kt
│ │ │ │ └── utils/
│ │ │ │ ├── base/
│ │ │ │ │ └── BaseViewModel.kt
│ │ │ │ ├── endpoints/
│ │ │ │ │ └── EndPointSimulation.kt
│ │ │ │ ├── extensions/
│ │ │ │ │ ├── Activity.kt
│ │ │ │ │ └── Coroutine.kt
│ │ │ │ └── log/
│ │ │ │ └── ThreadInfoLogger.kt
│ │ │ └── res/
│ │ │ ├── drawable/
│ │ │ │ ├── ic_launcher_background.xml
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── values/
│ │ │ │ ├── colors.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── themes.xml
│ │ │ └── xml/
│ │ │ ├── backup_rules.xml
│ │ │ └── data_extraction_rules.xml
│ │ └── test/
│ │ └── java/
│ │ └── com/
│ │ └── istudio/
│ │ └── app/
│ │ └── ExampleUnitTest.kt
│ ├── build.gradle.kts
│ ├── gradle/
│ │ └── wrapper/
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
│ ├── gradle.properties
│ ├── gradlew
│ ├── gradlew.bat
│ └── settings.gradle.kts
└── Sample-Coroutines/
├── .idea/
│ ├── .name
│ ├── compiler.xml
│ ├── deploymentTargetDropDown.xml
│ ├── deploymentTargetSelector.xml
│ ├── gradle.xml
│ ├── kotlinc.xml
│ ├── material_theme_project_new.xml
│ ├── migrations.xml
│ ├── misc.xml
│ ├── modules.xml
│ ├── other.xml
│ └── workspace.xml
├── README.md
├── app/
│ ├── .gitignore
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src/
│ ├── androidTest/
│ │ └── java/
│ │ └── com/
│ │ └── demo/
│ │ └── code/
│ │ └── ExampleInstrumentedTest.kt
│ ├── main/
│ │ ├── AndroidManifest.xml
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── demo/
│ │ │ └── code/
│ │ │ ├── CoroutineUsecasesOnAndroidApplication.kt
│ │ │ ├── activities/
│ │ │ │ ├── JobsActivity.kt
│ │ │ │ ├── MainActivity.kt
│ │ │ │ ├── SelectionActivity.kt
│ │ │ │ └── SuspendingFuncActivity.kt
│ │ │ ├── base/
│ │ │ │ ├── BaseActivity.kt
│ │ │ │ ├── BaseViewModel.kt
│ │ │ │ ├── UseCase.kt
│ │ │ │ ├── UseCaseActivity.kt
│ │ │ │ ├── UseCaseAdapter.kt
│ │ │ │ └── UseCaseCategoryAdapter.kt
│ │ │ ├── mock/
│ │ │ │ ├── MockAnalyticsApi.kt
│ │ │ │ ├── MockApi.kt
│ │ │ │ └── MockData.kt
│ │ │ ├── modules/
│ │ │ │ ├── legacycode/
│ │ │ │ │ ├── LegacyCallbackSampleOne.kt
│ │ │ │ │ ├── LegacyCallbackSampleTwo.kt
│ │ │ │ │ └── User.kt
│ │ │ │ ├── observabletypes/
│ │ │ │ │ ├── ObservableTypesActivity.kt
│ │ │ │ │ └── ObservableTypesViewModel.kt
│ │ │ │ └── placeholder
│ │ │ ├── playground/
│ │ │ │ ├── cancellation/
│ │ │ │ │ ├── 1_cancellation.kt
│ │ │ │ │ └── 2_cooperative_cancellation.kt
│ │ │ │ ├── coroutine_scope.kt
│ │ │ │ ├── coroutinebuilders/
│ │ │ │ │ ├── 1_launch.kt
│ │ │ │ │ └── 2_async.kt
│ │ │ │ ├── exceptionhandling/
│ │ │ │ │ ├── 1_try_catch.kt
│ │ │ │ │ ├── 2_coroutine_exception_handler.kt
│ │ │ │ │ ├── 3_try_catch_vs_exception_handler.kt
│ │ │ │ │ ├── 4_launch_and_async.kt
│ │ │ │ │ ├── 5_exception_handling_specifics_coroutineScope.kt
│ │ │ │ │ └── 6_exception_handling_specifics_supervisorScope.kt
│ │ │ │ ├── fundamentals/
│ │ │ │ │ ├── 10_how_delay_works.kt
│ │ │ │ │ ├── 1_routines.kt
│ │ │ │ │ ├── 2_coroutines.kt
│ │ │ │ │ ├── 3_routines_threads.kt
│ │ │ │ │ ├── 4_coroutines_with_thread_info.kt
│ │ │ │ │ ├── 5_starting_lots_of_coroutines.kt
│ │ │ │ │ ├── 7_starting_lots_of_threads.kt
│ │ │ │ │ ├── 8_suspending_coroutines.kt
│ │ │ │ │ └── 9_coroutine_in_different_threads.kt
│ │ │ │ └── structuredconcurrency/
│ │ │ │ ├── 1_coroutines_need_to_be_started_in_scope.kt
│ │ │ │ ├── 2_job_hierarchy.kt
│ │ │ │ ├── 3_parents_wait_for_children.kt
│ │ │ │ ├── 4_cancelling_parents_and_children.kt
│ │ │ │ ├── 5_exception_propagation.kt
│ │ │ │ ├── 6_globalscope.kt
│ │ │ │ └── 7_scoping_functions.kt
│ │ │ ├── usecases/
│ │ │ │ ├── channels/
│ │ │ │ │ └── usecase1/
│ │ │ │ │ └── ChannelUseCase1Activity.kt
│ │ │ │ ├── coroutines/
│ │ │ │ │ ├── usecase1/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── PerformSingleNetworkRequestActivity.kt
│ │ │ │ │ │ ├── PerformSingleNetworkRequestViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase10/
│ │ │ │ │ │ ├── CalculationInBackgroundActivity.kt
│ │ │ │ │ │ ├── CalculationInBackgroundViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase11/
│ │ │ │ │ │ ├── CooperativeCancellationActivity.kt
│ │ │ │ │ │ ├── CooperativeCancellationViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase12/
│ │ │ │ │ │ ├── CalculationInSeveralCoroutinesActivity.kt
│ │ │ │ │ │ ├── CalculationInSeveralCoroutinesViewModel.kt
│ │ │ │ │ │ ├── FactorialCalculator.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase13/
│ │ │ │ │ │ ├── ExceptionHandlingActivity.kt
│ │ │ │ │ │ ├── ExceptionHandlingViewModel.kt
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase14/
│ │ │ │ │ │ ├── AndroidVersionDao.kt
│ │ │ │ │ │ ├── AndroidVersionDatabase.kt
│ │ │ │ │ │ ├── AndroidVersionEntity.kt
│ │ │ │ │ │ ├── AndroidVersionRepository.kt
│ │ │ │ │ │ ├── ContinueCoroutineWhenUserLeavesScreenActivity.kt
│ │ │ │ │ │ ├── ContinueCoroutineWhenUserLeavesScreenViewModel.kt
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── UiState.kt
│ │ │ │ │ │ └── ViewModelFactory.kt
│ │ │ │ │ ├── usecase15/
│ │ │ │ │ │ ├── AnalyticsWorker.kt
│ │ │ │ │ │ ├── ViewModelFactory.kt
│ │ │ │ │ │ ├── WorkManagerActivity.kt
│ │ │ │ │ │ └── WorkManagerViewModel.kt
│ │ │ │ │ ├── usecase16/
│ │ │ │ │ │ ├── FactorialCalculator.kt
│ │ │ │ │ │ ├── PerformanceAnalysisActivity.kt
│ │ │ │ │ │ ├── PerformanceAnalysisViewModel.kt
│ │ │ │ │ │ ├── ResultAdapter.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase17/
│ │ │ │ │ │ ├── PerformCalculationOnMainThreadActivity.kt
│ │ │ │ │ │ ├── PerformCalculationOnMainThreadViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase2/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── Perform2SequentialNetworkRequestsActivity.kt
│ │ │ │ │ │ ├── Perform2SequentialNetworkRequestsViewModel.kt
│ │ │ │ │ │ ├── UiState.kt
│ │ │ │ │ │ ├── callbacks/
│ │ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ │ ├── SequentialNetworkRequestsCallbacksActivity.kt
│ │ │ │ │ │ │ ├── SequentialNetworkRequestsCallbacksViewModel.kt
│ │ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ │ └── rx/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── SequentialNetworkRequestsRxActivity.kt
│ │ │ │ │ │ ├── SequentialNetworkRequestsRxViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase3/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── PerformNetworkRequestsConcurrentlyActivity.kt
│ │ │ │ │ │ ├── PerformNetworkRequestsConcurrentlyViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase4/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── UiState.kt
│ │ │ │ │ │ ├── VariableAmountOfNetworkRequestsActivity.kt
│ │ │ │ │ │ └── VariableAmountOfNetworkRequestsViewModel.kt
│ │ │ │ │ ├── usecase5/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── NetworkRequestWithTimeoutActivity.kt
│ │ │ │ │ │ ├── NetworkRequestWithTimeoutViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase6/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── RetryNetworkRequestActivity.kt
│ │ │ │ │ │ ├── RetryNetworkRequestViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase7/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── TimeoutAndRetryActivity.kt
│ │ │ │ │ │ ├── TimeoutAndRetryViewModel.kt
│ │ │ │ │ │ ├── UiState.kt
│ │ │ │ │ │ ├── callbacks/
│ │ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ │ ├── TimeoutAndRetryCallbackActivity.kt
│ │ │ │ │ │ │ ├── TimeoutAndRetryCallbackViewModel.kt
│ │ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ │ └── rx/
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── TimeoutAndRetryRxActivity.kt
│ │ │ │ │ │ ├── TimeoutAndRetryRxViewModel.kt
│ │ │ │ │ │ └── UiState.kt
│ │ │ │ │ ├── usecase8/
│ │ │ │ │ │ ├── AndroidVersionDao.kt
│ │ │ │ │ │ ├── AndroidVersionDatabase.kt
│ │ │ │ │ │ ├── AndroidVersionEntity.kt
│ │ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ │ ├── RoomAndCoroutinesActivity.kt
│ │ │ │ │ │ ├── RoomAndCoroutinesViewModel.kt
│ │ │ │ │ │ ├── UiState.kt
│ │ │ │ │ │ └── ViewModelFactory.kt
│ │ │ │ │ └── usecase9/
│ │ │ │ │ ├── DebuggingCoroutinesActivity.kt
│ │ │ │ │ ├── DebuggingCoroutinesViewModel.kt
│ │ │ │ │ ├── MockApi.kt
│ │ │ │ │ └── UiState.kt
│ │ │ │ └── flow/
│ │ │ │ └── usecase1/
│ │ │ │ └── FlowUseCase1Activity.kt
│ │ │ └── utils/
│ │ │ ├── Extensions.kt
│ │ │ └── MockNetworkInterceptor.kt
│ │ └── res/
│ │ ├── drawable/
│ │ │ ├── ic_arrow_back_white.xml
│ │ │ ├── ic_check_green_24dp.xml
│ │ │ ├── ic_clear_red_24dp.xml
│ │ │ ├── ic_launcher_background.xml
│ │ │ └── recyclerview_divider.xml
│ │ ├── drawable-v24/
│ │ │ └── ic_launcher_foreground.xml
│ │ ├── layout/
│ │ │ ├── activity_calculateonmain.xml
│ │ │ ├── activity_calculationinbackground.xml
│ │ │ ├── activity_calculationinmultiplebackgroundthreads.xml
│ │ │ ├── activity_channels_usecase1.xml
│ │ │ ├── activity_cooperativecancellation.xml
│ │ │ ├── activity_debuggingcoroutines.xml
│ │ │ ├── activity_exceptionhandling.xml
│ │ │ ├── activity_flow_usecase1.xml
│ │ │ ├── activity_jobs.xml
│ │ │ ├── activity_main.xml
│ │ │ ├── activity_networkrequestwithtimeout.xml
│ │ │ ├── activity_observable_types.xml
│ │ │ ├── activity_perform2sequentialnetworkrequests.xml
│ │ │ ├── activity_performanceanalysis.xml
│ │ │ ├── activity_performnetworkrequestsconcurrently.xml
│ │ │ ├── activity_performsinglenetworkrequest.xml
│ │ │ ├── activity_performvariableamountofnetworkrequestsconcurrently.xml
│ │ │ ├── activity_queryfromroomdatabase.xml
│ │ │ ├── activity_retrynetworkrequest.xml
│ │ │ ├── activity_selection.xml
│ │ │ ├── activity_suspending_func.xml
│ │ │ ├── activity_usecases.xml
│ │ │ ├── activity_workmanger.xml
│ │ │ ├── recyclerview_item.xml
│ │ │ ├── recyclerview_item_calculation_result.xml
│ │ │ └── toolbar.xml
│ │ ├── mipmap-anydpi-v26/
│ │ │ ├── ic_launcher.xml
│ │ │ └── ic_launcher_round.xml
│ │ └── values/
│ │ ├── colors.xml
│ │ ├── dimens.xml
│ │ ├── strings.xml
│ │ └── styles.xml
│ └── test/
│ └── java/
│ └── com/
│ └── demo/
│ └── code/
│ ├── ExampleUnitTest.kt
│ ├── playground/
│ │ └── testing/
│ │ └── 1_testing_coroutines.kt
│ ├── usecases/
│ │ └── coroutines/
│ │ ├── usecase1/
│ │ │ ├── FakeErrorApi.kt
│ │ │ ├── FakeSuccessApi.kt
│ │ │ └── PerformSingleNetworkRequestViewModelTest.kt
│ │ ├── usecase10/
│ │ │ └── CalculationInBackgroundViewModelTest.kt
│ │ ├── usecase12/
│ │ │ └── FactorialCalculatorTest.kt
│ │ ├── usecase14/
│ │ │ ├── AndroidVersionRepositoryTest.kt
│ │ │ ├── FakeApi.kt
│ │ │ └── FakeDatabase.kt
│ │ ├── usecase2/
│ │ │ ├── FakeFeaturesErrorApi.kt
│ │ │ ├── FakeSuccessApi.kt
│ │ │ ├── FakeVersionsErrorApi.kt
│ │ │ ├── Perform2SequentialNetworkRequestsViewModelTest.kt
│ │ │ └── callbacks/
│ │ │ ├── FakeFeaturesErrorApi.kt
│ │ │ ├── FakeSuccessApi.kt
│ │ │ ├── FakeVersionsErrorApi.kt
│ │ │ └── SequentialNetworkRequestsCallbacksViewModelTest.kt
│ │ ├── usecase3/
│ │ │ ├── FakeErrorApi.kt
│ │ │ ├── FakeSuccessApi.kt
│ │ │ └── PerformNetworkRequestsConcurrentlyViewModelTest.kt
│ │ ├── usecase4/
│ │ │ ├── FakeFeaturesErrorApi.kt
│ │ │ ├── FakeSuccessApi.kt
│ │ │ ├── FakeVersionsErrorApi.kt
│ │ │ └── VariableAmountOfNetworkRequestsViewModelTest.kt
│ │ ├── usecase5/
│ │ │ ├── FakeSuccessApi.kt
│ │ │ ├── FakeVersionsErrorApi.kt
│ │ │ └── NetworkRequestWithTimeoutViewModelTest.kt
│ │ └── usecase6/
│ │ ├── FakeSuccessApi.kt
│ │ ├── FakeSuccessOnThirdAttemptApi.kt
│ │ ├── FakeVersionsErrorApi.kt
│ │ └── RetryNetworkRequestViewModelTest.kt
│ └── utils/
│ ├── EndpointShouldNotBeCalledException.kt
│ └── MainCoroutineScopeRule.kt
├── build.gradle.kts
├── buildSrc/
│ ├── build.gradle.kts
│ └── src/
│ └── main/
│ └── java/
│ ├── AppConfig.kt
│ ├── AppDependencies.kt
│ ├── BuildPlugins.kt
│ └── Versions.kt
├── gradle/
│ └── wrapper/
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradle.properties
├── gradlew
├── gradlew.bat
└── settings.gradle.kts
SYMBOL INDEX (27 symbols across 7 files)
FILE: application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/basic_fundamentals/utils/multipleInheritance/in_java/InJava.java
class InJava (line 4) | public class InJava implements Sony,Samsung{
method content (line 5) | @Override
method methodSonyName (line 10) | @Override
method methodSamsungName (line 15) | @Override
type Telivision (line 22) | interface Telivision{
method content (line 23) | void content();
type Sony (line 26) | interface Sony extends Telivision{
method methodSonyName (line 27) | void methodSonyName();
type Samsung (line 30) | interface Samsung extends Telivision{
method methodSamsungName (line 31) | void methodSamsungName();
FILE: application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmField/JavaPerson.java
class JavaPerson (line 3) | public class JavaPerson {
method JavaPerson (line 7) | public JavaPerson(String name, int age) {
method getName (line 12) | public String getName() {
method setName (line 16) | public void setName(String name) {
method getAge (line 20) | public int getAge() {
method setAge (line 24) | public void setAge(int age) {
FILE: application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmField/init/JavaInstanceJf.java
class JavaInstanceJf (line 5) | public class JavaInstanceJf {
method initilize (line 7) | public void initilize() {
FILE: application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmOverloads/init/JavaInstanceJo.java
class JavaInstanceJo (line 6) | public class JavaInstanceJo {
method initilize (line 8) | public void initilize() {
FILE: application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmstatic/init/JavaInstanceJs.java
class JavaInstanceJs (line 5) | public class JavaInstanceJs {
method initilize (line 7) | public void initilize() {
FILE: application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/nullableAndNotNull/SuperHero.java
class SuperHero (line 6) | public class SuperHero {
method getName (line 10) | public @Nullable String getName() {
method setName (line 14) | public void setName(@NotNull String name) {
FILE: application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/stringRes/init/JavaInstanceSr.java
class JavaInstanceSr (line 5) | public class JavaInstanceSr {
method initilize (line 7) | public void initilize() {
Condensed preview — 421 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (1,274K chars).
[
{
"path": ".gitignore",
"chars": 1436,
"preview": "# Built application files\n*.apk\n*.aar\n*.ap_\n*.aab\n\n# Files for the ART/Dalvik VM\n*.dex\n\n# Java class files\n*.class\n\n# Ge"
},
{
"path": ".idea/.gitignore",
"chars": 47,
"preview": "# Default ignored files\n/shelf/\n/workspace.xml\n"
},
{
"path": ".idea/.name",
"chars": 14,
"preview": "My Application"
},
{
"path": ".idea/compiler.xml",
"chars": 170,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"CompilerConfiguration\">\n <bytecodeTar"
},
{
"path": ".idea/jarRepositories.xml",
"chars": 1052,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"RemoteRepositoriesConfiguration\">\n <r"
},
{
"path": ".idea/misc.xml",
"chars": 372,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"ProjectRootManager\" version=\"2\" language"
},
{
"path": "CODE_OF_CONDUCT.md",
"chars": 5201,
"preview": "# Contributor Covenant Code of Conduct\n\n## Our Pledge\n\nWe as members, contributors, and leaders pledge to make participa"
},
{
"path": "CONTRIBUTING.md",
"chars": 1088,
"preview": "## Feeling Awesome! Thanks for thinking about this.\n\nYou can contribute us by filing issues, bugs and PRs. You can also "
},
{
"path": "LICENSE",
"chars": 11357,
"preview": " Apache License\n Version 2.0, January 2004\n "
},
{
"path": "README.md",
"chars": 21616,
"preview": "<h1 align=\"center\">𝙺𝚘𝚝𝚕𝚒𝚗𝙰𝚕𝚌𝚑𝚎𝚖𝚢</h1>\n\n<div align=\"center\">\n\n\n id(\"org.jetbrains.kotlin.android\")\n id(\"com.google.dagger.hilt.androi"
},
{
"path": "application/KotlinConcepts/app/proguard-rules.pro",
"chars": 750,
"preview": "# Add project specific ProGuard rules here.\n# You can control the set of applied configuration files using the\n# proguar"
},
{
"path": "application/KotlinConcepts/app/src/androidTest/java/com/istudio/app/ExampleInstrumentedTest.kt",
"chars": 657,
"preview": "package com.istudio.app\n\nimport androidx.test.platform.app.InstrumentationRegistry\nimport androidx.test.ext.junit.runner"
},
{
"path": "application/KotlinConcepts/app/src/main/AndroidManifest.xml",
"chars": 1093,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n xmlns:to"
},
{
"path": "application/KotlinConcepts/app/src/main/assets/stockdata.csv",
"chars": 415593,
"preview": "\"Rank\",\"Name\",\"Symbol\",\"marketcap\",\"price (USD)\",\"country\"\n\"1\",\"Apple\",\"AAPL\",\"2378193174528\",\"146.94\",\"United States\"\n\""
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/application/CurrentApplication.kt",
"chars": 172,
"preview": "package com.istudio.app.application\n\nimport android.app.Application\nimport dagger.hilt.android.HiltAndroidApp\n\n@HiltAndr"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/data/mock/FlowMockApi.kt",
"chars": 694,
"preview": "package com.istudio.app.data.mock\n\nimport okhttp3.OkHttpClient\nimport retrofit2.Retrofit\nimport retrofit2.converter.gson"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/data/mock/FlowMockData.kt",
"chars": 2100,
"preview": "package com.istudio.app.data.mock\n\nimport android.content.Context\nimport androidx.compose.runtime.Immutable\nimport com.o"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/data/mock/MockNetworkInterceptor.kt",
"chars": 3508,
"preview": "package com.istudio.app.data.mock\n\nimport okhttp3.*\nimport kotlin.random.Random\n\nclass MockNetworkInterceptor : Intercep"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/main/MainActivity.kt",
"chars": 13650,
"preview": "package com.istudio.app.main\n\nimport android.os.Bundle\nimport androidx.activity.ComponentActivity\nimport androidx.activi"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/main/MainViewModel.kt",
"chars": 223,
"preview": "package com.istudio.app.main\n\nimport androidx.lifecycle.ViewModel\nimport dagger.hilt.android.lifecycle.HiltViewModel\nimp"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/basic_fundamentals/ui/KotlinBasicsDemo.kt",
"chars": 4099,
"preview": "package com.istudio.app.modules.module_demos.basic_fundamentals.ui\n\nimport androidx.compose.foundation.layout.Arrangemen"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/basic_fundamentals/ui/KotlinBasicsDemoVm.kt",
"chars": 9656,
"preview": "package com.istudio.app.modules.module_demos.basic_fundamentals.ui\n\nimport androidx.lifecycle.ViewModel\nimport com.istud"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/basic_fundamentals/utils/Student.kt",
"chars": 125,
"preview": "package com.istudio.app.modules.module_demos.basic_fundamentals.utils\n\ndata class Student(val name : String , val age : "
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/basic_fundamentals/utils/multipleInheritance/in_java/InJava.java",
"chars": 627,
"preview": "package com.istudio.app.modules.module_demos.basic_fundamentals.utils.multipleInheritance.in_java;\n\n\npublic class InJava"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/basic_fundamentals/utils/multipleInheritance/in_kotlin/InKotlin.kt",
"chars": 756,
"preview": "package com.istudio.app.modules.module_demos.basic_fundamentals.utils.multipleInheritance.in_kotlin\n\nclass KotlinImpleme"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/channels/ChannelsDemo.kt",
"chars": 3868,
"preview": "package com.istudio.app.modules.module_demos.channels\n\nimport androidx.compose.foundation.layout.Arrangement\nimport andr"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/channels/ChannelsDemoVm.kt",
"chars": 12027,
"preview": "package com.istudio.app.modules.module_demos.channels\n\nimport android.widget.TextView.BufferType\nimport androidx.lifecyc"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/CoroutinesDemo.kt",
"chars": 3880,
"preview": "package com.istudio.app.modules.module_demos.coroutines\n\nimport androidx.compose.foundation.layout.Arrangement\nimport an"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/CoroutinesDemoVm.kt",
"chars": 4563,
"preview": "package com.istudio.app.modules.module_demos.coroutines\n\nimport android.app.Application\nimport androidx.lifecycle.Androi"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/compare_join_and_async/CompareJoinAsyncDemo.kt",
"chars": 1359,
"preview": "package com.istudio.app.modules.module_demos.coroutines.compare_join_and_async\n\nimport androidx.compose.foundation.layou"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/compare_join_and_async/CompareJoinAsyncDemoVm.kt",
"chars": 2556,
"preview": "package com.istudio.app.modules.module_demos.coroutines.compare_join_and_async\n\nimport androidx.lifecycle.ViewModel\nimpo"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/coroutine_cancellation/CoroutinesCancellationSelection.kt",
"chars": 1691,
"preview": "package com.istudio.app.modules.module_demos.coroutines.coroutine_cancellation\n\nimport androidx.compose.foundation.layou"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/coroutine_cancellation/ensure_active_demo/EnsureActiveDemo.kt",
"chars": 1735,
"preview": "package com.istudio.app.modules.module_demos.coroutines.coroutine_cancellation.ensure_active_demo\n\nimport androidx.compo"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/coroutine_cancellation/ensure_active_demo/EnsureActiveDemoVm.kt",
"chars": 1617,
"preview": "package com.istudio.app.modules.module_demos.coroutines.coroutine_cancellation.ensure_active_demo\n\nimport androidx.lifec"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/coroutine_cancellation/is_active_demo/IsActiveDemo.kt",
"chars": 2079,
"preview": "package com.istudio.app.modules.module_demos.coroutines.coroutine_cancellation.is_active_demo\n\nimport androidx.compose.f"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/coroutine_cancellation/is_active_demo/IsActiveDemoVm.kt",
"chars": 2463,
"preview": "package com.istudio.app.modules.module_demos.coroutines.coroutine_cancellation.is_active_demo\n\nimport androidx.lifecycle"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/coroutine_cancellation/non_cancellable_job/NonCancellableDemo.kt",
"chars": 1739,
"preview": "package com.istudio.app.modules.module_demos.coroutines.coroutine_cancellation.non_cancellable_job\n\nimport androidx.comp"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/coroutine_cancellation/non_cancellable_job/NonCancellableDemoVm.kt",
"chars": 1947,
"preview": "package com.istudio.app.modules.module_demos.coroutines.coroutine_cancellation.non_cancellable_job\n\nimport androidx.life"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/coroutine_cancellation/root_children_cencel_demo/RootChildrenCancelDemo.kt",
"chars": 2850,
"preview": "package com.istudio.app.modules.module_demos.coroutines.coroutine_cancellation.root_children_cencel_demo\n\nimport android"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/coroutine_cancellation/root_children_cencel_demo/RootChildrenCancelDemoVm.kt",
"chars": 1241,
"preview": "package com.istudio.app.modules.module_demos.coroutines.coroutine_cancellation.root_children_cencel_demo\n\nimport android"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/dispatchers/DispatchersDemo.kt",
"chars": 1102,
"preview": "package com.istudio.app.modules.module_demos.coroutines.dispatchers\n\nimport androidx.compose.foundation.layout.Arrangeme"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/dispatchers/DispatchersDemoVm.kt",
"chars": 1688,
"preview": "package com.istudio.app.modules.module_demos.coroutines.dispatchers\n\nimport androidx.lifecycle.ViewModel\nimport androidx"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/exception_handeling/ExceptionHandlingSelectionDemo.kt",
"chars": 1276,
"preview": "package com.istudio.app.modules.module_demos.coroutines.exception_handeling\n\nimport androidx.compose.foundation.layout.A"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/exception_handeling/using_async/UsingAsyncExceptionHandleDemo.kt",
"chars": 1103,
"preview": "package com.istudio.app.modules.module_demos.coroutines.exception_handeling.using_async\n\nimport androidx.compose.foundat"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/exception_handeling/using_async/UsingAsyncExceptionHandleDemoVm.kt",
"chars": 1835,
"preview": "package com.istudio.app.modules.module_demos.coroutines.exception_handeling.using_async\n\nimport androidx.lifecycle.ViewM"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/exception_handeling/using_launch/UsingLaunchExceptionHandleDemo.kt",
"chars": 1573,
"preview": "package com.istudio.app.modules.module_demos.coroutines.exception_handeling.using_launch\n\nimport androidx.compose.founda"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/exception_handeling/using_launch/UsingLaunchExceptionHandleDemoVm.kt",
"chars": 9883,
"preview": "package com.istudio.app.modules.module_demos.coroutines.exception_handeling.using_launch\n\nimport androidx.lifecycle.View"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/job/JobDemoSelection.kt",
"chars": 1187,
"preview": "package com.istudio.app.modules.module_demos.coroutines.job\n\nimport androidx.compose.foundation.layout.Arrangement\nimpor"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/job/JobDemoSelectionVm.kt",
"chars": 5110,
"preview": "package com.istudio.app.modules.module_demos.coroutines.job\n\nimport androidx.lifecycle.ViewModel\nimport androidx.lifecyc"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/launch_and_withcontext/LaunchAndWithContextDemo.kt",
"chars": 1131,
"preview": "package com.istudio.app.modules.module_demos.coroutines.launch_and_withcontext\n\nimport androidx.compose.foundation.layou"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/launch_and_withcontext/LaunchAndWithContextDemoVm.kt",
"chars": 1222,
"preview": "package com.istudio.app.modules.module_demos.coroutines.launch_and_withcontext\n\nimport androidx.lifecycle.ViewModel\nimpo"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/simple_structured_concurrency/SimpleStructuredConcurrencyDemo.kt",
"chars": 2322,
"preview": "package com.istudio.app.modules.module_demos.coroutines.simple_structured_concurrency\n\nimport androidx.compose.foundatio"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/simple_structured_concurrency/SimpleStructuredConcurrencyDemoVm.kt",
"chars": 2851,
"preview": "package com.istudio.app.modules.module_demos.coroutines.simple_structured_concurrency\n\nimport androidx.lifecycle.ViewMod"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/suspend_and_launch_demo/NonCancellableDemoVm.kt",
"chars": 2136,
"preview": "package com.istudio.app.modules.module_demos.coroutines.suspend_and_launch_demo\n\nimport androidx.lifecycle.ViewModel\nimp"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/suspend_and_launch_demo/SuspendAndLaunchDemo.kt",
"chars": 1888,
"preview": "package com.istudio.app.modules.module_demos.coroutines.suspend_and_launch_demo\n\nimport androidx.compose.foundation.back"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/using_async_await/UsingAsyncAwaitDemo.kt",
"chars": 1378,
"preview": "package com.istudio.app.modules.module_demos.coroutines.using_async_await\n\nimport androidx.compose.foundation.layout.Arr"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/using_async_await/UsingAsyncAwaitDemoVm.kt",
"chars": 1189,
"preview": "package com.istudio.app.modules.module_demos.coroutines.using_async_await\n\nimport androidx.lifecycle.ViewModel\nimport ko"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/using_join/UsingJoinDemo.kt",
"chars": 1188,
"preview": "package com.istudio.app.modules.module_demos.coroutines.using_join\n\nimport androidx.compose.foundation.layout.Arrangemen"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/coroutines/using_join/UsingJoinDemoVm.kt",
"chars": 2353,
"preview": "package com.istudio.app.modules.module_demos.coroutines.using_join\n\nimport androidx.lifecycle.ViewModel\nimport kotlinx.c"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/FlowsDemo.kt",
"chars": 2643,
"preview": "package com.istudio.app.modules.module_demos.flows\n\nimport androidx.compose.foundation.layout.Arrangement\nimport android"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/FlowsDemoVm.kt",
"chars": 244,
"preview": "package com.istudio.app.modules.module_demos.flows\n\nimport androidx.lifecycle.ViewModel\nimport dagger.hilt.android.lifec"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/collect_as_state_with_lifecycle/CollectAsStateWithLifeCycleDemo.kt",
"chars": 1719,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.collect_as_state_with_lifecycle\n\nimport androidx.compose.foun"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/collect_as_state_with_lifecycle/CollectAsStateWithLifeCycleVm.kt",
"chars": 1597,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.collect_as_state_with_lifecycle\n\nimport android.content.Conte"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/compose_and_flatten_flows/ComposeAndFlattenFlows.kt",
"chars": 1648,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.compose_and_flatten_flows\n\nimport androidx.compose.foundation"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/compose_and_flatten_flows/ComposeAndFlattenFlowsVm.kt",
"chars": 5110,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.compose_and_flatten_flows\n\nimport android.content.Context\nimp"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/flatten_flows/FlattenFlowsDemo.kt",
"chars": 1419,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.flatten_flows\n\nimport androidx.compose.foundation.layout.Arra"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/flatten_flows/FlattenFlowsDemoVm.kt",
"chars": 2908,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.flatten_flows\n\nimport android.content.Context\nimport androidx"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/flow_basics/chapters/display_data_from_server/DisplayDataFromServerDemo.kt",
"chars": 3691,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.flow_basics.chapters.display_data_from_server\n\nimport android"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/flow_basics/chapters/display_data_from_server/DisplayDataFromServerVm.kt",
"chars": 4037,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.flow_basics.chapters.display_data_from_server\n\nimport android"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/flow_basics/chapters/display_data_from_server/composables/StockItem.kt",
"chars": 2199,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.flow_basics.chapters.display_data_from_server.composables\n\nim"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/flow_basics/data/StockData.kt",
"chars": 444,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.flow_basics.data\n\nimport android.content.Context\nimport com.i"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/flow_basics/data/StockPriceDataSource.kt",
"chars": 634,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.flow_basics.data\n\nimport android.util.Log\nimport com.istudio."
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/flow_basics/data/api/MockApiBehavior.kt",
"chars": 617,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.flow_basics.data.api\n\nimport android.content.Context\nimport c"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/flow_basics/state/UiState.kt",
"chars": 347,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.flow_basics.state\n\nimport com.istudio.app.data.mock.Stock\n\nda"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/flow_basics/ui/FlowBasics.kt",
"chars": 1938,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.flow_basics.ui\n\nimport androidx.compose.foundation.layout.Arr"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/flow_basics/ui/FlowBasicsVm.kt",
"chars": 4513,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.flow_basics.ui\n\nimport android.content.Context\nimport android"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/intermediate_operators/IntermediateOperators.kt",
"chars": 1794,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.intermediate_operators\n\nimport androidx.compose.foundation.la"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/intermediate_operators/IntermediateOperatorsVm.kt",
"chars": 4965,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.intermediate_operators\n\nimport android.content.Context\nimport"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/mutable_state_of_flow/MutableStateOfFlowDemo.kt",
"chars": 1714,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.mutable_state_of_flow\n\nimport androidx.compose.foundation.lay"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/mutable_state_of_flow/MutableStateOfFlowDemoVm.kt",
"chars": 1035,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.mutable_state_of_flow\n\nimport android.content.Context\nimport "
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/state_and_shared_flows/StateAndSharedFlowsDemo.kt",
"chars": 1806,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.state_and_shared_flows\n\nimport androidx.compose.foundation.la"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/state_and_shared_flows/StateAndSharedFlowsDemoVm.kt",
"chars": 2809,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.state_and_shared_flows\n\nimport android.content.Context\nimport"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/terminal_operators/TerminalOperators.kt",
"chars": 1774,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.terminal_operators\n\nimport androidx.compose.foundation.layout"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/flows/modules/terminal_operators/TerminalOperatorsVm.kt",
"chars": 3460,
"preview": "package com.istudio.app.modules.module_demos.flows.modules.terminal_operators\n\nimport android.content.Context\nimport and"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/higher_order_functions/ui/HigherOrderFunctionDemo.kt",
"chars": 1758,
"preview": "package com.istudio.app.modules.module_demos.higher_order_functions.ui\n\nimport androidx.compose.foundation.layout.Arrang"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/higher_order_functions/ui/HigherOrderFunctionDemoVm.kt",
"chars": 1596,
"preview": "package com.istudio.app.modules.module_demos.higher_order_functions.ui\n\nimport androidx.lifecycle.ViewModel\nimport javax"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/ui/KotlinAnnotationsDemoVm.kt",
"chars": 2334,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.ui\n\nimport androidx.lifecycle.ViewModel\nimport com.istud"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/ui/kotlinAnnotationsDemo.kt",
"chars": 1867,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.ui\n\nimport androidx.compose.foundation.layout.Arrangemen"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmField/JavaPerson.java",
"chars": 506,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.jvmField;\n\npublic class JavaPerson {\n private S"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmField/KotlinPerson.kt",
"chars": 148,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.jvmField\n\ndata class KotlinPerson(@JvmField val na"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmField/init/JavaInstanceJf.java",
"chars": 489,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.jvmField.init;\n\nimport com.istudio.app.modules.mod"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmField/init/KotlinInstanceJf.kt",
"chars": 329,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.jvmField.init\n\nimport com.istudio.app.modules.modu"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmOverloads/Student1.kt",
"chars": 142,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.jvmOverloads\n\ndata class Student1(val name: String"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmOverloads/Student2.kt",
"chars": 168,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.jvmOverloads\n\ndata class Student2 @JvmOverloads co"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmOverloads/init/JavaInstanceJo.java",
"chars": 522,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.jvmOverloads.init;\n\nimport com.istudio.app.modules"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmOverloads/init/KotlinInstanceJo.kt",
"chars": 501,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.jvmOverloads.init\n\nimport com.istudio.app.modules."
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmstatic/Cinema.kt",
"chars": 212,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.jvmstatic\n\nobject Cinema {\n fun getActorName():"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmstatic/init/JavaInstanceJs.java",
"chars": 426,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.jvmstatic.init;\n\nimport com.istudio.app.modules.mo"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/jvmstatic/init/KotlinInstanceJs.kt",
"chars": 309,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.jvmstatic.init\n\nimport com.istudio.app.modules.mod"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/nullableAndNotNull/SuperHero.java",
"chars": 380,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.nullableAndNotNull;\n\nimport org.jetbrains.annotati"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/stringDef/UserManager.kt",
"chars": 546,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.stringDef\n\nimport android.util.Log\n\nclass UserMana"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/stringDef/UserStatus.kt",
"chars": 359,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.stringDef\n\nimport androidx.annotation.StringDef\n\no"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/stringRes/HomeNavItem.kt",
"chars": 1472,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.stringRes\n\nimport androidx.annotation.StringRes\nim"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/stringRes/init/JavaInstanceSr.java",
"chars": 323,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.stringRes.init;\n\nimport com.istudio.app.modules.mo"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/kotlin_annotations/utils/stringRes/init/KotlinInstanceSr.kt",
"chars": 281,
"preview": "package com.istudio.app.modules.module_demos.kotlin_annotations.utils.stringRes.init\n\nimport com.istudio.app.modules.mod"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/nested_vs_inner/ui/NestedVsInner.kt",
"chars": 1239,
"preview": "package com.istudio.app.modules.module_demos.nested_vs_inner.ui\n\nimport androidx.compose.foundation.layout.Arrangement\ni"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/nested_vs_inner/ui/NestedVsInnerVm.kt",
"chars": 669,
"preview": "package com.istudio.app.modules.module_demos.nested_vs_inner.ui\n\nimport androidx.lifecycle.ViewModel\nimport com.istudio."
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/nested_vs_inner/utils/OuterClass.kt",
"chars": 747,
"preview": "package com.istudio.app.modules.module_demos.nested_vs_inner.utils\n\nclass OuterClass {\n\n val outerClassMember = \"oute"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/sealed_class/ui/SealedClassDemo.kt",
"chars": 2190,
"preview": "package com.istudio.app.modules.module_demos.sealed_class.ui\n\nimport androidx.compose.foundation.layout.Arrangement\nimpo"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/sealed_class/ui/SealedClassDemoVm.kt",
"chars": 1445,
"preview": "package com.istudio.app.modules.module_demos.sealed_class.ui\n\nimport androidx.lifecycle.ViewModel\nimport com.istudio.app"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/sealed_class/utils/Student/Student.kt",
"chars": 151,
"preview": "package com.istudio.app.modules.module_demos.sealed_class.utils.Student\n\nsealed class Student {\n object Mahesh\n ob"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/sealed_class/utils/animals/Animal.kt",
"chars": 796,
"preview": "package com.istudio.app.modules.module_demos.sealed_class.utils.animals\n\nsealed class Animal {\n\n // using companion o"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/sealed_class/utils/animals/Monkey.kt",
"chars": 125,
"preview": "package com.istudio.app.modules.module_demos.sealed_class.utils.animals\n\nsealed class Monkey : Animal() {\n init {\n\n "
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/sealed_class/utils/animals/Tiger.kt",
"chars": 189,
"preview": "package com.istudio.app.modules.module_demos.sealed_class.utils.animals\n\nimport android.util.Log\n\nclass Tiger : Animal()"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/sealed_class/utils/payment/Payment.kt",
"chars": 317,
"preview": "package com.istudio.app.modules.module_demos.sealed_class.utils.payment\n\nsealed class Payment {\n data class CashPayme"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/sealed_class/utils/superHero/Hero.kt",
"chars": 195,
"preview": "package com.istudio.app.modules.module_demos.sealed_class.utils.superHero\n\nclass Hero(override val comicCompany: String)"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/sealed_class/utils/superHero/Payment.kt",
"chars": 429,
"preview": "package com.istudio.app.modules.module_demos.sealed_class.utils.superHero\n\nsealed class SuperHero {\n abstract val com"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/type_alias/ui/TypeAlias.kt",
"chars": 1086,
"preview": "package com.istudio.app.modules.module_demos.type_alias.ui\n\nimport androidx.compose.foundation.layout.Arrangement\nimport"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/type_alias/ui/TypeAliasVm.kt",
"chars": 697,
"preview": "package com.istudio.app.modules.module_demos.type_alias.ui\n\nimport androidx.lifecycle.ViewModel\nimport com.istudio.app.m"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_demos/type_alias/utils/TypeAliasReferences.kt",
"chars": 91,
"preview": "package com.istudio.app.modules.module_demos.type_alias.utils\n\ntypealias AuthToken = String"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_exercises/ExerciseSelection.kt",
"chars": 1212,
"preview": "package com.istudio.app.modules.module_exercises\n\nimport androidx.compose.foundation.layout.Arrangement\nimport androidx."
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_exercises/exercise_1/Exercise1.kt",
"chars": 3223,
"preview": "package com.istudio.app.modules.module_exercises.exercise_1\n\nimport android.util.Log\nimport androidx.compose.foundation."
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_exercises/exercise_1/Exercise1vm.kt",
"chars": 210,
"preview": "package com.istudio.app.modules.module_exercises.exercise_1\n\nimport androidx.lifecycle.ViewModel\nimport javax.inject.Inj"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_exercises/exercise_2/Exercise2.kt",
"chars": 2009,
"preview": "package com.istudio.app.modules.module_exercises.exercise_2\n\nimport android.util.Log\nimport androidx.compose.foundation."
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_exercises/exercise_2/Exercise2vm.kt",
"chars": 2055,
"preview": "package com.istudio.app.modules.module_exercises.exercise_2\n\nimport androidx.lifecycle.ViewModel\nimport androidx.lifecyc"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_selection/ModuleDemo.kt",
"chars": 2839,
"preview": "package com.istudio.app.modules.module_selection\nsealed class ModuleDemo(val rout: String) {\n\n data object DemoSelect"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/modules/module_selection/ModuleSelectionScreen.kt",
"chars": 2703,
"preview": "package com.istudio.app.modules.module_selection\n\nimport androidx.compose.foundation.layout.Arrangement\nimport androidx."
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/ui/composables/Buttons.kt",
"chars": 1802,
"preview": "package com.istudio.app.ui.composables\n\nimport androidx.compose.foundation.background\nimport androidx.compose.foundation"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/ui/composables/Text.kt",
"chars": 432,
"preview": "package com.istudio.app.ui.composables\n\nimport androidx.compose.foundation.layout.fillMaxWidth\nimport androidx.compose.m"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/ui/theme/Color.kt",
"chars": 279,
"preview": "package com.istudio.app.ui.theme\n\nimport androidx.compose.ui.graphics.Color\n\nval Purple80 = Color(0xFFD0BCFF)\nval Purple"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/ui/theme/Shape.kt",
"chars": 307,
"preview": "package com.istudio.app.ui.theme\n\nimport androidx.compose.foundation.shape.RoundedCornerShape\nimport androidx.compose.ma"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/ui/theme/Theme.kt",
"chars": 2191,
"preview": "package com.istudio.app.ui.theme\n\nimport android.app.Activity\nimport android.os.Build\nimport androidx.compose.foundation"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/ui/theme/Type.kt",
"chars": 3697,
"preview": "package com.istudio.app.ui.theme\n\nimport androidx.compose.material3.Typography\nimport androidx.compose.ui.text.TextStyle"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/utils/base/BaseViewModel.kt",
"chars": 303,
"preview": "package com.istudio.app.utils.base\n\nimport androidx.lifecycle.LiveData\nimport androidx.lifecycle.MutableLiveData\nimport "
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/utils/endpoints/EndPointSimulation.kt",
"chars": 438,
"preview": "package com.istudio.app.utils.endpoints\n\nimport com.istudio.app.utils.log.ThreadInfoLogger\nimport kotlin.random.Random\n\n"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/utils/extensions/Activity.kt",
"chars": 600,
"preview": "package com.istudio.app.utils.extensions\n\nimport android.content.Context\nimport android.content.Intent\nimport android.os"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/utils/extensions/Coroutine.kt",
"chars": 522,
"preview": "package com.istudio.app.utils.extensions\n\nimport kotlinx.coroutines.CoroutineName\nimport kotlinx.coroutines.CoroutineSco"
},
{
"path": "application/KotlinConcepts/app/src/main/java/com/istudio/app/utils/log/ThreadInfoLogger.kt",
"chars": 301,
"preview": "package com.istudio.app.utils.log\n\nimport android.util.Log\n\nobject ThreadInfoLogger {\n\n private const val TAG = \"Thre"
},
{
"path": "application/KotlinConcepts/app/src/main/res/drawable/ic_launcher_background.xml",
"chars": 5606,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n android:wi"
},
{
"path": "application/KotlinConcepts/app/src/main/res/drawable/ic_launcher_foreground.xml",
"chars": 1702,
"preview": "<vector xmlns:android=\"http://schemas.android.com/apk/res/android\"\n xmlns:aapt=\"http://schemas.android.com/aapt\"\n "
},
{
"path": "application/KotlinConcepts/app/src/main/res/values/colors.xml",
"chars": 378,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n <color name=\"purple_200\">#FFBB86FC</color>\n <color name=\"purpl"
},
{
"path": "application/KotlinConcepts/app/src/main/res/values/strings.xml",
"chars": 225,
"preview": "<resources>\n <string name=\"app_name\">KotlinConcepts</string>\n <string name=\"app_books\">Books</string>\n <string "
},
{
"path": "application/KotlinConcepts/app/src/main/res/values/themes.xml",
"chars": 156,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<resources>\n\n <style name=\"Theme.KotlinConcepts\" parent=\"android:Theme.Materia"
},
{
"path": "application/KotlinConcepts/app/src/main/res/xml/backup_rules.xml",
"chars": 478,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?><!--\n Sample backup rules file; uncomment and customize as necessary.\n See htt"
},
{
"path": "application/KotlinConcepts/app/src/main/res/xml/data_extraction_rules.xml",
"chars": 551,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?><!--\n Sample data extraction rules file; uncomment and customize as necessary.\n "
},
{
"path": "application/KotlinConcepts/app/src/test/java/com/istudio/app/ExampleUnitTest.kt",
"chars": 339,
"preview": "package com.istudio.app\n\nimport org.junit.Test\n\nimport org.junit.Assert.*\n\n/**\n * Example local unit test, which will ex"
},
{
"path": "application/KotlinConcepts/build.gradle.kts",
"chars": 372,
"preview": "// Top-level build file where you can add configuration options common to all sub-projects/modules.\nplugins {\n id(\"co"
},
{
"path": "application/KotlinConcepts/gradle/wrapper/gradle-wrapper.properties",
"chars": 230,
"preview": "#Thu Dec 21 10:35:24 IST 2023\ndistributionBase=GRADLE_USER_HOME\ndistributionPath=wrapper/dists\ndistributionUrl=https\\://"
},
{
"path": "application/KotlinConcepts/gradle.properties",
"chars": 1358,
"preview": "# Project-wide Gradle settings.\n# IDE (e.g. Android Studio) users:\n# Gradle settings configured through the IDE *will ov"
},
{
"path": "application/KotlinConcepts/gradlew",
"chars": 5766,
"preview": "#!/usr/bin/env sh\n\n#\n# Copyright 2015 the original author or authors.\n#\n# Licensed under the Apache License, Version 2.0"
},
{
"path": "application/KotlinConcepts/gradlew.bat",
"chars": 2763,
"preview": "@rem\r\n@rem Copyright 2015 the original author or authors.\r\n@rem\r\n@rem Licensed under the Apache License, Version 2.0 (th"
},
{
"path": "application/KotlinConcepts/settings.gradle.kts",
"chars": 332,
"preview": "pluginManagement {\n repositories {\n google()\n mavenCentral()\n gradlePluginPortal()\n }\n}\ndepen"
},
{
"path": "application/Sample-Coroutines/.idea/.name",
"chars": 14,
"preview": "My Application"
},
{
"path": "application/Sample-Coroutines/.idea/compiler.xml",
"chars": 169,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"CompilerConfiguration\">\n <bytecodeTar"
},
{
"path": "application/Sample-Coroutines/.idea/deploymentTargetDropDown.xml",
"chars": 214,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"deploymentTargetDropDown\">\n <value>\n "
},
{
"path": "application/Sample-Coroutines/.idea/deploymentTargetSelector.xml",
"chars": 301,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"deploymentTargetSelector\">\n <selectio"
},
{
"path": "application/Sample-Coroutines/.idea/gradle.xml",
"chars": 750,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"GradleMigrationSettings\" migrationVersio"
},
{
"path": "application/Sample-Coroutines/.idea/kotlinc.xml",
"chars": 176,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"KotlinJpsPluginSettings\">\n <option na"
},
{
"path": "application/Sample-Coroutines/.idea/material_theme_project_new.xml",
"chars": 311,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"MaterialThemeProjectNewConfig\">\n <opt"
},
{
"path": "application/Sample-Coroutines/.idea/migrations.xml",
"chars": 254,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"ProjectMigrations\">\n <option name=\"Mi"
},
{
"path": "application/Sample-Coroutines/.idea/misc.xml",
"chars": 409,
"preview": "<project version=\"4\">\n <component name=\"ExternalStorageConfigurationManager\" enabled=\"true\" />\n <component name=\"Proje"
},
{
"path": "application/Sample-Coroutines/.idea/modules.xml",
"chars": 286,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"ProjectModuleManager\">\n <modules>\n "
},
{
"path": "application/Sample-Coroutines/.idea/other.xml",
"chars": 12501,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"direct_access_persist.xml\">\n <option "
},
{
"path": "application/Sample-Coroutines/.idea/workspace.xml",
"chars": 7030,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project version=\"4\">\n <component name=\"AutoImportSettings\">\n <option name=\"a"
},
{
"path": "application/Sample-Coroutines/README.md",
"chars": 761,
"preview": "# DroidCoroutinesUsecases\n\n\n"
},
{
"path": "application/Sample-Coroutines/app/.gitignore",
"chars": 7,
"preview": "/build\n"
},
{
"path": "application/Sample-Coroutines/app/build.gradle",
"chars": 3419,
"preview": "apply plugin: 'com.android.application'\napply plugin: 'kotlin-android'\napply plugin: 'kotlin-android-extensions'\napply p"
},
{
"path": "application/Sample-Coroutines/app/proguard-rules.pro",
"chars": 751,
"preview": "# Add project specific ProGuard rules here.\n# You can control the set of applied configuration files using the\n# proguar"
},
{
"path": "application/Sample-Coroutines/app/src/androidTest/java/com/demo/code/ExampleInstrumentedTest.kt",
"chars": 693,
"preview": "package com.demo.code\n\nimport androidx.test.ext.junit.runners.AndroidJUnit4\nimport androidx.test.platform.app.Instrument"
},
{
"path": "application/Sample-Coroutines/app/src/main/AndroidManifest.xml",
"chars": 5139,
"preview": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\"\n package="
},
{
"path": "application/Sample-Coroutines/app/src/main/java/com/demo/code/CoroutineUsecasesOnAndroidApplication.kt",
"chars": 1083,
"preview": "package com.demo.code\n\nimport android.app.Application\nimport com.demo.code.usecases.coroutines.usecase14.AndroidVersionD"
},
{
"path": "application/Sample-Coroutines/app/src/main/java/com/demo/code/activities/JobsActivity.kt",
"chars": 3152,
"preview": "package com.demo.code.activities\n\nimport android.os.Bundle\nimport com.demo.code.base.BaseActivity\nimport com.demo.code.d"
},
{
"path": "application/Sample-Coroutines/app/src/main/java/com/demo/code/activities/MainActivity.kt",
"chars": 1797,
"preview": "package com.demo.code.activities\n\nimport android.os.Bundle\nimport androidx.core.content.ContextCompat\nimport androidx.re"
},
{
"path": "application/Sample-Coroutines/app/src/main/java/com/demo/code/activities/SelectionActivity.kt",
"chars": 1389,
"preview": "package com.demo.code.activities\n\nimport android.content.Intent\nimport android.os.Bundle\nimport com.demo.code.base.BaseA"
},
{
"path": "application/Sample-Coroutines/app/src/main/java/com/demo/code/activities/SuspendingFuncActivity.kt",
"chars": 1252,
"preview": "package com.demo.code.activities\n\nimport android.os.Bundle\nimport androidx.lifecycle.lifecycleScope\nimport com.demo.code"
},
{
"path": "application/Sample-Coroutines/app/src/main/java/com/demo/code/base/BaseActivity.kt",
"chars": 791,
"preview": "package com.demo.code.base\n\nimport android.widget.ImageView\nimport android.widget.TextView\nimport androidx.appcompat.app"
}
]
// ... and 221 more files (download for full content)
About this extraction
This page contains the full source code of the devrath/KotlinAlchemy GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 421 files (1.0 MB), approximately 327.7k tokens, and a symbol index with 27 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.