#include <stdio.h>

long s(long param1, char *str, long *ptr) {
    return 2;
}

long otherFunc(long x) {
    return x + 2;
}

long func(long num) {
    return otherFunc(num) + num;
}

long foo(long arr[], long i, char *str) {
    long val = arr[i];
    long result = s(val, str, arr + 2);
    return result + i;
}

int main(int argc, char *argv[]) {
    long nums[] = {4, 5, 6};
    long result = foo(nums, 0, "Hello");
    printf("result = %ld\n", result);
    return 0;
}
