internal static IAsyncResult BeginOuterExecute(System.Runtime.DurableInstancing.InstanceHandle initialInstanceHandle, InstancePersistenceCommand command, System.Transactions.Transaction transaction, TimeSpan timeout, AsyncCallback callback, object state)
 {
     IAsyncResult result;
     try
     {
         result = new ExecuteAsyncResult(initialInstanceHandle, command, transaction, timeout, callback, state);
     }
     catch (TimeoutException)
     {
         initialInstanceHandle.Free();
         throw;
     }
     catch (OperationCanceledException)
     {
         initialInstanceHandle.Free();
         throw;
     }
     return result;
 }
 internal static System.Runtime.DurableInstancing.InstanceView OuterExecute(System.Runtime.DurableInstancing.InstanceHandle initialInstanceHandle, InstancePersistenceCommand command, System.Transactions.Transaction transaction, TimeSpan timeout)
 {
     System.Runtime.DurableInstancing.InstanceView view;
     try
     {
         view = ExecuteAsyncResult.End(new ExecuteAsyncResult(initialInstanceHandle, command, transaction, timeout));
     }
     catch (TimeoutException)
     {
         initialInstanceHandle.Free();
         throw;
     }
     catch (OperationCanceledException)
     {
         initialInstanceHandle.Free();
         throw;
     }
     return view;
 }