A man is working on top of a roof, working on the shingles.
A roofer fixes shingles after a storm damages a roof.
Working on shingles does not imply it being after a storm.
exists e2 e1 x1 x2 x3 x4.(n_shingle(x4) & for(e1,e2) & on(e2,x4) & Actor(e2,x1) & v_work(e2) & on(e1,x2) & of(x2,x3) & n_roof(x3) & n_top(x2) & Actor(e1,x1) & v_work(e1) & n_man(x1))
exists e1 x1 x2.(all x3.(n_roof(x3) -> exists x4 x5.(after(e1,x4) & for(x4,x3) & n_damage(x4) & of(x4,x5) & n_storm(x5))) & Theme(e1,x2) & Actor(e1,x1) & v_fix(e1) & n_shingle(x2) & n_roofer(x1))