added lazy evaluation for action objects