implemented barkeep