code: private int getLayoutId(final IPerson person, final IUserProfile profile) {
          final Hashtable<Integer, UserProfile> profiles = getUserProfileList(person);
          int layoutId = profile.getLayoutId();
          Set<Integer> layoutIds = getAllNonZeroLayoutIdsFromProfiles(profiles.values());
          if (!layoutIds.isEmpty()) {
              layoutId = layoutIds.iterator().next();
          }
          if (layoutIds.size() > 1) {
              // log that only one non-zero layout id assumption has been broken
              logger.error(UNSUPPORTED_MULTIPLE_LAYOUTS_FOUND, person.getID());
          }
          return layoutId;
      }
docs: /*
  The code currently only supports one instantiated/saved layout for a user's set
  of profiles.  If the layout hasn't been instantiated/saved for a user the layout id
  will be zero for all the profiles and if it has been saved it will be one.
  When more than one layout becomes supported, this logic will need to be reworked to
  support multiple layouts.  It currently just checks if the layout for the user has
  been instantiated/saved and sets the new profile to the saved layout id (currently hardcoded
  elsewhere to always be one)