Credits: Papers and elements by DCorbitt