Analyzing Behavior of Functions