problem explanation