eval done
working version