10UMLClass2042012060User -- id: int username: StringUMLClass290420150120Task -- id: int title: String description: String estimatedTime: Duration actualTime: Duration completed: booleanRelation13042018040lt=<- < createdBy10;20;160;20Relation13045018040lt=<- < assignedTo10;20;160;20UMLClass30011090TextUI -- -- -createNewTask() -updateTask() -createNewUser() +start()UMLClass230032090<<interface>> TaskManager -- -- createNewTask(title: String, description: String): Task findById(id: int): Task updateTask(task: Task) UMLClass017021070<<interface>> UserManager -- -- createNewUser(username: String)Relation1301012030lt=<-100;10;10;10Relation808030110lt=<-10;90;10;10UMLClass23019031090InMemoryTaskManager -- -- createNewTask(title: String, description: String): Task findById(id: int): Task updateTask(task: Task) Relation3508030130lt=<<.10;10;10;110Relation36027030170lt=<<<<- m2=*10;10;10;150UMLClass032021050DBUserManager -- -- createNewUser(username: String)Relation7023030110lt=<<.10;10;10;90