       find_within_element(parent_element_id, :link_text, "Home")
   """
   @spec find_within_element(String.t, atom, String.t, Integer.t) :: Dict.t
-  def find_within_element(element_id, strategy, selector, timeout_in_seconds \\ 5) do
-    session_id = Hound.current_session_id
-    params = %{using: Hound.InternalHelpers.selector_strategy(strategy), value: selector}
-
-    case make_req(:post, "session/#{session_id}/element/#{element_id}/element", params, %{}, timeout_in_seconds*2) do
+  def find_within_element(element_id, strategy, selector, retries \\ 5) do
+    session_id = Hound.current_session_id
+    params = %{using: Hound.InternalHelpers.selector_strategy(strategy), value: selector}
+
+    case make_req(:post, "session/#{session_id}/element/#{element_id}/element", params, %{}, retries*2) do
       %{"ELEMENT" => element_id} ->
         element_id
       value ->

      find_element(:link_text, "Home")
  """
  @spec find_element(String.t, String.t, Integer.t) :: Dict.t
  def find_element(strategy, selector, timeout_in_seconds \\ 5) do
    session_id = Hound.current_session_id
    params = %{using: Hound.InternalHelpers.selector_strategy(strategy), value: selector}

    case make_req(:post, "session/#{session_id}/element", params, %{}, timeout_in_seconds*2) do
      %{"ELEMENT" => element_id} ->
        element_id
      value ->

      find_all_within_element(parent_element_id, :link_text, "Home")
  """
  @spec find_all_within_element(String.t, atom, String.t, Integer.t) :: List.t
  def find_all_within_element(element_id, strategy, selector, retries \\ 5) do
    session_id = Hound.current_session_id
    params = %{using: Hound.InternalHelpers.selector_strategy(strategy), value: selector}

    case make_req(:post, "session/#{session_id}/element/#{element_id}/elements", params, %{}, retries*2) do
      {:error, value} ->
        {:error, value}
      elements ->
