bar implemented