found some more updated code