input: Write a python function to implement a stack with push, pop, and peek methods.
  assert s := Stack(); s.push(10); s.push(20); s.push(30); s.peek() == 30
  assert s.pop(); s.peek() == 20
  assert s.pop(); s.pop(); s.stack == []
output: class Stack:
      def __init__(self):
          self.stack = []
      
      def push(self, value):
          self.stack.append(value)
      
      def pop(self):
          if not self.is_empty():
              return self.stack.pop()
      
      def peek(self):
          if not self.is_empty():
              return self.stack[-1]
      
      def is_empty(self):
          return len(self.stack) == 0