add extend method system