[PATCH 3/3] flow: Clean up and generalise flow traversal macros