pass functionality