You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: MBeautify.m
    path of file: ./repos/cat12
    
    the code of the file until where you have to start completion: classdef MBeautify
    % Provides static methods to perform code formatting targeting file(s), the currently active editor page or the
    % current selection in editor.
    %   The rules of the formatting are defined in the "MBeautyConfigurationRules.xml" in the resources directory. This
    %   file can be modified to affect the formatting.
    %   Important: Runtime, the M equivalent of this XML file is used, which is created whenever the "setup" static
    %   method is called, therefore always call this method if the XML file has been modified.
    %   To restore the XML file to the default configuration, the "createDefaultConfiguration" static method can be
    %   called.
    %
    %   Example usage:
    %
    %   MBeautify.setup(); % Creates the default rules
    %   MBeautify.formatCurrentEditorPage(); % Formats the current page in editor without saving
    %   MBeautify.formatCurrentEditorPage(); % Formats the current pa
    
function setup()
            % MBeautify.setup() initializes MBeautifier for first use and usable to update the formatting configuration.
            % It optionally writes the default settings XML file, reads in the settings XML file and then writes the
            % configuration M-file which will be used in runtime.
            
            if ~exist(MBeautify.RulesXMLFileFull, 'file')
                MBeautify.writeSettingsXML();
            end
            
            MBeautify.writeConfigurationFile(MBeautify.readSettingsXML());
            
            fprintf('Configuration was successfully exported to:\n%s\n', MBeautify.RulesMFileFull);
            MBeautify.parsingUpToDate(false);
        end
        
        function createDefaultConfiguration()
            % Writes the default configuration XML file.
            
            MBeautify.writeSettingsXML();
        end
        
        function formatFile(file, outFile)
            % Formats the file specified in the first argument. The file is opened in the Matlab Editor. If the second
            % argument is also specified, the formatted source is saved to this file. Otherwise the formatted input
            % file remains opened in the Matlab Editor. The input and the output file can be the same.
            if ~exist(file, 'file')
                return;
            end
            
            document = matlab.desktop.editor.openDocument(file);
            % Format the code
            formatter = MFormatter(MBeautify.getConfigurationStruct());
            document.Text = formatter.performFormatting(document.Text);
            
            document.smartIndentContents();
            
            if nargin >= 2
                if exist(outFile, 'file')
                    fileattrib(outFile, '+w');
                end