protected void checkInit() {
   if (!initialised) {
     synchronized (Metamodel.getLock()) {
       if (!initialised) {
         init();
         initialised = true;
       }
     }
   }
 }