public override void Close() { if (this.closed) return; try { try { Finish(); } catch (IOException) { // Ignore } } finally { this.closed = true; End(); output.Close(); output = null; } }