Por favor, eche un vistazo al modelo original para otra implementación. Todos los créditos van al autor original.