```python
def gen_plan(state: DrawState, pour_time: float, target_offset: float, rot_offset: float):

    import numpy as np

    blottle_frame = state.getFrame("beer_bottle")
    glass_frame = state.getFrame("empty_glass")

    target = [
        glass_frame.x_pos + target_offset[0],
        glass_frame.y_pos + target_offset[1],
        glass_frame.z_pos + glass_frame.z_size + target_offset[2],
        None,
        np.pi*.5 + rot_offset,
        None
    ]

    # Draw the letter A with lines
    actions = [
        Action("pick", ["beer_bottle"]),
        Action("move", target),
        Action("wait", [pour_time]),
        Action("place_sr", [blottle_frame.x_pos, blottle_frame.y_pos, blottle_frame.z_pos, False, None])
    ]

    return actions

def gen_initial_guess(initial: DrawState):
    return {
        "pour_time": 2,  # s
        "target_offset": [.0, .0, .05],  # cm
        "rot_offset": .0  # rad
    }
```