cleaned up shadowing and name conflicts.