    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
      "## Clarifying Questions\n",
      "\n",
      "* When sorted, should the largest element be at the top or bottom?\n",
      "    * Top\n",
      "* Can you have duplicate values, saw two 5s?\n",
      "    * Yes"
 
</s> remove     "* Can you have duplicate values, saw two 5s?\n",
 </s> add     "* Can you have duplicate values like 5, 5?\n",
    "    * Yes\n",
    "* Can we assume we already have a stack class that can be used for this problem?\n", </s> remove     "* [Code](#Code)"
 </s> add     "* [Code](#Code)\n",
    "* [Unit Test](#Unit-Test)" </s> remove     "* [Clarifying Questions](#Clarifying-Questions)\n",
 </s> add     "* [Constraints and Assumptions](#Constraints-and-Assumptions)\n", </s> remove    "outputs": [],
 </s> add    "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Test: Empty stack\n",
      "Test: One element stack\n",
      "Test: Two or more element stack (general case)\n",
      "Success: test_sort_stack\n"
     ]
    }
   ],
    "## Constraints and Assumptions\n",
    "\n",
    "*Problem statements are often intentionally ambiguous.  Identifying constraints and stating assumptions can help to ensure you code the intended solution.*\n",
    {
     "cell_type": "markdown",
     "metadata": {},
     "source": [
    "## Constraints and Assumptions\n",
    "\n",
    "*Problem statements are often intentionally ambiguous.  Identifying constraints and stating assumptions can help to ensure you code the intended solution.*\n",
      "\n",
      "* When sorted, should the largest element be at the top or bottom?\n",
      "    * Top\n",
      "* Can you have duplicate values, saw two 5s?\n",
      "    * Yes"
keep keep keep keep replace keep keep keep keep keep
 Reworked notebook: Added more detail to constraints and test cases.  Reworked unit test. 
stacks-queues/sort-stack.ipynb