maybe we could keep the shortcut if `per` is scalar, 
I don't know how much it's used