cleanup
fix if
working code