chain; flatten revisited; "of"