ScopedBlockNode classNodeMovieContents = classNodeMovie.getScopedNode();
// generate: private static var bytes:ByteArray = null;
VariableNode variableNodeBytes = new VariableNode(new IdentifierNode("bytes"));
variableNodeBytes.setNamespace(new NamespaceIdentifierNode(INamespaceConstants.private_));
variableNodeBytes.addModifier(new ModifierNode(IASKeywordConstants.STATIC));
variableNodeBytes.setType(null, new IdentifierNode("ByteArray"));
ASToken assignToken = new ASToken(ASTokenTypes.TOKEN_OPERATOR_ASSIGNMENT, -1, -1, -1, -1, "=");
ASToken nullToken = new ASToken(ASTokenTypes.TOKEN_KEYWORD_NULL, -1, -1, -1, -1, IASKeywordConstants.NULL);
LiteralNode nullNode = new LiteralNode(LiteralType.NULL, nullToken);
variableNodeBytes.setAssignedValue(assignToken, nullNode);
classNodeMovieContents.addItem(variableNodeBytes);
// build the constructor
IdentifierNode constructorNameNode = new IdentifierNode(movieClassName);
constructorNameNode.setReferenceValue(classNodeMovie.getDefinition());
FunctionNode constructorNode = new FunctionNode(null, constructorNameNode);
constructorNode.setNamespace(new NamespaceIdentifierNode(INamespaceConstants.public_));
ScopedBlockNode constructorContents = constructorNode.getScopedNode();
// generate: super();
FunctionCallNode superCall = new FunctionCallNode(LanguageIdentifierNode.buildSuper());
constructorContents.addItem(superCall);
// generate: initialWidth = $swfWidth;
LiteralNode widthNode = new NumericLiteralNode(Integer.toString(swfWidth));
BinaryOperatorNodeBase assignmentWidth = BinaryOperatorNodeBase.create(assignToken, new IdentifierNode("initialWidth"), widthNode);
constructorContents.addItem(assignmentWidth);
// generate: initialHeight = $swfHeight;
LiteralNode heightNode = new NumericLiteralNode(Integer.toString(swfHeight));
BinaryOperatorNodeBase assignmentHeight = BinaryOperatorNodeBase.create(assignToken, new IdentifierNode("initialHeight"), heightNode);
constructorContents.addItem(assignmentHeight);
classNodeMovieContents.addItem(constructorNode);
// build the movieClipData() getter
GetterNode movieClipDataGetterNode = new GetterNode(null, null, new IdentifierNode("movieClipData"));
movieClipDataGetterNode.addModifier(new ModifierNode(IASKeywordConstants.OVERRIDE));
movieClipDataGetterNode.setNamespace(new NamespaceIdentifierNode(INamespaceConstants.public_));
movieClipDataGetterNode.setType(null, new IdentifierNode("ByteArray"));
ScopedBlockNode movieClipDataContents = movieClipDataGetterNode.getScopedNode();
// generate: if (bytes == null)