Category: typestate-pattern