changed condition signal
made loop pure virtual
fixed warning