more validtion/optimization..