example constructor