diff --git a/lib/linear_ops/src/matrix.rs b/lib/linear_ops/src/matrix.rs
index 200d176..327a35a 100644
--- a/lib/linear_ops/src/matrix.rs
+++ b/lib/linear_ops/src/matrix.rs
@@ -1,5 +1,6 @@
 use crate::vector::Vector;
 
+#[repr(transparent)]
 #[derive(Clone,Copy,Debug,Hash,Eq,PartialEq)]
 pub struct Matrix<const X:usize,const Y:usize,T>{
 	pub(crate) array:[[T;Y];X],
diff --git a/lib/linear_ops/src/vector.rs b/lib/linear_ops/src/vector.rs
index 8d223de..a2a1609 100644
--- a/lib/linear_ops/src/vector.rs
+++ b/lib/linear_ops/src/vector.rs
@@ -3,6 +3,7 @@
 /// v.x += v.z;
 /// println!("v.x={}",v.x);
 
+#[repr(transparent)]
 #[derive(Clone,Copy,Debug,Hash,Eq,PartialEq)]
 pub struct Vector<const N:usize,T>{
 	pub(crate) array:[T;N],