some additions and deletions