@Override
 public void onNeighborBlockChange(
     World world, BlockPos pos, IBlockState state, Block neighborBlock) {
   TileEntityToaster tileEntityToaster = (TileEntityToaster) world.getTileEntity(pos);
   if (!tileEntityToaster.isToasting() && world.isBlockPowered(pos)) {
     tileEntityToaster.startToasting();
     world.markBlockForUpdate(pos);
     if (!world.isRemote) {
       world.playSoundEffect(
           pos.getX() + 0.5D,
           pos.getY() + 0.5D,
           pos.getZ() + 0.5D,
           "cfm:toaster_down",
           0.75F,
           1.0F);
     }
   }
 }
 @Override
 public boolean onBlockActivated(
     World world,
     BlockPos pos,
     IBlockState state,
     EntityPlayer player,
     EnumFacing side,
     float hitX,
     float hitY,
     float hitZ) {
   ItemStack currentItem = player.getCurrentEquippedItem();
   TileEntity tileEntity = world.getTileEntity(pos);
   if (tileEntity instanceof TileEntityToaster) {
     TileEntityToaster tileEntityToaster = (TileEntityToaster) tileEntity;
     if (currentItem != null && !tileEntityToaster.isToasting()) {
       RecipeData data = RecipeAPI.getToasterRecipeFromInput(currentItem);
       if (data != null) {
         if (tileEntityToaster.addSlice(new ItemStack(currentItem.getItem(), 1))) {
           world.markBlockForUpdate(pos);
           currentItem.stackSize--;
         }
       } else {
         tileEntityToaster.removeSlice();
       }
     } else {
       if (player.isSneaking()) {
         if (!tileEntityToaster.isToasting()) {
           tileEntityToaster.startToasting();
           world.updateComparatorOutputLevel(pos, this);
           if (!world.isRemote) {
             world.playSoundEffect(
                 pos.getX() + 0.5D,
                 pos.getY() + 0.5D,
                 pos.getZ() + 0.5D,
                 "cfm:toaster_down",
                 0.75F,
                 1.0F);
           }
         }
       } else if (!tileEntityToaster.isToasting()) {
         tileEntityToaster.removeSlice();
       }
     }
   }
   return true;
 }
 @Override
 public int getComparatorInputOverride(World world, BlockPos pos) {
   TileEntityToaster toaster = (TileEntityToaster) world.getTileEntity(pos);
   return toaster.isToasting() ? 1 : 0;
 }