implement SaveBlock