Also possible that your order was partially filled with a cross at the start of trade and wasn't at the front of the queue, but it just so happened that your broker had a partially matching order from another customer that they could part fill yours with.