Updated with ARGS, product checks, event generation w/error codes