Bedtime commit. Symmetry not fully implemented.