another attempt

stack exchange answer