what does == 3 in the while loop do
int main(int argc, char** argv) {
    if (!(argc == 2 || argc == 3)) {
        fprintf(stderr, "USAGE: count_large size [permissions]\n");
        return 1;
    }

    // TODO: Process command line arguments.
    if (argc == 2) {
        int total = 0;
        char dir;
        char perms[10];
        int size;
        int param1 = strtol(argv[1], NULL, 10);
        while (scanf("%c%10s %*d %*s %*s %d %*s %*d %*s %*s\n", &dir, perms, &size) == 3) {
            if (size > param1) {
                total += 1;
            }
        }
        printf("%d\n", total);
    }
    return 0;
}
