License and pragma once added