finished the swing client