Did some futher implementation