@startuml actor User participant View participant Presenter database UnitDatabase participant ExpressionParser participant Unit User -> View : Set input & output expressions View -> Presenter : Call convertExpressions() View <-- Presenter : Get user input Presenter -> UnitDatabase : Send raw user input UnitDatabase -> ExpressionParser : Send inputted expressions UnitDatabase <-- ExpressionParser : Return parsed expressions Presenter <-- UnitDatabase : Return unit/value objects Presenter -> Unit : Convert provided units Presenter <-- Unit : Return converted value View <-- Presenter : Return converted units User <-- View : Show conversion output @enduml