package net.aiterp.git.ykonsole2.domain.models import net.aiterp.git.ykonsole2.domain.runtime.* fun MutableMap>.tryMilestone(event: ValuesReceived): MilestoneReached? = tryMilestone(event.values) fun List.makeMilestoneReachedEvents(): List { val cache = mutableMapOf>() return mapNotNull { cache.tryMilestone(it) } } private fun MutableMap>.tryMilestone(state: WorkoutState): MilestoneReached? = tryMilestone(state.asValueList()) private fun MutableMap>.tryMilestone(newValues: List): MilestoneReached? { val time = newValues.find