license, init and implementation