less complex code