changed name collision mechanism to use ordinal numbers
merged patch solving name collisions