added info from CyanChat project