def METHOD_NAME(self):
    """write out an archive with an object tree"""
    archive = alembic.Abc.OArchive("iterator.abc")
    for i in range(3):
        child = alembic.Abc.OObject(archive.getTop(), "childObj" + str(i))
        for j in range(3):
            gchild = alembic.Abc.OObject(child, "grandChild" + str(j))
            for k in range(3):
                cp = alembic.Abc.OCompoundProperty(gchild.getProperties(), "prop" + str(k))
                sp = alembic.Abc.OStringProperty(cp, "scalar")
                sp.setValue("a")
                sp.setValue("b")
                sp.setValue("c")
                ap = alembic.Abc.OStringArrayProperty(cp, "array")
                stra = imath.StringArray(3)
                stra[0] = 'a'
                stra[1] = 'b'
                stra[2] = 'c'
                ap.setValue(stra)
                strb = imath.StringArray(2)
                strb[0] = 'd'
                strb[1] = 'e'
                ap.setValue(strb)
                strc = imath.StringArray(1)
                strc[0] = 'f'
                ap.setValue(strc)