I have a polygon data set where some of the polygons are irregular (mostly self-intersecting).
Here's an example of the irregular polygons that I have in the data set:

I want to write a Python program that will:
- Identify that an input polygon is irregular; and then
- Transform it into a set of regular polygons, i.e., break the irregular polygon into several regular polygons. A simple case is to break a figure "8" polygon into two "0" polygons.
I have ArcGIS for Desktop and Server.
Thanks,
-S.