better variables and documentation