code: JCTree importDeclaration() {
          int pos = token.pos;
          nextToken();
          boolean importStatic = false;
          if (token.kind == STATIC) {
              checkStaticImports();
              importStatic = true;
              nextToken();
          }
          JCExpression pid = toP(F.at(token.pos).Ident(ident()));
          do {
              int pos1 = token.pos;
              accept(DOT);
              if (token.kind == STAR) {
                  pid = to(F.at(pos1).Select(pid, names.asterisk));
                  nextToken();
                  break;
              } else {
                  pid = toP(F.at(pos1).Select(pid, ident()));
              }
          } while (token.kind == DOT);
          accept(SEMI);
          return toP(F.at(pos).Import(pid, importStatic));
      }
docs: ImportDeclaration = IMPORT [ STATIC ] Ident { "." Ident } [ "." "*" ] ";"