updated with latest libraries