added some stuff doesn't work yet