client generation working