adding proper licensing and copyright