Edit constructor