implements settings feature