ADD strict invoke functoin