moved analyzer into kernel