public static LocalDateTime parseLocalDateTime19(byte[] str, int off) {
        if (off + 19 > str.length) {
            return null;
        }

        byte c1 = str[off + 1];
        byte c2 = str[off + 2];
        byte c3 = str[off + 3];
        byte c4 = str[off + 4];
        byte c5 = str[off + 5];
        byte c7 = str[off + 7];
        byte c10 = str[off + 10];

        int year, month, dom;
        if (((c4 == '-' && c7 == '-') || (c4 == '/' && c7 == '/'))
                && (c10 == ' ' || c10 == 'T')) {
            year = digit4(str, off);
            month = digit2(str, off + 5);
            dom = digit2(str, off + 8);
        } else if (c2 == '/' && c5 == '/' && (c10 == ' ' || c10 == 'T')) {
            dom = digit2(str, off);
            month = digit2(str, off + 3);
            year = digit4(str, off + 6);
        } else if (c1 == ' ' && c5 == ' ' && c10 == ' ') {
            dom = digit1(str, off);
            month = DateUtils.month(c2, c3, c4);
            year = digit4(str, off + 6);
        } else {
            return null;
        }

        long hms = hms(str, off + 11);
        if ((year | month | dom | hms) <= 0) {
            return null;
        }

        int hour = (int) hms & 0xFF;
        int minute = (int) (hms >> 24) & 0xFF;
        int second = (int) (hms >> 48) & 0xFF;

        return LocalDateTime.of(year, month, dom, hour, minute, second);
    }
yyyy-MM-ddTHH:mm:ss
yyyy-MM-dd HH:mm:ss
yyyy/MM/ddTHH:mm:ss
yyyy/MM/dd HH:mm:ss
core/src/main/java/com/alibaba/fastjson2/util/DateUtils.java