implemented placeholders