Improving constructor