recursive naming rule added