elaborate; minor changes