Offset 72, 15 lines modifiedOffset 72, 15 lines modified
  
72 ····const/4·v1,·0x072 ····const/4·v1,·0x0
  
73 ····.line·673 ····.line·6
74 ····:try_start_174 ····:try_start_1
75 ····new-instance·v2,·Lcom/google/common/util/concurrent/AbstractFuture$UnsafeAtomicHelper;75 ····new-instance·v2,·Lcom/google/common/util/concurrent/AbstractFuture$UnsafeAtomicHelper;
  
76 ····invoke-direct·{v2,·v1},·Lcom/google/common/util/concurrent/AbstractFuture$UnsafeAtomicHelper;-><init>(Lcom/google/common/util/concurrent/Uninterruptibles;)V76 ····invoke-direct·{v2,·v1},·Lcom/google/common/util/concurrent/AbstractFuture$UnsafeAtomicHelper;-><init>(Lcom/google/common/util/concurrent/Futures;)V
77 ····:try_end_177 ····:try_end_1
78 ····.catchall·{:try_start_1·..·:try_end_1}·:catchall_078 ····.catchall·{:try_start_1·..·:try_end_1}·:catchall_0
  
79 ····move-object·v3,·v279 ····move-object·v3,·v2
  
80 ····move-object·v2,·v180 ····move-object·v2,·v1
  
Offset 152, 15 lines modifiedOffset 152, 15 lines modified
  
152 ····:catchall_1152 ····:catchall_1
153 ····move-exception·v0153 ····move-exception·v0
  
154 ····.line·13154 ····.line·13
155 ····new-instance·v3,·Lcom/google/common/util/concurrent/AbstractFuture$SynchronizedHelper;155 ····new-instance·v3,·Lcom/google/common/util/concurrent/AbstractFuture$SynchronizedHelper;
  
156 ····invoke-direct·{v3,·v1},·Lcom/google/common/util/concurrent/AbstractFuture$SynchronizedHelper;-><init>(Lcom/google/common/util/concurrent/Uninterruptibles;)V156 ····invoke-direct·{v3,·v1},·Lcom/google/common/util/concurrent/AbstractFuture$SynchronizedHelper;-><init>(Lcom/google/common/util/concurrent/Futures;)V
  
157 ····move-object·v1,·v0157 ····move-object·v1,·v0
  
158 ····.line·14158 ····.line·14
159 ····:goto_1159 ····:goto_1
160 ····sput-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;160 ····sput-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;
  
Offset 235, 34 lines modifiedOffset 235, 14 lines modified
  
235 ····.line·1235 ····.line·1
236 ····iput-object·p1,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;236 ····iput-object·p1,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;
  
237 ····return-object·p1237 ····return-object·p1
238 .end·method238 .end·method
  
239 .method·static·synthetic·access$500(Lcom/google/common/util/concurrent/ListenableFuture;)Ljava/lang/Object; 
240 ····.locals·0 
  
241 ····.line·1 
242 ····invoke-static·{p0},·Lcom/google/common/util/concurrent/AbstractFuture;->getFutureValue(Lcom/google/common/util/concurrent/ListenableFuture;)Ljava/lang/Object; 
  
243 ····move-result-object·p0 
  
244 ····return-object·p0 
245 .end·method 
  
246 .method·static·synthetic·access$600(Lcom/google/common/util/concurrent/AbstractFuture;)V 
247 ····.locals·0 
  
248 ····.line·1 
249 ····invoke-static·{p0},·Lcom/google/common/util/concurrent/AbstractFuture;->complete(Lcom/google/common/util/concurrent/AbstractFuture;)V 
  
250 ····return-void 
251 .end·method 
  
252 .method·static·synthetic·access$800(Lcom/google/common/util/concurrent/AbstractFuture;)Lcom/google/common/util/concurrent/AbstractFuture$Waiter;239 .method·static·synthetic·access$800(Lcom/google/common/util/concurrent/AbstractFuture;)Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
253 ····.locals·0240 ····.locals·0
  
