             -> [Socket: PollFlags]
         {
             // Now start polling
-            let pollItems = Poller.buildPollItems(sockets: sockets)
+            let pollItems = buildPollItems()
             let intTimeout = (timeout == nil)
                 ? -1
                 : Int(timeout!)

            }

            // Build hash map [Socket: PollFlags]
            let map = buildSocketPollFlagsMap(
                sockets   : sockets,
                pollItems : pollItems
            )

            // Cleanup poll items
            pollItems.deallocate(capacity: sockets.count)

        /**
            Build poll items from a supplied list of socket flags
         */
        private func buildPollItems() -> UnsafeMutablePointer<zmq_pollitem_t>
        {
            let pollItems = UnsafeMutablePointer<zmq_pollitem_t>.allocate(
              capacity: sockets.count
