diff --git a/Testing/SystemTests/tests/analysis/utils.py b/Testing/SystemTests/tests/analysis/utils.py
deleted file mode 100644
index b96857118b229ee480557f663674d8dd5535d04f..0000000000000000000000000000000000000000
--- a/Testing/SystemTests/tests/analysis/utils.py
+++ /dev/null
@@ -1,316 +0,0 @@
-#pylint: disable=invalid-name
-''' SVN Info:   The variables below will only get subsituted at svn checkout if
-                the repository is configured for variable subsitution.
-
-        $Id$
-        $HeadURL$
-|=============================================================================|=======|
-1                                                                            80   <tab>
-'''
-import os
-import inspect
-import opcode
-
-
-def ls():
-    print os.getcwd()
-    files=os.listdir(os.getcwd())
-    for i in range(0,len(files)):
-
-        print files[i]
-
-
-def pwd():
-    print os.getcwd()
-
-
-def cd(dir_str):
-    os.chdir(dir_str)
-
-
-def lineno():
-    """
-    call signature(s)::
-    lineno()
-
-    Returns the current line number in our program.
-
-    No Arguments.
-
-
-    Working example
-    >>> print "This is the line number ",lineno(),"\n"
-
-    """
-    return inspect.currentframe().f_back.f_lineno
-
-
-def decompile(code_object):
-    '''     taken from http://thermalnoise.wordpress.com/2007/12/30/exploring-python-bytecode/
-
-        decompile extracts dissasembly information from the byte code and stores it in a
-                list for further use.
-
-        call signature(s)::
-                instructions=decompile(f.f_code)
-
-        Required arguments:
-        =========   =====================================================================
-        f.f_code    A  bytecode object ectracted with inspect.currentframe()
-                    or anyother mechanism that returns byte code.
-
-        Optional keyword arguments: NONE
-
-        Outputs:
-        =========   =====================================================================
-        instructions  a list of offsets, op_codes, names, arguments, argument_type,
-                        argument_value which can be deconstructed to find out various things
-                        about a function call.
-
-        Examples:
-
-        f = inspect.currentframe().f_back.f_back
-        i = f.f_lasti  # index of the last attempted instruction in byte code
-        ins=decompile(f.f_code)
-        pretty_print(ins)
-
-
-        '''
-    code = code_object.co_code
-    variables = code_object.co_cellvars + code_object.co_freevars
-    instructions = []
-    n = len(code)
-    i = 0
-    e = 0
-    while i < n:
-        i_offset = i
-        i_opcode = ord(code[i])
-        i = i + 1
-        if i_opcode >= opcode.HAVE_ARGUMENT:
-            i_argument = ord(code[i]) + (ord(code[i+1]) << (4*2)) + e
-            i = i +2
-            if i_opcode == opcode.EXTENDED_ARG:
-                e = iarg << 16
-            else:
-                e = 0
-            if i_opcode in opcode.hasconst:
-                i_arg_value = repr(code_object.co_consts[i_argument])
-                i_arg_type = 'CONSTANT'
-            elif i_opcode in opcode.hasname:
-                i_arg_value = code_object.co_names[i_argument]
-                i_arg_type = 'GLOBAL VARIABLE'
-            elif i_opcode in opcode.hasjrel:
-                i_arg_value = repr(i + i_argument)
-                i_arg_type = 'RELATIVE JUMP'
-            elif i_opcode in opcode.haslocal:
-                i_arg_value = code_object.co_varnames[i_argument]
-                i_arg_type = 'LOCAL VARIABLE'
-            elif i_opcode in opcode.hascompare:
-                i_arg_value = opcode.cmp_op[i_argument]
-                i_arg_type = 'COMPARE OPERATOR'
-            elif i_opcode in opcode.hasfree:
-                i_arg_value = variables[i_argument]
-                i_arg_type = 'FREE VARIABLE'
-            else:
-                i_arg_value = i_argument
-                i_arg_type = 'OTHER'
-        else:
-            i_argument = None
-            i_arg_value = None
-            i_arg_type = None
-        instructions.append( (i_offset, i_opcode, opcode.opname[i_opcode], i_argument, i_arg_type, i_arg_value) )
-    return instructions
-
-# Print the byte code in a human readable format
-
-
-def pretty_print(instructions):
-    print '%5s %-20s %3s  %5s  %-20s  %s' %  ('OFFSET', 'INSTRUCTION', 'OPCODE', 'ARG', 'TYPE', 'VALUE')
-    for (offset, op, name, argument, argtype, argvalue) in instructions:
-        print '%5d  %-20s (%3d)  ' % (offset, name, op),
-        if argument is not None:
-            print '%5d  %-20s  (%s)' % (argument, argtype, argvalue),
-        print
-
-
-def expecting():
-        #{{{
-    '''
-        call signature(s)::
-
-
-        Return how many values the caller is expecting
-
-        Required arguments:	NONE
-
-        Optional keyword arguments: NONE
-
-
-        Outputs:
-        =========   =====================================================================
-        numReturns	Number of return values on expected on the left of the equal sign.
-
-        Examples:
-
-        This function is not designed for cammand line use.  Using in a function can
-        follow the form below.
-
-
-        def test1():
-                def f():
-                        r = expecting()
-                        print r
-                        if r == 0:
-                                return None
-                        if r == 1:
-                                return 0
-                        return range(r)
-
-                f()
-                print "---"
-                a = f()
-                print "---", a
-                a, b = f()
-                print "---", a,b
-                a, b = c = f()
-                print "---", a,b,c
-                a, b = c = d = f()
-                print "---", a,b,c
-                a = b = f()
-                print "---", a,b
-                a = b, c = f()
-                print "---", a,b,c
-                a = b = c, d = f()
-                print "---", a,b,c,d
-                a = b, c = d = f()
-                print "---", a,b,c,d
-                a, b = c, d = f()
-                print "---", a,b,c,d
-
-        Developers Notes:
-
-                Now works with an multiple assigments correctly.  This is verified by
-                test() and test1() below
-        '''
-    f = inspect.currentframe().f_back.f_back
-    i = f.f_lasti  # index of the last attempted instruction in byte code
-    ins=decompile(f.f_code)
-        #pretty_print(ins)
-    for (offset, dummy_op, name, argument, dummy_argtype, dummy_argvalue) in ins:
-        if offset > i:
-            if name == 'POP_TOP':
-                return 0
-            if name == 'UNPACK_SEQUENCE':
-                return argument
-            if name == 'CALL_FUNCTION':
-                return 1
-
-#pylint: disable=too-many-locals,too-many-branches
-
-
-def lhs(output='names'):
-    '''
-        call signature(s)::
-
-        Return how many values the caller is expecting
-
-        Required arguments:	NONE
-
-        Optional keyword arguments: NONE
-
-
-        Outputs:
-        =========   =====================================================================
-        numReturns	Number of return values on expected on the left of the equal sign.
-
-        Examples:
-
-        This function is not designed for cammand line use.  Using in a function can
-        follow the form below.
-
-        '''
-
-    f = inspect.currentframe().f_back.f_back
-    i = f.f_lasti  # index of the last attempted instruction in byte code
-    ins=decompile(f.f_code)
-        #pretty_print(ins)
-
-    CallFunctionLocation={}
-    first=False
-    StartIndex=0
-    StartOffset=0
-        # we must list all of the operators that behave like a function call in byte-code
-    OperatorNames=set(['CALL_FUNCTION','UNARY_POSITIVE','UNARY_NEGATIVE',
-                       'UNARY_NOT','UNARY_CONVERT','UNARY_INVERT','GET_ITER',
-                       'BINARY_POWER','BINARY_MULTIPLY','BINARY_DIVIDE',
-                       'BINARY_FLOOR_DIVIDE', 'BINARY_TRUE_DIVIDE', 'BINARY_MODULO',
-                       'BINARY_ADD','BINARY_SUBTRACT','BINARY_SUBSCR',
-                       'BINARY_LSHIFT','BINARY_RSHIFT','BINARY_AND','BINARY_XOR','BINARY_OR'])
-
-    for index in range(len(ins)):
-        (offset, op, name, argument, argtype, argvalue) = ins[index]
-        if name in OperatorNames:
-            if not first:
-                CallFunctionLocation[StartOffset] = (StartIndex,index)
-            StartIndex=index
-            StartOffset = offset
-
-    (offset, op, name, argument, argtype, argvalue) = ins[-1]
-    CallFunctionLocation[StartOffset]=(StartIndex,len(ins)-1) # append the index of the last entry to form the last boundary
-
-        #print CallFunctionLocation
-        #pretty_print( ins[CallFunctionLocation[i][0]:CallFunctionLocation[i][1]] )
-        # In our case i should always be the offset of a Call_Function instruction. We can use this to baracket
-        # the bit which we are interested in
-
-    OutputVariableNames=[]
-    (offset, op, name, argument, argtype, argvalue) = ins[CallFunctionLocation[i][0] + 1]
-    if name == 'POP_TOP':  # no Return Values
-        pass
-                #return OutputVariableNames
-    if name == 'STORE_FAST' or name == 'STORE_NAME': # One Return Value
-        OutputVariableNames.append(argvalue)
-    if name == 'UNPACK_SEQUENCE': # Many Return Values, One equal sign
-        for index in range(argvalue):
-            (offset_, op_, name_, argument_, argtype_, argvalue_) = ins[CallFunctionLocation[i][0] + 1 + 1 +index]
-            OutputVariableNames.append(argvalue_)
-    maxReturns = len(OutputVariableNames)
-    if name == 'DUP_TOP': # Many Return Values, Many equal signs
-                # The output here should be a multi-dim list which mimics the variable unpacking sequence.
-                # For instance a,b=c,d=f() => [ ['a','b'] , ['c','d'] ]
-                #              a,b=c=d=f() => [ ['a','b'] , 'c','d' ]  So on and so forth.
-
-                # put this in a loop and stack the results in an array.
-        count = 0
-        maxReturns = 0 # Must count the maxReturns ourselves in this case
-        while count < len(ins[CallFunctionLocation[i][0] :CallFunctionLocation[i][1]]):
-            (offset_, op_, name_, argument_, argtype_, argvalue_) = ins[CallFunctionLocation[i][0]+count]
-                        #print 'i= ',i,'count = ', count, 'maxReturns = ',maxReturns
-            if name_ == 'UNPACK_SEQUENCE': # Many Return Values, One equal sign
-                hold=[]
-                                #print 'argvalue_ = ', argvalue_, 'count = ',count
-                if argvalue_ > maxReturns:
-                    maxReturns=argvalue_
-                for index in range(argvalue_):
-                    (_offset_, _op_, _name_, _argument_, _argtype_, _argvalue_) = ins[CallFunctionLocation[i][0] + count+1+index]
-                    hold.append(_argvalue_)
-                count = count + argvalue_
-                OutputVariableNames.append(hold)
-                        # Need to now skip the entries we just appended with the for loop.
-            if name_ == 'STORE_FAST' or name_ == 'STORE_NAME': # One Return Value
-                if 1 > maxReturns:
-                    maxReturns = 1
-                OutputVariableNames.append(argvalue_)
-            count = count + 1
-
-        # Now that OutputVariableNames is filled with the right stuff we need to output the correct thing. Either the maximum number of
-        # variables to unpack in the case of multiple ='s or just the length of the array or just the naames of the variables.
-
-    if output== 'names':
-        return OutputVariableNames
-    elif output == 'number':
-        return maxReturns
-    elif output == 'both':
-        return (maxReturns,OutputVariableNames)
-
-    return 0 # Should never get to here