@@ -609,18 +609,7 @@ impl<'a> CircuitInputStateRef<'a> {
609
609
sender_balance_prev,
610
610
sender_balance
611
611
) ;
612
- // If receiver doesn't exist, create it
613
- if !receiver_exists && ( !value. is_zero ( ) || must_create) {
614
- self . push_op_reversible (
615
- step,
616
- AccountOp {
617
- address : receiver,
618
- field : AccountField :: CodeHash ,
619
- value : CodeDB :: empty_code_hash ( ) . to_word ( ) ,
620
- value_prev : Word :: zero ( ) ,
621
- } ,
622
- ) ?;
623
- }
612
+
624
613
if value. is_zero ( ) {
625
614
// Skip transfer if value == 0
626
615
return Ok ( ( ) ) ;
@@ -635,19 +624,7 @@ impl<'a> CircuitInputStateRef<'a> {
635
624
value_prev : sender_balance_prev,
636
625
} ,
637
626
) ?;
638
-
639
- let ( _found, receiver_account) = self . sdb . get_account ( & receiver) ;
640
- let receiver_balance_prev = receiver_account. balance ;
641
- let receiver_balance = receiver_account. balance + value;
642
- self . push_op_reversible (
643
- step,
644
- AccountOp {
645
- address : receiver,
646
- field : AccountField :: Balance ,
647
- value : receiver_balance,
648
- value_prev : receiver_balance_prev,
649
- } ,
650
- ) ?;
627
+ self . transfer_to ( step, receiver, receiver_exists, must_create, value, true ) ?;
651
628
652
629
Ok ( ( ) )
653
630
}
@@ -684,7 +661,7 @@ impl<'a> CircuitInputStateRef<'a> {
684
661
reversible : bool ,
685
662
) -> Result < ( ) , Error > {
686
663
// If receiver doesn't exist, create it
687
- if ( !receiver_exists && !value. is_zero ( ) ) || must_create {
664
+ if !receiver_exists && ( !value. is_zero ( ) || must_create) {
688
665
self . account_write (
689
666
step,
690
667
receiver,
0 commit comments