   end
   defp parse_16bit(_), do: {:error, @error_invalid_16bit_ie}
 
+  @spec multipart_ie(actual_part_info) :: {:error, any} | {:ok, UDH.ie}
+
   def multipart_ie({ref_num, _count, _seq_num}) when ref_num < 0 or ref_num > 65535, do: {:error, @error_invalid_ref_num}
   def multipart_ie({_ref_num, count, _seq_num}) when count < 1 or count > 255, do: {:error, @error_invalid_count}
   def multipart_ie({_ref_num, _count, seq_num}) when seq_num < 1 or seq_num > 255, do: {:error, @error_invalid_seq_num}

        <<ref_num :: integer-unsigned-size(8), count :: integer-unsigned-size(8), seq_num :: integer-unsigned-size(8) >>}
    end}
  end

  def prepend_message_with_part_info(part_info, message) do
    case multipart_ie(part_info) do

    end
  end

  @spec extract_from_ies(list(UDH.ie)) :: {:ok, part_info} | {:error, any}

  def extract_from_ies(ies) do
    cond do
      :proplists.is_defined(@concateneated_8bit_ref_ie_id, ies) ->
