--- /dev/null
+module A = Array
+
+module M = Matrix
+module C = Css
+
+type status = {
+ m: M.matrix;
+ a: C.atoms;
+}
+
+let initial a m = {
+ m = m; a = a;
+}
+
+let process_cell st y x c =
+ M.set_css st.m y x (C.get_css st.a y x)
+
+let process_row st y row =
+ A.iteri (process_cell st y) row
+
+let process css matrix =
+ let st = initial css matrix in
+ A.iteri (process_row st) matrix.M.m