using boxed Long and refactor name