use async_trait::async_trait;
use serde::Serialize;
#[derive(Clone, Copy, PartialEq, Eq, Serialize)]
#[serde(rename_all = "lowercase")]
pub enum Status {
use std::time::Instant;
use axum::{
extract::Request,
http::HeaderValue,
middleware::Next,