for `BFCR` we need more work and actually there is no reason to use it here, because its purpose is for runtime.
Re. exception - agree: looks better