SVD now works with more general templates