nice comment - followed up on it using the nonexported type here, will look for other uses of this small pattern