input: Write a python function to return the lexicographically smallest string possible from a given string of digits by swapping adjacent digits with the same parity at most once.
  
  def get_min_lexicographic_string(s: str) -> str:
      """
      Provided with a string s consisting solely of digits, return the lexicographically smallest string
      achievable by swapping adjacent digits with the same parity at most once.
  
      Two digits have the same parity if they are both odd or both even. For example, 3 and 7, as well as 4 and 8, share the same parity, whereas 5 and 6 do not.
  
      Examples:
      >>> s = "12534"
      "12354"
      >>> s = "803"
      "083"
  
      Constraints:
      2 <= s.length <= 100
      The string s contains only digits.
      """
output: def get_min_lexicographic_string(s: str) -> str:
      s = list(s)
      i = 0
      while i < len(s) - 1:
          if (int(s[i]) % 2 == int(s[i + 1]) % 2) and s[i] > s[i + 1]:
              s[i], s[i + 1] = s[i + 1], s[i]
              break
          i += 1
      return "".join(s)