fixed std issue and introduced projective structure