more complicated process