add extend()