{
    let x := 1
    let y := 1
    for { } calldataload(0) { }
    {
        y := 9
        if callvalue() {
            x := 2
            y := 2 // will be removed
            break
            x := 7 // after break, we start with fresh state.
        }
        if eq(callvalue(), 3) {
            x := 12
            y := 12 // will be removed
            continue
            x := 17 // after continue, we start with fresh state.
            y := 9
        }
        x := 3
        mstore(y, 3)
    }
    mstore(x, 0x42)
}
// ----
// step: unusedAssignEliminator
//
// {
//     let x := 1
//     let y := 1
//     for { } calldataload(0) { }
//     {
//         y := 9
//         if callvalue()
//         {
//             x := 2
//             break
//         }
//         if eq(callvalue(), 3)
//         {
//             x := 12
//             continue
//             y := 9
//         }
//         x := 3
//         mstore(y, 3)
//     }
//     mstore(x, 0x42)
// }
