private void Parse() { lock (this) { if (!parsed) { Asn1InputStream e = new LazyAsn1InputStream(encoded); Asn1Object o; while ((o = e.ReadObject()) != null) { AddObject(o); } encoded = null; parsed = true; } } }