upgrade 2.0, supports extends, section, yield