abstractions/states library