public function analyze()
{
$this->atomIs('Assignation')->outIs('LEFT')->atomIs(array('Variable', 'Array', 'Property', 'Staticproperty'))->savePropertyAs('fullcode', 'name')->inIs('LEFT')->nextSibling()->atomIs('Assignation')->codeIs('=')->outIs('LEFT')->samePropertyAs('fullcode', 'name')->inIs('LEFT')->outIs('RIGHT')->raw('where( __.repeat( out() ).emit(hasLabel("Variable", "Array", "Property", "Staticproperty")).times(' . self::MAX_LOOPING . ').filter{ it.get().value("fullcode") == name}.count().is(eq(0)) )')->back('first');
$this->prepareQuery();
}