public static ActiveRuleKey parse(String s) {
    Preconditions.checkArgument(s.split(":").length >= 3, "Bad format of activeRule key: " + s);
    int semiColonPos = s.indexOf(':');
    String ruleProfileUuid = s.substring(0, semiColonPos);
    String ruleKey = s.substring(semiColonPos + 1);
    return new ActiveRuleKey(ruleProfileUuid, RuleKey.parse(ruleKey));
  }
@Test
  void parse_fail_when_less_than_three_colons() {
    try {
      ActiveRuleKey.parse("P1:xoo");
      Assertions.fail();
    } catch (IllegalArgumentException e) {
      assertThat(e).hasMessage("Bad format of activeRule key: P1:xoo");
    }
  }