wrapped up version 1, starting version 2