working on generic garuda client