@startuml
!include style.puml

box Logic LOGIC_COLOR_T1
participant ":LogicManager" as LogicManager LOGIC_COLOR
participant ":AddressBookParser" as AddressBookParser LOGIC_COLOR
participant ":DeleteClientCommandParser" as DeleteClientCommandParser LOGIC_COLOR
participant "d:DeleteClientCommand" as DeleteClientCommand LOGIC_COLOR
participant ":CommandResult" as CommandResult LOGIC_COLOR
end box

box Model MODEL_COLOR_T1
participant ":Model" as Model MODEL_COLOR
end box

[-> LogicManager : execute("deleteClient 1")
activate LogicManager

LogicManager -> AddressBookParser : parseCommand("deleteClient 1")
activate AddressBookParser

create DeleteClientCommandParser
AddressBookParser -> DeleteClientCommandParser
activate DeleteClientCommandParser

DeleteClientCommandParser --> AddressBookParser
deactivate DeleteClientCommandParser

AddressBookParser -> DeleteClientCommandParser : parse("1")
activate DeleteClientCommandParser

create DeleteClientCommand
DeleteClientCommandParser -> DeleteClientCommand
activate DeleteClientCommand

DeleteClientCommand --> DeleteClientCommandParser : d
deactivate DeleteClientCommand

DeleteClientCommandParser --> AddressBookParser : d
deactivate DeleteClientCommandParser
'Hidden arrow to position the destroy marker below the end of the activation bar.
DeleteClientCommandParser -[hidden]-> AddressBookParser
destroy DeleteClientCommandParser

AddressBookParser --> LogicManager : d
deactivate AddressBookParser

LogicManager -> DeleteClientCommand : execute()
activate DeleteClientCommand

DeleteClientCommand -> Model : deleteClient(1)
activate Model

Model --> DeleteClientCommand
deactivate Model

create CommandResult
DeleteClientCommand -> CommandResult
activate CommandResult

CommandResult --> DeleteClientCommand
deactivate CommandResult

DeleteClientCommand --> LogicManager : result
deactivate DeleteClientCommand
'Hidden arrow to position the destroy marker below the end of the activation bar.
DeleteClientCommand -[hidden]-> DeleteClientCommandParser
destroy DeleteClientCommand

[<--LogicManager
deactivate LogicManager
@enduml
