Does this class need to be public? Looks to me like it'd better be package private