version 1 solution