code: func (s *FIFO) Pop() (T, bool) {
  	if s.front == nil {
  		return nil, false
  	}
  	node := s.front
  	s.front = node.next
  	s.size--
  	return node.v, true
  }
docs: // Pop returns the top of the LIFO and removes it. If LIFO is empty returns
  // nil, false.