Fleshed out requirements a bit