use derived variables where possible...