add prelude/postlude support