Fix bugs, add checks