1@startuml 2 3title lease states (Kea 1.8.0) 4 5agent "Free" as free 6note left : not in the lease database 7 8agent "Assigned" as assigned 9 10agent "Assigned expired" as assigned_expired 11 12agent "Declined" as declined 13 14agent "Declined expired" as declined_expired 15 16agent "Expired-Reclaimed" as reclaimed 17 18free ---> assigned : assignment 19 20assigned -> assigned_expired : after valid lifetime 21assigned -> assigned : renew query 22assigned ---> declined : decline query 23assigned -up-> free : release query 24 25declined --> declined_expired : after probation period 26 27assigned_expired -up-> assigned : reuse 28declined_expired -up-> assigned : reuse 29 30assigned_expired ---> reclaimed : reclaim 31declined_expired ---> free : remove 32 33reclaimed -up-> assigned : reuse 34reclaimed -up--> free : remove 35 36declined_expired -[hidden]-> reclaimed 37 38@enduml 39