Internals for #64, #82, #119, #120