implementing functions in the extension