added some a logic class