a lot of changes: some real stuff