 
   def many_clauses(x) do
     super(x)
+  end
+
+  def locals do
+    :ok
+  end
+
+  def multiple_overrides do
+    [2 | super()]
+  end
+
+  defp public_to_private do
+    :private
+  end
+
+  def test_public_to_private do
+    public_to_private()
+  end
+
+  defoverridable multiple_overrides: 0
+
+  def multiple_overrides do
+    [3 | super()]
   end
 
   ## Macros


  def many_clauses(1) do
    13
  end

  defoverridable sample: 0,
                 with_super: 0,
                 without_super: 0,
                 super_with_multiple_args: 2,
                 many_clauses: 1

  true = Module.overridable?(__MODULE__, {:without_super, 0})
  true = Module.overridable?(__MODULE__, {:with_super, 0})

  test "overridable definitions are private" do
    refute {:"with_super (overridable 0)", 0} in Overridable.module_info(:exports)
    refute {:"with_super (overridable 1)", 0} in Overridable.module_info(:exports)
  end

  test "multiple overrides" do
    assert Overridable.multiple_overrides() == [3, 2, 1]
  end

  test "overridable macros" do
