added class to avoid users having to define generic classes.