code: private UiSelector buildSelector(int selectorId, Object selectorValue) {
          if (selectorId == SELECTOR_CHILD || selectorId == SELECTOR_PARENT) {
              throw new UnsupportedOperationException();
  //            selector.getLastSubSelector().mSelectorAttributes.put(selectorId, selectorValue);
          } else {
              this.mSelectorAttributes.put(selectorId, selectorValue);
          }
          return this;
      }
docs: Building a UiSelector always returns a new UiSelector and never modifies the
  existing UiSelector being used.