requirements fleshed out better