public RazorFreeState (
			HtmlTagState tagState,
			HtmlClosingTagState closingTagState,
			XmlCommentState commentState,
			XmlCDataState cDataState,
			XmlDocTypeState docTypeState,
			XmlProcessingInstructionState processingInstructionState,
			RazorCodeBlockState codeBlockState,
			RazorExpressionState expressionState,
			RazorCommentState razorCommentState,
			RazorSpeculativeState speculativeState
			)
			: base (tagState, closingTagState, commentState, cDataState, docTypeState, processingInstructionState)
		{
			CodeBlockState = codeBlockState;
			ExpressionState = expressionState;
			ServerCommentState = razorCommentState;
			SpeculativeState = speculativeState;

			Adopt (CodeBlockState);
			Adopt (ExpressionState);
			Adopt (ServerCommentState);
			Adopt (SpeculativeState);

			UseSimplifiedBracketTracker = false;
		}
        public RazorFreeState(
            HtmlTagState tagState,
            HtmlClosingTagState closingTagState,
            XmlCommentState commentState,
            XmlCDataState cDataState,
            XmlDocTypeState docTypeState,
            XmlProcessingInstructionState processingInstructionState,
            RazorCodeBlockState codeBlockState,
            RazorExpressionState expressionState,
            RazorCommentState razorCommentState,
            RazorSpeculativeState speculativeState
            )
            : base(tagState, closingTagState, commentState, cDataState, docTypeState, processingInstructionState)
        {
            CodeBlockState     = codeBlockState;
            ExpressionState    = expressionState;
            ServerCommentState = razorCommentState;
            SpeculativeState   = speculativeState;

            Adopt(CodeBlockState);
            Adopt(ExpressionState);
            Adopt(ServerCommentState);
            Adopt(SpeculativeState);

            UseSimplifiedBracketTracker = false;
        }
        public RazorCodeFragmentState(HtmlTagState html, HtmlClosingTagState htmlClosing,
                                      RazorCommentState comment, RazorExpressionState expression, RazorSpeculativeState speculative)
        {
            htmlTagState        = html;
            htmlClosingTagState = htmlClosing;
            razorCommentState   = comment;
            expressionState     = expression;
            speculativeState    = speculative;

            Adopt(htmlTagState);
            Adopt(htmlClosingTagState);
            Adopt(razorCommentState);
            Adopt(expressionState);
            Adopt(speculativeState);

            bracketsBuilder = new StringBuilder();
        }