added signatures for rule of three
updated fields in virus
implemented rule of three in virus