Extend function implementation