initial work on shared outcome condition logic, reversioned