<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mywikibiz.com/index.php?action=history&amp;feed=atom&amp;title=Module%3AGS_pay</id>
	<title>Module:GS pay - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mywikibiz.com/index.php?action=history&amp;feed=atom&amp;title=Module%3AGS_pay"/>
	<link rel="alternate" type="text/html" href="https://mywikibiz.com/index.php?title=Module:GS_pay&amp;action=history"/>
	<updated>2026-04-29T14:19:50Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.3</generator>
	<entry>
		<id>https://mywikibiz.com/index.php?title=Module:GS_pay&amp;diff=471809&amp;oldid=prev</id>
		<title>Zoran: Pywikibot 6.4.0</title>
		<link rel="alternate" type="text/html" href="https://mywikibiz.com/index.php?title=Module:GS_pay&amp;diff=471809&amp;oldid=prev"/>
		<updated>2021-07-15T21:48:05Z</updated>

		<summary type="html">&lt;p&gt;Pywikibot 6.4.0&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;--&lt;br /&gt;
-- This module implements {{GS pay}}&lt;br /&gt;
-- There are 150 cells in the GS Pay table. This LUA reduces the amount of&lt;br /&gt;
--   manual input needed to 46&lt;br /&gt;
--&lt;br /&gt;
&lt;br /&gt;
local p = {}&lt;br /&gt;
local stepOnePay = {}&lt;br /&gt;
local GSOnePay = {}&lt;br /&gt;
local GSTwoPay = {}&lt;br /&gt;
local WIGIncrease = {}&lt;br /&gt;
&lt;br /&gt;
-- UPDATE THESE. Last Update: 2021&lt;br /&gt;
-- https://www.opm.gov/policy-data-oversight/pay-leave/salaries-wages/salary-tables/pdf/2021/GS.pdf&lt;br /&gt;
	--For GS [Grade] Step 1 pay&lt;br /&gt;
	stepOnePay[3] = 24216&lt;br /&gt;
	stepOnePay[4] = 27184&lt;br /&gt;
	stepOnePay[5] = 30414&lt;br /&gt;
	stepOnePay[6] = 33903&lt;br /&gt;
	stepOnePay[7] = 37674&lt;br /&gt;
	stepOnePay[8] = 41723&lt;br /&gt;
	stepOnePay[9] = 46083&lt;br /&gt;
	stepOnePay[10] = 50748&lt;br /&gt;
	stepOnePay[11] = 55756&lt;br /&gt;
	stepOnePay[12] = 66829&lt;br /&gt;
	stepOnePay[13] = 79468&lt;br /&gt;
	stepOnePay[14] = 93907&lt;br /&gt;
	stepOnePay[15] = 110460&lt;br /&gt;
	-- Within Grade increase for GS [Grade]&lt;br /&gt;
	WIGIncrease[3] = 807&lt;br /&gt;
	WIGIncrease[4] = 906&lt;br /&gt;
	WIGIncrease[5] = 1014&lt;br /&gt;
	WIGIncrease[6] = 1130&lt;br /&gt;
	WIGIncrease[7] = 1256&lt;br /&gt;
	WIGIncrease[8] = 1391&lt;br /&gt;
	WIGIncrease[9] = 1536&lt;br /&gt;
	WIGIncrease[10] = 1692&lt;br /&gt;
	WIGIncrease[11] = 1859&lt;br /&gt;
	WIGIncrease[12] = 2228&lt;br /&gt;
	WIGIncrease[13] = 2649&lt;br /&gt;
	WIGIncrease[14] = 3130&lt;br /&gt;
	WIGIncrease[15] = 3682&lt;br /&gt;
	-- GS1 Pay Table (because it has inconsistent WIG)&lt;br /&gt;
	GSOnePay[1] = 19738&lt;br /&gt;
	GSOnePay[2] = 20400&lt;br /&gt;
	GSOnePay[3] = 21056&lt;br /&gt;
	GSOnePay[4] = 21709&lt;br /&gt;
	GSOnePay[5] = 22365&lt;br /&gt;
	GSOnePay[6] = 22749&lt;br /&gt;
	GSOnePay[7] = 23398&lt;br /&gt;
	GSOnePay[8] = 24052&lt;br /&gt;
	GSOnePay[9] = 24078&lt;br /&gt;
	GSOnePay[10] = 24690&lt;br /&gt;
	-- GS2 Pay Table (because it has inconsistent WIG}&lt;br /&gt;
	GSTwoPay[1] = 22194&lt;br /&gt;
	GSTwoPay[2] = 22722&lt;br /&gt;
	GSTwoPay[3] = 23457&lt;br /&gt;
	GSTwoPay[4] = 24078&lt;br /&gt;
	GSTwoPay[5] = 24349&lt;br /&gt;
	GSTwoPay[6] = 25065&lt;br /&gt;
	GSTwoPay[7] = 25781&lt;br /&gt;
	GSTwoPay[8] = 26497&lt;br /&gt;
	GSTwoPay[9] = 27213&lt;br /&gt;
	GSTwoPay[10] = 27929&lt;br /&gt;
&lt;br /&gt;
-- Base pay calculation&lt;br /&gt;
function p.basePay(grade, step)&lt;br /&gt;
	-- For Step 1 pay for all grades&lt;br /&gt;
	if step == nil then&lt;br /&gt;
		if grade &amp;gt; 2 then&lt;br /&gt;
			-- Returns the Step 1 Pay for [grade]&lt;br /&gt;
			return stepOnePay[grade]&lt;br /&gt;
		elseif grade == 1 then&lt;br /&gt;
			-- Returns GS1 Step 1&lt;br /&gt;
			return GSOnePay[1]&lt;br /&gt;
		else&lt;br /&gt;
			-- Returns GS2 Step 1&lt;br /&gt;
			return GSTwoPay[1]&lt;br /&gt;
		end&lt;br /&gt;
	-- For grades where step is specified&lt;br /&gt;
	else&lt;br /&gt;
		if grade &amp;gt; 2 then&lt;br /&gt;
			-- Calculate GS [grade #], Step [step #] pay&lt;br /&gt;
			local pay = stepOnePay[grade] + (WIGIncrease[grade] * (step - 1))&lt;br /&gt;
			return pay&lt;br /&gt;
		elseif grade == 1 then&lt;br /&gt;
			return GSOnePay[step]&lt;br /&gt;
		else&lt;br /&gt;
			return GSTwoPay[step]&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
	&lt;br /&gt;
-- 'Main' function&lt;br /&gt;
function p.get(frame)&lt;br /&gt;
	-- Error checking&lt;br /&gt;
	if frame.args[1] == nil then&lt;br /&gt;
		if frame.args[2] == nil then&lt;br /&gt;
			return&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		-- Grab the basic pay number based on inputs&lt;br /&gt;
		return p.basePay(tonumber(frame.args[1]), tonumber(frame.args[2]))&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
	&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Zoran</name></author>
	</entry>
</feed>