Implementation with client