code: def middleNode(self, head: Optional[ListNode]) -> Optional[ListNode]:
      slow = fast = head
  
      while fast and fast.next:
          slow = slow.next
          fast = fast.next.next
  
      return slow
  
label_desc: Use image node_id 1 for calling the Solution obj's underlying member method code with example usage: obj.middleNode(head) and returns: slow