Question: It works perfectly from the admin site. But the code below doesn't work properly(some characters are missing, like Turkish "ı") in some languages.

```
class Foo(models.Model):
    name = models.CharField(max_length=50, unique=True, db_index=True)
    slug = models.SlugField(max_length=100, unique=True, db_index=True)

    def save(self, *args, **kwargs):
        if not self.slug:
            self.slug = slugify(self.name)
        super(Foo, self).save(*args, **kwargs)

```

For example, let's assume that the name is "ışçğö" and then slug becomes "scgo" when it should be "iscgo" instead.

Answer: 
```
unsigned char swapped = ((original & 85) << 1) | ((original & 170) >> 1);

```
If u want swap odd position bits to even position(Like swap pair bits 1 2 , 3 4 , 5 6 and 7 8 ) 

unsigned char a,x,y,z;  

a = 2+4+8+128;  

x = a & 170;  

y = a & 85;  

z = (x>>1)|(y<<1);  

Z is the answer.

Similarly we can swap 16 bit and so on. Please, work out the above sample scenario...