
======= optimizer_BlockDeDuplicator/input.sol:C =======
EVM assembly:
    /* "optimizer_BlockDeDuplicator/input.sol":60:213  contract C {... */
  mstore(0x40, 0x80)
    /* "optimizer_BlockDeDuplicator/input.sol":179:210  function() r = true ? fun_x : f */
  0x00
  dup1
  sload
  not(sub(shl(0x40, 0x01), 0x01))
  and
    /* "optimizer_BlockDeDuplicator/input.sol":201:206  fun_x */
  or(tag_0_7, shl(0x20, tag_2))
  sub(shl(0x40, 0x01), 0x01)
    /* "optimizer_BlockDeDuplicator/input.sol":179:210  function() r = true ? fun_x : f */
  and
  or
  swap1
  sstore
    /* "optimizer_BlockDeDuplicator/input.sol":60:213  contract C {... */
  callvalue
  dup1
  iszero
  tag_5
  jumpi
  revert(0x00, 0x00)
tag_5:
  pop
  jump(tag_6)
    /* "optimizer_BlockDeDuplicator/input.sol":138:174  function f() public { true ? 1 : 3;} */
tag_2:
  jump	// out
    /* "optimizer_BlockDeDuplicator/input.sol":60:213  contract C {... */
tag_6:
  dataSize(sub_0)
  dup1
  dataOffset(sub_0)
  0x00
  codecopy
  0x00
  return
stop

sub_0: assembly {
        /* "optimizer_BlockDeDuplicator/input.sol":60:213  contract C {... */
      mstore(0x40, 0x80)
      callvalue
      dup1
      iszero
      tag_1
      jumpi
      revert(0x00, 0x00)
    tag_1:
      pop
      jumpi(tag_2, lt(calldatasize, 0x04))
      shr(0xe0, calldataload(0x00))
      dup1
      0x26121ff0
      eq
      tag_3
      jumpi
      dup1
      0x2e1fb2bc
      eq
      tag_3
      jumpi
      dup1
      0x4753a67d
      eq
      tag_3
      jumpi
    tag_2:
      revert(0x00, 0x00)
        /* "optimizer_BlockDeDuplicator/input.sol":138:174  function f() public { true ? 1 : 3;} */
    tag_3:
      stop
    tag_7:
      jump	// out

    auxdata: <AUXDATA REMOVED>
}
