<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def remove_subproducts(self):
 """Removes all archived files subproducts associated with this DP"""

        if not self.fullpath or not self.archived:
            raise RuntimeError("""Can't remove a non-archived data product""")
        for root, dirs, files in os.walk(self.subproduct_dir(), topdown=False):
            for name in files:
                try:
                    os.remove(os.path.join(root, name))
                except:
                    pass
            for name in dirs:
                try:
                    os.remove(os.path.join(root, name))
                except:
                    pass