capture functionality