>>29
https://ideone.com/0edzpM