implemented complex herring
complex matrix