updated with graphics