addition functionality and some styling