Why did you choose three functions here? Would a tuple return value be a better fit?