working on integer overflow solution