call back on pre and post init