added thin svd stuff