using a different functionality type