@startuml
[*] --> SpamAssassin

SpamAssassin --> Spam: fail
SpamAssassin --> Unread: pass

Unread --> Spam: user reads email and marks it as spam
Unread --> Read: user reads email and leaves it in Inbox
Unread --> Trash: user reads email and deletes it

Spam --> Read: user marks email as not spam

SpamAssassin: Filters incoming email.
Spam: Various spam folders,\ndefinitely spam.
Trash: Deleted mail,\ncan be anything.
Unread: Unread mail in Inbox,\ncan be anything.
Read: Read mail in Inbox,\ndefinitely ham.
@enduml