added unique constraints and unicode thing