Return new static for better extendability.