254 ····.line·1241 ····.line·1
255 ····iget-object·p0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;242 ····iget-object·p0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
256 ····return-object·p0243 ····return-object·p0
Offset 422, 152 lines modifiedOffset 402, 107 lines modified
422 ····invoke-virtual·{p1,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;402 ····invoke-virtual·{p1,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  
423 ····:goto_0403 ····:goto_0
424 ····return-void404 ····return-void
425 .end·method405 .end·method
  
426 .method·private·static·complete(Lcom/google/common/util/concurrent/AbstractFuture;)V406 .method·private·static·complete(Lcom/google/common/util/concurrent/AbstractFuture;)V
427 ····.locals·6407 ····.locals·4
  
428 ····const/4·v0,·0x0 
  
429 ····move-object·v1,·v0 
  
430 ····.line·1408 ····.line·1
431 ····:cond_0409 ····:cond_0
432 ····:goto_0 
433 ····iget-object·v2,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;410 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
434 ····.line·2411 ····.line·2
435 ····sget-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;412 ····sget-object·v1,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;
  
436 ····sget-object·v4,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;413 ····sget-object·v2,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
437 ····invoke-virtual·{v3,·p0,·v2,·v4},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->casWaiters(Lcom/google/common/util/concurrent/AbstractFuture;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)Z414 ····invoke-virtual·{v1,·p0,·v0,·v2},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->casWaiters(Lcom/google/common/util/concurrent/AbstractFuture;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)Z
  
438 ····move-result·v3415 ····move-result·v1
  
439 ····if-eqz·v3,·:cond_0416 ····if-eqz·v1,·:cond_0
  
440 ····:goto_1417 ····:goto_0
 418 ····const/4·v1,·0x0
  
441 ····if-eqz·v2,·:cond_2419 ····if-eqz·v0,·:cond_2
  
442 ····.line·3420 ····.line·3
443 ····iget-object·v3,·v2,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->thread:Ljava/lang/Thread;421 ····iget-object·v2,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->thread:Ljava/lang/Thread;
  
444 ····if-eqz·v3,·:cond_1422 ····if-eqz·v2,·:cond_1
  
445 ····.line·4423 ····.line·4
446 ····iput-object·v0,·v2,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->thread:Ljava/lang/Thread;424 ····iput-object·v1,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->thread:Ljava/lang/Thread;
  
447 ····.line·5425 ····.line·5
448 ····invoke-static·{v3},·Ljava/util/concurrent/locks/LockSupport;->unpark(Ljava/lang/Thread;)V426 ····invoke-static·{v2},·Ljava/util/concurrent/locks/LockSupport;->unpark(Ljava/lang/Thread;)V
  
449 ····.line·6427 ····.line·6
450 ····:cond_1428 ····:cond_1
451 ····iget-object·v2,·v2,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->next:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;429 ····iget-object·v0,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->next:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
452 ····goto·:goto_1430 ····goto·:goto_0
  
453 ····.line·7431 ····.line·7
454 ····:cond_2432 ····:cond_2
455 ····invoke-virtual·{p0},·Lcom/google/common/util/concurrent/AbstractFuture;->afterDone()V433 ····invoke-virtual·{p0},·Lcom/google/common/util/concurrent/AbstractFuture;->afterDone()V
  
456 ····.line·8434 ····.line·8
457 ····:cond_3435 ····:cond_3
458 ····iget-object·v2,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->listeners:Lcom/google/common/util/concurrent/AbstractFuture$Listener;436 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->listeners:Lcom/google/common/util/concurrent/AbstractFuture$Listener;
  
459 ····.line·9437 ····.line·9
460 ····sget-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;438 ····sget-object·v2,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;
  
461 ····sget-object·v4,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Listener;439 ····sget-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Listener;
  
462 ····invoke-virtual·{v3,·p0,·v2,·v4},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->casListeners(Lcom/google/common/util/concurrent/AbstractFuture;Lcom/google/common/util/concurrent/AbstractFuture$Listener;Lcom/google/common/util/concurrent/AbstractFuture$Listener;)Z440 ····invoke-virtual·{v2,·p0,·v0,·v3},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->casListeners(Lcom/google/common/util/concurrent/AbstractFuture;Lcom/google/common/util/concurrent/AbstractFuture$Listener;Lcom/google/common/util/concurrent/AbstractFuture$Listener;)Z
  
463 ····move-result·v3441 ····move-result·v2
  
464 ····if-eqz·v3,·:cond_3442 ····if-eqz·v2,·:cond_3
  
465 ····:goto_2443 ····:goto_1
466 ····if-eqz·v2,·:cond_4444 ····move-object·p0,·v1
  
 445 ····move-object·v1,·v0
467 ····.line·10 
468 ····iget-object·p0,·v2,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->next:Lcom/google/common/util/concurrent/AbstractFuture$Listener; 
  
 446 ····if-eqz·v1,·:cond_4
469 ····.line·11 
470 ····iput-object·v1,·v2,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->next:Lcom/google/common/util/concurrent/AbstractFuture$Listener; 
  
471 ····move-object·v1,·v2447 ····.line·10
 448 ····iget-object·v0,·v1,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->next:Lcom/google/common/util/concurrent/AbstractFuture$Listener;
  
472 ····move-object·v2,·p0449 ····.line·11
 450 ····iput-object·p0,·v1,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->next:Lcom/google/common/util/concurrent/AbstractFuture$Listener;
  
473 ····goto·:goto_2451 ····goto·:goto_1
  
474 ····:cond_4452 ····:cond_4
475 ····:goto_3453 ····:goto_2
476 ····if-eqz·v1,·:cond_7454 ····if-eqz·p0,·:cond_5
  
477 ····.line·12455 ····.line·12
478 ····iget-object·p0,·v1,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->next:Lcom/google/common/util/concurrent/AbstractFuture$Listener;456 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->next:Lcom/google/common/util/concurrent/AbstractFuture$Listener;
  
479 ····.line·13457 ····.line·13
480 ····iget-object·v2,·v1,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->task:Ljava/lang/Runnable;458 ····iget-object·v1,·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->task:Ljava/lang/Runnable;
  
481 ····.line·14459 ····.line·14
482 ····instance-of·v3,·v2,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture; 
  
483 ····if-eqz·v3,·:cond_5 
  
484 ····.line·15 
485 ····check-cast·v2,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture; 
  
486 ····.line·16 
487 ····iget-object·v1,·v2,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture;->owner:Lcom/google/common/util/concurrent/AbstractFuture; 
  
488 ····.line·17 
489 ····iget-object·v3,·v1,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;460 ····iget-object·p0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->executor:Ljava/util/concurrent/Executor;
  
490 ····if-ne·v3,·v2,·:cond_6 
  
491 ····.line·18 
492 ····iget-object·v3,·v2,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture;->future:Lcom/google/common/util/concurrent/ListenableFuture; 
  
493 ····invoke-static·{v3},·Lcom/google/common/util/concurrent/AbstractFuture;->getFutureValue(Lcom/google/common/util/concurrent/ListenableFuture;)Ljava/lang/Object; 
  
494 ····move-result-object·v3 
  
495 ····.line·19 
496 ····sget-object·v4,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper; 
  
497 ····invoke-virtual·{v4,·v1,·v2,·v3},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->casValue(Lcom/google/common/util/concurrent/AbstractFuture;Ljava/lang/Object;Ljava/lang/Object;)Z 
  
498 ····move-result·v2 
  
499 ····if-eqz·v2,·:cond_6 
  
500 ····move-object·v5,·v1461 ····invoke-static·{v1,·p0},·Lcom/google/common/util/concurrent/AbstractFuture;->executeListener(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V
  
501 ····move-object·v1,·p0462 ····move-object·p0,·v0
  
502 ····move-object·p0,·v5 
  
503 ····goto·:goto_0463 ····goto·:goto_2
  
504 ····.line·20 
505 ····:cond_5464 ····:cond_5
506 ····iget-object·v1,·v1,·Lcom/google/common/util/concurrent/AbstractFuture$Listener;->executor:Ljava/util/concurrent/Executor; 
  
507 ····invoke-static·{v2,·v1},·Lcom/google/common/util/concurrent/AbstractFuture;->executeListener(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V 
  
508 ····:cond_6 
509 ····move-object·v1,·p0 
  
510 ····goto·:goto_3 
  
511 ····:cond_7 
512 ····return-void465 ····return-void
513 .end·method466 .end·method
  
514 .method·private·static·executeListener(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V467 .method·private·static·executeListener(Ljava/lang/Runnable;Ljava/util/concurrent/Executor;)V
515 ····.locals·5468 ····.locals·5
  
516 ····.line·1469 ····.line·1
Offset 670, 247 lines modifiedOffset 605, 14 lines modified
670 ····.line·7605 ····.line·7
671 ····invoke-virtual·{p1,·p0},·Ljava/util/concurrent/CancellationException;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable;606 ····invoke-virtual·{p1,·p0},·Ljava/util/concurrent/CancellationException;->initCause(Ljava/lang/Throwable;)Ljava/lang/Throwable;
  
672 ····.line·8607 ····.line·8
673 ····throw·p1608 ····throw·p1
674 .end·method609 .end·method
  
675 .method·private·static·getFutureValue(Lcom/google/common/util/concurrent/ListenableFuture;)Ljava/lang/Object; 
676 ····.locals·6 
  
677 ····const-string·v0,·"get()·did·not·throw·CancellationException,·despite·reporting·isCancelled()·==·true:·" 
  
678 ····.line·1 
679 ····instance-of·v1,·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Trusted; 
  
680 ····const/4·v2,·0x0 
  
681 ····if-eqz·v1,·:cond_2 
  
682 ····.line·2 
683 ····check-cast·p0,·Lcom/google/common/util/concurrent/AbstractFuture; 
  
684 ····iget-object·p0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object; 
  
685 ····.line·3 
686 ····instance-of·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation; 
  
687 ····if-eqz·v0,·:cond_1 
  
688 ····.line·4 
689 ····move-object·v0,·p0 
  
690 ····check-cast·v0,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation; 
  
691 ····.line·5 
692 ····iget-boolean·v1,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;->wasInterrupted:Z 
  
693 ····if-eqz·v1,·:cond_1 
  
694 ····.line·6 
695 ····iget-object·p0,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;->cause:Ljava/lang/Throwable; 
  
696 ····if-eqz·p0,·:cond_0 
  
697 ····.line·7 
698 ····new-instance·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation; 
  
699 ····iget-object·v0,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;->cause:Ljava/lang/Throwable; 
  
700 ····invoke-direct·{p0,·v2,·v0},·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;-><init>(ZLjava/lang/Throwable;)V 
  
701 ····goto·:goto_0 
  
702 ····.line·8 
703 ····:cond_0 
704 ····sget-object·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;->CAUSELESS_CANCELLED:Lcom/google/common/util/concurrent/AbstractFuture$Cancellation; 
  
705 ····:cond_1 
706 ····:goto_0 
707 ····return-object·p0 
  
708 ····.line·9 
709 ····:cond_2 
710 ····instance-of·v1,·p0,·Lcom/google/common/util/concurrent/internal/InternalFutureFailureAccess; 
  
711 ····if-eqz·v1,·:cond_3 
  
712 ····.line·10 
713 ····move-object·v1,·p0 
  
714 ····check-cast·v1,·Lcom/google/common/util/concurrent/internal/InternalFutureFailureAccess; 
  
715 ····.line·11 
716 ····invoke-static·{v1},·Lcom/google/common/util/concurrent/internal/InternalFutures;->tryInternalFastPathGetFailure(Lcom/google/common/util/concurrent/internal/InternalFutureFailureAccess;)Ljava/lang/Throwable; 
  
717 ····move-result-object·v1 
  
718 ····if-eqz·v1,·:cond_3 
  
719 ····.line·12 
720 ····new-instance·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Failure; 
  
721 ····invoke-direct·{p0,·v1},·Lcom/google/common/util/concurrent/AbstractFuture$Failure;-><init>(Ljava/lang/Throwable;)V 
  
722 ····return-object·p0 
  
723 ····.line·13 
724 ····:cond_3 
725 ····invoke-interface·{p0},·Ljava/util/concurrent/Future;->isCancelled()Z 
  
726 ····move-result·v1 
  
727 ····.line·14 
728 ····sget-boolean·v3,·Lcom/google/common/util/concurrent/AbstractFuture;->GENERATE_CANCELLATION_CAUSES:Z 
  
729 ····xor-int/lit8·v3,·v3,·0x1 
  
730 ····and-int/2addr·v3,·v1 
  
731 ····if-eqz·v3,·:cond_4 
  
732 ····.line·15 
733 ····sget-object·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;->CAUSELESS_CANCELLED:Lcom/google/common/util/concurrent/AbstractFuture$Cancellation; 
  
734 ····return-object·p0 
  
735 ····.line·16 
736 ····:cond_4 
737 ····:try_start_0 
738 ····invoke-static·{p0},·Lcom/google/common/util/concurrent/AbstractFuture;->getUninterruptibly(Ljava/util/concurrent/Future;)Ljava/lang/Object; 
  
739 ····move-result-object·v3 
  
740 ····if-eqz·v1,·:cond_5 
  
741 ····.line·17 
742 ····new-instance·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation; 
  
743 ····new-instance·v4,·Ljava/lang/IllegalArgumentException; 
  
744 ····new-instance·v5,·Ljava/lang/StringBuilder; 
  
745 ····invoke-direct·{v5},·Ljava/lang/StringBuilder;-><init>()V 
  
746 ····invoke-virtual·{v5,·v0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; 
  
747 ····invoke-virtual·{v5,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; 
  
748 ····invoke-virtual·{v5},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String; 
  
749 ····move-result-object·v5 
  
750 ····invoke-direct·{v4,·v5},·Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V 
  
751 ····invoke-direct·{v3,·v2,·v4},·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;-><init>(ZLjava/lang/Throwable;)V 
  
752 ····return-object·v3 
  
753 ····:cond_5 
754 ····if-nez·v3,·:cond_6 
  
755 ····.line·18 
756 ····sget-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture;->NULL:Ljava/lang/Object; 
757 ····:try_end_0 
758 ····.catch·Ljava/util/concurrent/ExecutionException;·{:try_start_0·..·:try_end_0}·:catch_1 
759 ····.catch·Ljava/util/concurrent/CancellationException;·{:try_start_0·..·:try_end_0}·:catch_0 
760 ····.catchall·{:try_start_0·..·:try_end_0}·:catchall_0 
  
761 ····:cond_6 
762 ····return-object·v3 
  
763 ····:catchall_0 
764 ····move-exception·p0 
  
765 ····.line·19 
766 ····new-instance·v0,·Lcom/google/common/util/concurrent/AbstractFuture$Failure; 
  
767 ····invoke-direct·{v0,·p0},·Lcom/google/common/util/concurrent/AbstractFuture$Failure;-><init>(Ljava/lang/Throwable;)V 
  
768 ····return-object·v0 
  
769 ····:catch_0 
770 ····move-exception·v0 
  
771 ····if-nez·v1,·:cond_7 
  
772 ····.line·20 
773 ····new-instance·v1,·Lcom/google/common/util/concurrent/AbstractFuture$Failure; 
  
774 ····new-instance·v2,·Ljava/lang/IllegalArgumentException; 
  
775 ····new-instance·v3,·Ljava/lang/StringBuilder; 
  
776 ····invoke-direct·{v3},·Ljava/lang/StringBuilder;-><init>()V 
  
777 ····const-string·v4,·"get()·threw·CancellationException,·despite·reporting·isCancelled()·==·false:·" 
  
778 ····invoke-virtual·{v3,·v4},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; 
  
779 ····invoke-virtual·{v3,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; 
  
780 ····invoke-virtual·{v3},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String; 
  
781 ····move-result-object·p0 
  
782 ····invoke-direct·{v2,·p0,·v0},·Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V 
  
783 ····invoke-direct·{v1,·v2},·Lcom/google/common/util/concurrent/AbstractFuture$Failure;-><init>(Ljava/lang/Throwable;)V 
  
784 ····return-object·v1 
  
785 ····.line·21 
786 ····:cond_7 
787 ····new-instance·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation; 
  
788 ····invoke-direct·{p0,·v2,·v0},·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;-><init>(ZLjava/lang/Throwable;)V 
  
789 ····return-object·p0 
  
790 ····:catch_1 
791 ····move-exception·v3 
  
792 ····if-eqz·v1,·:cond_8 
  
793 ····.line·22 
794 ····new-instance·v1,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation; 
  
795 ····new-instance·v4,·Ljava/lang/IllegalArgumentException; 
  
796 ····new-instance·v5,·Ljava/lang/StringBuilder; 
  
797 ····invoke-direct·{v5},·Ljava/lang/StringBuilder;-><init>()V 
  
798 ····invoke-virtual·{v5,·v0},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; 
  
799 ····invoke-virtual·{v5,·p0},·Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; 
  
800 ····invoke-virtual·{v5},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String; 
  
801 ····move-result-object·p0 
  
802 ····invoke-direct·{v4,·p0,·v3},·Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V 
  
803 ····invoke-direct·{v1,·v2,·v4},·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;-><init>(ZLjava/lang/Throwable;)V 
  
804 ····return-object·v1 
  
805 ····.line·23 
806 ····:cond_8 
807 ····new-instance·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Failure; 
  
808 ····invoke-virtual·{v3},·Ljava/util/concurrent/ExecutionException;->getCause()Ljava/lang/Throwable; 
  
809 ····move-result-object·v0 
  
810 ····invoke-direct·{p0,·v0},·Lcom/google/common/util/concurrent/AbstractFuture$Failure;-><init>(Ljava/lang/Throwable;)V 
  
811 ····return-object·p0 
812 .end·method 
  
813 .method·private·static·getUninterruptibly(Ljava/util/concurrent/Future;)Ljava/lang/Object;610 .method·private·static·getUninterruptibly(Ljava/util/concurrent/Future;)Ljava/lang/Object;
814 ····.locals·1611 ····.locals·1
815 ····.annotation·system·Ldalvik/annotation/Throws;612 ····.annotation·system·Ldalvik/annotation/Throws;
816 ········value·=·{613 ········value·=·{
817 ············Ljava/util/concurrent/ExecutionException;614 ············Ljava/util/concurrent/ExecutionException;
818 ········}615 ········}
819 ····.end·annotation616 ····.end·annotation
Offset 1119, 28 lines modifiedOffset 821, 25 lines modified
1119 ····move·v3,·v1821 ····move·v3,·v1
  
1120 ····goto·:goto_0822 ····goto·:goto_0
  
1121 ····:cond_0823 ····:cond_0
1122 ····move·v3,·v2824 ····move·v3,·v2
  
1123 ····.line·2 
1124 ····:goto_0825 ····:goto_0
1125 ····instance-of·v4,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture;826 ····or-int/2addr·v3,·v2
  
1126 ····or-int/2addr·v3,·v4 
  
1127 ····if-eqz·v3,·:cond_8827 ····if-eqz·v3,·:cond_3
  
1128 ····.line·3828 ····.line·2
1129 ····sget-boolean·v3,·Lcom/google/common/util/concurrent/AbstractFuture;->GENERATE_CANCELLATION_CAUSES:Z829 ····sget-boolean·v3,·Lcom/google/common/util/concurrent/AbstractFuture;->GENERATE_CANCELLATION_CAUSES:Z
  
1130 ····if-eqz·v3,·:cond_1830 ····if-eqz·v3,·:cond_1
  
1131 ····.line·4831 ····.line·3
1132 ····new-instance·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;832 ····new-instance·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;
  
1133 ····new-instance·v4,·Ljava/util/concurrent/CancellationException;833 ····new-instance·v4,·Ljava/util/concurrent/CancellationException;
  
1134 ····const-string·v5,·"Future.cancel()·was·called."834 ····const-string·v5,·"Future.cancel()·was·called."
  
1135 ····invoke-direct·{v4,·v5},·Ljava/util/concurrent/CancellationException;-><init>(Ljava/lang/String;)V835 ····invoke-direct·{v4,·v5},·Ljava/util/concurrent/CancellationException;-><init>(Ljava/lang/String;)V
Offset 1148, 132 lines modifiedOffset 847, 62 lines modified
1148 ····invoke-direct·{v3,·p1,·v4},·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;-><init>(ZLjava/lang/Throwable;)V847 ····invoke-direct·{v3,·p1,·v4},·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;-><init>(ZLjava/lang/Throwable;)V
  
1149 ····goto·:goto_1848 ····goto·:goto_1
  
1150 ····:cond_1849 ····:cond_1
1151 ····if-eqz·p1,·:cond_2850 ····if-eqz·p1,·:cond_2
  
1152 ····.line·5851 ····.line·4
1153 ····sget-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;->CAUSELESS_INTERRUPTED:Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;852 ····sget-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;->CAUSELESS_INTERRUPTED:Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;
  
1154 ····goto·:goto_1853 ····goto·:goto_1
  
1155 ····.line·6854 ····.line·5
1156 ····:cond_2855 ····:cond_2
1157 ····sget-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;->CAUSELESS_CANCELLED:Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;856 ····sget-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;->CAUSELESS_CANCELLED:Lcom/google/common/util/concurrent/AbstractFuture$Cancellation;
  
 857 ····.line·6
1158 ····:goto_1858 ····:goto_1
1159 ····move·v4,·v2 
  
1160 ····.line·7 
1161 ····:cond_3 
1162 ····:goto_2 
1163 ····sget-object·v5,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;859 ····sget-object·p1,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;
  
1164 ····invoke-virtual·{v5,·p0,·v0,·v3},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->casValue(Lcom/google/common/util/concurrent/AbstractFuture;Ljava/lang/Object;Ljava/lang/Object;)Z 
  
1165 ····move-result·v5 
  
1166 ····if-eqz·v5,·:cond_7860 ····invoke-virtual·{p1,·p0,·v0,·v3},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->casValue(Lcom/google/common/util/concurrent/AbstractFuture;Ljava/lang/Object;Ljava/lang/Object;)Z
  
1167 ····if-eqz·p1,·:cond_4861 ····move-result·p1
  
 862 ····if-eqz·p1,·:cond_3
1168 ····.line·8 
1169 ····invoke-virtual·{p0},·Lcom/google/common/util/concurrent/AbstractFuture;->interruptTask()V 
  
1170 ····.line·9863 ····.line·7
1171 ····:cond_4 
1172 ····invoke-static·{p0},·Lcom/google/common/util/concurrent/AbstractFuture;->complete(Lcom/google/common/util/concurrent/AbstractFuture;)V864 ····invoke-static·{p0},·Lcom/google/common/util/concurrent/AbstractFuture;->complete(Lcom/google/common/util/concurrent/AbstractFuture;)V
  
1173 ····.line·10 
1174 ····instance-of·p0,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture; 
  
1175 ····if-eqz·p0,·:cond_9 
  
1176 ····.line·11 
1177 ····check-cast·v0,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture; 
  
1178 ····iget-object·p0,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture;->future:Lcom/google/common/util/concurrent/ListenableFuture; 
  
1179 ····.line·12 
1180 ····instance-of·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture$Trusted; 
  
1181 ····if-eqz·v0,·:cond_6 
  
1182 ····.line·13 
1183 ····check-cast·p0,·Lcom/google/common/util/concurrent/AbstractFuture; 
  
1184 ····.line·14 
1185 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object; 
  
1186 ····if-nez·v0,·:cond_5 
  
1187 ····move·v4,·v1 
  
1188 ····goto·:goto_3 
  
1189 ····:cond_5 
1190 ····move·v4,·v2 
  
1191 ····.line·15 
1192 ····:goto_3 
1193 ····instance-of·v5,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture; 
  
1194 ····or-int/2addr·v4,·v5 
  
1195 ····if-eqz·v4,·:cond_9 
  
1196 ····move·v4,·v1 
  
1197 ····goto·:goto_2865 ····goto·:goto_2
  
1198 ····.line·16 
1199 ····:cond_6866 ····:cond_3
1200 ····invoke-interface·{p0,·p1},·Ljava/util/concurrent/Future;->cancel(Z)Z 
  
1201 ····goto·:goto_4 
  
1202 ····.line·17 
1203 ····:cond_7 
1204 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object; 
  
1205 ····.line·18 
1206 ····instance-of·v5,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture; 
  
1207 ····if-nez·v5,·:cond_3 
  
1208 ····move·v1,·v4 
  
1209 ····goto·:goto_4 
  
1210 ····:cond_8 
1211 ····move·v1,·v2867 ····move·v1,·v2
  
1212 ····:cond_9 
1213 ····:goto_4868 ····:goto_2
1214 ····return·v1869 ····return·v1
1215 .end·method870 .end·method
  
1216 .method·public·get()Ljava/lang/Object;871 .method·public·get()Ljava/lang/Object;
1217 ····.locals·6872 ····.locals·5
1218 ····.annotation·system·Ldalvik/annotation/Throws;873 ····.annotation·system·Ldalvik/annotation/Throws;
1219 ········value·=·{874 ········value·=·{
1220 ············Ljava/lang/InterruptedException;,875 ············Ljava/lang/InterruptedException;,
1221 ············Ljava/util/concurrent/ExecutionException;876 ············Ljava/util/concurrent/ExecutionException;
1222 ········}877 ········}
1223 ····.end·annotation878 ····.end·annotation
  
1224 ····.line·46879 ····.line·43
1225 ····invoke-static·{},·Ljava/lang/Thread;->interrupted()Z880 ····invoke-static·{},·Ljava/lang/Thread;->interrupted()Z
  
1226 ····move-result·v0881 ····move-result·v0
  
1227 ····if-nez·v0,·:cond_8882 ····if-nez·v0,·:cond_8
  
1228 ····.line·47883 ····.line·44
1229 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;884 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;
  
1230 ····const/4·v1,·0x0885 ····const/4·v1,·0x0
  
1231 ····const/4·v2,·0x1886 ····const/4·v2,·0x1
  
1232 ····if-eqz·v0,·:cond_0887 ····if-eqz·v0,·:cond_0
Offset 1281, 140 lines modifiedOffset 910, 130 lines modified
1281 ····move·v3,·v2910 ····move·v3,·v2
  
1282 ····goto·:goto_0911 ····goto·:goto_0
  
1283 ····:cond_0912 ····:cond_0
1284 ····move·v3,·v1913 ····move·v3,·v1
  
1285 ····.line·48 
1286 ····:goto_0914 ····:goto_0
1287 ····instance-of·v4,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture; 
  
1288 ····xor-int/2addr·v4,·v2 
  
1289 ····and-int/2addr·v3,·v4915 ····and-int/2addr·v3,·v2
  
1290 ····if-eqz·v3,·:cond_1916 ····if-eqz·v3,·:cond_1
  
1291 ····.line·49917 ····.line·45
1292 ····invoke-direct·{p0,·v0},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;918 ····invoke-direct·{p0,·v0},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;
  
1293 ····move-result-object·p0919 ····move-result-object·p0
  
1294 ····return-object·p0920 ····return-object·p0
  
1295 ····.line·50921 ····.line·46
1296 ····:cond_1922 ····:cond_1
1297 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;923 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
1298 ····.line·51924 ····.line·47
1299 ····sget-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;925 ····sget-object·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
1300 ····if-eq·v0,·v3,·:cond_7926 ····if-eq·v0,·v3,·:cond_7
  
1301 ····.line·52927 ····.line·48
1302 ····new-instance·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;928 ····new-instance·v3,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
1303 ····invoke-direct·{v3},·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;-><init>()V929 ····invoke-direct·{v3},·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;-><init>()V
  
1304 ····.line·53930 ····.line·49
1305 ····:cond_2931 ····:cond_2
1306 ····sget-object·v4,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;932 ····sget-object·v4,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;
  
1307 ····.line·54933 ····.line·50
1308 ····invoke-virtual·{v4,·v3,·v0},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->putNext(Lcom/google/common/util/concurrent/AbstractFuture$Waiter;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)V934 ····invoke-virtual·{v4,·v3,·v0},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->putNext(Lcom/google/common/util/concurrent/AbstractFuture$Waiter;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)V
  
1309 ····.line·55935 ····.line·51
1310 ····invoke-virtual·{v4,·p0,·v0,·v3},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->casWaiters(Lcom/google/common/util/concurrent/AbstractFuture;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)Z936 ····invoke-virtual·{v4,·p0,·v0,·v3},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->casWaiters(Lcom/google/common/util/concurrent/AbstractFuture;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)Z
  
1311 ····move-result·v0937 ····move-result·v0
  
1312 ····if-eqz·v0,·:cond_6938 ····if-eqz·v0,·:cond_6
  
1313 ····.line·56939 ····.line·52
1314 ····:cond_3940 ····:cond_3
1315 ····invoke-static·{p0},·Ljava/util/concurrent/locks/LockSupport;->park(Ljava/lang/Object;)V941 ····invoke-static·{p0},·Ljava/util/concurrent/locks/LockSupport;->park(Ljava/lang/Object;)V
  
1316 ····.line·57942 ····.line·53
1317 ····invoke-static·{},·Ljava/lang/Thread;->interrupted()Z943 ····invoke-static·{},·Ljava/lang/Thread;->interrupted()Z
  
1318 ····move-result·v0944 ····move-result·v0
  
1319 ····if-nez·v0,·:cond_5945 ····if-nez·v0,·:cond_5
  
1320 ····.line·58946 ····.line·54
1321 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;947 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;
  
1322 ····if-eqz·v0,·:cond_4948 ····if-eqz·v0,·:cond_4
  
1323 ····move·v4,·v2949 ····move·v4,·v2
  
1324 ····goto·:goto_1950 ····goto·:goto_1
  
1325 ····:cond_4951 ····:cond_4
1326 ····move·v4,·v1952 ····move·v4,·v1
  
1327 ····.line·59 
1328 ····:goto_1953 ····:goto_1
1329 ····instance-of·v5,·v0,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture; 
  
1330 ····xor-int/2addr·v5,·v2 
  
1331 ····and-int/2addr·v4,·v5954 ····and-int/2addr·v4,·v2
  
1332 ····if-eqz·v4,·:cond_3955 ····if-eqz·v4,·:cond_3
  
1333 ····.line·60956 ····.line·55
1334 ····invoke-direct·{p0,·v0},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;957 ····invoke-direct·{p0,·v0},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;
  
1335 ····move-result-object·p0958 ····move-result-object·p0
  
1336 ····return-object·p0959 ····return-object·p0
  
1337 ····.line·61960 ····.line·56
1338 ····:cond_5961 ····:cond_5
1339 ····invoke-direct·{p0,·v3},·Lcom/google/common/util/concurrent/AbstractFuture;->removeWaiter(Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)V962 ····invoke-direct·{p0,·v3},·Lcom/google/common/util/concurrent/AbstractFuture;->removeWaiter(Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)V
  
1340 ····.line·62963 ····.line·57
1341 ····new-instance·p0,·Ljava/lang/InterruptedException;964 ····new-instance·p0,·Ljava/lang/InterruptedException;
  
1342 ····invoke-direct·{p0},·Ljava/lang/InterruptedException;-><init>()V965 ····invoke-direct·{p0},·Ljava/lang/InterruptedException;-><init>()V
  
1343 ····throw·p0966 ····throw·p0
  
1344 ····.line·63967 ····.line·58
1345 ····:cond_6968 ····:cond_6
1346 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;969 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
1347 ····.line·64970 ····.line·59
1348 ····sget-object·v4,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;971 ····sget-object·v4,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
1349 ····if-ne·v0,·v4,·:cond_2972 ····if-ne·v0,·v4,·:cond_2
  
1350 ····.line·65973 ····.line·60
1351 ····:cond_7974 ····:cond_7
1352 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;975 ····iget-object·v0,·p0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;
  
1353 ····invoke-direct·{p0,·v0},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;976 ····invoke-direct·{p0,·v0},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;
  
1354 ····move-result-object·p0977 ····move-result-object·p0
  
1355 ····return-object·p0978 ····return-object·p0
  
1356 ····.line·66979 ····.line·61
1357 ····:cond_8980 ····:cond_8
1358 ····new-instance·p0,·Ljava/lang/InterruptedException;981 ····new-instance·p0,·Ljava/lang/InterruptedException;
  
1359 ····invoke-direct·{p0},·Ljava/lang/InterruptedException;-><init>()V982 ····invoke-direct·{p0},·Ljava/lang/InterruptedException;-><init>()V
  
1360 ····throw·p0983 ····throw·p0
1361 .end·method984 .end·method
  
1362 .method·public·get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;985 .method·public·get(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
1363 ····.locals·17986 ····.locals·16
1364 ····.annotation·system·Ldalvik/annotation/Throws;987 ····.annotation·system·Ldalvik/annotation/Throws;
1365 ········value·=·{988 ········value·=·{
1366 ············Ljava/lang/InterruptedException;,989 ············Ljava/lang/InterruptedException;,
1367 ············Ljava/util/concurrent/TimeoutException;,990 ············Ljava/util/concurrent/TimeoutException;,
1368 ············Ljava/util/concurrent/ExecutionException;991 ············Ljava/util/concurrent/ExecutionException;
1369 ········}992 ········}
1370 ····.end·annotation993 ····.end·annotation
Offset 1440, 570 lines modifiedOffset 1059, 527 lines modified
1440 ····.line·31059 ····.line·3
1441 ····iget-object·v6,·v0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;1060 ····iget-object·v6,·v0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;
  
1442 ····const/4·v7,·0x11061 ····const/4·v7,·0x1
  
1443 ····if-eqz·v6,·:cond_01062 ····if-eqz·v6,·:cond_0
  
1444 ····move·v8,·v71063 ····move·v9,·v7
  
1445 ····goto·:goto_01064 ····goto·:goto_0
  
1446 ····:cond_01065 ····:cond_0
1447 ····const/4·v8,·0x01066 ····const/4·v9,·0x0
  
1448 ····.line·4 
1449 ····:goto_01067 ····:goto_0
1450 ····instance-of·v9,·v6,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture; 
  
1451 ····xor-int/2addr·v9,·v71068 ····and-int/2addr·v9,·v7
  
1452 ····and-int/2addr·v8,·v91069 ····if-eqz·v9,·:cond_1
  
1453 ····if-eqz·v8,·:cond_1 
  
1454 ····.line·51070 ····.line·4
1455 ····invoke-direct·{v0,·v6},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;1071 ····invoke-direct·{v0,·v6},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;
  
1456 ····move-result-object·v01072 ····move-result-object·v0
  
1457 ····return-object·v01073 ····return-object·v0
  
1458 ····:cond_11074 ····:cond_1
1459 ····const-wide/16·v8,·0x01075 ····const-wide/16·v9,·0x0
  
1460 ····cmp-long·v6,·v4,·v81076 ····cmp-long·v6,·v4,·v9
  
1461 ····if-lez·v6,·:cond_21077 ····if-lez·v6,·:cond_2
  
1462 ····.line·61078 ····.line·5
1463 ····invoke-static·{},·Ljava/lang/System;->nanoTime()J1079 ····invoke-static·{},·Ljava/lang/System;->nanoTime()J
  
1464 ····move-result-wide·v101080 ····move-result-wide·v11
  
1465 ····add-long/2addr·v10,·v41081 ····add-long/2addr·v11,·v4
  
1466 ····goto·:goto_11082 ····goto·:goto_1
  
1467 ····:cond_21083 ····:cond_2
1468 ····move-wide·v10,·v81084 ····move-wide·v11,·v9
  
1469 ····:goto_11085 ····:goto_1
1470 ····const-wide/16·v12,·0x3e81086 ····const-wide/16·v13,·0x3e8
  
1471 ····cmp-long·v6,·v4,·v121087 ····cmp-long·v6,·v4,·v13
  
1472 ····if-ltz·v6,·:cond_a1088 ····if-ltz·v6,·:cond_a
  
1473 ····.line·71089 ····.line·6
1474 ····iget-object·v6,·v0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;1090 ····iget-object·v6,·v0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
 1091 ····.line·7
 1092 ····sget-object·v15,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
 1093 ····if-eq·v6,·v15,·:cond_9
  
1475 ····.line·81094 ····.line·8
1476 ····sget-object·v8,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;1095 ····new-instance·v15,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
1477 ····if-eq·v6,·v8,·:cond_91096 ····invoke-direct·{v15},·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;-><init>()V
  
1478 ····.line·91097 ····.line·9
 1098 ····:goto_2
 1099 ····sget-object·v8,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;
1479 ····new-instance·v8,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter; 
  
1480 ····invoke-direct·{v8},·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;-><init>()V 
  
1481 ····.line·101100 ····.line·10
 1101 ····invoke-virtual·{v8,·v15,·v6},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->putNext(Lcom/google/common/util/concurrent/AbstractFuture$Waiter;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)V
1482 ····:cond_3 
1483 ····sget-object·v9,·Lcom/google/common/util/concurrent/AbstractFuture;->ATOMIC_HELPER:Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper; 
  
1484 ····.line·111102 ····.line·11
1485 ····invoke-virtual·{v9,·v8,·v6},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->putNext(Lcom/google/common/util/concurrent/AbstractFuture$Waiter;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)V 
  
1486 ····.line·12 
1487 ····invoke-virtual·{v9,·v0,·v6,·v8},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->casWaiters(Lcom/google/common/util/concurrent/AbstractFuture;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)Z1103 ····invoke-virtual·{v8,·v0,·v6,·v15},·Lcom/google/common/util/concurrent/AbstractFuture$AtomicHelper;->casWaiters(Lcom/google/common/util/concurrent/AbstractFuture;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)Z
  
1488 ····move-result·v61104 ····move-result·v6
  
1489 ····if-eqz·v6,·:cond_81105 ····if-eqz·v6,·:cond_7
  
1490 ····:cond_41106 ····:cond_3
1491 ····const-wide·v14,·0x1dcd64ffffffffffL····#·3.98785104510193E-1651107 ····const-wide·v9,·0x1dcd64ffffffffffL····#·3.98785104510193E-165
  
1492 ····.line·131108 ····.line·12
1493 ····invoke-static·{v4,·v5,·v14,·v15},·Ljava/lang/Math;->min(JJ)J1109 ····invoke-static·{v4,·v5,·v9,·v10},·Ljava/lang/Math;->min(JJ)J
  
1494 ····move-result-wide·v41110 ····move-result-wide·v4
  
1495 ····invoke-static·{v0,·v4,·v5},·Ljava/util/concurrent/locks/LockSupport;->parkNanos(Ljava/lang/Object;J)V1111 ····invoke-static·{v0,·v4,·v5},·Ljava/util/concurrent/locks/LockSupport;->parkNanos(Ljava/lang/Object;J)V
  
1496 ····.line·141112 ····.line·13
1497 ····invoke-static·{},·Ljava/lang/Thread;->interrupted()Z1113 ····invoke-static·{},·Ljava/lang/Thread;->interrupted()Z
  
1498 ····move-result·v41114 ····move-result·v4
  
1499 ····if-nez·v4,·:cond_71115 ····if-nez·v4,·:cond_6
  
1500 ····.line·151116 ····.line·14
1501 ····iget-object·v4,·v0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;1117 ····iget-object·v4,·v0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;
  
1502 ····if-eqz·v4,·:cond_51118 ····if-eqz·v4,·:cond_4
  
1503 ····move·v5,·v71119 ····move·v5,·v7
  
1504 ····goto·:goto_21120 ····goto·:goto_3
  
1505 ····:cond_51121 ····:cond_4
1506 ····const/4·v5,·0x01122 ····const/4·v5,·0x0
  
1507 ····.line·16 
1508 ····:goto_21123 ····:goto_3
1509 ····instance-of·v6,·v4,·Lcom/google/common/util/concurrent/AbstractFuture$SetFuture; 
  
1510 ····xor-int/2addr·v6,·v7 
  
1511 ····and-int/2addr·v5,·v61124 ····and-int/2addr·v5,·v7
  
1512 ····if-eqz·v5,·:cond_61125 ····if-eqz·v5,·:cond_5
  
1513 ····.line·171126 ····.line·15
1514 ····invoke-direct·{v0,·v4},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;1127 ····invoke-direct·{v0,·v4},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;
  
1515 ····move-result-object·v01128 ····move-result-object·v0
  
1516 ····return-object·v01129 ····return-object·v0
  
1517 ····.line·181130 ····.line·16
1518 ····:cond_61131 ····:cond_5
1519 ····invoke-static·{},·Ljava/lang/System;->nanoTime()J1132 ····invoke-static·{},·Ljava/lang/System;->nanoTime()J
  
1520 ····move-result-wide·v41133 ····move-result-wide·v4
  
1521 ····sub-long·v4,·v10,·v41134 ····sub-long·v4,·v11,·v4
  
1522 ····cmp-long·v6,·v4,·v121135 ····cmp-long·v6,·v4,·v13
  
1523 ····if-gez·v6,·:cond_41136 ····if-gez·v6,·:cond_3
  
1524 ····.line·191137 ····.line·17
1525 ····invoke-direct·{v0,·v8},·Lcom/google/common/util/concurrent/AbstractFuture;->removeWaiter(Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)V1138 ····invoke-direct·{v0,·v15},·Lcom/google/common/util/concurrent/AbstractFuture;->removeWaiter(Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)V
  
1526 ····move·v8,·v7 
  
1527 ····move-wide·v13,·v12 
  
1528 ····move-wide·v6,·v4 
  
1529 ····move-wide·v11,·v10 
  
1530 ····move-object·v4,·v31139 ····goto·:goto_7
  
1531 ····move-object·v5,·v41140 ····.line·18
 1141 ····:cond_6
 1142 ····invoke-direct·{v0,·v15},·Lcom/google/common/util/concurrent/AbstractFuture;->removeWaiter(Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)V
  
1532 ····move-wide·v2,·v11143 ····.line·19
 1144 ····new-instance·v0,·Ljava/lang/InterruptedException;
  
1533 ····move-object·v1,·v01145 ····invoke-direct·{v0},·Ljava/lang/InterruptedException;-><init>()V
  
1534 ····goto·:goto_51146 ····throw·v0
  
1535 ····.line·201147 ····.line·20
1536 ····:cond_71148 ····:cond_7
1537 ····invoke-direct·{v0,·v8},·Lcom/google/common/util/concurrent/AbstractFuture;->removeWaiter(Lcom/google/common/util/concurrent/AbstractFuture$Waiter;)V1149 ····iget-object·v6,·v0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
1538 ····.line·211150 ····.line·21
1539 ····new-instance·v0,·Ljava/lang/InterruptedException;1151 ····sget-object·v8,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Waiter;
  
1540 ····invoke-direct·{v0},·Ljava/lang/InterruptedException;-><init>()V1152 ····if-ne·v6,·v8,·:cond_8
  
1541 ····throw·v01153 ····goto·:goto_4
  
1542 ····.line·22 
1543 ····:cond_81154 ····:cond_8
 1155 ····const-wide/16·v9,·0x0
1544 ····iget-object·v6,·v0,·Lcom/google/common/util/concurrent/AbstractFuture;->waiters:Lcom/google/common/util/concurrent/AbstractFuture$Waiter; 
  
1545 ····.line·23 
1546 ····sget-object·v9,·Lcom/google/common/util/concurrent/AbstractFuture$Waiter;->TOMBSTONE:Lcom/google/common/util/concurrent/AbstractFuture$Waiter; 
  
1547 ····if-ne·v6,·v9,·:cond_31156 ····goto·:goto_2
  
1548 ····.line·241157 ····.line·22
1549 ····:cond_91158 ····:cond_9
 1159 ····:goto_4
1550 ····iget-object·v1,·v0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;1160 ····iget-object·v1,·v0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;
  
1551 ····invoke-direct·{v0,·v1},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;1161 ····invoke-direct·{v0,·v1},·Lcom/google/common/util/concurrent/AbstractFuture;->getDoneValue(Ljava/lang/Object;)Ljava/lang/Object;
  
1552 ····move-result-object·v01162 ····move-result-object·v0
  
1553 ····return-object·v01163 ····return-object·v0
  
1554 ····:cond_a1164 ····:cond_a
1555 ····move-wide·v13,·v12 
  
1556 ····move-wide·v11,·v10 
  
1557 ····move-wide·v9,·v81165 ····move-wide·v8,·v9
  
1558 ····move·v8,·v7 
  
1559 ····move-wide·v6,·v4 
  
1560 ····move-object·v4,·v3 
  
1561 ····move-object·v5,·v4 
  
1562 ····move-wide·v2,·v1 
  
1563 ····move-object·v1,·v0 
  
1564 ····:goto_31166 ····:goto_5
1565 ····cmp-long·v9,·v6,·v91167 ····cmp-long·v6,·v4,·v8
  
1566 ····if-lez·v9,·:cond_e1168 ····if-lez·v6,·:cond_e
  
1567 ····.line·251169 ····.line·23
1568 ····iget-object·v6,·v1,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;1170 ····iget-object·v4,·v0,·Lcom/google/common/util/concurrent/AbstractFuture;->value:Ljava/lang/Object;
  
1569 ····if-eqz·v6,·:cond_b1171 ····if-eqz·v4,·:cond_b
  
1570 ····move·v7,·v81172 ····move·v5,·v7
  
1571 ····goto·:goto_41173 ····goto·:goto_6
  
1572 ····:cond_b1174 ····:cond_b
1573 ····const/4·v7,·0x01175 ····const/4·v5,·0x0
  
1574 ····.line·26 
1575 ····:goto_4 
Max diff block lines reached; 26904/64185 bytes (41.92%) of diff not shown.