implemented fragments