This is a good catch, but I don't think we need to pass `tangent` to `normalize` here since we are using the prototype function.  Same for `binormal` below.