This thread is from 2013y and code from 2013y. It also working but very bad :/