solved 28-31