int? readInt(final String? s) { if (s == null) return null; final int? v = int.tryParse(s.trim()); if (v == null) { throw XmlDeserializationException('Invalid int value "$s"'); } return v; }