@@ -0,0 +1,1711 @@
+package seedu.address.logic.commands;%0A%0Aimport seedu.address.commons.core.Messages;%0Aimport seedu.address.commons.core.UnmodifiableObservableList;%0Aimport seedu.address.model.item.ReadOnlyItem;%0Aimport seedu.address.model.item.UniquePersonList.PersonNotFoundException;%0A%0A/**%0A * Edits an item identified using it's last displayed index from the task manager.%0A */%0Apublic class EditCommand extends Command %7B%0A%0A    public static final String COMMAND_WORD = %22edit%22;%0A%0A    public static final String MESSAGE_USAGE = COMMAND_WORD%0A            + %22: Edits the item identified by the index number used in the last item listing.%5Cn%22%0A            + %22Parameters: INDEX (must be a positive integer)%5Cn%22%0A            + %22Example: %22 + COMMAND_WORD + %22 1%22;%0A%0A    public static final String MESSAGE_EDIT_ITEM_SUCCESS = %22Edited Item: %251$s%22;%0A%0A    public final int targetIndex;%0A%0A    /*%0A     * Deletes deadline, task, or event by index.%0A     */%0A    public EditCommand(int targetIndex) %7B%0A        this.targetIndex = targetIndex;%0A    %7D%0A%0A    @Override%0A    public CommandResult execute() %7B%0A%0A        UnmodifiableObservableList%3CReadOnlyItem%3E lastShownList = model.getFilteredPersonList();%0A%0A        if (lastShownList.size() %3C targetIndex) %7B%0A            indicateAttemptToExecuteIncorrectCommand();%0A            return new CommandResult(Messages.MESSAGE_INVALID_PERSON_DISPLAYED_INDEX);%0A        %7D%0A%0A        ReadOnlyItem personToDelete = lastShownList.get(targetIndex - 1);%0A%0A        try %7B%0A            model.deleteItem(personToDelete);%0A        %7D catch (PersonNotFoundException pnfe) %7B%0A            assert false : %22The target item cannot be missing%22;%0A        %7D%0A%0A        return new CommandResult(String.format(MESSAGE_EDIT_ITEM_SUCCESS, personToDelete));%0A    %7D%0A%0A%7D%0A

Create EditCommand class