updated some information and added @cyphar's solution