solutions version 1