latest challenge: shuffle puzzle