first-order + second-order+ logging