buttons and extends
merged