reduced complex code