add matrix builder