///|
// Compare fixed-width big-endian sample numbers without narrowing unsigned u64.
fn validate_seektable(data : Bytes) -> Unit raise FlacError {
  let placeholder = Bytes::make(8, b'\xff')
  let mut previous : Bytes? = None
  for i = 0; i < data.length(); i = i + 18 {
    let sample = data[i:i + 8].to_owned()
    if previous is Some(before) {
      guard sample > before || (sample == placeholder && before == placeholder) else {
        raise Invalid(
          i, "SEEKTABLE samples must be sorted and unique; placeholders last",
        )
      }
    }
    previous = Some(sample)
  }
}