various code changes