require different solutions