redesign with AlarmManager complete