segunda implementação