updated with code style guidelines