reworked the required variables story to provide better error messages