pure subroutine bbl_column_conc_impl(nx, ny, nz, h, htr, conc)
!! Cell concentrations of one tracer through THE vanished-layer column
!! rule (`rdb_vl_column_conc`): `hTr/h` on a live layer, the donor's
!! concentration on a filler, never a quotient by a near-zero or
!! negative thickness.
integer, intent(in) :: nx, ny, nz
real(wp), intent(in) :: h(nx, ny, nz)
real(wp), intent(in) :: htr(nx, ny, nz)
real(wp), intent(inout) :: conc(nx, ny, nz)
integer :: i, j, k
real(wp) :: hc(NZ_STACK_MAX), qc(NZ_STACK_MAX), cc(NZ_STACK_MAX)
do concurrent(j=1:ny, i=1:nx) local(hc, qc, cc, k)
do k = 1, nz
hc(k) = h(i, j, k)
qc(k) = htr(i, j, k)
end do
call rdb_vl_column_conc(nz, hc, qc, cc)
do k = 1, nz
conc(i, j, k) = cc(k)
end do
end do
end subroutine bbl_column_conc_impl