[ADD] Added parametrization, divided project into smaller files for better readibility