decoder for user