Nearly finished constructor