public Dimension intern() { lock (m_dims) { Dimension cached = (Dimension)m_dims[this]; if (cached != null) return cached; m_dims[this] = this; return this; } }