improve look and workings