added matrix and signal utilities