including repetitive code