added activity implementation