sync with latest library code