Нет доступа к дебагеру сейчас, но нужно понять в чем ошибка в коде

ios
xcode
swift

#1
class Item {
	var itemId: Int
	var name: String
	var price: Float
}

class Order {

	var items: [Item] = []
	var deleteBlock: (()->(Void))?
	var timer: Timer?

	/// сумма заказа
	var total: Float {
		var total = Float(exactly: 0)!
		var i = 0
		while i < items.count {
			var item = items[i]
			total += item.price
			i += 1
		}
		return total
	}
	
	///  Добавить товар к заказу
	func put(item: Item) {
		items.append(item)
	}

	/// Посчитать заказ и подготовить к отправке
	func make() -> [[String: Int]] {
		var data: [[String: Int]] = []
		for item in items {
			var newRow: [String: Int] = ["id": item.itemId, "count": 1]
			var needNewRow = true
			for var row in data {
				if item.itemId == row["id"]! {
					row["count"] = row["count"]! + 1
					needNewRow = false
				}
			}
			if needNewRow {
				data.append(newRow)
			}
		}
		return data
	}

	/// удалить товары из заказа через 20 секунд
	func deleteAfter20Seconds(block: (()->(Void))?) {
		self.deleteBlock = block
		self.timer = Timer.scheduledTimer(withTimeInterval: 20, repeats: false, block: { (timer) in
			self.delete()
		})
	}
	
	/// отменить удаление товаров
	func cancelDelete() {
		self.timer = nil
	}

	///очистка товаров
	func delete() {
		items = []
		deleteBlock?()
	}
}

#2

Какая ошибка предлагается угадать?