worked harder naming class, solved some wildcard issues