ok,

that seems to handle most of my requirements also
i would prefer a more "declarative" approach.