use long values instead of ints