use super::ProductSpace;
use serde::{Deserialize, Serialize};
#[derive(
Debug,
Default,
Copy,
Clone,
PartialEq,
Eq,
Hash,
ProductSpace,
FiniteSpace,
Serialize,
Deserialize,
)]
pub struct TupleSpace2<A, B>(pub A, pub B);
#[derive(
Debug,
Default,
Copy,
Clone,
PartialEq,
Eq,
Hash,
ProductSpace,
FiniteSpace,
Serialize,
Deserialize,
)]
pub struct TupleSpace3<A, B, C>(pub A, pub B, pub C);
#[derive(
Debug,
Default,
Copy,
Clone,
PartialEq,
Eq,
Hash,
ProductSpace,
FiniteSpace,
Serialize,
Deserialize,
)]
pub struct TupleSpace4<A, B, C, D>(pub A, pub B, pub C, pub D);
#[derive(
Debug,
Default,
Copy,
Clone,
PartialEq,
Eq,
Hash,
ProductSpace,
FiniteSpace,
Serialize,
Deserialize,
)]
pub struct TupleSpace5<A, B, C, D, E>(pub A, pub B, pub C, pub D, pub E);