adapt to at-rule