added hook processing