implementing BFPRT