shortened, final version