<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _deallocator(self):
 """Returns the name of the subroutine in ftypes_dealloc.f90 that can deallocate the array for this Ftype's pointer. :arg ctype: the string c-type of the variable. """

        lookup = {
            "c_bool": "logical",
            "c_double": "double",
            "c_double_complex": "complex",
            "c_char": "char",
            "c_int": "int",
            "c_float": "float",
            "c_short": "short",
            "c_long": "long"            
        }
        ctype = type(self.pointer).__name__.replace("LP_", "").lower()
        if ctype in lookup:
            return "dealloc_{0}_{1:d}d".format(lookup[ctype], len(self.indices))
        else:
            return None