User implementation