List<T> dynamicSublist([int start = 0, int? end]) { return sublist(start, end == null ? length : (end < 0 ? length - end : end)); }