### Question:
Area { static int scale(int bits, int... values) { int lim = (1<<(bits))-1; int max = Stats.max(values); int scale = 0; while (max > lim) { scale++; max /= 10; } if (scale > 3) { throw new IllegalArgumentException("scale > 3"); } return scale; }  static Area getInstance(CharSequence seq); abstract void build(AISBuilder builder);  }### Answer:
@Test public void testScale() { assertEquals(0, Area.scale(8, 12)); assertEquals(2, Area.scale(8, 25000)); }