added initial unicode support