Software and hardwares