not sure I see the point, since trap is only called once here?