added explicit integration