all features implemented and style passing