elev runs, with sume bugs. needs testing