# Task
Your task is to sort the characters in a string according to the following rules:
```
- Rule1: English alphabets are arranged from A to Z, case insensitive.
  ie. "Type" --> "epTy"
- Rule2: If the uppercase and lowercase of an English alphabet exist
  at the same time, they are arranged in the order of oringal input.
  ie. "BabA" --> "aABb"
- Rule3: non English alphabet remain in their original position.
  ie. "By?e" --> "Be?y"
```
# Input/Output
`[input]` string `s`
A non empty string contains any characters(English alphabets or non English alphabets).
`[output]` a string
A sorted string according to the rules above.
# Example
For `s = "cba"`, the output should be `"abc"`.
For `s = "Cba"`, the output should be `"abC"`.
For `s = "cCBbAa"`, the output should be `"AaBbcC"`.
For `s = "c b a"`, the output should be `"a b c"`.
For `s = "-c--b--a-"`, the output should be `"-a--b--c-"`.
For `s = "Codewars"`, the output should be `"aCdeorsw"`.
sort_string=lambda s: (lambda r: "".join(r.pop(0) if e.isalpha() else e for e in s))([e[0] for e in sorted(sorted([[k,i] for i,k in enumerate(s) if k.isalpha()],key=lambda a: a[1]),key=lambda a: a[0].lower())])
sort_string=lambda s: (lambda r: "".join(r.pop(0) if e.isalpha() else e for e in s))([e[0] for e in sorted(sorted([[k,i] for i,k in enumerate(s) if k.isalpha()],key=lambda a: a[1]),key=lambda a: a[0].lower())])