Client & server class(not finished yet)