no longer need to explicitly specify canlib