added zone calculation for buffering