factory Message.parse(List<String> rowMessage) { if (rowMessage.isEmpty) throw ArgumentError.value(rowMessage); return Message(command: rowMessage.first, params: rowMessage.sublist(1)); }