finished basic data transfering