use std ::fmt ::Debug;
use core ::ops ::Not;

#[ allow( dead_code ) ]
struct BoundsWhere< T, U >
  where
  T: ToString + Not< Output = T >,
  U: Debug + Not< Output = U >,
{
  a: T,
  b: U,
}

impl< T, U > Not for BoundsWhere< T, U >
where
  T: ToString + Not< Output = T >,
  U: Debug + Not< Output = U >,
{
  type Output = Self;

  fn not( self ) -> Self ::Output
  {
  Self { a: !self.a, b: !self.b }
 }
}

// include!( "./only_test/bounds_where.rs" );
