reworked and cut down version for talk