added solution object instead of generate function