added some different approch