extract method accepts Exp