fixed stuff and updated interfaces