compiled by zymphad