Update #20
Update #18 and update package dependencies