added symmetry functionality