main and client class