different encoding for different platform