introduced matrix pointer typedefs