using the q library