as per gnome best practices, I'm using let instead of var