it works! Now all I have to do is write a ricechex version of the matrix ops