      def __init__(self, top=None):
          self.top = top
  
      def push(self, data):
          node = Node(data, self.top)
          self.top = node
  
      def pop(self):
          if self.top is None:
              return None
          data = self.top.data
 
</s> remove     "        node = Node(data, self.top)\n",
    "        self.top = node\n",
 </s> add     "        self.top = Node(data, self.top)\n", </s> remove     "* None"
 </s> add     "* If we pop on an empty stack, do we return None?\n",
    "    * Yes\n",
    "* Can we assume this fits memory?\n",
    "    * Yes" </s> remove     "* None"
 </s> add     "* If we pop on an empty stack, do we return None?\n",
    "    * Yes\n",
    "* Can we assume this fits memory?\n",
    "    * Yes" </s> remove    "version": "3.4.3"
 </s> add    "version": "3.5.0" </s> remove    "pygments_lexer": "ipython2",
   "version": "2.7.10"
 </s> add    "pygments_lexer": "ipython3",
   "version": "3.5.0"
        self.top = Node(data, self.top)
      def __init__(self, top=None):
          self.top = top
  
      def push(self, data):
        self.top = Node(data, self.top)
        self.top = Node(data, self.top)
  
      def pop(self):
          if self.top is None:
              return None
          data = self.top.data
keep keep keep keep replace replace keep keep keep keep keep
 Polish stack challenge and solution (#69)

Update constraints and code. 
stacks_queues/stack/stack.py